@terra-symposium/docs 0.1.71 → 0.1.72

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/README.md +23 -4
  2. package/bin/terra-docs.mjs +187 -0
  3. package/lib-dist/components/NotFound.js +2 -2
  4. package/lib-dist/components/NotFound.js.map +1 -1
  5. package/lib-dist/components/StaticWorkspace.d.ts.map +1 -1
  6. package/lib-dist/components/StaticWorkspace.js +6 -0
  7. package/lib-dist/components/StaticWorkspace.js.map +1 -1
  8. package/lib-dist/components/navigation.d.ts +1 -0
  9. package/lib-dist/components/navigation.d.ts.map +1 -1
  10. package/lib-dist/components/navigation.js.map +1 -1
  11. package/lib-dist/components/terra/Workspace.d.ts.map +1 -1
  12. package/lib-dist/components/terra/Workspace.js.map +1 -1
  13. package/lib-dist/components/terra/editor/TerraContentEditor.d.ts +2 -1
  14. package/lib-dist/components/terra/editor/TerraContentEditor.d.ts.map +1 -1
  15. package/lib-dist/components/terra/editor/TerraContentEditor.js +2 -2
  16. package/lib-dist/components/terra/editor/TerraContentEditor.js.map +1 -1
  17. package/lib-dist/components/terra/editor/_blocks.d.ts.map +1 -1
  18. package/lib-dist/components/terra/editor/_blocks.js +5 -5
  19. package/lib-dist/components/terra/editor/_blocks.js.map +1 -1
  20. package/lib-dist/components/terra/editor/docs/BlockContext.js +1 -1
  21. package/lib-dist/components/terra/editor/docs/BlockContext.js.map +1 -1
  22. package/lib-dist/components/terra/editor/docs/DocsAttachmentPicker.js +1 -1
  23. package/lib-dist/components/terra/editor/docs/DocsAttachmentPicker.js.map +1 -1
  24. package/lib-dist/components/terra/editor/docs/TerraToolbar.js +1 -1
  25. package/lib-dist/components/terra/editor/docs/TerraToolbar.js.map +1 -1
  26. package/lib-dist/components/terra/editor/docs/_Callout.js +1 -1
  27. package/lib-dist/components/terra/editor/docs/_Callout.js.map +1 -1
  28. package/lib-dist/components/terra/editor/docs/_CodeBlock.d.ts.map +1 -1
  29. package/lib-dist/components/terra/editor/docs/_CodeBlock.js +4 -5
  30. package/lib-dist/components/terra/editor/docs/_CodeBlock.js.map +1 -1
  31. package/lib-dist/components/terra/editor/docs/_DocsCode.d.ts.map +1 -1
  32. package/lib-dist/components/terra/editor/docs/_DocsCode.js +4 -4
  33. package/lib-dist/components/terra/editor/docs/_DocsCode.js.map +1 -1
  34. package/lib-dist/components/terra/editor/docs/_DocsImage.js +3 -3
  35. package/lib-dist/components/terra/editor/docs/_DocsImage.js.map +1 -1
  36. package/lib-dist/components/terra/editor/docs/_Math.js +3 -3
  37. package/lib-dist/components/terra/editor/docs/_Math.js.map +1 -1
  38. package/lib-dist/components/terra/editor/docs/_Nodes.d.ts.map +1 -1
  39. package/lib-dist/components/terra/editor/docs/_Nodes.js.map +1 -1
  40. package/lib-dist/components/terra/editor/docs/_Table.js +2 -2
  41. package/lib-dist/components/terra/editor/docs/_Table.js.map +1 -1
  42. package/lib-dist/components/terra/editor/docs/_Tabs.js +1 -1
  43. package/lib-dist/components/terra/editor/docs/_Tabs.js.map +1 -1
  44. package/lib-dist/components/terra/editor/docs/_TsDocs.js +1 -1
  45. package/lib-dist/components/terra/editor/docs/_TsDocs.js.map +1 -1
  46. package/lib-dist/components/terra/flow/Nodes.d.ts +1 -2
  47. package/lib-dist/components/terra/flow/Nodes.d.ts.map +1 -1
  48. package/lib-dist/components/terra/flow/Nodes.js +3 -3
  49. package/lib-dist/components/terra/flow/Nodes.js.map +1 -1
  50. package/lib-dist/components/terra/flow/_chrome.d.ts +1 -3
  51. package/lib-dist/components/terra/flow/_chrome.d.ts.map +1 -1
  52. package/lib-dist/components/terra/flow/_chrome.js +5 -5
  53. package/lib-dist/components/terra/flow/_chrome.js.map +1 -1
  54. package/lib-dist/components/terra/pages/docs/_attachments.d.ts.map +1 -1
  55. package/lib-dist/components/terra/pages/docs/_attachments.js +7 -7
  56. package/lib-dist/components/terra/pages/docs/_attachments.js.map +1 -1
  57. package/lib-dist/components/terra/pages/docs/_blocks.d.ts.map +1 -1
  58. package/lib-dist/components/terra/pages/docs/_blocks.js +5 -5
  59. package/lib-dist/components/terra/pages/docs/_blocks.js.map +1 -1
  60. package/lib-dist/components/terra/pages/docs/_editable.d.ts +1 -2
  61. package/lib-dist/components/terra/pages/docs/_editable.d.ts.map +1 -1
  62. package/lib-dist/components/terra/pages/docs/_editable.js +2 -2
  63. package/lib-dist/components/terra/pages/docs/_editable.js.map +1 -1
  64. package/lib-dist/components/terra/pages/docs/_export-dialog.js +5 -5
  65. package/lib-dist/components/terra/pages/docs/_export-dialog.js.map +1 -1
  66. package/lib-dist/components/terra/pages/docs/_main.d.ts.map +1 -1
  67. package/lib-dist/components/terra/pages/docs/_main.js +11 -11
  68. package/lib-dist/components/terra/pages/docs/_main.js.map +1 -1
  69. package/lib-dist/components/terra/pages/docs/_manage-attachments-dialog.js +1 -1
  70. package/lib-dist/components/terra/pages/docs/_manage-attachments-dialog.js.map +1 -1
  71. package/lib-dist/components/terra/pages/docs/_sidebar.d.ts.map +1 -1
  72. package/lib-dist/components/terra/pages/docs/_sidebar.js +12 -12
  73. package/lib-dist/components/terra/pages/docs/_sidebar.js.map +1 -1
  74. package/lib-dist/components/terra/pages/docs/_toc.d.ts.map +1 -1
  75. package/lib-dist/components/terra/pages/docs/_toc.js +1 -1
  76. package/lib-dist/components/terra/pages/docs/_toc.js.map +1 -1
  77. package/lib-dist/components/terra/pages/docs/_toolbar-find-replace.js +1 -1
  78. package/lib-dist/components/terra/pages/docs/_toolbar-find-replace.js.map +1 -1
  79. package/lib-dist/components/terra/pages/docs/_toolbar.d.ts +1 -2
  80. package/lib-dist/components/terra/pages/docs/_toolbar.d.ts.map +1 -1
  81. package/lib-dist/components/terra/pages/docs/_toolbar.js +12 -13
  82. package/lib-dist/components/terra/pages/docs/_toolbar.js.map +1 -1
  83. package/lib-dist/components/terra/pages/docs/_tree.d.ts +1 -4
  84. package/lib-dist/components/terra/pages/docs/_tree.d.ts.map +1 -1
  85. package/lib-dist/components/terra/pages/docs/_tree.js +3 -3
  86. package/lib-dist/components/terra/pages/docs/_tree.js.map +1 -1
  87. package/lib-dist/components/terra/ui.d.ts +1 -1
  88. package/lib-dist/components/terra/ui.d.ts.map +1 -1
  89. package/lib-dist/components/terra/ui.js +1 -1
  90. package/lib-dist/components/terra/ui.js.map +1 -1
  91. package/lib-dist/lib/markdown-model.d.ts.map +1 -1
  92. package/lib-dist/lib/markdown-model.js +7 -8
  93. package/lib-dist/lib/markdown-model.js.map +1 -1
  94. package/lib-dist/lib/terra/docs/state.d.ts +0 -1
  95. package/lib-dist/lib/terra/docs/state.d.ts.map +1 -1
  96. package/lib-dist/lib/terra/docs/state.js +0 -1
  97. package/lib-dist/lib/terra/docs/state.js.map +1 -1
  98. package/lib-dist/lib/terra/docs/workspace.d.ts +1 -4
  99. package/lib-dist/lib/terra/docs/workspace.d.ts.map +1 -1
  100. package/lib-dist/lib/terra/docs/workspace.js +0 -1
  101. package/lib-dist/lib/terra/docs/workspace.js.map +1 -1
  102. package/lib-dist/lib/terra/flow/powerSource.d.ts +1 -2
  103. package/lib-dist/lib/terra/flow/powerSource.d.ts.map +1 -1
  104. package/lib-dist/lib/terra/flow/powerSource.js.map +1 -1
  105. package/lib-dist/lib/terra/runtime/content/document-markdown.d.ts.map +1 -1
  106. package/lib-dist/lib/terra/runtime/content/document-markdown.js.map +1 -1
  107. package/lib-dist/lib/terra/runtime/content/markdown.js.map +1 -1
  108. package/lib-dist/lib/terra/runtime/content.d.ts.map +1 -1
  109. package/lib-dist/lib/terra/runtime/content.js.map +1 -1
  110. package/lib-dist/lib/terra/runtime/nodes.d.ts.map +1 -1
  111. package/lib-dist/lib/terra/runtime/nodes.js.map +1 -1
  112. package/lib-dist/lib/workspace-types.d.ts +3 -0
  113. package/lib-dist/lib/workspace-types.d.ts.map +1 -1
  114. package/package.json +41 -34
  115. package/site/astro.config.mjs +67 -0
  116. package/site/docs-content-plugin.mjs +62 -0
  117. package/site/src/components/DocsSiteSearch.tsx +108 -0
  118. package/site/src/lib/catalog.ts +151 -0
  119. package/site/src/pages/404.astro +38 -0
  120. package/site/src/pages/[...slug].astro +49 -0
  121. package/site/src/styles/search.css +56 -0
  122. package/src/components/NotFound.tsx +2 -2
  123. package/src/components/SiteLayout.astro +9 -1
  124. package/src/components/navigation.tsx +1 -0
  125. package/lib-dist/lib/docs-catalog.d.ts +0 -5
  126. package/lib-dist/lib/docs-catalog.d.ts.map +0 -1
  127. package/lib-dist/lib/docs-catalog.js +0 -75
  128. package/lib-dist/lib/docs-catalog.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"nodes.js","sourceRoot":"","sources":["../../../../src/lib/terra/runtime/nodes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nodes.js","sourceRoot":"","sources":["../../../../src/lib/terra/runtime/nodes.ts"],"names":[],"mappings":"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"}
