chore(demos): move 4 demos under demos/editor/ per classification (SD-3217)#3397
Merged
Conversation
…-3217) First path-moves PR after #3395 (classification). Moves four demos into their classified homes under demos/editor/: - demos/custom-ui -> demos/editor/custom-ui (section: editor, subsection: custom-ui, kind: reference-workspace). - demos/chrome-extension -> demos/editor/integrations/chrome-extension (section: editor, subsection: integrations, kind: integration-example). - demos/word-addin -> demos/editor/integrations/word-addin (section: editor, subsection: integrations, kind: integration-example). - demos/docx-from-html -> demos/editor/superdoc/docx-from-html (section: editor, subsection: superdoc, kind: minimal-example). Each old path gets a shim README pointing at the new location, in the same shape as the existing demos/{react, vue, vanilla, cdn, custom-mark, custom-node} shims. Updated alongside the moves: - demos/manifest.json: sourcePath updated to the new paths for the four entries. No other field changed. - pnpm-workspace.yaml: added demos/*/*/* and demos/*/*/*/* globs so pnpm picks up the nested workspaces. Old globs (demos/*, demos/*/*) kept for the shim slots. - apps/docs/document-api/migration.mdx, apps/docs/editor/custom-ui/overview.mdx, apps/docs/editor/custom-ui/context-menu.mdx: 3 link references to github.com/.../demos/custom-ui repointed to the new path. The other three moved entries had no inbound docs links to update. Validator (bun scripts/validate-examples-demos.ts) passes. Zero em-dashes in any new shim README. Stacks on caio-pizzol/manifest-classification (#3395); merge order matters.
CI failed on PR #3397 build job with ERR_PNPM_OUTDATED_LOCKFILE. git mv changed the workspace paths under demos/editor/* but the lockfile still referenced the old paths, so pnpm install --frozen-lockfile failed in CI. Regenerated with 'pnpm install' locally and verified 'pnpm install --frozen-lockfile' now passes. No dependency changes; the lockfile delta is path-keyed updates for the four moved workspaces (custom-ui, chrome-extension, word-addin, docx-from-html).
The playwright config hard-coded demos/<id>/, which breaks every time a demo moves. Read demos/manifest.json and look up sourcePath by id so the smoke matrix follows the manifest as source of truth. Also drop archived demos from the smoke matrix (docxtemplater, fields, loading-from-json, text-selection, toolbar) that #3391 removed from the manifest. Replace fields with fields-source, the local rename.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stacked on #3395 (manifest classification). Merge #3395 first.
First path-moves PR after the classification landed. Moves four demos into their classified homes under
demos/editor/, with shim READMEs at the old paths so any external GitHub links keep working through a retention window.Moves
demos/custom-uidemos/editor/custom-uieditor/custom-ui/reference-workspacedemos/chrome-extensiondemos/editor/integrations/chrome-extensioneditor/integrations/integration-exampledemos/word-addindemos/editor/integrations/word-addineditor/integrations/integration-exampledemos/docx-from-htmldemos/editor/superdoc/docx-from-htmleditor/superdoc/minimal-exampleAll moves done with
git mvso the rename history is preserved.What this PR also updates
demos/manifest.json—sourcePathupdated to the new paths for the four entries. No other fields touched (classification was done in chore(manifest): classify demos and examples with section/kind/status (SD-3217) #3395).pnpm-workspace.yaml— addeddemos/*/*/*anddemos/*/*/*/*globs so pnpm picks up the nested workspaces. Old globs (demos/*,demos/*/*) kept for the shim slots.demos/{react, vue, vanilla, cdn, custom-mark, custom-node}shims.github.com/.../demos/custom-uirepointed to the new path:apps/docs/document-api/migration.mdxapps/docs/editor/custom-ui/overview.mdxapps/docs/editor/custom-ui/context-menu.mdxVerified before push
bun scripts/validate-examples-demos.ts: passes (including thesourceKind/sourceRepocross-check from chore(manifest): classify demos and examples with section/kind/status (SD-3217) #3395).grep -rn 'demos/{custom-ui,chrome-extension,word-addin,docx-from-html}' apps/docs/returns zero stale paths.demos/editor/:Notable
demos/editor/integrations/chrome-extension/has a nestedchrome-extension/directory inside it (the wrapper-vs-extension-package split from Round 2). That's the original layout, not introduced by this move.Sibling PR risk
apps/docs/document-api/features/anchored-metadata.mdx(SD-3209, PR #3387) links todemos/custom-uiat four places. After this PR + #3387 both merge, those links will dead-end. Easy fix in a follow-up; not blocking either PR individually.Next stacked PRs
demos/ai/*:slack-redlining,collaborative-agentdemos/solutions/*:contract-templates,grading-papers,fields-sourcedemos/advanced/*:html-editor,linked-sectionsexamples/document-engine/document-api/*(relocate the 2 existing Document API examples)demos/nextjs-ssrintoexamples/getting-started/nextjs