Skip to content

Commit ef071a5

Browse files
devongovettreidbarberLFDanLu
authored
feat: Setup new S2 docs website (#8300)
* wip * sidenav * bump parcel * wip * wip * 19.1 * wip * more wip * wip * cleanup * build in circleci * yarn is a jerk * update parcel to latest * gdi yarn * temporarily fix self reference resolution REVERT THIS * fixes * dedupe lightningcss * lint * Revert "temporarily fix self reference resolution" This reverts commit 96474a4. # Conflicts: # packages/@react-aria/dnd/stories/Reorderable.tsx * bump parcel * reorganize * Fix indented props * Create common code platter component * Content improvements * dnd and gridlist * table * Select and ComboBox updates * remove features section * display relevant part of code block when collapsed * More components * ignore example folder in tsconfig * eslintignore * Show check mark in copy button when copied * add anchor links to headings * Fix empty codeProps * use link icon on headings * more content * initialize search menu * search menu styles * add aria-labels to heading anchor links * mobile layout * filter cards in search menu by selected library * use sections in search menu * generate OG images * fix og font * lint * tabs fix * lock file * Add codesandbox, stackblitz, and download zip * tabs type fix * centralize all menu show/hide logic in view transition * fix 'esc' handling to only close * fix view transitions * close button on search menu * add view transition to search field * cleanup * tabs cleanup * fix submenu search field position * Add shadcn registry and improve share links * layout fixes * fix header alignment * improve nav scrolling mask * remove submenu TOC feature * add script to generate markdown docs * handle StateTable in markdown script * md script: support text-based PageDescription * md script: fix remaining missing page descriptions * md script: fix missing slider description * cleanup * md script: handle ExampleSwitcher and VisualExample * md script: add 'Related Types' with tables for TypeLinks on page * add button to copy markdown * add meta tag for llm-friendly version * md script: fix default className rendering in StateTable * md script: fix missing PickerItem/PickerSection prop tables * md script: fix TypeLink for hooks * lint * fixes * layout chaneg * lint * build registry in ci * add correct registry url * upgrade parcel * fix scrolling --------- Co-authored-by: Reid Barber <[email protected]> Co-authored-by: Daniel Lu <[email protected]>
1 parent 51f46e0 commit ef071a5

File tree

230 files changed

+15670
-1210
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

230 files changed

+15670
-1210
lines changed

.circleci/comment.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,8 @@ async function run() {
8181
8282
* [View the storybook](https://reactspectrum.blob.core.windows.net/reactspectrum/${process.env.CIRCLE_SHA1}/storybook/index.html)
8383
* [View the S2 storybook](https://reactspectrum.blob.core.windows.net/reactspectrum/${process.env.CIRCLE_SHA1}/storybook-s2/index.html)
84-
* [View the documentation](https://reactspectrum.blob.core.windows.net/reactspectrum/${process.env.CIRCLE_SHA1}/docs/index.html)`
84+
* [View the documentation](https://reactspectrum.blob.core.windows.net/reactspectrum/${process.env.CIRCLE_SHA1}/docs/index.html)
85+
* [View the S2 docs](https://reactspectrum.blob.core.windows.net/reactspectrum/${process.env.CIRCLE_SHA1}/s2-docs/index.html)`
8586
});
8687
} catch (err) {
8788
console.error(err)

.circleci/config.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -470,6 +470,21 @@ jobs:
470470
paths:
471471
- '*/docs/'
472472

473+
s2-docs:
474+
executor: rsp-xlarge
475+
steps:
476+
- restore_cache:
477+
key: react-spectrum-{{ .Environment.CACHE_VERSION }}-{{ .Environment.CIRCLE_SHA1 }}
478+
479+
- run:
480+
name: build s2 docs
481+
command: make s2-docs
482+
483+
- persist_to_workspace:
484+
root: dist
485+
paths:
486+
- '*/s2-docs/'
487+
473488
verdaccio:
474489
executor: rsp-xlarge
475490
steps:
@@ -874,6 +889,9 @@ workflows:
874889
- docs:
875890
requires:
876891
- install
892+
- s2-docs:
893+
requires:
894+
- install
877895
- verdaccio:
878896
filters:
879897
branches:
@@ -928,6 +946,7 @@ workflows:
928946
- storybook
929947
- storybook-s2
930948
- docs
949+
- s2-docs
931950
- deploy-verdaccio:
932951
requires:
933952
- v-docs

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,3 +17,5 @@ test-reports.xml
1717
storage
1818
packages/dev/storybook-builder-parcel/iframe.html
1919
packages/dev/storybook-builder-parcel/preview.js
20+
starters/docs/registry
21+
starters/tailwind/registry

Makefile

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ website-production:
110110
cp packages/dev/docs/pages/robots.txt dist/production/docs/robots.txt
111111
$(MAKE) starter-zip
112112
$(MAKE) tailwind-starter
113-
$(MAKE) s2-docs
113+
$(MAKE) s2-storybook-docs
114114

115115
check-examples:
116116
node scripts/extractExamples.mjs
@@ -135,9 +135,19 @@ tailwind-starter:
135135
cd starters/tailwind && yarn build-storybook
136136
mv starters/tailwind/storybook-static dist/production/docs/react-aria-tailwind-starter
137137

138-
s2-docs:
139-
yarn build:s2-docs -o dist/production/docs/s2
138+
s2-storybook-docs:
139+
yarn build:s2-storybook-docs -o dist/production/docs/s2
140140

141141
s2-api-diff:
142142
node scripts/buildBranchAPI.js
143143
node scripts/api-diff.js --skip-same --skip-style-props
144+
145+
s2-docs:
146+
node scripts/extractStarter.mjs
147+
REGISTRY_URL=https://reactspectrum.blob.core.windows.net/reactspectrum/$$(git rev-parse HEAD)/s2-docs/registry node scripts/buildRegistry.mjs
148+
REGISTRY_URL=https://reactspectrum.blob.core.windows.net/reactspectrum/$$(git rev-parse HEAD)/s2-docs/registry yarn build:s2-docs --public-url /reactspectrum/$$(git rev-parse HEAD)/s2-docs/
149+
mkdir -p dist/$$(git rev-parse HEAD)
150+
mv packages/dev/s2-docs/dist dist/$$(git rev-parse HEAD)/s2-docs
151+
mkdir -p dist/$$(git rev-parse HEAD)/s2-docs/registry
152+
mv starters/docs/registry dist/$$(git rev-parse HEAD)/s2-docs/registry/vanilla
153+
mv starters/tailwind/registry dist/$$(git rev-parse HEAD)/s2-docs/registry/tailwind

bin/imports.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,10 @@ module.exports = {
5656
return;
5757
}
5858

59+
if (pkgName === 'vanilla-starter' || pkgName === 'tailwind-starter') {
60+
return;
61+
}
62+
5963
if (!exists(pkg.dependencies, pkgName) && !exists(pkg.peerDependencies, pkgName) && pkgName !== pkg.name) {
6064
context.report({
6165
node,

eslint.config.mjs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,8 @@ export default [{
5454
"starters/**/*",
5555
"scripts/icon-builder-fixture/**/*",
5656
"packages/@react-spectrum/s2/icon.d.ts",
57-
"packages/@react-spectrum/s2/spectrum-illustrations"
57+
"packages/@react-spectrum/s2/spectrum-illustrations",
58+
"packages/dev/s2-docs/pages/**"
5859
],
5960
}, ...compat.extends("eslint:recommended"), {
6061
plugins: {
@@ -493,7 +494,7 @@ export default [{
493494
}],
494495
},
495496
}, {
496-
files: ["packages/@react-spectrum/s2/**"],
497+
files: ["packages/@react-spectrum/s2/**", "packages/dev/s2-docs/**"],
497498

498499
rules: {
499500
"react/react-in-jsx-scope": OFF,

package.json

Lines changed: 25 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,11 @@
2222
"build:chromatic-fc": "CHROMATIC=1 storybook build -c .chromatic-fc -o dist/$(git rev-parse HEAD)/chromatic-fc",
2323
"start:s2": "NODE_ENV=storybook storybook dev -p 6006 --ci -c '.storybook-s2'",
2424
"build:storybook-s2": "NODE_ENV=storybook storybook build -c .storybook-s2 -o dist/$(git rev-parse HEAD)/storybook-s2",
25-
"build:s2-docs": "NODE_ENV=storybook storybook build -c .storybook-s2 --docs",
25+
"build:s2-storybook-docs": "NODE_ENV=storybook storybook build -c .storybook-s2 --docs",
2626
"start:docs": "DOCS_ENV=dev parcel 'packages/@react-{spectrum,aria,stately}/*/docs/*.mdx' 'packages/react-aria-components/docs/**/*.mdx' 'packages/@internationalized/*/docs/*.mdx' 'packages/dev/docs/pages/**/*.mdx'",
2727
"build:docs": "DOCS_ENV=staging parcel build 'packages/@react-{spectrum,aria,stately}/*/docs/*.mdx' 'packages/react-aria-components/docs/**/*.mdx' 'packages/@internationalized/*/docs/*.mdx' 'packages/dev/docs/pages/**/*.mdx'",
28+
"start:s2-docs": "yarn workspace @react-spectrum/s2-docs start",
29+
"build:s2-docs": "yarn workspace @react-spectrum/s2-docs build",
2830
"test": "cross-env STRICT_MODE=1 VIRT_ON=1 yarn jest",
2931
"test:lint": "node packages/**/*.test-lint.js",
3032
"test-loose": "cross-env VIRT_ON=1 yarn jest",
@@ -85,19 +87,21 @@
8587
"@faker-js/faker": "^8.4.1",
8688
"@jdb8/eslint-plugin-monorepo": "^1.0.1",
8789
"@octokit/rest": "*",
88-
"@parcel/bundler-library": "^2.14.0",
89-
"@parcel/config-default": "^2.14.0",
90-
"@parcel/config-storybook": "0.0.2",
91-
"@parcel/core": "^2.14.0",
92-
"@parcel/optimizer-data-url": "^2.14.0",
93-
"@parcel/optimizer-terser": "^2.14.0",
94-
"@parcel/packager-ts": "^2.14.0",
95-
"@parcel/reporter-cli": "^2.14.0",
96-
"@parcel/resolver-glob": "^2.14.0",
97-
"@parcel/transformer-inline": "^2.14.0",
98-
"@parcel/transformer-inline-string": "^2.14.0",
99-
"@parcel/transformer-svg-react": "^2.14.0",
100-
"@parcel/transformer-typescript-types": "^2.14.0",
90+
"@parcel/bundler-library": "^2.15.4",
91+
"@parcel/config-default": "^2.15.4",
92+
"@parcel/config-storybook": "^0.0.2",
93+
"@parcel/core": "^2.15.4",
94+
"@parcel/optimizer-data-url": "^2.15.4",
95+
"@parcel/optimizer-terser": "^2.15.4",
96+
"@parcel/packager-react-static": "^2.15.4",
97+
"@parcel/packager-ts": "^2.15.4",
98+
"@parcel/reporter-cli": "^2.15.4",
99+
"@parcel/resolver-glob": "^2.15.4",
100+
"@parcel/transformer-inline": "^2.15.4",
101+
"@parcel/transformer-inline-string": "^2.15.4",
102+
"@parcel/transformer-react-static": "^2.15.4",
103+
"@parcel/transformer-svg-react": "^2.15.4",
104+
"@parcel/transformer-typescript-types": "^2.15.4",
101105
"@react-spectrum/parcel-namer-s2": "^0.3.0",
102106
"@react-spectrum/s2-icon-builder": "^0.3.0",
103107
"@spectrum-css/component-builder": "workspace:^",
@@ -122,7 +126,7 @@
122126
"@stylistic/eslint-plugin-ts": "^2.9.0",
123127
"@swc/core": "^1.3.36",
124128
"@swc/jest": "^0.2.36",
125-
"@tailwindcss/postcss": "^4.0.0",
129+
"@tailwindcss/postcss": "^4.0.17",
126130
"@testing-library/dom": "^10.1.0",
127131
"@testing-library/jest-dom": "^5.16.5",
128132
"@testing-library/react": "^16.0.0",
@@ -178,7 +182,7 @@
178182
"npm-cli-login": "^1.0.0",
179183
"nyc": "^10.2.0",
180184
"p-queue": "^6.2.1",
181-
"parcel": "^2.14.0",
185+
"parcel": "^2.15.4",
182186
"parcel-optimizer-strict-mode": "workspace:^",
183187
"patch-package": "^6.2.0",
184188
"playwright": "^1.45.3",
@@ -222,9 +226,6 @@
222226
"@babel/preset-env": "7.24.4",
223227
"@babel/traverse": "7.24.1",
224228
"@babel/types": "7.24.0",
225-
"@parcel/transformer-react-refresh-wrap": "2.14.0",
226-
"@parcel/transformer-js": "2.14.0",
227-
"@parcel/codeframe": "2.14.0",
228229
"postcss": "8.4.24",
229230
"postcss-custom-properties": "13.2.0",
230231
"postcss-import": "15.1.0",
@@ -242,7 +243,8 @@
242243
"@types/node@npm:>= 8": "^22",
243244
"micromark-extension-mdxjs": "patch:micromark-extension-mdxjs@npm%3A1.0.0#~/.yarn/patches/micromark-extension-mdxjs-npm-1.0.0-d2b6b69e4a.patch",
244245
"remark-mdx": "patch:remark-mdx@npm%3A2.0.0-rc.2#~/.yarn/patches/remark-mdx-npm-2.0.0-rc.2-7a71234e1f.patch",
245-
"remark-parse": "patch:remark-parse@npm%3A10.0.1#~/.yarn/patches/remark-parse-npm-10.0.1-e654d7df78.patch"
246+
"remark-parse": "patch:remark-parse@npm%3A10.0.1#~/.yarn/patches/remark-parse-npm-10.0.1-e654d7df78.patch",
247+
"lightningcss": "1.30.1"
246248
},
247249
"@parcel/transformer-css": {
248250
"cssModules": {
@@ -256,7 +258,9 @@
256258
"packages/@react-spectrum/color/src/*.tsx",
257259
"packages/@react-spectrum/s2/**/*.{js,ts,tsx}",
258260
"packages/@react-spectrum/s2/stories/**",
259-
".storybook-s2/**"
261+
".storybook-s2/**",
262+
"packages/dev/s2-docs/**",
263+
"starters/**"
260264
]
261265
},
262266
"drafts": {

packages/@react-aria/breadcrumbs/docs/anatomy.svg

Lines changed: 1 addition & 1 deletion
Loading

packages/@react-aria/button/docs/ToggleButtonGroupAnatomy.svg

Lines changed: 1 addition & 1 deletion
Loading

packages/@react-aria/calendar/docs/calendar-anatomy.svg

Lines changed: 1 addition & 1 deletion
Loading

packages/@react-aria/calendar/docs/rangecalendar-anatomy.svg

Lines changed: 1 addition & 1 deletion
Loading

packages/@react-aria/checkbox/docs/checkbox-anatomy.svg

Lines changed: 1 addition & 1 deletion
Loading

packages/@react-aria/checkbox/docs/checkboxgroup-anatomy.svg

Lines changed: 1 addition & 1 deletion
Loading

packages/@react-aria/color/docs/ColorAreaAnatomy.svg

Lines changed: 1 addition & 1 deletion
Loading

packages/@react-aria/color/docs/ColorFieldAnatomy.svg

Lines changed: 1 addition & 1 deletion
Loading

packages/@react-aria/color/docs/ColorSliderAnatomy.svg

Lines changed: 1 addition & 1 deletion
Loading

packages/@react-aria/color/docs/ColorWheelAnatomy.svg

Lines changed: 1 addition & 1 deletion
Loading

packages/@react-aria/combobox/docs/anatomy.svg

Lines changed: 1 addition & 1 deletion
Loading

packages/@react-aria/datepicker/docs/datefield-anatomy.svg

Lines changed: 1 addition & 1 deletion
Loading

packages/@react-aria/datepicker/docs/datepicker-anatomy.svg

Lines changed: 1 addition & 1 deletion
Loading

packages/@react-aria/datepicker/docs/daterangepicker-anatomy.svg

Lines changed: 1 addition & 1 deletion
Loading

packages/@react-aria/datepicker/docs/timefield-anatomy.svg

Lines changed: 1 addition & 1 deletion
Loading

packages/@react-aria/dialog/docs/anatomy.svg

Lines changed: 1 addition & 1 deletion
Loading

packages/@react-aria/disclosure/docs/anatomy.svg

Lines changed: 1 addition & 1 deletion
Loading

0 commit comments

Comments
 (0)