@@ -13,17 +13,20 @@ export type DocsLeaf = {
13
13
  description?: string;
14
14
  updatedAt?: string;
15
15
  attachments?: DocsAttachment[];
16
+ hue?: number | null;
16
17
  };
17
18
  export type DocsGroup = {
18
19
  title: string;
19
20
  id?: string;
20
21
  path?: string;
22
+ hue?: number | null;
21
23
  leaves: DocsLeaf[];
22
24
  };
23
25
  export type DocsSection = {
24
26
  title: string;
25
27
  id?: string;
26
28
  path?: string;
29
+ hue?: number | null;
27
30
  groups: DocsGroup[];
28
31
  };
29
32
  //# sourceMappingURL=workspace-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-types.d.ts","sourceRoot":"","sources":["../../src/lib/workspace-types.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,MAAM,MAAM,cAAc,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAC3F,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;CAChC,CAAC;AACF,MAAM,MAAM,SAAS,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,QAAQ,EAAE,CAAA;CAAE,CAAC;AAC1F,MAAM,MAAM,WAAW,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,SAAS,EAAE,CAAA;CAAE,CAAC"}
1
+ {"version":3,"file":"workspace-types.d.ts","sourceRoot":"","sources":["../../src/lib/workspace-types.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,MAAM,MAAM,cAAc,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAC3F,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB,CAAC;AACF,MAAM,MAAM,SAAS,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,QAAQ,EAAE,CAAA;CAAE,CAAC;AAC/G,MAAM,MAAM,WAAW,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,SAAS,EAAE,CAAA;CAAE,CAAC"}
package/package.json CHANGED
@@ -1,14 +1,20 @@
1
1
  {
2
2
  "name": "@terra-symposium/docs",
3
- "version": "0.1.71",
4
- "description": "Reusable React document editor and viewer.",
5
- "repository": "https://github.com/Terra-Symposium/docs",
3
+ "version": "0.1.72",
4
+ "description": "Terra Docs workspace and Markdown site generator.",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "git+https://github.com/Terra-Symposium/docs.git"
8
+ },
6
9
  "type": "module",
10
+ "packageManager": "pnpm@10.30.3",
7
11
  "engines": {
8
12
  "node": ">=24.12.0"
9
13
  },
10
14
  "files": [
11
15
  "lib-dist",
16
+ "bin",
17
+ "site",
12
18
  "src/components/navigation.tsx",
13
19
  "src/components/SiteLayout.astro",
14
20
  "src/components/NotFound.astro",
@@ -31,38 +37,54 @@
31
37
  "./site-layout.astro": "./src/components/SiteLayout.astro",
32
38
  "./not-found.astro": "./src/components/NotFound.astro"
33
39
  },
34
- "peerDependencies": {
35
- "@terra-symposium/styling": "^0.1.24",
36
- "react": "^19.0.0",
37
- "react-dom": "^19.0.0"
40
+ "bin": {
41
+ "terra-docs": "bin/terra-docs.mjs"
42
+ },
43
+ "scripts": {
44
+ "dev": "terra-quality-dev -- vite --host 127.0.0.1 --open",
45
+ "docs:dev": "pnpm build && node bin/terra-docs.mjs dev --title 'Terra Docs'",
46
+ "docs:build": "pnpm build && node bin/terra-docs.mjs build --title 'Terra Docs'",
47
+ "docs:preview": "pnpm docs:build && node bin/terra-docs.mjs preview --title 'Terra Docs'",
48
+ "dev:library": "tsc --watch",
49
+ "build": "rm -rf lib-dist && tsc && tailwindcss --postcss tailwind.postcss.config.cjs -c tailwind.docs.config.mjs -i src/styles/style.css -o lib-dist/style.css --minify && tailwindcss --postcss tailwind.postcss.config.cjs -c tailwind.docs.config.mjs -i src/styles/workspace.css -o lib-dist/workspace.css --minify && node scripts/copy-runtime.mjs",
50
+ "build:demo": "vite build",
51
+ "typecheck": "tsc --noEmit && tsc -p tsconfig.demo.json",
52
+ "lint": "eslint .",
53
+ "format": "prettier --write .",
54
+ "format:check": "prettier --check .",
55
+ "check": "pnpm run format:check && pnpm run lint && pnpm run typecheck",
56
+ "test": "pnpm build && node --test test/*.test.mjs",
57
+ "test:browser": "pnpm docs:build && node scripts/acquire-playwright-port.mjs && playwright test",
58
+ "test:report:slides": "node scripts/generate-screenshot-deck.mjs",
59
+ "prepare": "husky",
60
+ "changeset": "changeset",
61
+ "version-packages": "changeset version"
38
62
  },
39
63
  "devDependencies": {
40
- "@astrojs/react": "^7.1.0",
41
64
  "@changesets/cli": "^3.0.3",
42
65
  "@eslint/js": "10.0.1",
43
66
  "@playwright/test": "^1.64.1",
44
- "@terra-symposium/styling": "file:vendor/terra-symposium-styling-parity-0.1.34.tgz",
67
+ "@terra-symposium/standards-reporting": "0.6.2",
45
68
  "@types/katex": "^0.16.8",
46
69
  "@types/node": "^24.19.2",
47
70
  "@types/react": "19.3.0",
48
71
  "@types/react-dom": "19.3.0",
49
72
  "@types/sanitize-html": "^2.16.2",
50
- "@terra-symposium/standards-quality": "file:vendor/terra-symposium-standards-quality-2.1.0.tgz",
73
+ "@terra-symposium/standards-quality": "2.1.0",
51
74
  "@vitejs/plugin-react": "6.1.2",
52
- "astro": "^7.4.2",
53
75
  "eslint": "10.13.0",
54
76
  "husky": "^9.1.7",
55
77
  "postcss": "8.5.31",
56
78
  "postcss-import": "15.1.0",
57
79
  "prettier": "3.9.10",
58
- "react": "19.3.1",
59
- "react-dom": "19.3.1",
60
80
  "tailwindcss": "^3.4.3",
61
81
  "typescript": "5.9.3",
62
82
  "typescript-eslint": "8.71.2",
63
83
  "vite": "8.3.4"
64
84
  },
65
85
  "dependencies": {
86
+ "@astrojs/mdx": "8.1.2",
87
+ "@astrojs/react": "^7.1.0",
66
88
  "@carbon/icons-react": "11.90.0",
67
89
  "@codemirror/commands": "^6.10.0",
68
90
  "@codemirror/lang-markdown": "^6.1.3",
@@ -78,34 +100,19 @@
78
100
  "@radix-ui/react-select": "2.4.1",
79
101
  "@uiw/codemirror-theme-github": "^4.25.9",
80
102
  "@xyflow/react": "^12.3.6",
103
+ "@terra-symposium/styling": "0.1.34",
104
+ "astro": "^7.4.2",
81
105
  "jszip": "^3.10.1",
82
106
  "katex": "^0.19.1",
83
107
  "lexical": "^0.35.0",
84
108
  "marked": "^18.1.1",
85
109
  "nanostores": "^1.3.0",
86
110
  "pdf-lib": "^1.17.1",
111
+ "react": "^19.3.1",
112
+ "react-dom": "^19.3.1",
87
113
  "sanitize-html": "^2.18.1",
88
114
  "sonner": "^1.4.41",
89
115
  "yaml": "^2.7.0"
90
116
  },
91
- "license": "Apache-2.0",
92
- "scripts": {
93
- "dev": "terra-quality-dev -- vite --host 127.0.0.1 --open",
94
- "docs:dev": "pnpm build && terra-quality-dev --port 4311 -- astro dev --host 127.0.0.1 --open",
95
- "docs:build": "pnpm build && astro build",
96
- "docs:preview": "pnpm docs:build && astro preview --host 127.0.0.1",
97
- "dev:library": "tsc --watch",
98
- "build": "rm -rf lib-dist && tsc && tailwindcss --postcss tailwind.postcss.config.cjs -c tailwind.docs.config.mjs -i src/styles/style.css -o lib-dist/style.css --minify && tailwindcss --postcss tailwind.postcss.config.cjs -c tailwind.docs.config.mjs -i src/styles/workspace.css -o lib-dist/workspace.css --minify && node scripts/copy-runtime.mjs",
99
- "build:demo": "vite build",
100
- "typecheck": "tsc --noEmit && tsc -p tsconfig.demo.json",
101
- "lint": "eslint .",
102
- "format": "prettier --write .",
103
- "format:check": "prettier --check .",
104
- "check": "pnpm run format:check && pnpm run lint && pnpm run typecheck",
105
- "test": "pnpm build && node --test test/*.test.mjs",
106
- "test:browser": "pnpm docs:build && node scripts/acquire-playwright-port.mjs && playwright test",
107
- "test:consumer": "playwright test --config=playwright.consumer.config.ts",
108
- "changeset": "changeset",
109
- "version-packages": "changeset version"
110
- }
111
- }
117
+ "license": "Apache-2.0"
118
+ }
@@ -0,0 +1,67 @@
1
+ import { fileURLToPath } from 'node:url';
2
+ import { resolve } from 'node:path';
3
+ import { readFileSync } from 'node:fs';
4
+ import { createRequire } from 'node:module';
5
+ import { defineConfig } from 'astro/config';
6
+ import mdx from '@astrojs/mdx';
7
+ import react from '@astrojs/react';
8
+ import { docsContentPlugin } from './docs-content-plugin.mjs';
9
+
10
+ const packageRoot = fileURLToPath(new URL('../', import.meta.url));
11
+ const requireFromPackage = createRequire(import.meta.url);
12
+ const projectRoot = process.env.TERRA_DOCS_ROOT ?? process.cwd();
13
+ const publicDir = resolve(projectRoot, '.terra-docs/public');
14
+ const outDir = resolve(projectRoot, process.env.TERRA_DOCS_OUT ?? 'docs-dist');
15
+ const site = process.env.TERRA_DOCS_SITE;
16
+ const projectManifest = (() => {
17
+ try {
18
+ return JSON.parse(readFileSync(resolve(projectRoot, 'package.json'), 'utf8'));
19
+ } catch {
20
+ return {};
21
+ }
22
+ })();
23
+
24
+ function packageExportAliases() {
25
+ if (!projectManifest.name || !projectManifest.exports) return [];
26
+ const escapeRegex = (value) => value.replace(/[|\\{}()[\]^$+?.]/g, '\\$&');
27
+ return Object.entries(projectManifest.exports).flatMap(([key, value]) => {
28
+ const target = typeof value === 'string' ? value : value?.import ?? value?.default;
29
+ if (!target?.startsWith('./')) return [];
30
+ const prefix = projectManifest.name + (key === '.' ? '' : key.slice(1));
31
+ if (key.includes('*')) {
32
+ const matcher = new RegExp(`^${escapeRegex(prefix).replace('*', '(.+)')}$`);
33
+ return [{ find: matcher, replacement: resolve(projectRoot, target.replace('*', '$1')) }];
34
+ }
35
+ return [{ find: new RegExp(`^${escapeRegex(prefix)}$`), replacement: resolve(projectRoot, target) }];
36
+ });
37
+ }
38
+
39
+ const packageDependencyResolver = {
40
+ name: 'terra-docs-package-dependencies',
41
+ enforce: 'pre',
42
+ resolveId(source) {
43
+ if (!/^(?:astro|@astrojs\/(?:mdx|react))(?:\/|$)/.test(source)) return null;
44
+ try {
45
+ return requireFromPackage.resolve(source);
46
+ } catch {
47
+ return null;
48
+ }
49
+ },
50
+ };
51
+
52
+ export default defineConfig({
53
+ root: projectRoot,
54
+ srcDir: resolve(packageRoot, 'site/src'),
55
+ publicDir,
56
+ outDir,
57
+ ...(site ? { site } : {}),
58
+ base: process.env.TERRA_DOCS_BASE ?? '/',
59
+ devToolbar: { enabled: false },
60
+ build: { format: 'directory' },
61
+ integrations: [react(), mdx()],
62
+ vite: {
63
+ plugins: [packageDependencyResolver, docsContentPlugin({ root: projectRoot, base: process.env.TERRA_DOCS_BASE ?? '/' })],
64
+ resolve: { alias: packageExportAliases() },
65
+ server: { fs: { allow: [projectRoot, packageRoot] } },
66
+ },
67
+ });
@@ -0,0 +1,62 @@
1
+ import { existsSync } from 'node:fs';
2
+ import { extname, relative, resolve, sep } from 'node:path';
3
+
4
+ const markdownExtensions = new Set(['.md', '.mdx']);
5
+
6
+ function publicRoute(file, docsRoot, base) {
7
+ const path = relative(docsRoot, file).split(sep).join('/').replace(/\.(?:md|mdx)$/i, '');
8
+ const route = path.replace(/(?:^|\/)index$/i, '').replace(/^\/+|\/+$/g, '');
9
+ return `${base}${route ? `${route}/` : ''}`;
10
+ }
11
+
12
+ function rewriteTarget(rawTarget, sourceFile, docsRoot, base) {
13
+ const target = rawTarget.trim();
14
+ if (!target || /^(?:[a-z][a-z\d+.-]*:|\/\/|\/|#)/i.test(target)) return rawTarget;
15
+ const match = /^(<[^>]+>|[^\s]+)([\s\S]*)$/.exec(target);
16
+ if (!match) return rawTarget;
17
+ const bracketed = match[1].startsWith('<') && match[1].endsWith('>');
18
+ const pathname = bracketed ? match[1].slice(1, -1) : match[1];
19
+ const suffix = match[2];
20
+ const [filePath, ...hashParts] = pathname.split('#');
21
+ const [cleanPath, ...queryParts] = filePath.split('?');
22
+ let resolvedPath;
23
+ try {
24
+ resolvedPath = resolve(sourceFile, '..', decodeURIComponent(cleanPath));
25
+ } catch {
26
+ return rawTarget;
27
+ }
28
+ const relativePath = relative(docsRoot, resolvedPath);
29
+ if (relativePath.startsWith(`..${sep}`) || relativePath === '..' || !existsSync(resolvedPath)) return rawTarget;
30
+ const extension = extname(resolvedPath).toLowerCase();
31
+ const fragment = hashParts.length ? `#${hashParts.join('#')}` : '';
32
+ const query = queryParts.length ? `?${queryParts.join('?')}` : '';
33
+ const rewritten = markdownExtensions.has(extension)
34
+ ? publicRoute(resolvedPath, docsRoot, base)
35
+ : `${base}_terra-docs/assets/${relativePath.split(sep).join('/')}`;
36
+ return `${bracketed ? `<${rewritten}${query}${fragment}>` : `${rewritten}${query}${fragment}`}${suffix}`;
37
+ }
38
+
39
+ function mapOutsideCode(source, callback) {
40
+ const sections = source.split(/(```[\s\S]*?```|~~~[\s\S]*?~~~)/g);
41
+ return sections.map((section, index) => index % 2 ? section : callback(section)).join('');
42
+ }
43
+
44
+ export function docsContentPlugin({ root, base }) {
45
+ const docsRoot = resolve(root, 'docs');
46
+ return {
47
+ name: 'terra-docs-content-assets',
48
+ enforce: 'pre',
49
+ transform(source, id) {
50
+ if (id.includes('?') || !markdownExtensions.has(extname(id).toLowerCase())) return null;
51
+ const sourceFile = resolve(id);
52
+ const relativePath = relative(docsRoot, sourceFile);
53
+ if (relativePath.startsWith(`..${sep}`) || relativePath === '..') return null;
54
+ const withMarkdownLinks = source.replace(/(!?\[[^\]]*\]\()([^)]+)(\))/g, (_full, before, target, after) =>
55
+ `${before}${rewriteTarget(target, sourceFile, docsRoot, base)}${after}`,
56
+ );
57
+ return mapOutsideCode(withMarkdownLinks, (section) => section.replace(/\b(src|href)=(['"])(.*?)\2/g, (full, attribute, quote, target) =>
58
+ `${attribute}=${quote}${rewriteTarget(target, sourceFile, docsRoot, base)}${quote}`,
59
+ ));
60
+ },
61
+ };
62
+ }
@@ -0,0 +1,108 @@
1
+ import { useEffect, useMemo, useRef, useState } from 'react';
2
+
3
+ type SearchDocument = {
4
+ title: string;
5
+ description: string;
6
+ href: string;
7
+ text: string;
8
+ };
9
+
10
+ type Props = { base?: string };
11
+
12
+ function excerpt(text: string, query: string): string {
13
+ const normalized = text.replace(/\s+/g, ' ').trim();
14
+ const offset = normalized.toLowerCase().indexOf(query.toLowerCase());
15
+ const start = Math.max(0, offset - 72);
16
+ const end = Math.min(normalized.length, start + 190);
17
+ return `${start > 0 ? '…' : ''}${normalized.slice(start, end)}${end < normalized.length ? '…' : ''}`;
18
+ }
19
+
20
+ export function DocsSiteSearch({ base = '/' }: Props) {
21
+ const dialog = useRef<HTMLDialogElement>(null);
22
+ const input = useRef<HTMLInputElement>(null);
23
+ const [query, setQuery] = useState('');
24
+ const [documents, setDocuments] = useState<SearchDocument[]>([]);
25
+ const [loaded, setLoaded] = useState(false);
26
+ const [failed, setFailed] = useState(false);
27
+ const [opened, setOpened] = useState(false);
28
+ const normalizedBase = base.endsWith('/') ? base : `${base}/`;
29
+
30
+ const open = () => {
31
+ if (!dialog.current?.open) dialog.current?.showModal();
32
+ setOpened(true);
33
+ window.setTimeout(() => input.current?.focus(), 0);
34
+ };
35
+
36
+ useEffect(() => {
37
+ const onKeyDown = (event: KeyboardEvent) => {
38
+ if ((event.metaKey || event.ctrlKey) && event.key.toLowerCase() === 'k') {
39
+ event.preventDefault();
40
+ open();
41
+ } else if (event.key === '/' && !/input|textarea|select/i.test((event.target as HTMLElement)?.tagName ?? '')) {
42
+ event.preventDefault();
43
+ open();
44
+ }
45
+ };
46
+ document.addEventListener('keydown', onKeyDown);
47
+ return () => document.removeEventListener('keydown', onKeyDown);
48
+ }, []);
49
+
50
+ useEffect(() => {
51
+ if (!opened || loaded) return;
52
+ fetch(`${normalizedBase}_terra-docs/search-index.json`)
53
+ .then((response) => {
54
+ if (!response.ok) throw new Error(`Search index returned ${response.status}`);
55
+ return response.json() as Promise<SearchDocument[]>;
56
+ })
57
+ .then((data) => {
58
+ setDocuments(data);
59
+ setLoaded(true);
60
+ })
61
+ .catch(() => setFailed(true));
62
+ }, [loaded, normalizedBase, opened]);
63
+
64
+ const results = useMemo(() => {
65
+ const terms = query.toLowerCase().trim().split(/\s+/).filter(Boolean);
66
+ if (!terms.length) return [];
67
+ return documents
68
+ .map((document) => {
69
+ const title = document.title.toLowerCase();
70
+ const text = `${document.description} ${document.text}`.toLowerCase();
71
+ const matches = terms.filter((term) => title.includes(term) || text.includes(term));
72
+ const score = matches.length * 10 + terms.filter((term) => title.includes(term)).length * 5;
73
+ return { document, score };
74
+ })
75
+ .filter((result) => result.score > 0)
76
+ .sort((left, right) => right.score - left.score || left.document.title.localeCompare(right.document.title))
77
+ .slice(0, 10);
78
+ }, [documents, query]);
79
+
80
+ return (
81
+ <div className="terra-docs-search">
82
+ <button className="terra-docs-search-trigger" type="button" onClick={open} aria-label="Search documentation">
83
+ <span aria-hidden="true">⌕</span><span>Search docs</span><kbd>⌘ K</kbd>
84
+ </button>
85
+ <dialog className="terra-docs-search-dialog" ref={dialog} onClose={() => setQuery('')}>
86
+ <div className="terra-docs-search-panel">
87
+ <label className="terra-docs-search-input-row">
88
+ <span aria-hidden="true">⌕</span>
89
+ <input ref={input} value={query} onChange={(event) => setQuery(event.currentTarget.value)} placeholder="Search documentation…" />
90
+ <button type="button" onClick={() => dialog.current?.close()} aria-label="Close search">Esc</button>
91
+ </label>
92
+ <div className="terra-docs-search-results" aria-live="polite">
93
+ {failed ? <p>Search is unavailable right now.</p> : null}
94
+ {!loaded && !failed ? <p>Loading search…</p> : null}
95
+ {loaded && query.trim() && results.length === 0 ? <p>No matching pages.</p> : null}
96
+ {results.map(({ document }) => (
97
+ <a key={document.href} href={document.href} onClick={() => dialog.current?.close()}>
98
+ <strong>{document.title}</strong>
99
+ {document.description ? <span>{document.description}</span> : null}
100
+ <small>{excerpt(document.text, query.trim().split(/\s+/)[0] ?? query)}</small>
101
+ </a>
102
+ ))}
103
+ </div>
104
+ </div>
105
+ </dialog>
106
+ </div>
107
+ );
108
+ }
@@ -0,0 +1,151 @@
1
+ /// <reference types="vite/client" />
2
+
3
+ import type { DocsNavNode } from '../../../src/components/navigation.js';
4
+
5
+ type SidebarFrontmatter = {
6
+ label?: string;
7
+ order?: number;
8
+ hidden?: boolean;
9
+ };
10
+
11
+ type DocsFrontmatter = {
12
+ title?: string;
13
+ description?: string;
14
+ hue?: number | null;
15
+ label?: string;
16
+ order?: number;
17
+ hidden?: boolean;
18
+ visibility?: 'visible' | 'hidden';
19
+ sidebar?: SidebarFrontmatter;
20
+ };
21
+
22
+ type ContentModule = {
23
+ Content?: unknown;
24
+ default?: unknown;
25
+ frontmatter?: DocsFrontmatter;
26
+ };
27
+
28
+ export type SitePage = {
29
+ file: string;
30
+ slug: string;
31
+ title: string;
32
+ sidebarLabel?: string;
33
+ description: string;
34
+ hue?: number | null;
35
+ hidden: boolean;
36
+ order: number;
37
+ content: unknown;
38
+ markdown: string;
39
+ };
40
+
41
+ const modules = import.meta.glob<ContentModule>('/docs/**/*.{md,mdx}', { eager: true });
42
+ const sources = import.meta.glob<string>('/docs/**/*.{md,mdx}', {
43
+ query: '?raw',
44
+ import: 'default',
45
+ eager: true,
46
+ });
47
+ const base = import.meta.env.BASE_URL;
48
+
49
+ function titleFromSource(source: string, slug: string): string {
50
+ const body = source.replace(/^---\s*\n[\s\S]*?\n---\s*\n/, '');
51
+ const heading = /^#\s+(.+?)\s*#*\s*$/m.exec(body)?.[1]?.trim();
52
+ if (heading) return heading;
53
+ const name = slug.split('/').at(-1) || 'Overview';
54
+ return name.replace(/[-_]+/g, ' ').replace(/\b\p{L}/gu, (letter) => letter.toUpperCase());
55
+ }
56
+
57
+ function routeForFile(file: string): string {
58
+ const relative = file.replace(/^\/?docs\//, '').replace(/\.(?:md|mdx)$/i, '');
59
+ return relative.replace(/(?:^|\/)index$/i, '').replace(/^\/+|\/+$/g, '');
60
+ }
61
+
62
+ const routes = new Map<string, string>();
63
+ export const sitePages: SitePage[] = Object.entries(modules)
64
+ .map(([file, module]) => {
65
+ const slug = routeForFile(file);
66
+ const previous = routes.get(slug);
67
+ if (previous) {
68
+ throw new Error(`Duplicate Docs route "${slug || '/'}": ${previous} and ${file}`);
69
+ }
70
+ routes.set(slug, file);
71
+ const markdown = sources[file] ?? '';
72
+ const frontmatter = module.frontmatter ?? {};
73
+ return {
74
+ file,
75
+ slug,
76
+ title: frontmatter.title ?? titleFromSource(markdown, slug),
77
+ ...((frontmatter.sidebar?.label ?? frontmatter.label) ? { sidebarLabel: frontmatter.sidebar?.label ?? frontmatter.label } : {}),
78
+ description: frontmatter.description ?? '',
79
+ ...(frontmatter.hue !== undefined ? { hue: frontmatter.hue } : {}),
80
+ hidden: frontmatter.sidebar?.hidden ?? frontmatter.hidden ?? frontmatter.visibility === 'hidden',
81
+ order: frontmatter.sidebar?.order ?? frontmatter.order ?? Number.MAX_SAFE_INTEGER,
82
+ content: module.Content ?? module.default,
83
+ markdown: markdown.replace(/^---\s*\n[\s\S]*?\n---\s*\n/, ''),
84
+ };
85
+ })
86
+ .sort((left, right) => left.order - right.order || left.file.localeCompare(right.file));
87
+
88
+ if (sitePages.length === 0) {
89
+ throw new Error('No Markdown files found in docs/. Add docs/index.md to start a Terra Docs site.');
90
+ }
91
+
92
+ type MutableNode = Omit<DocsNavNode, 'children'> & { children: Map<string, MutableNode> };
93
+ const rootNodes = new Map<string, MutableNode>();
94
+
95
+ function label(value: string): string {
96
+ return value.replace(/[-_]+/g, ' ').replace(/\b\p{L}/gu, (letter) => letter.toUpperCase());
97
+ }
98
+
99
+ for (const page of sitePages.filter((item) => !item.hidden && item.slug !== '404')) {
100
+ const segments = page.slug.split('/').filter(Boolean);
101
+ let currentNodes = rootNodes;
102
+ let current: MutableNode | undefined;
103
+ let prefix = '';
104
+ if (segments.length === 0) {
105
+ const overview = currentNodes.get('overview') ?? {
106
+ id: 'overview', title: 'Overview', children: new Map(),
107
+ };
108
+ if (!currentNodes.has('overview')) currentNodes.set('overview', overview);
109
+ Object.assign(overview, pageMetadata(page, pageHref('', base)));
110
+ continue;
111
+ }
112
+ for (const segment of segments) {
113
+ prefix = prefix ? `${prefix}/${segment}` : segment;
114
+ let node = currentNodes.get(segment);
115
+ if (!node) {
116
+ node = { id: prefix, title: label(segment), children: new Map() };
117
+ currentNodes.set(segment, node);
118
+ }
119
+ current = node;
120
+ currentNodes = node.children;
121
+ }
122
+ if (current) Object.assign(current, pageMetadata(page, pageHref(page.slug, base)));
123
+ }
124
+
125
+ function pageMetadata(page: SitePage, href: string): Partial<MutableNode> {
126
+ return {
127
+ id: page.slug || 'index',
128
+ title: page.sidebarLabel ?? page.title,
129
+ href,
130
+ ...(page.description ? { description: page.description } : {}),
131
+ ...(page.hue !== undefined ? { hue: page.hue } : {}),
132
+ };
133
+ }
134
+
135
+ function materialize(nodes: Map<string, MutableNode>): DocsNavNode[] {
136
+ return [...nodes.values()].map(({ children, ...node }) => ({
137
+ ...node,
138
+ ...(children.size ? { children: materialize(children) } : {}),
139
+ }));
140
+ }
141
+
142
+ export const siteNavigation = materialize(rootNodes);
143
+
144
+ export function pageHref(slug: string, base = '/'): string {
145
+ const prefix = base === '/' ? '' : `/${base.replace(/^\/+|\/+$/g, '')}`;
146
+ return slug ? `${prefix}/${slug}/` : `${prefix}/`;
147
+ }
148
+
149
+ export function pageForSlug(slug: string): SitePage | undefined {
150
+ return sitePages.find((page) => page.slug === slug);
151
+ }