polen 0.10.0-next.13 → 0.10.0-next.15

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 (942) hide show
  1. package/README.md +13 -89
  2. package/build/api/api.d.ts +4 -4
  3. package/build/api/api.js +4 -4
  4. package/build/api/builder/builder.js +1 -9
  5. package/build/api/builder/builder.js.map +1 -1
  6. package/build/api/builder/index.d.ts +1 -1
  7. package/build/api/builder/index.js +1 -1
  8. package/build/api/config/config.d.ts +4 -4
  9. package/build/api/config/config.js +4 -4
  10. package/build/api/config/configurator.d.ts +89 -9
  11. package/build/api/config/configurator.d.ts.map +1 -1
  12. package/build/api/config/configurator.js +5 -5
  13. package/build/api/config/configurator.js.map +1 -1
  14. package/build/api/config/define.d.ts +1 -1
  15. package/build/api/config/index.d.ts +1 -1
  16. package/build/api/config/index.js +1 -1
  17. package/build/api/config/load.d.ts +1 -1
  18. package/build/api/config/load.d.ts.map +1 -1
  19. package/build/api/config/load.js +1 -12
  20. package/build/api/config/load.js.map +1 -1
  21. package/build/api/config/merge.d.ts +1 -1
  22. package/build/api/config/merge.d.ts.map +1 -1
  23. package/build/api/config/merge.js +1 -3
  24. package/build/api/config/merge.js.map +1 -1
  25. package/build/api/config-resolver/config-resolver.d.ts +2 -2
  26. package/build/api/config-resolver/config-resolver.js +2 -2
  27. package/build/api/config-resolver/index.d.ts +1 -1
  28. package/build/api/config-resolver/index.js +1 -1
  29. package/build/api/config-resolver/resolve.d.ts +3 -3
  30. package/build/api/config-resolver/resolve.js +4 -4
  31. package/build/api/config-resolver/vite.d.ts +1 -1
  32. package/build/api/content/$$.d.ts +6 -6
  33. package/build/api/content/$$.js +6 -6
  34. package/build/api/content/$.d.ts +1 -1
  35. package/build/api/content/$.js +1 -1
  36. package/build/api/content/navbar.d.ts +1 -1
  37. package/build/api/content/navbar.js +2 -2
  38. package/build/api/content/page.d.ts +1 -1
  39. package/build/api/content/scan.d.ts +1 -1
  40. package/build/api/content/scan.js +7 -7
  41. package/build/api/content/sidebar.d.ts +5 -5
  42. package/build/api/content/sidebar.d.ts.map +1 -1
  43. package/build/api/content/sidebar.js +14 -14
  44. package/build/api/content/sidebar.js.map +1 -1
  45. package/build/api/index.d.ts +1 -1
  46. package/build/api/index.js +1 -1
  47. package/build/api/schema/data-sources/data-sources.d.ts +3 -3
  48. package/build/api/schema/data-sources/data-sources.js +3 -3
  49. package/build/api/schema/data-sources/index.d.ts +1 -1
  50. package/build/api/schema/data-sources/index.js +1 -1
  51. package/build/api/schema/data-sources/memory/memory.d.ts +36 -1
  52. package/build/api/schema/data-sources/memory/memory.d.ts.map +1 -1
  53. package/build/api/schema/data-sources/memory/memory.js.map +1 -1
  54. package/build/api/schema/data-sources/schema-directory/file-name-expression/file-name-expression.js +0 -1
  55. package/build/api/schema/data-sources/schema-directory/file-name-expression/file-name-expression.js.map +1 -1
  56. package/build/api/schema/data-sources/schema-directory/file-name-expression/index.d.ts +1 -1
  57. package/build/api/schema/data-sources/schema-directory/file-name-expression/index.js +1 -1
  58. package/build/api/schema/data-sources/schema-directory/schema-directory.d.ts +30 -1
  59. package/build/api/schema/data-sources/schema-directory/schema-directory.d.ts.map +1 -1
  60. package/build/api/schema/data-sources/schema-directory/schema-directory.js +1 -1
  61. package/build/api/schema/data-sources/schema-directory/schema-directory.js.map +1 -1
  62. package/build/api/schema/data-sources/schema-file/schema-file.d.ts +20 -1
  63. package/build/api/schema/data-sources/schema-file/schema-file.d.ts.map +1 -1
  64. package/build/api/schema/data-sources/schema-file/schema-file.js.map +1 -1
  65. package/build/api/schema/index.d.ts +1 -1
  66. package/build/api/schema/index.js +1 -1
  67. package/build/api/schema/read.d.ts +43 -2
  68. package/build/api/schema/read.d.ts.map +1 -1
  69. package/build/api/schema/read.js +1 -1
  70. package/build/api/schema/read.js.map +1 -1
  71. package/build/api/schema/schema.d.ts +2 -2
  72. package/build/api/schema/schema.js +2 -2
  73. package/build/api/schema-augmentation/augmentations/description.d.ts +1 -1
  74. package/build/api/schema-augmentation/augmentations/description.js +1 -1
  75. package/build/api/schema-augmentation/index.d.ts +1 -1
  76. package/build/api/schema-augmentation/index.js +1 -1
  77. package/build/api/schema-augmentation/schema-augmentation.d.ts +1 -1
  78. package/build/api/schema-augmentation/schema-augmentation.d.ts.map +1 -1
  79. package/build/api/schema-augmentation/schema-augmentation.js +1 -2
  80. package/build/api/schema-augmentation/schema-augmentation.js.map +1 -1
  81. package/build/api/server/report-error.js +7 -5
  82. package/build/api/server/report-error.js.map +1 -1
  83. package/build/api/singletons/markdown/index.d.ts +1 -1
  84. package/build/api/singletons/markdown/index.js +1 -1
  85. package/build/api/singletons/markdown/markdown.d.ts.map +1 -1
  86. package/build/api/singletons/markdown/markdown.js +4 -22
  87. package/build/api/singletons/markdown/markdown.js.map +1 -1
  88. package/build/api/static/index.d.ts +1 -1
  89. package/build/api/static/index.js +1 -1
  90. package/build/api/static/manifest.js +3 -3
  91. package/build/api/static/rebase.d.ts +2 -2
  92. package/build/api/static/rebase.js +8 -8
  93. package/build/api/static/rebase.js.map +1 -1
  94. package/build/api/static/static.d.ts +2 -2
  95. package/build/api/static/static.js +2 -2
  96. package/build/api/utils/asset-url/index.d.ts +1 -1
  97. package/build/api/utils/asset-url/index.js +1 -1
  98. package/build/api/vite/logger.js +5 -5
  99. package/build/api/vite/plugins/{branding/index.d.ts → branding.d.ts} +1 -1
  100. package/build/api/vite/plugins/branding.d.ts.map +1 -0
  101. package/build/api/vite/plugins/{branding/index.js → branding.js} +9 -9
  102. package/build/api/vite/plugins/branding.js.map +1 -0
  103. package/build/api/vite/plugins/build.d.ts.map +1 -1
  104. package/build/api/vite/plugins/build.js +22 -24
  105. package/build/api/vite/plugins/build.js.map +1 -1
  106. package/build/api/vite/plugins/core.d.ts +2 -0
  107. package/build/api/vite/plugins/core.d.ts.map +1 -1
  108. package/build/api/vite/plugins/core.js +39 -42
  109. package/build/api/vite/plugins/core.js.map +1 -1
  110. package/build/api/vite/plugins/main.d.ts.map +1 -1
  111. package/build/api/vite/plugins/main.js +25 -23
  112. package/build/api/vite/plugins/main.js.map +1 -1
  113. package/build/api/vite/plugins/pages.d.ts +3 -5
  114. package/build/api/vite/plugins/pages.d.ts.map +1 -1
  115. package/build/api/vite/plugins/pages.js +18 -46
  116. package/build/api/vite/plugins/pages.js.map +1 -1
  117. package/build/api/vite/plugins/serve.d.ts.map +1 -1
  118. package/build/api/vite/plugins/serve.js +59 -10
  119. package/build/api/vite/plugins/serve.js.map +1 -1
  120. package/build/cli/commands/build.js +0 -1
  121. package/build/cli/commands/build.js.map +1 -1
  122. package/build/cli/commands/config/$default.d.ts +2 -0
  123. package/build/cli/commands/config/$default.d.ts.map +1 -0
  124. package/build/cli/commands/config/$default.js +7 -0
  125. package/build/cli/commands/config/$default.js.map +1 -0
  126. package/build/cli/commands/config/create.d.ts +2 -0
  127. package/build/cli/commands/config/create.d.ts.map +1 -0
  128. package/build/cli/commands/config/create.js +21 -0
  129. package/build/cli/commands/config/create.js.map +1 -0
  130. package/build/cli/commands/config.d.ts +3 -0
  131. package/build/cli/commands/config.d.ts.map +1 -0
  132. package/build/cli/commands/config.js +5 -0
  133. package/build/cli/commands/config.js.map +1 -0
  134. package/build/cli/commands/create.js +2 -3
  135. package/build/cli/commands/create.js.map +1 -1
  136. package/build/cli/commands/dev.js +0 -1
  137. package/build/cli/commands/dev.js.map +1 -1
  138. package/build/cli/commands/open.js +0 -1
  139. package/build/cli/commands/open.js.map +1 -1
  140. package/build/cli/commands/static/rebase.js +0 -1
  141. package/build/cli/commands/static/rebase.js.map +1 -1
  142. package/build/cli/commands/static.js +1 -1
  143. package/build/dep/graphql-inspector/index.d.ts +1 -1
  144. package/build/dep/graphql-inspector/index.js +1 -1
  145. package/build/dep/hono/hono.d.ts +1 -1
  146. package/build/dep/hono/hono.js +1 -1
  147. package/build/dep/hono/index.d.ts +1 -1
  148. package/build/dep/hono/index.js +1 -1
  149. package/build/dep/superjson/index.d.ts +1 -1
  150. package/build/dep/superjson/index.js +1 -1
  151. package/build/dep/tiny-globby/index.d.ts +1 -1
  152. package/build/dep/tiny-globby/index.js +1 -1
  153. package/build/dep/vite/index.d.ts +1 -1
  154. package/build/dep/vite/index.js +1 -1
  155. package/build/exports/components.d.ts +3 -3
  156. package/build/exports/components.d.ts.map +1 -1
  157. package/build/exports/components.js +3 -3
  158. package/build/exports/components.js.map +1 -1
  159. package/build/exports/index.d.ts +1 -1
  160. package/build/exports/index.js +1 -1
  161. package/build/lib/apple-touch-icon/index.d.ts +1 -1
  162. package/build/lib/apple-touch-icon/index.js +1 -1
  163. package/build/lib/errors/ContextualAggregateError.d.ts +1 -1
  164. package/build/lib/errors/ContextualAggregateError.js +1 -1
  165. package/build/lib/errors/ContextualError.d.ts +1 -1
  166. package/build/lib/errors/ErrorInternal.d.ts +2 -2
  167. package/build/lib/errors/ErrorInternal.js +1 -1
  168. package/build/lib/errors/errors.d.ts +4 -4
  169. package/build/lib/errors/errors.js +4 -4
  170. package/build/lib/errors/index.d.ts +1 -1
  171. package/build/lib/errors/index.js +1 -1
  172. package/build/lib/errors/types.d.ts +1 -1
  173. package/build/lib/extensible-data/index.d.ts +1 -1
  174. package/build/lib/extensible-data/index.js +1 -1
  175. package/build/lib/favicon/index.d.ts +1 -1
  176. package/build/lib/favicon/index.js +1 -1
  177. package/build/lib/file-router/diagnostic-reporter.d.ts +1 -1
  178. package/build/lib/file-router/diagnostic-reporter.js +9 -9
  179. package/build/lib/file-router/diagnostic-reporter.js.map +1 -1
  180. package/build/lib/file-router/file-router.d.ts +3 -3
  181. package/build/lib/file-router/file-router.js +3 -3
  182. package/build/lib/file-router/index.d.ts +1 -1
  183. package/build/lib/file-router/index.js +1 -1
  184. package/build/lib/file-router/linter.d.ts +5 -5
  185. package/build/lib/file-router/linter.js +7 -7
  186. package/build/lib/file-router/scan.d.ts +2 -2
  187. package/build/lib/file-router/scan.js +3 -3
  188. package/build/lib/grafaid/_Nodes.d.ts +1 -1
  189. package/build/lib/grafaid/_Nodes.js +1 -1
  190. package/build/lib/grafaid/document/OperationTypeNode.d.ts +1 -1
  191. package/build/lib/grafaid/document/OperationTypeNode.js +1 -1
  192. package/build/lib/grafaid/document/kind.d.ts +1 -1
  193. package/build/lib/grafaid/document/kind.js +1 -1
  194. package/build/lib/grafaid/document.d.ts +4 -4
  195. package/build/lib/grafaid/document.js +6 -6
  196. package/build/lib/grafaid/grafaid.d.ts +4 -4
  197. package/build/lib/grafaid/grafaid.js +4 -4
  198. package/build/lib/grafaid/graphql.d.ts +2 -2
  199. package/build/lib/grafaid/graphql.js +2 -2
  200. package/build/lib/grafaid/http/__.d.ts +1 -1
  201. package/build/lib/grafaid/http/__.js +1 -1
  202. package/build/lib/grafaid/http/http.js +1 -1
  203. package/build/lib/grafaid/index.d.ts +1 -1
  204. package/build/lib/grafaid/index.js +1 -1
  205. package/build/lib/grafaid/schema/KindMap/_.d.ts +3 -3
  206. package/build/lib/grafaid/schema/KindMap/_.js +4 -4
  207. package/build/lib/grafaid/schema/KindMap/__.d.ts +2 -2
  208. package/build/lib/grafaid/schema/KindMap/__.js +1 -1
  209. package/build/lib/grafaid/schema/OperationType/__.d.ts +2 -2
  210. package/build/lib/grafaid/schema/OperationType/__.js +1 -1
  211. package/build/lib/grafaid/schema/RootDetails.d.ts +3 -3
  212. package/build/lib/grafaid/schema/RootDetails.js +2 -2
  213. package/build/lib/grafaid/schema/RootTypeMap.d.ts +2 -2
  214. package/build/lib/grafaid/schema/RootTypeMap.js +2 -2
  215. package/build/lib/grafaid/schema/nodes-like.d.ts +1 -1
  216. package/build/lib/grafaid/schema/nodes-like.js +1 -1
  217. package/build/lib/grafaid/schema/schema.d.ts +14 -14
  218. package/build/lib/grafaid/schema/schema.js +15 -15
  219. package/build/lib/grafaid/schema/type-kind-name.d.ts +1 -1
  220. package/build/lib/grafaid/schema/type-kind-name.js +1 -1
  221. package/build/lib/grafaid/schema/type.d.ts +1 -1
  222. package/build/lib/grafaid/schema/typeGuards.js +1 -1
  223. package/build/lib/grafaid-old/grafaid.d.ts +1 -1
  224. package/build/lib/grafaid-old/grafaid.js +1 -1
  225. package/build/lib/grafaid-old/index.d.ts +1 -1
  226. package/build/lib/grafaid-old/index.js +1 -1
  227. package/build/lib/graphql-change/index.d.ts +1 -1
  228. package/build/lib/graphql-change/index.js +1 -1
  229. package/build/lib/graphql-changeset/index.d.ts +1 -1
  230. package/build/lib/graphql-changeset/index.js +1 -1
  231. package/build/lib/graphql-document/$$.d.ts +4 -4
  232. package/build/lib/graphql-document/$$.js +4 -4
  233. package/build/lib/graphql-document/$.d.ts +1 -1
  234. package/build/lib/graphql-document/$.js +1 -1
  235. package/build/lib/graphql-document/analysis.d.ts +1 -1
  236. package/build/lib/graphql-document/analysis.js +46 -46
  237. package/build/lib/graphql-document/components/GraphQLDocument.d.ts.map +1 -1
  238. package/build/lib/graphql-document/components/GraphQLDocument.js +46 -27
  239. package/build/lib/graphql-document/components/GraphQLDocument.js.map +1 -1
  240. package/build/lib/graphql-document/components/GraphQLDocumentWithSchema.d.ts +3 -3
  241. package/build/lib/graphql-document/components/GraphQLDocumentWithSchema.d.ts.map +1 -1
  242. package/build/lib/graphql-document/components/GraphQLDocumentWithSchema.js +14 -30
  243. package/build/lib/graphql-document/components/GraphQLDocumentWithSchema.js.map +1 -1
  244. package/build/lib/graphql-document/components/GraphQLIdentifierPopover.d.ts +2 -2
  245. package/build/lib/graphql-document/components/GraphQLIdentifierPopover.d.ts.map +1 -1
  246. package/build/lib/graphql-document/components/GraphQLIdentifierPopover.js +26 -24
  247. package/build/lib/graphql-document/components/GraphQLIdentifierPopover.js.map +1 -1
  248. package/build/lib/graphql-document/components/IdentifierLink.d.ts +3 -3
  249. package/build/lib/graphql-document/components/IdentifierLink.js +22 -22
  250. package/build/lib/graphql-document/components/IdentifierLink.js.map +1 -1
  251. package/build/lib/graphql-document/components/graphql-document-styles.d.ts +1 -1
  252. package/build/lib/graphql-document/components/graphql-document-styles.d.ts.map +1 -1
  253. package/build/lib/graphql-document/components/graphql-document-styles.js +0 -23
  254. package/build/lib/graphql-document/components/graphql-document-styles.js.map +1 -1
  255. package/build/lib/graphql-document/components/index.d.ts +4 -5
  256. package/build/lib/graphql-document/components/index.d.ts.map +1 -1
  257. package/build/lib/graphql-document/components/index.js +4 -5
  258. package/build/lib/graphql-document/components/index.js.map +1 -1
  259. package/build/lib/graphql-document/example.d.ts +1 -1
  260. package/build/lib/graphql-document/example.js +36 -36
  261. package/build/lib/graphql-document/example.js.map +1 -1
  262. package/build/lib/graphql-document/graphql-document.d.ts +9 -9
  263. package/build/lib/graphql-document/graphql-document.d.ts.map +1 -1
  264. package/build/lib/graphql-document/graphql-document.js +9 -9
  265. package/build/lib/graphql-document/graphql-document.js.map +1 -1
  266. package/build/lib/graphql-document/positioning-simple.d.ts +1 -6
  267. package/build/lib/graphql-document/positioning-simple.d.ts.map +1 -1
  268. package/build/lib/graphql-document/positioning-simple.js +96 -108
  269. package/build/lib/graphql-document/positioning-simple.js.map +1 -1
  270. package/build/lib/graphql-document/schema-integration.d.ts +5 -5
  271. package/build/lib/graphql-document/schema-integration.d.ts.map +1 -1
  272. package/build/lib/graphql-document/schema-integration.js +22 -22
  273. package/build/lib/graphql-document/schema-integration.js.map +1 -1
  274. package/build/lib/graphql-document/types.d.ts +4 -4
  275. package/build/lib/graphql-schema-loader/index.d.ts +1 -1
  276. package/build/lib/graphql-schema-loader/index.js +1 -1
  277. package/build/lib/helpers.js +1 -1
  278. package/build/lib/hono-aid/index.d.ts +1 -1
  279. package/build/lib/hono-aid/index.js +1 -1
  280. package/build/lib/html-utils/html-transformer.d.ts +4 -0
  281. package/build/lib/html-utils/html-transformer.d.ts.map +1 -0
  282. package/build/lib/html-utils/html-transformer.js +3 -0
  283. package/build/lib/html-utils/html-transformer.js.map +1 -0
  284. package/build/lib/html-utils/inject-global-data.d.ts +41 -0
  285. package/build/lib/html-utils/inject-global-data.d.ts.map +1 -0
  286. package/build/lib/html-utils/inject-global-data.js +65 -0
  287. package/build/lib/html-utils/inject-global-data.js.map +1 -0
  288. package/build/lib/kit-temp.d.ts +169 -2
  289. package/build/lib/kit-temp.d.ts.map +1 -1
  290. package/build/lib/kit-temp.js +270 -6
  291. package/build/lib/kit-temp.js.map +1 -1
  292. package/build/lib/kit-temp.test-d.js +16 -16
  293. package/build/lib/kit-temp.test-d.js.map +1 -1
  294. package/build/lib/mask/$$.d.ts +2 -2
  295. package/build/lib/mask/$$.js +2 -2
  296. package/build/lib/mask/$.d.ts +1 -1
  297. package/build/lib/mask/$.js +1 -1
  298. package/build/lib/mask/apply.d.ts +9 -9
  299. package/build/lib/mask/apply.d.ts.map +1 -1
  300. package/build/lib/mask/apply.js +3 -3
  301. package/build/lib/mask/apply.js.map +1 -1
  302. package/build/lib/mask/mask.d.ts +7 -7
  303. package/build/lib/mask/mask.d.ts.map +1 -1
  304. package/build/lib/mask/mask.js +12 -12
  305. package/build/lib/mask/mask.test-d.js +14 -14
  306. package/build/lib/mask/mask.test-d.js.map +1 -1
  307. package/build/lib/mutation-type.js +3 -3
  308. package/build/lib/path-map/$$.d.ts +7 -0
  309. package/build/lib/path-map/$$.d.ts.map +1 -0
  310. package/build/lib/path-map/$$.js +7 -0
  311. package/build/lib/path-map/$$.js.map +1 -0
  312. package/build/lib/path-map/$.d.ts +7 -0
  313. package/build/lib/path-map/$.d.ts.map +1 -0
  314. package/build/lib/path-map/$.js +7 -0
  315. package/build/lib/path-map/$.js.map +1 -0
  316. package/build/lib/path-map/path-map.d.ts +110 -0
  317. package/build/lib/path-map/path-map.d.ts.map +1 -0
  318. package/build/lib/path-map/path-map.js +126 -0
  319. package/build/lib/path-map/path-map.js.map +1 -0
  320. package/build/lib/react-router-aid/index.d.ts +1 -1
  321. package/build/lib/react-router-aid/index.js +1 -1
  322. package/build/lib/react-router-aid/react-router-aid.d.ts +1 -1
  323. package/build/lib/react-router-aid/react-router-aid.js +1 -1
  324. package/build/lib/react-router-loader/react-router-loader.d.ts.map +1 -1
  325. package/build/lib/react-router-loader/react-router-loader.js +1 -4
  326. package/build/lib/react-router-loader/react-router-loader.js.map +1 -1
  327. package/build/lib/stack-processor/index.d.ts +1 -1
  328. package/build/lib/stack-processor/index.js +1 -1
  329. package/build/lib/stack-processor/stack-processor.d.ts.map +1 -1
  330. package/build/lib/stack-processor/stack-processor.js +0 -1
  331. package/build/lib/stack-processor/stack-processor.js.map +1 -1
  332. package/build/lib/superjson-codec/codecs/graphql-schema.d.ts +1 -1
  333. package/build/lib/superjson-codec/codecs/graphql-schema.js +1 -1
  334. package/build/lib/superjson-codec/exports.d.ts +2 -2
  335. package/build/lib/superjson-codec/exports.js +2 -2
  336. package/build/lib/superjson-codec/index.d.ts +1 -1
  337. package/build/lib/superjson-codec/index.js +1 -1
  338. package/build/lib/task/$$.d.ts +2 -2
  339. package/build/lib/task/$$.js +2 -2
  340. package/build/lib/task/$.d.ts +1 -1
  341. package/build/lib/task/$.js +1 -1
  342. package/build/lib/task/report.d.ts +1 -1
  343. package/build/lib/task/task.d.ts +1 -1
  344. package/build/lib/task/task.js +2 -2
  345. package/build/lib/theme/$.d.ts +2 -0
  346. package/build/lib/theme/$.d.ts.map +1 -0
  347. package/build/lib/theme/$.js +3 -0
  348. package/build/lib/theme/$.js.map +1 -0
  349. package/build/lib/theme/theme.d.ts +68 -0
  350. package/build/lib/theme/theme.d.ts.map +1 -0
  351. package/build/lib/theme/theme.js +123 -0
  352. package/build/lib/theme/theme.js.map +1 -0
  353. package/build/lib/vite-plugin-json/index.d.ts +1 -1
  354. package/build/lib/vite-plugin-json/index.js +1 -1
  355. package/build/lib/vite-plugin-json/vite-plugin-json.js +3 -4
  356. package/build/lib/vite-plugin-json/vite-plugin-json.js.map +1 -1
  357. package/build/lib/vite-plugin-mdx/index.d.ts +1 -1
  358. package/build/lib/vite-plugin-mdx/index.js +1 -1
  359. package/build/lib/vite-plugin-mdx/vite-plugin-mdx.d.ts +1 -1
  360. package/build/lib/vite-plugin-mdx/vite-plugin-mdx.d.ts.map +1 -1
  361. package/build/lib/vite-plugin-mdx/vite-plugin-mdx.js +2 -6
  362. package/build/lib/vite-plugin-mdx/vite-plugin-mdx.js.map +1 -1
  363. package/build/lib/vite-plugin-reactive-data/index.d.ts +1 -1
  364. package/build/lib/vite-plugin-reactive-data/index.js +1 -1
  365. package/build/lib/vite-plugin-reactive-data/vite-plugin-reactive-data.d.ts +2 -9
  366. package/build/lib/vite-plugin-reactive-data/vite-plugin-reactive-data.d.ts.map +1 -1
  367. package/build/lib/vite-plugin-reactive-data/vite-plugin-reactive-data.js +48 -55
  368. package/build/lib/vite-plugin-reactive-data/vite-plugin-reactive-data.js.map +1 -1
  369. package/build/lib/vite-plugins/index.d.ts +1 -1
  370. package/build/lib/vite-plugins/index.js +1 -1
  371. package/build/lib/vite-plugins/vite-plugins.d.ts +1 -1
  372. package/build/lib/vite-plugins/vite-plugins.js +1 -1
  373. package/build/lib/vite-virtual/identified-loader.d.ts +2 -2
  374. package/build/lib/vite-virtual/identified-loader.js +2 -2
  375. package/build/lib/vite-virtual/identifier.js +1 -1
  376. package/build/lib/vite-virtual/index.d.ts +1 -1
  377. package/build/lib/vite-virtual/index.js +1 -1
  378. package/build/lib/vite-virtual/vite-virtual.d.ts +3 -3
  379. package/build/lib/vite-virtual/vite-virtual.js +3 -3
  380. package/build/package-paths.d.ts +18 -6
  381. package/build/package-paths.d.ts.map +1 -1
  382. package/build/package-paths.js +19 -6
  383. package/build/package-paths.js.map +1 -1
  384. package/build/project-data.d.ts +3 -1
  385. package/build/project-data.d.ts.map +1 -1
  386. package/build/sandbox.js +9 -9
  387. package/build/template/components/ArgumentList.js +1 -1
  388. package/build/template/components/ArgumentList.js.map +1 -1
  389. package/build/template/components/ArgumentListAnnotation.js +2 -2
  390. package/build/template/components/ArgumentListAnnotation.js.map +1 -1
  391. package/build/template/components/Changelog.d.ts +1 -1
  392. package/build/template/components/Changelog.js +1 -1
  393. package/build/template/components/CodeBlock.d.ts +0 -8
  394. package/build/template/components/CodeBlock.d.ts.map +1 -1
  395. package/build/template/components/CodeBlock.js +3 -38
  396. package/build/template/components/CodeBlock.js.map +1 -1
  397. package/build/template/components/CodeBlockEnhancer.js +41 -41
  398. package/build/template/components/CodeBlockEnhancer.js.map +1 -1
  399. package/build/template/components/DeprecationReason.js +1 -1
  400. package/build/template/components/DeprecationReason.js.map +1 -1
  401. package/build/template/components/Description.js +1 -1
  402. package/build/template/components/Description.js.map +1 -1
  403. package/build/template/components/Field.js +4 -4
  404. package/build/template/components/Field.js.map +1 -1
  405. package/build/template/components/FieldList.js +1 -1
  406. package/build/template/components/FieldList.js.map +1 -1
  407. package/build/template/components/FieldListSection.js +1 -1
  408. package/build/template/components/FieldListSection.js.map +1 -1
  409. package/build/template/components/HamburgerMenu.js +11 -11
  410. package/build/template/components/HamburgerMenu.js.map +1 -1
  411. package/build/template/components/Link.d.ts +3 -3
  412. package/build/template/components/Link.d.ts.map +1 -1
  413. package/build/template/components/Link.js +29 -20
  414. package/build/template/components/Link.js.map +1 -1
  415. package/build/template/components/Logo.js +4 -4
  416. package/build/template/components/MDXComponents.d.ts +0 -1
  417. package/build/template/components/MDXComponents.d.ts.map +1 -1
  418. package/build/template/components/MDXComponents.js +1 -59
  419. package/build/template/components/MDXComponents.js.map +1 -1
  420. package/build/template/components/NamedType.js +2 -2
  421. package/build/template/components/NamedType.js.map +1 -1
  422. package/build/template/components/TestComponent.js +2 -2
  423. package/build/template/components/Texts/MinorHeading.js +4 -4
  424. package/build/template/components/Texts/index.d.ts +1 -1
  425. package/build/template/components/Texts/index.js +1 -1
  426. package/build/template/components/Texts/texts.d.ts +1 -1
  427. package/build/template/components/Texts/texts.d.ts.map +1 -1
  428. package/build/template/components/Texts/texts.js +1 -1
  429. package/build/template/components/Texts/texts.js.map +1 -1
  430. package/build/template/components/ThemeToggle.d.ts.map +1 -1
  431. package/build/template/components/ThemeToggle.js +25 -4
  432. package/build/template/components/ThemeToggle.js.map +1 -1
  433. package/build/template/components/TypeAnnotation.js +1 -1
  434. package/build/template/components/TypeAnnotation.js.map +1 -1
  435. package/build/template/components/TypeFieldsLinkList.js +1 -1
  436. package/build/template/components/TypeFieldsLinkList.js.map +1 -1
  437. package/build/template/components/TypeIndex.js +1 -1
  438. package/build/template/components/TypeIndex.js.map +1 -1
  439. package/build/template/components/content/$$.d.ts +1 -1
  440. package/build/template/components/content/$$.d.ts.map +1 -1
  441. package/build/template/components/content/$$.js +1 -1
  442. package/build/template/components/content/$$.js.map +1 -1
  443. package/build/template/components/content/GraphQLDocumentWithSchema.d.ts +2 -2
  444. package/build/template/components/content/GraphQLDocumentWithSchema.d.ts.map +1 -1
  445. package/build/template/components/content/GraphQLDocumentWithSchema.js +1 -4
  446. package/build/template/components/content/GraphQLDocumentWithSchema.js.map +1 -1
  447. package/build/template/components/content/GraphQLDocumentWrapper.d.ts +2 -2
  448. package/build/template/components/content/GraphQLDocumentWrapper.d.ts.map +1 -1
  449. package/build/template/components/content/GraphQLDocumentWrapper.js +13 -27
  450. package/build/template/components/content/GraphQLDocumentWrapper.js.map +1 -1
  451. package/build/template/components/graphql/graphql.d.ts +2 -2
  452. package/build/template/components/graphql/graphql.d.ts.map +1 -1
  453. package/build/template/components/graphql/graphql.js +2 -2
  454. package/build/template/components/graphql/graphql.js.map +1 -1
  455. package/build/template/components/graphql/index.d.ts +1 -1
  456. package/build/template/components/graphql/index.d.ts.map +1 -1
  457. package/build/template/components/graphql/index.js +1 -1
  458. package/build/template/components/graphql/index.js.map +1 -1
  459. package/build/template/components/graphql/type-kind-icon.d.ts.map +1 -1
  460. package/build/template/components/graphql/type-kind-icon.js +1 -2
  461. package/build/template/components/graphql/type-kind-icon.js.map +1 -1
  462. package/build/template/components/graphql/type-link.js +3 -3
  463. package/build/template/components/graphql/type-link.js.map +1 -1
  464. package/build/template/components/sidebar/Sidebar.js +1 -1
  465. package/build/template/components/sidebar/Sidebar.js.map +1 -1
  466. package/build/template/components/sidebar/SidebarItem.js +6 -6
  467. package/build/template/components/sidebar/SidebarItem.js.map +1 -1
  468. package/build/template/constants.d.ts +17 -0
  469. package/build/template/constants.d.ts.map +1 -0
  470. package/build/template/constants.js +11 -0
  471. package/build/template/constants.js.map +1 -0
  472. package/build/template/contexts/ThemeContext.d.ts +3 -1
  473. package/build/template/contexts/ThemeContext.d.ts.map +1 -1
  474. package/build/template/contexts/ThemeContext.js +50 -22
  475. package/build/template/contexts/ThemeContext.js.map +1 -1
  476. package/build/template/entry.client.d.ts.map +1 -1
  477. package/build/template/entry.client.js +6 -5
  478. package/build/template/entry.client.js.map +1 -1
  479. package/build/template/hooks/useClientOnly.d.ts +9 -0
  480. package/build/template/hooks/useClientOnly.d.ts.map +1 -0
  481. package/build/template/hooks/useClientOnly.js +16 -0
  482. package/build/template/hooks/useClientOnly.js.map +1 -0
  483. package/build/template/routes/changelog.d.ts +1 -1
  484. package/build/template/routes/changelog.js +1 -1
  485. package/build/template/routes/changelog.js.map +1 -1
  486. package/build/template/routes/reference.$type.$field.js +2 -2
  487. package/build/template/routes/reference.$type.$field.js.map +1 -1
  488. package/build/template/routes/reference.$type.js +2 -2
  489. package/build/template/routes/reference.$type.js.map +1 -1
  490. package/build/template/routes/reference.js +2 -2
  491. package/build/template/routes/reference.js.map +1 -1
  492. package/build/template/routes/root.d.ts.map +1 -1
  493. package/build/template/routes/root.js +29 -174
  494. package/build/template/routes/root.js.map +1 -1
  495. package/build/template/routes.js +1 -1
  496. package/build/template/routes.js.map +1 -1
  497. package/build/template/server/app.d.ts +8 -1
  498. package/build/template/server/app.d.ts.map +1 -1
  499. package/build/template/server/app.js +30 -21
  500. package/build/template/server/app.js.map +1 -1
  501. package/build/template/server/create-page-html-response.d.ts +8 -0
  502. package/build/template/server/create-page-html-response.d.ts.map +1 -0
  503. package/build/template/server/{render-page.js → create-page-html-response.js} +42 -18
  504. package/build/template/server/create-page-html-response.js.map +1 -0
  505. package/build/template/server/main.js +4 -3
  506. package/build/template/server/main.js.map +1 -1
  507. package/build/template/server/middleware/page.d.ts +4 -0
  508. package/build/template/server/middleware/page.d.ts.map +1 -0
  509. package/build/template/server/middleware/page.js +15 -0
  510. package/build/template/server/middleware/page.js.map +1 -0
  511. package/build/template/server/middleware/unsupported-assets.d.ts +10 -0
  512. package/build/template/server/middleware/unsupported-assets.d.ts.map +1 -0
  513. package/build/template/server/middleware/unsupported-assets.js +21 -0
  514. package/build/template/server/middleware/unsupported-assets.js.map +1 -0
  515. package/build/template/server/ssg/generate.d.ts.map +1 -1
  516. package/build/template/server/ssg/generate.js +45 -36
  517. package/build/template/server/ssg/generate.js.map +1 -1
  518. package/build/template/server/ssg/get-route-paths.js +1 -1
  519. package/build/template/server/ssg/get-route-paths.js.map +1 -1
  520. package/build/template/server/transformers/inject-polen-data.d.ts +6 -0
  521. package/build/template/server/transformers/inject-polen-data.d.ts.map +1 -0
  522. package/build/template/server/transformers/inject-polen-data.js +28 -0
  523. package/build/template/server/transformers/inject-polen-data.js.map +1 -0
  524. package/build/template/server/transformers/inject-theme-init.d.ts +6 -0
  525. package/build/template/server/transformers/inject-theme-init.d.ts.map +1 -0
  526. package/build/template/server/transformers/inject-theme-init.js +29 -0
  527. package/build/template/server/transformers/inject-theme-init.js.map +1 -0
  528. package/build/template/server/view.js +1 -1
  529. package/build/template/server/view.js.map +1 -1
  530. package/build/template/styles/code-block.css +218 -0
  531. package/package.json +32 -77
  532. package/src/api/api.ts +4 -4
  533. package/src/api/builder/index.ts +1 -1
  534. package/src/api/config/config.ts +4 -4
  535. package/src/api/config/configurator.ts +94 -15
  536. package/src/api/config/define.ts +1 -1
  537. package/src/api/config/index.ts +1 -1
  538. package/src/api/config/load.ts +1 -4
  539. package/src/api/config/merge.ts +1 -2
  540. package/src/api/config-resolver/config-resolver.ts +2 -2
  541. package/src/api/config-resolver/index.ts +1 -1
  542. package/src/api/config-resolver/resolve.ts +4 -4
  543. package/src/api/config-resolver/vite.ts +1 -1
  544. package/src/api/content/$$.ts +6 -6
  545. package/src/api/content/$.test.ts +1 -1
  546. package/src/api/content/$.ts +1 -1
  547. package/src/api/content/navbar.test.ts +2 -2
  548. package/src/api/content/navbar.ts +3 -3
  549. package/src/api/content/page.ts +1 -1
  550. package/src/api/content/scan.ts +8 -8
  551. package/src/api/content/sidebar.test.ts +3 -3
  552. package/src/api/content/sidebar.ts +20 -20
  553. package/src/api/index.ts +1 -1
  554. package/src/api/schema/data-sources/data-sources.ts +3 -3
  555. package/src/api/schema/data-sources/index.ts +1 -1
  556. package/src/api/schema/data-sources/memory/memory.ts +36 -1
  557. package/src/api/schema/data-sources/schema-directory/file-name-expression/file-name-expression.ts +0 -1
  558. package/src/api/schema/data-sources/schema-directory/file-name-expression/index.ts +1 -1
  559. package/src/api/schema/data-sources/schema-directory/schema-directory.ts +31 -2
  560. package/src/api/schema/data-sources/schema-file/schema-file.ts +20 -1
  561. package/src/api/schema/index.ts +1 -1
  562. package/src/api/schema/read.ts +43 -2
  563. package/src/api/schema/schema.ts +2 -2
  564. package/src/api/schema-augmentation/augmentations/description.ts +2 -2
  565. package/src/api/schema-augmentation/index.ts +1 -1
  566. package/src/api/schema-augmentation/schema-augmentation.ts +1 -2
  567. package/src/api/server/report-error.ts +7 -5
  568. package/src/api/singletons/markdown/index.ts +1 -1
  569. package/src/api/singletons/markdown/markdown.test.ts +27 -30
  570. package/src/api/singletons/markdown/markdown.ts +4 -23
  571. package/src/api/static/index.ts +1 -1
  572. package/src/api/static/manifest.test.ts +1 -1
  573. package/src/api/static/manifest.ts +3 -3
  574. package/src/api/static/rebase.test.ts +2 -2
  575. package/src/api/static/rebase.ts +11 -11
  576. package/src/api/static/static.ts +2 -2
  577. package/src/api/utils/asset-url/asset-url.test.ts +1 -1
  578. package/src/api/utils/asset-url/index.ts +1 -1
  579. package/src/api/vite/logger.ts +5 -5
  580. package/src/api/vite/plugins/{branding/index.ts → branding.ts} +9 -9
  581. package/src/api/vite/plugins/build.ts +103 -97
  582. package/src/api/vite/plugins/core.ts +45 -43
  583. package/src/api/vite/plugins/main.ts +25 -22
  584. package/src/api/vite/plugins/pages.ts +20 -53
  585. package/src/api/vite/plugins/serve.ts +74 -11
  586. package/src/cli/commands/build.ts +0 -1
  587. package/src/cli/commands/config/$default.ts +7 -0
  588. package/src/cli/commands/config/create.ts +25 -0
  589. package/src/cli/commands/config.ts +6 -0
  590. package/src/cli/commands/create.ts +2 -3
  591. package/src/cli/commands/dev.ts +0 -1
  592. package/src/cli/commands/open.ts +0 -1
  593. package/src/cli/commands/static/rebase.ts +0 -1
  594. package/src/cli/commands/static.ts +1 -1
  595. package/src/dep/graphql-inspector/index.ts +1 -1
  596. package/src/dep/hono/hono.ts +1 -1
  597. package/src/dep/hono/index.ts +1 -1
  598. package/src/dep/superjson/index.ts +1 -1
  599. package/src/dep/tiny-globby/index.ts +1 -1
  600. package/src/dep/vite/index.ts +1 -1
  601. package/src/exports/components.ts +3 -3
  602. package/src/exports/index.ts +1 -1
  603. package/src/lib/apple-touch-icon/index.ts +1 -1
  604. package/src/lib/errors/ContextualAggregateError.ts +1 -1
  605. package/src/lib/errors/ContextualError.ts +1 -1
  606. package/src/lib/errors/ErrorInternal.ts +2 -2
  607. package/src/lib/errors/errors.ts +4 -4
  608. package/src/lib/errors/index.ts +1 -1
  609. package/src/lib/errors/types.ts +1 -1
  610. package/src/lib/extensible-data/index.ts +1 -1
  611. package/src/lib/favicon/index.ts +1 -1
  612. package/src/lib/file-router/diagnostic-reporter.ts +10 -10
  613. package/src/lib/file-router/file-router.ts +3 -3
  614. package/src/lib/file-router/index.test.ts +2 -2
  615. package/src/lib/file-router/index.ts +1 -1
  616. package/src/lib/file-router/linter.test.ts +2 -2
  617. package/src/lib/file-router/linter.ts +11 -11
  618. package/src/lib/file-router/scan.ts +4 -4
  619. package/src/lib/grafaid/_Nodes.ts +1 -1
  620. package/src/lib/grafaid/document/OperationTypeNode.ts +1 -1
  621. package/src/lib/grafaid/document/kind.ts +1 -1
  622. package/src/lib/grafaid/document.ts +6 -6
  623. package/src/lib/grafaid/grafaid.ts +4 -4
  624. package/src/lib/grafaid/graphql.ts +3 -3
  625. package/src/lib/grafaid/http/__.ts +1 -1
  626. package/src/lib/grafaid/http/http.ts +1 -1
  627. package/src/lib/grafaid/index.ts +1 -1
  628. package/src/lib/grafaid/schema/KindMap/_.ts +6 -6
  629. package/src/lib/grafaid/schema/KindMap/__.ts +2 -2
  630. package/src/lib/grafaid/schema/OperationType/__.ts +2 -2
  631. package/src/lib/grafaid/schema/RootDetails.ts +3 -3
  632. package/src/lib/grafaid/schema/RootTypeMap.ts +2 -2
  633. package/src/lib/grafaid/schema/nodes-like.ts +2 -2
  634. package/src/lib/grafaid/schema/schema.ts +15 -15
  635. package/src/lib/grafaid/schema/type-kind-name.ts +1 -1
  636. package/src/lib/grafaid/schema/type.ts +1 -1
  637. package/src/lib/grafaid/schema/typeGuards.ts +1 -1
  638. package/src/lib/grafaid-old/grafaid.ts +1 -1
  639. package/src/lib/grafaid-old/index.ts +1 -1
  640. package/src/lib/graphql-change/index.ts +1 -1
  641. package/src/lib/graphql-changeset/index.ts +1 -1
  642. package/src/lib/graphql-document/$$.ts +4 -4
  643. package/src/lib/graphql-document/$.test.ts +3 -3
  644. package/src/lib/graphql-document/$.ts +1 -1
  645. package/src/lib/graphql-document/analysis.ts +49 -49
  646. package/src/lib/graphql-document/components/GraphQLDocument.tsx +56 -45
  647. package/src/lib/graphql-document/components/GraphQLDocument.unit.test.ts +4 -4
  648. package/src/lib/graphql-document/components/GraphQLDocumentWithSchema.tsx +18 -37
  649. package/src/lib/graphql-document/components/GraphQLIdentifierPopover.tsx +31 -29
  650. package/src/lib/graphql-document/components/IdentifierLink.tsx +25 -25
  651. package/src/lib/graphql-document/components/graphql-document-styles.ts +0 -23
  652. package/src/lib/graphql-document/components/index.ts +4 -5
  653. package/src/lib/graphql-document/example.ts +35 -35
  654. package/src/lib/graphql-document/graphql-document.ts +9 -9
  655. package/src/lib/graphql-document/hooks/use-tooltip-state.test.ts +1 -1
  656. package/src/lib/graphql-document/positioning-simple.test.ts +22 -26
  657. package/src/lib/graphql-document/positioning-simple.ts +116 -127
  658. package/src/lib/graphql-document/schema-integration.test.ts +1 -1
  659. package/src/lib/graphql-document/schema-integration.ts +27 -36
  660. package/src/lib/graphql-document/types.ts +4 -4
  661. package/src/lib/graphql-schema-loader/index.ts +1 -1
  662. package/src/lib/helpers.ts +1 -1
  663. package/src/lib/hono-aid/index.ts +1 -1
  664. package/src/lib/html-utils/html-transformer.ts +6 -0
  665. package/src/lib/html-utils/inject-global-data.test.ts +89 -0
  666. package/src/lib/html-utils/inject-global-data.ts +80 -0
  667. package/src/lib/kit-temp.test-d.ts +27 -22
  668. package/src/lib/kit-temp.test.ts +15 -3
  669. package/src/lib/kit-temp.ts +383 -11
  670. package/src/lib/mask/$$.ts +2 -2
  671. package/src/lib/mask/$.test.ts +1 -1
  672. package/src/lib/mask/$.ts +1 -1
  673. package/src/lib/mask/apply.ts +15 -15
  674. package/src/lib/mask/mask.test-d.ts +30 -18
  675. package/src/lib/mask/mask.ts +18 -18
  676. package/src/lib/mutation-type.ts +3 -3
  677. package/src/lib/path-map/$$.ts +7 -0
  678. package/src/lib/path-map/$.test.ts +370 -0
  679. package/src/lib/path-map/$.ts +7 -0
  680. package/src/lib/path-map/path-map.ts +244 -0
  681. package/src/lib/react-router-aid/index.ts +1 -1
  682. package/src/lib/react-router-aid/react-router-aid.ts +1 -1
  683. package/src/lib/react-router-loader/react-router-loader.ts +1 -4
  684. package/src/lib/stack-processor/index.ts +1 -1
  685. package/src/lib/stack-processor/stack-processor.ts +0 -1
  686. package/src/lib/superjson-codec/codecs/graphql-schema.ts +1 -1
  687. package/src/lib/superjson-codec/exports.ts +2 -2
  688. package/src/lib/superjson-codec/index.ts +1 -1
  689. package/src/lib/task/$$.ts +2 -2
  690. package/src/lib/task/$.test.ts +2 -2
  691. package/src/lib/task/$.ts +1 -1
  692. package/src/lib/task/report.ts +1 -1
  693. package/src/lib/task/task.ts +3 -3
  694. package/src/lib/theme/$.ts +2 -0
  695. package/src/lib/theme/theme.test.ts +190 -0
  696. package/src/lib/theme/theme.ts +210 -0
  697. package/src/lib/vite-plugin-json/index.ts +1 -1
  698. package/src/lib/vite-plugin-json/vite-plugin-json.ts +4 -4
  699. package/src/lib/vite-plugin-mdx/index.ts +1 -1
  700. package/src/lib/vite-plugin-mdx/vite-plugin-mdx.ts +1 -5
  701. package/src/lib/vite-plugin-reactive-data/index.ts +1 -1
  702. package/src/lib/vite-plugin-reactive-data/vite-plugin-reactive-data.ts +53 -60
  703. package/src/lib/vite-plugins/index.ts +1 -1
  704. package/src/lib/vite-plugins/vite-plugins.ts +1 -1
  705. package/src/lib/vite-virtual/identified-loader.ts +4 -4
  706. package/src/lib/vite-virtual/identifier.ts +1 -1
  707. package/src/lib/vite-virtual/index.ts +1 -1
  708. package/src/lib/vite-virtual/vite-virtual.ts +3 -3
  709. package/src/package-paths.ts +38 -12
  710. package/src/project-data.ts +3 -1
  711. package/src/sandbox.ts +9 -9
  712. package/src/template/components/ArgumentList.tsx +1 -1
  713. package/src/template/components/ArgumentListAnnotation.tsx +2 -2
  714. package/src/template/components/Changelog.tsx +2 -2
  715. package/src/template/components/CodeBlock.tsx +4 -58
  716. package/src/template/components/CodeBlockEnhancer.tsx +41 -41
  717. package/src/template/components/DeprecationReason.tsx +1 -1
  718. package/src/template/components/Description.tsx +1 -1
  719. package/src/template/components/Field.tsx +4 -4
  720. package/src/template/components/FieldList.tsx +1 -1
  721. package/src/template/components/FieldListSection.tsx +1 -1
  722. package/src/template/components/HamburgerMenu.tsx +11 -11
  723. package/src/template/components/Link.tsx +37 -29
  724. package/src/template/components/Logo.tsx +4 -4
  725. package/src/template/components/MDXComponents.tsx +1 -85
  726. package/src/template/components/NamedType.tsx +2 -2
  727. package/src/template/components/TestComponent.tsx +2 -2
  728. package/src/template/components/Texts/MinorHeading.tsx +4 -4
  729. package/src/template/components/Texts/index.ts +1 -1
  730. package/src/template/components/Texts/texts.ts +1 -1
  731. package/src/template/components/ThemeToggle.tsx +29 -7
  732. package/src/template/components/TypeAnnotation.tsx +1 -1
  733. package/src/template/components/TypeFieldsLinkList.tsx +1 -1
  734. package/src/template/components/TypeIndex.tsx +1 -1
  735. package/src/template/components/content/$$.ts +1 -1
  736. package/src/template/components/content/GraphQLDocumentWithSchema.tsx +3 -8
  737. package/src/template/components/content/GraphQLDocumentWrapper.tsx +20 -30
  738. package/src/template/components/graphql/graphql.tsx +2 -2
  739. package/src/template/components/graphql/index.ts +1 -1
  740. package/src/template/components/graphql/type-kind-icon.tsx +1 -2
  741. package/src/template/components/graphql/type-link.tsx +3 -3
  742. package/src/template/components/sidebar/Sidebar.tsx +1 -1
  743. package/src/template/components/sidebar/SidebarItem.tsx +6 -6
  744. package/src/template/constants.ts +17 -0
  745. package/src/template/contexts/ThemeContext.tsx +55 -24
  746. package/src/template/entry.client.tsx +7 -5
  747. package/src/template/global.d.ts +7 -0
  748. package/src/template/hooks/useClientOnly.ts +21 -0
  749. package/src/template/routes/changelog.tsx +1 -1
  750. package/src/template/routes/reference.$type.$field.tsx +3 -3
  751. package/src/template/routes/reference.$type.tsx +3 -3
  752. package/src/template/routes/reference.tsx +2 -2
  753. package/src/template/routes/root.tsx +46 -209
  754. package/src/template/routes.tsx +1 -1
  755. package/src/template/server/app.ts +40 -23
  756. package/src/template/server/{render-page.tsx → create-page-html-response.ts} +58 -20
  757. package/src/template/server/main.ts +4 -3
  758. package/src/template/server/middleware/page.ts +19 -0
  759. package/src/template/server/middleware/unsupported-assets.ts +25 -0
  760. package/src/template/server/ssg/generate.ts +79 -73
  761. package/src/template/server/ssg/get-route-paths.ts +1 -1
  762. package/src/template/server/transformers/inject-polen-data.ts +32 -0
  763. package/src/template/server/transformers/inject-theme-init.ts +30 -0
  764. package/src/template/server/view.ts +1 -1
  765. package/build/api/vite/data/navbar.d.ts +0 -9
  766. package/build/api/vite/data/navbar.d.ts.map +0 -1
  767. package/build/api/vite/data/navbar.js +0 -6
  768. package/build/api/vite/data/navbar.js.map +0 -1
  769. package/build/api/vite/plugins/branding/index.d.ts.map +0 -1
  770. package/build/api/vite/plugins/branding/index.js.map +0 -1
  771. package/build/lib/demos/builder.d.ts +0 -83
  772. package/build/lib/demos/builder.d.ts.map +0 -1
  773. package/build/lib/demos/builder.js +0 -237
  774. package/build/lib/demos/builder.js.map +0 -1
  775. package/build/lib/demos/config-schema.d.ts +0 -243
  776. package/build/lib/demos/config-schema.d.ts.map +0 -1
  777. package/build/lib/demos/config-schema.js +0 -52
  778. package/build/lib/demos/config-schema.js.map +0 -1
  779. package/build/lib/demos/config.d.ts +0 -40
  780. package/build/lib/demos/config.d.ts.map +0 -1
  781. package/build/lib/demos/config.js +0 -180
  782. package/build/lib/demos/config.js.map +0 -1
  783. package/build/lib/demos/index.d.ts +0 -9
  784. package/build/lib/demos/index.d.ts.map +0 -1
  785. package/build/lib/demos/index.js +0 -8
  786. package/build/lib/demos/index.js.map +0 -1
  787. package/build/lib/demos/ui/components.d.ts +0 -33
  788. package/build/lib/demos/ui/components.d.ts.map +0 -1
  789. package/build/lib/demos/ui/components.js +0 -699
  790. package/build/lib/demos/ui/components.js.map +0 -1
  791. package/build/lib/demos/ui/data-collector.d.ts +0 -88
  792. package/build/lib/demos/ui/data-collector.d.ts.map +0 -1
  793. package/build/lib/demos/ui/data-collector.js +0 -174
  794. package/build/lib/demos/ui/data-collector.js.map +0 -1
  795. package/build/lib/demos/ui/landing-page-cli.d.ts +0 -3
  796. package/build/lib/demos/ui/landing-page-cli.d.ts.map +0 -1
  797. package/build/lib/demos/ui/landing-page-cli.js +0 -21
  798. package/build/lib/demos/ui/landing-page-cli.js.map +0 -1
  799. package/build/lib/demos/ui/landing-page.d.ts +0 -32
  800. package/build/lib/demos/ui/landing-page.d.ts.map +0 -1
  801. package/build/lib/demos/ui/landing-page.js +0 -83
  802. package/build/lib/demos/ui/landing-page.js.map +0 -1
  803. package/build/lib/demos/ui/page-renderer.d.ts +0 -26
  804. package/build/lib/demos/ui/page-renderer.d.ts.map +0 -1
  805. package/build/lib/demos/ui/page-renderer.js +0 -104
  806. package/build/lib/demos/ui/page-renderer.js.map +0 -1
  807. package/build/lib/demos/utils.d.ts +0 -14
  808. package/build/lib/demos/utils.d.ts.map +0 -1
  809. package/build/lib/demos/utils.js +0 -37
  810. package/build/lib/demos/utils.js.map +0 -1
  811. package/build/lib/deployment/$$.d.ts +0 -3
  812. package/build/lib/deployment/$$.d.ts.map +0 -1
  813. package/build/lib/deployment/$$.js +0 -3
  814. package/build/lib/deployment/$$.js.map +0 -1
  815. package/build/lib/deployment/$.d.ts +0 -2
  816. package/build/lib/deployment/$.d.ts.map +0 -1
  817. package/build/lib/deployment/$.js +0 -2
  818. package/build/lib/deployment/$.js.map +0 -1
  819. package/build/lib/deployment/metadata.d.ts +0 -32
  820. package/build/lib/deployment/metadata.d.ts.map +0 -1
  821. package/build/lib/deployment/metadata.js +0 -37
  822. package/build/lib/deployment/metadata.js.map +0 -1
  823. package/build/lib/deployment/path-manager.d.ts +0 -41
  824. package/build/lib/deployment/path-manager.d.ts.map +0 -1
  825. package/build/lib/deployment/path-manager.js +0 -157
  826. package/build/lib/deployment/path-manager.js.map +0 -1
  827. package/build/lib/github-actions/git-controller.d.ts +0 -50
  828. package/build/lib/github-actions/git-controller.d.ts.map +0 -1
  829. package/build/lib/github-actions/git-controller.js +0 -90
  830. package/build/lib/github-actions/git-controller.js.map +0 -1
  831. package/build/lib/github-actions/github-actions.d.ts +0 -7
  832. package/build/lib/github-actions/github-actions.d.ts.map +0 -1
  833. package/build/lib/github-actions/github-actions.js +0 -7
  834. package/build/lib/github-actions/github-actions.js.map +0 -1
  835. package/build/lib/github-actions/index.d.ts +0 -2
  836. package/build/lib/github-actions/index.d.ts.map +0 -1
  837. package/build/lib/github-actions/index.js +0 -2
  838. package/build/lib/github-actions/index.js.map +0 -1
  839. package/build/lib/github-actions/lib/get-pr-deployments.d.ts +0 -12
  840. package/build/lib/github-actions/lib/get-pr-deployments.d.ts.map +0 -1
  841. package/build/lib/github-actions/lib/get-pr-deployments.js +0 -51
  842. package/build/lib/github-actions/lib/get-pr-deployments.js.map +0 -1
  843. package/build/lib/github-actions/pr-controller.d.ts +0 -39
  844. package/build/lib/github-actions/pr-controller.d.ts.map +0 -1
  845. package/build/lib/github-actions/pr-controller.js +0 -122
  846. package/build/lib/github-actions/pr-controller.js.map +0 -1
  847. package/build/lib/github-actions/run-step-cli.d.ts +0 -9
  848. package/build/lib/github-actions/run-step-cli.d.ts.map +0 -1
  849. package/build/lib/github-actions/run-step-cli.js +0 -71
  850. package/build/lib/github-actions/run-step-cli.js.map +0 -1
  851. package/build/lib/github-actions/runner.d.ts +0 -17
  852. package/build/lib/github-actions/runner.d.ts.map +0 -1
  853. package/build/lib/github-actions/runner.js +0 -195
  854. package/build/lib/github-actions/runner.js.map +0 -1
  855. package/build/lib/github-actions/schemas/context.d.ts +0 -933
  856. package/build/lib/github-actions/schemas/context.d.ts.map +0 -1
  857. package/build/lib/github-actions/schemas/context.js +0 -407
  858. package/build/lib/github-actions/schemas/context.js.map +0 -1
  859. package/build/lib/github-actions/schemas/index.d.ts +0 -5
  860. package/build/lib/github-actions/schemas/index.d.ts.map +0 -1
  861. package/build/lib/github-actions/schemas/index.js +0 -5
  862. package/build/lib/github-actions/schemas/index.js.map +0 -1
  863. package/build/lib/github-actions/search-module.d.ts +0 -38
  864. package/build/lib/github-actions/search-module.d.ts.map +0 -1
  865. package/build/lib/github-actions/search-module.js +0 -40
  866. package/build/lib/github-actions/search-module.js.map +0 -1
  867. package/build/lib/github-actions/step.d.ts +0 -163
  868. package/build/lib/github-actions/step.d.ts.map +0 -1
  869. package/build/lib/github-actions/step.js +0 -121
  870. package/build/lib/github-actions/step.js.map +0 -1
  871. package/build/lib/graphql-document/components/CopyButton.d.ts +0 -19
  872. package/build/lib/graphql-document/components/CopyButton.d.ts.map +0 -1
  873. package/build/lib/graphql-document/components/CopyButton.js +0 -43
  874. package/build/lib/graphql-document/components/CopyButton.js.map +0 -1
  875. package/build/lib/graphql-document/schema-integration-example.d.ts +0 -27
  876. package/build/lib/graphql-document/schema-integration-example.d.ts.map +0 -1
  877. package/build/lib/graphql-document/schema-integration-example.js +0 -297
  878. package/build/lib/graphql-document/schema-integration-example.js.map +0 -1
  879. package/build/lib/shiki/index.d.ts +0 -2
  880. package/build/lib/shiki/index.d.ts.map +0 -1
  881. package/build/lib/shiki/index.js +0 -2
  882. package/build/lib/shiki/index.js.map +0 -1
  883. package/build/lib/shiki/shiki.d.ts +0 -26
  884. package/build/lib/shiki/shiki.d.ts.map +0 -1
  885. package/build/lib/shiki/shiki.js +0 -105
  886. package/build/lib/shiki/shiki.js.map +0 -1
  887. package/build/lib/version-history/index.d.ts +0 -3
  888. package/build/lib/version-history/index.d.ts.map +0 -1
  889. package/build/lib/version-history/index.js +0 -2
  890. package/build/lib/version-history/index.js.map +0 -1
  891. package/build/lib/version-history/types.d.ts +0 -64
  892. package/build/lib/version-history/types.d.ts.map +0 -1
  893. package/build/lib/version-history/types.js +0 -5
  894. package/build/lib/version-history/types.js.map +0 -1
  895. package/build/lib/version-history/version-history.d.ts +0 -85
  896. package/build/lib/version-history/version-history.d.ts.map +0 -1
  897. package/build/lib/version-history/version-history.js +0 -248
  898. package/build/lib/version-history/version-history.js.map +0 -1
  899. package/build/template/server/render-page.d.ts +0 -3
  900. package/build/template/server/render-page.d.ts.map +0 -1
  901. package/build/template/server/render-page.js.map +0 -1
  902. package/src/api/vite/data/navbar.ts +0 -15
  903. package/src/lib/demos/builder.ts +0 -298
  904. package/src/lib/demos/config-schema.ts +0 -56
  905. package/src/lib/demos/config.test.ts +0 -193
  906. package/src/lib/demos/config.ts +0 -205
  907. package/src/lib/demos/index.ts +0 -9
  908. package/src/lib/demos/ui/components.ts +0 -739
  909. package/src/lib/demos/ui/data-collector.ts +0 -246
  910. package/src/lib/demos/ui/landing-page-cli.ts +0 -23
  911. package/src/lib/demos/ui/landing-page.ts +0 -126
  912. package/src/lib/demos/ui/page-renderer.ts +0 -124
  913. package/src/lib/demos/utils.ts +0 -43
  914. package/src/lib/deployment/$$.ts +0 -2
  915. package/src/lib/deployment/$.test.ts +0 -53
  916. package/src/lib/deployment/$.ts +0 -1
  917. package/src/lib/deployment/metadata.ts +0 -40
  918. package/src/lib/deployment/path-manager.ts +0 -186
  919. package/src/lib/github-actions/git-controller.ts +0 -151
  920. package/src/lib/github-actions/github-actions.ts +0 -6
  921. package/src/lib/github-actions/index.ts +0 -1
  922. package/src/lib/github-actions/lib/get-pr-deployments.ts +0 -76
  923. package/src/lib/github-actions/pr-controller.test.ts +0 -172
  924. package/src/lib/github-actions/pr-controller.ts +0 -183
  925. package/src/lib/github-actions/run-step-cli.ts +0 -84
  926. package/src/lib/github-actions/runner.test.ts +0 -192
  927. package/src/lib/github-actions/runner.ts +0 -226
  928. package/src/lib/github-actions/schemas/context.ts +0 -424
  929. package/src/lib/github-actions/schemas/index.ts +0 -5
  930. package/src/lib/github-actions/search-module.test.ts +0 -110
  931. package/src/lib/github-actions/search-module.ts +0 -76
  932. package/src/lib/github-actions/step.test.ts +0 -149
  933. package/src/lib/github-actions/step.ts +0 -232
  934. package/src/lib/graphql-document/components/CopyButton.tsx +0 -76
  935. package/src/lib/graphql-document/schema-integration-example.ts +0 -341
  936. package/src/lib/shiki/index.ts +0 -1
  937. package/src/lib/shiki/shiki.test.ts +0 -107
  938. package/src/lib/shiki/shiki.ts +0 -161
  939. package/src/lib/version-history/index.test.ts +0 -196
  940. package/src/lib/version-history/index.ts +0 -4
  941. package/src/lib/version-history/types.ts +0 -68
  942. package/src/lib/version-history/version-history.ts +0 -293
@@ -44,13 +44,13 @@ export type Mask<$Data = any> = BinaryMask<$Data> | PropertiesMask<$Data extends
44
44
  export const create = <$Data = unknown>(
45
45
  options: InferOptions<$Data>,
46
46
  ): Mask<$Data> => {
47
- if (typeof options === 'boolean') {
47
+ if (typeof options === `boolean`) {
48
48
  return createBinary(options) as any
49
49
  }
50
50
 
51
51
  // Array input -> PropertiesMask with 'allow' mode
52
52
  if (Array.isArray(options)) {
53
- return createProperties('allow', options as any) as any
53
+ return createProperties(`allow`, options as any) as any
54
54
  }
55
55
 
56
56
  // Object input -> PropertiesMask based on true/false values
@@ -66,11 +66,11 @@ export const create = <$Data = unknown>(
66
66
 
67
67
  // If we have denied keys, use deny mode
68
68
  if (deniedKeys.length > 0 && allowedKeys.length === 0) {
69
- return createProperties('deny', deniedKeys) as any
69
+ return createProperties(`deny`, deniedKeys) as any
70
70
  }
71
71
 
72
72
  // Default to allow mode with allowed keys
73
- return createProperties('allow', allowedKeys) as any
73
+ return createProperties(`allow`, allowedKeys) as any
74
74
  }
75
75
 
76
76
  /**
@@ -104,9 +104,9 @@ export type InferOptions<$Data> = unknown extends $Data ? boolean | string[] | R
104
104
  * @template $Data - The object type being masked
105
105
  */
106
106
  export interface PropertiesMask<$Data extends object = object> {
107
- type: 'properties'
107
+ type: `properties`
108
108
  /** Whether to allow only specified properties or deny them */
109
- mode: 'allow' | 'deny'
109
+ mode: `allow` | `deny`
110
110
  /** The list of property keys to allow or deny */
111
111
  properties: (keyof $Data)[]
112
112
  }
@@ -119,10 +119,10 @@ export interface PropertiesMask<$Data extends object = object> {
119
119
  * @returns A PropertiesMask
120
120
  */
121
121
  export const createProperties = <$Data extends object = object>(
122
- mode: 'allow' | 'deny',
122
+ mode: `allow` | `deny`,
123
123
  properties: (keyof $Data)[],
124
124
  ): PropertiesMask<$Data> => ({
125
- type: 'properties',
125
+ type: `properties`,
126
126
  mode,
127
127
  properties,
128
128
  })
@@ -140,8 +140,8 @@ export const createProperties = <$Data extends object = object>(
140
140
  *
141
141
  * @template _$Data - The data type being masked (used for type inference)
142
142
  */
143
- export type BinaryMask<_$Data = any> = {
144
- type: 'binary'
143
+ export interface BinaryMask<_$Data = any> {
144
+ type: `binary`
145
145
  /** Whether to show (true) or hide (false) the data */
146
146
  show: boolean
147
147
  }
@@ -153,7 +153,7 @@ export type BinaryMask<_$Data = any> = {
153
153
  * @returns A BinaryMask
154
154
  */
155
155
  export const createBinary = <$Data = any>(show: boolean): BinaryMask<$Data> => ({
156
- type: 'binary',
156
+ type: `binary`,
157
157
  show,
158
158
  })
159
159
 
@@ -170,7 +170,7 @@ export const createBinary = <$Data = any>(show: boolean): BinaryMask<$Data> => (
170
170
  * @returns A BinaryMask with show=true
171
171
  */
172
172
  export const show = (): BinaryMask => ({
173
- type: 'binary',
173
+ type: `binary`,
174
174
  show: true,
175
175
  })
176
176
 
@@ -179,7 +179,7 @@ export const show = (): BinaryMask => ({
179
179
  * @returns A BinaryMask with show=false
180
180
  */
181
181
  export const hide = (): BinaryMask => ({
182
- type: 'binary',
182
+ type: `binary`,
183
183
  show: false,
184
184
  })
185
185
 
@@ -198,8 +198,8 @@ export const hide = (): BinaryMask => ({
198
198
  export const pick = <$Data extends object = object>(
199
199
  properties: (keyof $Data)[],
200
200
  ): PropertiesMask<$Data> => ({
201
- type: 'properties',
202
- mode: 'allow',
201
+ type: `properties`,
202
+ mode: `allow`,
203
203
  properties,
204
204
  })
205
205
 
@@ -218,8 +218,8 @@ export const pick = <$Data extends object = object>(
218
218
  export const omit = <$Data extends object = object>(
219
219
  properties: (keyof $Data)[],
220
220
  ): PropertiesMask<$Data> => ({
221
- type: 'properties',
222
- mode: 'deny',
221
+ type: `properties`,
222
+ mode: `deny`,
223
223
  properties,
224
224
  })
225
225
 
@@ -238,7 +238,7 @@ export const omit = <$Data extends object = object>(
238
238
  * @returns The data type the mask is designed for
239
239
  */
240
240
  // dprint-ignore
241
- export type GetDataType<$Mask extends Mask<any>> =
241
+ export type GetDataType<$Mask extends Mask> =
242
242
  $Mask extends BinaryMask<infer $Data> ? $Data :
243
243
  $Mask extends PropertiesMask<infer $Data> ? $Data
244
244
  : never
@@ -1,7 +1,7 @@
1
1
  export const MutationType = {
2
- Create: 'create',
3
- Update: 'update',
4
- Delete: 'delete',
2
+ Create: `create`,
3
+ Update: `update`,
4
+ Delete: `delete`,
5
5
  } as const
6
6
 
7
7
  export type MutationType = typeof MutationType[keyof typeof MutationType]
@@ -0,0 +1,7 @@
1
+ /**
2
+ * PathMap barrel export
3
+ *
4
+ * @module
5
+ */
6
+
7
+ export * from './path-map.js'
@@ -0,0 +1,370 @@
1
+ import * as fc from 'fast-check'
2
+ import { describe, expect, it } from 'vitest'
3
+ import { PathMap } from './$.js'
4
+
5
+ describe('PathMap', () => {
6
+ describe('create', () => {
7
+ it('returns RelativePathMap when no base provided', () => {
8
+ const paths = PathMap.create({
9
+ src: {
10
+ lib: {
11
+ utils: 'utils.ts',
12
+ },
13
+ },
14
+ })
15
+
16
+ expect(paths).not.toHaveProperty('rooted')
17
+ expect(paths).not.toHaveProperty('absolute')
18
+ expect(paths).not.toHaveProperty('base')
19
+ expect(paths.src.lib.utils).toBe('utils.ts')
20
+ })
21
+
22
+ it('returns PathMap with all variants when base provided', () => {
23
+ const paths = PathMap.create({
24
+ src: {
25
+ lib: {
26
+ utils: 'utils.ts',
27
+ },
28
+ },
29
+ }, '/project')
30
+
31
+ expect(paths).toHaveProperty('relative')
32
+ expect(paths).toHaveProperty('rooted')
33
+ expect(paths).toHaveProperty('absolute')
34
+ expect(paths).toHaveProperty('base')
35
+ expect(paths.base).toBe('/project')
36
+ })
37
+
38
+ it('processes relative paths correctly', () => {
39
+ const paths = PathMap.create({
40
+ template: {
41
+ server: {
42
+ app: 'app.ts',
43
+ main: 'main.ts',
44
+ },
45
+ client: {
46
+ entry: 'entry.tsx',
47
+ },
48
+ 'routes.tsx': 'routes.tsx',
49
+ },
50
+ }, '/base')
51
+
52
+ // Relative paths - local to parent
53
+ expect(paths.relative.template.server.app).toBe('app.ts')
54
+ expect(paths.relative.template.server.main).toBe('main.ts')
55
+ expect(paths.relative.template.client.entry).toBe('entry.tsx')
56
+ expect(paths.relative.template['routes.tsx']).toBe('routes.tsx')
57
+
58
+ // Directory $ properties - just the segment name
59
+ expect(paths.relative.$).toBe('.')
60
+ expect(paths.relative.template.$).toBe('template')
61
+ expect(paths.relative.template.server.$).toBe('server')
62
+ expect(paths.relative.template.client.$).toBe('client')
63
+ })
64
+
65
+ it('processes rooted paths correctly', () => {
66
+ const paths = PathMap.create({
67
+ template: {
68
+ server: {
69
+ app: 'app.ts',
70
+ main: 'main.ts',
71
+ },
72
+ client: {
73
+ entry: 'entry.tsx',
74
+ },
75
+ },
76
+ }, '/base')
77
+
78
+ // Rooted paths - from PathMap root
79
+ expect(paths.rooted.template.server.app).toBe('template/server/app.ts')
80
+ expect(paths.rooted.template.server.main).toBe('template/server/main.ts')
81
+ expect(paths.rooted.template.client.entry).toBe('template/client/entry.tsx')
82
+
83
+ // Directory $ properties - full path from root
84
+ expect(paths.rooted.$).toBe('.')
85
+ expect(paths.rooted.template.$).toBe('template')
86
+ expect(paths.rooted.template.server.$).toBe('template/server')
87
+ expect(paths.rooted.template.client.$).toBe('template/client')
88
+ })
89
+
90
+ it('processes absolute paths correctly', () => {
91
+ const paths = PathMap.create({
92
+ template: {
93
+ server: {
94
+ app: 'app.ts',
95
+ main: 'main.ts',
96
+ },
97
+ client: {
98
+ entry: 'entry.tsx',
99
+ },
100
+ },
101
+ }, '/project')
102
+
103
+ // Absolute paths
104
+ expect(paths.absolute.template.server.app).toBe('/project/template/server/app.ts')
105
+ expect(paths.absolute.template.server.main).toBe('/project/template/server/main.ts')
106
+ expect(paths.absolute.template.client.entry).toBe('/project/template/client/entry.tsx')
107
+
108
+ // Directory $ properties
109
+ expect(paths.absolute.$).toBe('/project')
110
+ expect(paths.absolute.template.$).toBe('/project/template')
111
+ expect(paths.absolute.template.server.$).toBe('/project/template/server')
112
+ expect(paths.absolute.template.client.$).toBe('/project/template/client')
113
+ })
114
+
115
+ it('handles deeply nested structures', () => {
116
+ const paths = PathMap.create({
117
+ a: {
118
+ b: {
119
+ c: {
120
+ d: {
121
+ e: 'file.ts',
122
+ },
123
+ },
124
+ },
125
+ },
126
+ }, '/root')
127
+
128
+ expect(paths.relative.a.b.c.d.e).toBe('file.ts')
129
+ expect(paths.rooted.a.b.c.d.e).toBe('a/b/c/d/file.ts')
130
+ expect(paths.absolute.a.b.c.d.e).toBe('/root/a/b/c/d/file.ts')
131
+
132
+ expect(paths.relative.a.b.c.d.$).toBe('d')
133
+ expect(paths.rooted.a.b.c.d.$).toBe('a/b/c/d')
134
+ expect(paths.absolute.a.b.c.d.$).toBe('/root/a/b/c/d')
135
+ })
136
+
137
+ it('handles quoted property names', () => {
138
+ const paths = PathMap.create({
139
+ 'src-files': {
140
+ 'main.config.ts': 'main.config.ts',
141
+ '.env': '.env',
142
+ },
143
+ }, '/app')
144
+
145
+ expect(paths.relative['src-files']['main.config.ts']).toBe('main.config.ts')
146
+ expect(paths.relative['src-files']['.env']).toBe('.env')
147
+ expect(paths.rooted['src-files']['main.config.ts']).toBe('src-files/main.config.ts')
148
+ expect(paths.absolute['src-files']['.env']).toBe('/app/src-files/.env')
149
+ })
150
+ })
151
+
152
+ describe('rebase', () => {
153
+ it('creates new PathMap with different base', () => {
154
+ const original = PathMap.create({
155
+ src: {
156
+ lib: 'lib.ts',
157
+ },
158
+ }, '/original')
159
+
160
+ const rebased = PathMap.rebase(original, '/new')
161
+
162
+ expect(rebased.base).toBe('/new')
163
+ expect(rebased.absolute.src.lib).toBe('/new/src/lib.ts')
164
+ // Relative and rooted should remain the same
165
+ expect(rebased.relative.src.lib).toBe('lib.ts')
166
+ expect(rebased.rooted.src.lib).toBe('src/lib.ts')
167
+ })
168
+
169
+ it('can rebase from RelativePathMap', () => {
170
+ const relative = PathMap.create({
171
+ src: {
172
+ lib: 'lib.ts',
173
+ },
174
+ })
175
+
176
+ const based = PathMap.rebase(relative, '/base')
177
+
178
+ expect(based.base).toBe('/base')
179
+ expect(based.absolute.src.lib).toBe('/base/src/lib.ts')
180
+ expect(based.relative.src.lib).toBe('lib.ts')
181
+ expect(based.rooted.src.lib).toBe('src/lib.ts')
182
+ })
183
+
184
+ it('supports chained rebasing', () => {
185
+ const p1 = PathMap.create({ src: { file: 'file.ts' } }, '/base1')
186
+ const p2 = PathMap.rebase(p1, '/base2')
187
+ const p3 = PathMap.rebase(p2, '/base3')
188
+
189
+ expect(p1.base).toBe('/base1')
190
+ expect(p2.base).toBe('/base2')
191
+ expect(p3.base).toBe('/base3')
192
+
193
+ expect(p1.absolute.src.file).toBe('/base1/src/file.ts')
194
+ expect(p2.absolute.src.file).toBe('/base2/src/file.ts')
195
+ expect(p3.absolute.src.file).toBe('/base3/src/file.ts')
196
+ })
197
+ })
198
+
199
+ describe('property tests', () => {
200
+ // Arbitrary for valid path segments
201
+ const pathSegment = fc.stringMatching(/^[a-zA-Z0-9_-]+$/)
202
+
203
+ // Arbitrary for file names
204
+ const fileName = fc.stringMatching(/^[a-zA-Z0-9_-]+\.(ts|js|tsx|jsx)$/)
205
+
206
+ // Arbitrary for path input structures
207
+ const pathInput = fc.letrec<{ pathInput: PathMap.PathInput }>(tie => ({
208
+ pathInput: fc.dictionary(
209
+ pathSegment,
210
+ fc.oneof(
211
+ fileName,
212
+ tie('pathInput'),
213
+ ),
214
+ { minKeys: 1, maxKeys: 3 },
215
+ ),
216
+ })).pathInput
217
+
218
+ it('relative paths are always substrings of rooted paths', () => {
219
+ fc.assert(
220
+ fc.property(pathInput, fc.string({ minLength: 1 }).filter(s => s.startsWith('/')), (input, base) => {
221
+ const paths = PathMap.create(input, base)
222
+
223
+ // For every file path, relative should be at the end of rooted
224
+ function check(rel: any, rooted: any) {
225
+ for (const [key, value] of Object.entries(rel)) {
226
+ if (key === '$') continue
227
+
228
+ if (typeof value === 'string' && typeof rooted[key] === 'string') {
229
+ expect(rooted[key]).toContain(value)
230
+ expect(rooted[key].endsWith(value)).toBe(true)
231
+ } else if (typeof value === 'object') {
232
+ check(value, rooted[key])
233
+ }
234
+ }
235
+ }
236
+
237
+ check(paths.relative, paths.rooted)
238
+ }),
239
+ )
240
+ })
241
+
242
+ it('absolute paths always start with base', () => {
243
+ fc.assert(
244
+ fc.property(pathInput, fc.string({ minLength: 1 }).filter(s => s.startsWith('/')), (input, base) => {
245
+ const paths = PathMap.create(input, base)
246
+
247
+ // Base is normalized (trimmed, multiple slashes collapsed, trailing removed)
248
+ const collapsedBase = base.trim().replace(/\/+/g, '/')
249
+ const normalizedBase = collapsedBase === '/' ? '/' : collapsedBase.replace(/\/$/, '')
250
+
251
+ function checkAbsolute(obj: any) {
252
+ for (const [key, value] of Object.entries(obj)) {
253
+ if (typeof value === 'string') {
254
+ expect(value.startsWith(normalizedBase)).toBe(true)
255
+ } else if (typeof value === 'object') {
256
+ checkAbsolute(value)
257
+ }
258
+ }
259
+ }
260
+
261
+ checkAbsolute(paths.absolute)
262
+ }),
263
+ )
264
+ })
265
+
266
+ it('rebase preserves structure', () => {
267
+ fc.assert(
268
+ fc.property(
269
+ pathInput,
270
+ fc.string({ minLength: 1 }).filter(s => s.startsWith('/')),
271
+ fc.string({ minLength: 1 }).filter(s => s.startsWith('/')),
272
+ (input, base1, base2) => {
273
+ const p1 = PathMap.create(input, base1)
274
+ const p2 = PathMap.rebase(p1, base2)
275
+
276
+ // Structure should be identical
277
+ expect(JSON.stringify(p1.relative)).toBe(JSON.stringify(p2.relative))
278
+ expect(JSON.stringify(p1.rooted)).toBe(JSON.stringify(p2.rooted))
279
+
280
+ // Only absolute paths and base should change
281
+ const collapsedBase2 = base2.trim().replace(/\/+/g, '/')
282
+ const normalizedBase2 = collapsedBase2 === '/' ? '/' : collapsedBase2.replace(/\/$/, '')
283
+ expect(p2.base).toBe(normalizedBase2)
284
+
285
+ function checkBase(obj: any) {
286
+ for (const [key, value] of Object.entries(obj)) {
287
+ if (typeof value === 'string') {
288
+ expect(value.startsWith(normalizedBase2)).toBe(true)
289
+ } else if (typeof value === 'object') {
290
+ checkBase(value)
291
+ }
292
+ }
293
+ }
294
+
295
+ checkBase(p2.absolute)
296
+ },
297
+ ),
298
+ )
299
+ })
300
+
301
+ it('$ properties are consistent across variants', () => {
302
+ fc.assert(
303
+ fc.property(pathInput, fc.string({ minLength: 1 }).filter(s => s.startsWith('/')), (input, base) => {
304
+ const paths = PathMap.create(input, base)
305
+
306
+ function checkDirs(rel: any, rooted: any, abs: any, currentPath: string[] = []) {
307
+ if (rel.$ && rooted.$ && abs.$) {
308
+ // Relative $ should be just the last segment or '.'
309
+ if (currentPath.length === 0) {
310
+ expect(rel.$).toBe('.')
311
+ expect(rooted.$).toBe('.')
312
+ // Base is normalized in create() (trimmed, collapsed, trailing removed)
313
+ const collapsedBase = base.trim().replace(/\/+/g, '/')
314
+ const normalizedBase = collapsedBase === '/' ? '/' : collapsedBase.replace(/\/$/, '')
315
+ expect(abs.$).toBe(normalizedBase)
316
+ } else {
317
+ expect(rel.$).toBe(currentPath[currentPath.length - 1])
318
+ expect(rooted.$).toBe(currentPath.join('/'))
319
+ // Handle base that might be '/' or have trailing slash
320
+ // Note: create() normalizes the base (trim + collapse + remove trailing)
321
+ const collapsedBase = base.trim().replace(/\/+/g, '/')
322
+ const normalizedBase = collapsedBase === '/' ? '/' : collapsedBase.replace(/\/$/, '')
323
+ const expectedAbs = normalizedBase === '/'
324
+ ? `/${currentPath.join('/')}`
325
+ : `${normalizedBase}/${currentPath.join('/')}`
326
+ expect(abs.$).toBe(expectedAbs)
327
+ }
328
+ }
329
+
330
+ for (const key of Object.keys(rel)) {
331
+ if (key === '$' || typeof rel[key] === 'string') continue
332
+ if (rel[key] && rooted[key] && abs[key]) {
333
+ checkDirs(rel[key], rooted[key], abs[key], [...currentPath, key])
334
+ }
335
+ }
336
+ }
337
+
338
+ checkDirs(paths.relative, paths.rooted, paths.absolute)
339
+ }),
340
+ )
341
+ })
342
+ })
343
+
344
+ describe('type safety', () => {
345
+ it('maintains type information through operations', () => {
346
+ const paths = PathMap.create({
347
+ src: {
348
+ lib: {
349
+ utils: 'utils.ts',
350
+ helpers: 'helpers.ts',
351
+ },
352
+ components: {
353
+ Button: 'Button.tsx',
354
+ },
355
+ },
356
+ }, '/project')
357
+
358
+ // TypeScript should know about these paths
359
+ const _utils: string = paths.relative.src.lib.utils
360
+ const _button: string = paths.absolute.src.components.Button
361
+ const _libDir: string = paths.rooted.src.lib.$
362
+
363
+ // @ts-expect-error - should not exist
364
+ paths.relative.src.lib.unknown
365
+
366
+ // @ts-expect-error - should not exist
367
+ paths.absolute.notThere
368
+ })
369
+ })
370
+ })
@@ -0,0 +1,7 @@
1
+ /**
2
+ * PathMap namespace export
3
+ *
4
+ * @module
5
+ */
6
+
7
+ export * as PathMap from './$$.js'