polen 0.10.0-next.14 → 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 (923) 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 +12 -22
  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 +33 -38
  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 +15 -42
  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 +34 -25
  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 +8 -8
  179. package/build/lib/file-router/file-router.d.ts +3 -3
  180. package/build/lib/file-router/file-router.js +3 -3
  181. package/build/lib/file-router/index.d.ts +1 -1
  182. package/build/lib/file-router/index.js +1 -1
  183. package/build/lib/file-router/linter.d.ts +5 -5
  184. package/build/lib/file-router/linter.js +7 -7
  185. package/build/lib/file-router/scan.d.ts +2 -2
  186. package/build/lib/file-router/scan.js +3 -3
  187. package/build/lib/grafaid/_Nodes.d.ts +1 -1
  188. package/build/lib/grafaid/_Nodes.js +1 -1
  189. package/build/lib/grafaid/document/OperationTypeNode.d.ts +1 -1
  190. package/build/lib/grafaid/document/OperationTypeNode.js +1 -1
  191. package/build/lib/grafaid/document/kind.d.ts +1 -1
  192. package/build/lib/grafaid/document/kind.js +1 -1
  193. package/build/lib/grafaid/document.d.ts +4 -4
  194. package/build/lib/grafaid/document.js +6 -6
  195. package/build/lib/grafaid/grafaid.d.ts +4 -4
  196. package/build/lib/grafaid/grafaid.js +4 -4
  197. package/build/lib/grafaid/graphql.d.ts +2 -2
  198. package/build/lib/grafaid/graphql.js +2 -2
  199. package/build/lib/grafaid/http/__.d.ts +1 -1
  200. package/build/lib/grafaid/http/__.js +1 -1
  201. package/build/lib/grafaid/http/http.js +1 -1
  202. package/build/lib/grafaid/index.d.ts +1 -1
  203. package/build/lib/grafaid/index.js +1 -1
  204. package/build/lib/grafaid/schema/KindMap/_.d.ts +3 -3
  205. package/build/lib/grafaid/schema/KindMap/_.js +4 -4
  206. package/build/lib/grafaid/schema/KindMap/__.d.ts +2 -2
  207. package/build/lib/grafaid/schema/KindMap/__.js +1 -1
  208. package/build/lib/grafaid/schema/OperationType/__.d.ts +2 -2
  209. package/build/lib/grafaid/schema/OperationType/__.js +1 -1
  210. package/build/lib/grafaid/schema/RootDetails.d.ts +3 -3
  211. package/build/lib/grafaid/schema/RootDetails.js +2 -2
  212. package/build/lib/grafaid/schema/RootTypeMap.d.ts +2 -2
  213. package/build/lib/grafaid/schema/RootTypeMap.js +2 -2
  214. package/build/lib/grafaid/schema/nodes-like.d.ts +1 -1
  215. package/build/lib/grafaid/schema/nodes-like.js +1 -1
  216. package/build/lib/grafaid/schema/schema.d.ts +14 -14
  217. package/build/lib/grafaid/schema/schema.js +15 -15
  218. package/build/lib/grafaid/schema/type-kind-name.d.ts +1 -1
  219. package/build/lib/grafaid/schema/type-kind-name.js +1 -1
  220. package/build/lib/grafaid/schema/type.d.ts +1 -1
  221. package/build/lib/grafaid/schema/typeGuards.js +1 -1
  222. package/build/lib/grafaid-old/grafaid.d.ts +1 -1
  223. package/build/lib/grafaid-old/grafaid.js +1 -1
  224. package/build/lib/grafaid-old/index.d.ts +1 -1
  225. package/build/lib/grafaid-old/index.js +1 -1
  226. package/build/lib/graphql-change/index.d.ts +1 -1
  227. package/build/lib/graphql-change/index.js +1 -1
  228. package/build/lib/graphql-changeset/index.d.ts +1 -1
  229. package/build/lib/graphql-changeset/index.js +1 -1
  230. package/build/lib/graphql-document/$$.d.ts +4 -4
  231. package/build/lib/graphql-document/$$.js +4 -4
  232. package/build/lib/graphql-document/$.d.ts +1 -1
  233. package/build/lib/graphql-document/$.js +1 -1
  234. package/build/lib/graphql-document/analysis.d.ts +1 -1
  235. package/build/lib/graphql-document/analysis.js +46 -46
  236. package/build/lib/graphql-document/components/GraphQLDocument.d.ts.map +1 -1
  237. package/build/lib/graphql-document/components/GraphQLDocument.js +28 -21
  238. package/build/lib/graphql-document/components/GraphQLDocument.js.map +1 -1
  239. package/build/lib/graphql-document/components/GraphQLDocumentWithSchema.d.ts +3 -3
  240. package/build/lib/graphql-document/components/GraphQLDocumentWithSchema.d.ts.map +1 -1
  241. package/build/lib/graphql-document/components/GraphQLDocumentWithSchema.js +14 -30
  242. package/build/lib/graphql-document/components/GraphQLDocumentWithSchema.js.map +1 -1
  243. package/build/lib/graphql-document/components/GraphQLIdentifierPopover.d.ts +2 -2
  244. package/build/lib/graphql-document/components/GraphQLIdentifierPopover.d.ts.map +1 -1
  245. package/build/lib/graphql-document/components/GraphQLIdentifierPopover.js +26 -24
  246. package/build/lib/graphql-document/components/GraphQLIdentifierPopover.js.map +1 -1
  247. package/build/lib/graphql-document/components/IdentifierLink.d.ts +3 -3
  248. package/build/lib/graphql-document/components/IdentifierLink.js +22 -22
  249. package/build/lib/graphql-document/components/IdentifierLink.js.map +1 -1
  250. package/build/lib/graphql-document/components/graphql-document-styles.d.ts +1 -1
  251. package/build/lib/graphql-document/components/graphql-document-styles.d.ts.map +1 -1
  252. package/build/lib/graphql-document/components/graphql-document-styles.js +0 -23
  253. package/build/lib/graphql-document/components/graphql-document-styles.js.map +1 -1
  254. package/build/lib/graphql-document/components/index.d.ts +4 -5
  255. package/build/lib/graphql-document/components/index.d.ts.map +1 -1
  256. package/build/lib/graphql-document/components/index.js +4 -5
  257. package/build/lib/graphql-document/components/index.js.map +1 -1
  258. package/build/lib/graphql-document/example.d.ts +1 -1
  259. package/build/lib/graphql-document/example.js +36 -36
  260. package/build/lib/graphql-document/example.js.map +1 -1
  261. package/build/lib/graphql-document/graphql-document.d.ts +9 -9
  262. package/build/lib/graphql-document/graphql-document.d.ts.map +1 -1
  263. package/build/lib/graphql-document/graphql-document.js +9 -9
  264. package/build/lib/graphql-document/graphql-document.js.map +1 -1
  265. package/build/lib/graphql-document/positioning-simple.d.ts +1 -1
  266. package/build/lib/graphql-document/positioning-simple.js +31 -31
  267. package/build/lib/graphql-document/schema-integration.d.ts +5 -5
  268. package/build/lib/graphql-document/schema-integration.d.ts.map +1 -1
  269. package/build/lib/graphql-document/schema-integration.js +22 -22
  270. package/build/lib/graphql-document/schema-integration.js.map +1 -1
  271. package/build/lib/graphql-document/types.d.ts +4 -4
  272. package/build/lib/graphql-schema-loader/index.d.ts +1 -1
  273. package/build/lib/graphql-schema-loader/index.js +1 -1
  274. package/build/lib/helpers.js +1 -1
  275. package/build/lib/hono-aid/index.d.ts +1 -1
  276. package/build/lib/hono-aid/index.js +1 -1
  277. package/build/lib/html-utils/html-transformer.d.ts +4 -0
  278. package/build/lib/html-utils/html-transformer.d.ts.map +1 -0
  279. package/build/lib/html-utils/html-transformer.js +3 -0
  280. package/build/lib/html-utils/html-transformer.js.map +1 -0
  281. package/build/lib/html-utils/inject-global-data.d.ts +41 -0
  282. package/build/lib/html-utils/inject-global-data.d.ts.map +1 -0
  283. package/build/lib/html-utils/inject-global-data.js +65 -0
  284. package/build/lib/html-utils/inject-global-data.js.map +1 -0
  285. package/build/lib/kit-temp.d.ts +66 -2
  286. package/build/lib/kit-temp.d.ts.map +1 -1
  287. package/build/lib/kit-temp.js +37 -7
  288. package/build/lib/kit-temp.js.map +1 -1
  289. package/build/lib/kit-temp.test-d.js +16 -16
  290. package/build/lib/kit-temp.test-d.js.map +1 -1
  291. package/build/lib/mask/$$.d.ts +2 -2
  292. package/build/lib/mask/$$.js +2 -2
  293. package/build/lib/mask/$.d.ts +1 -1
  294. package/build/lib/mask/$.js +1 -1
  295. package/build/lib/mask/apply.d.ts +9 -9
  296. package/build/lib/mask/apply.d.ts.map +1 -1
  297. package/build/lib/mask/apply.js +3 -3
  298. package/build/lib/mask/apply.js.map +1 -1
  299. package/build/lib/mask/mask.d.ts +7 -7
  300. package/build/lib/mask/mask.d.ts.map +1 -1
  301. package/build/lib/mask/mask.js +12 -12
  302. package/build/lib/mask/mask.test-d.js +14 -14
  303. package/build/lib/mask/mask.test-d.js.map +1 -1
  304. package/build/lib/mutation-type.js +3 -3
  305. package/build/lib/path-map/$$.d.ts +7 -0
  306. package/build/lib/path-map/$$.d.ts.map +1 -0
  307. package/build/lib/path-map/$$.js +7 -0
  308. package/build/lib/path-map/$$.js.map +1 -0
  309. package/build/lib/path-map/$.d.ts +7 -0
  310. package/build/lib/path-map/$.d.ts.map +1 -0
  311. package/build/lib/path-map/$.js +7 -0
  312. package/build/lib/path-map/$.js.map +1 -0
  313. package/build/lib/path-map/path-map.d.ts +110 -0
  314. package/build/lib/path-map/path-map.d.ts.map +1 -0
  315. package/build/lib/path-map/path-map.js +126 -0
  316. package/build/lib/path-map/path-map.js.map +1 -0
  317. package/build/lib/react-router-aid/index.d.ts +1 -1
  318. package/build/lib/react-router-aid/index.js +1 -1
  319. package/build/lib/react-router-aid/react-router-aid.d.ts +1 -1
  320. package/build/lib/react-router-aid/react-router-aid.js +1 -1
  321. package/build/lib/react-router-loader/react-router-loader.d.ts.map +1 -1
  322. package/build/lib/react-router-loader/react-router-loader.js +1 -4
  323. package/build/lib/react-router-loader/react-router-loader.js.map +1 -1
  324. package/build/lib/stack-processor/index.d.ts +1 -1
  325. package/build/lib/stack-processor/index.js +1 -1
  326. package/build/lib/stack-processor/stack-processor.d.ts.map +1 -1
  327. package/build/lib/stack-processor/stack-processor.js +0 -1
  328. package/build/lib/stack-processor/stack-processor.js.map +1 -1
  329. package/build/lib/superjson-codec/codecs/graphql-schema.d.ts +1 -1
  330. package/build/lib/superjson-codec/codecs/graphql-schema.js +1 -1
  331. package/build/lib/superjson-codec/exports.d.ts +2 -2
  332. package/build/lib/superjson-codec/exports.js +2 -2
  333. package/build/lib/superjson-codec/index.d.ts +1 -1
  334. package/build/lib/superjson-codec/index.js +1 -1
  335. package/build/lib/task/$$.d.ts +2 -2
  336. package/build/lib/task/$$.js +2 -2
  337. package/build/lib/task/$.d.ts +1 -1
  338. package/build/lib/task/$.js +1 -1
  339. package/build/lib/task/report.d.ts +1 -1
  340. package/build/lib/task/task.d.ts +1 -1
  341. package/build/lib/task/task.js +2 -2
  342. package/build/lib/theme/$.d.ts +2 -0
  343. package/build/lib/theme/$.d.ts.map +1 -0
  344. package/build/lib/theme/$.js +3 -0
  345. package/build/lib/theme/$.js.map +1 -0
  346. package/build/lib/theme/theme.d.ts +68 -0
  347. package/build/lib/theme/theme.d.ts.map +1 -0
  348. package/build/lib/theme/theme.js +123 -0
  349. package/build/lib/theme/theme.js.map +1 -0
  350. package/build/lib/vite-plugin-json/index.d.ts +1 -1
  351. package/build/lib/vite-plugin-json/index.js +1 -1
  352. package/build/lib/vite-plugin-json/vite-plugin-json.js +3 -4
  353. package/build/lib/vite-plugin-json/vite-plugin-json.js.map +1 -1
  354. package/build/lib/vite-plugin-mdx/index.d.ts +1 -1
  355. package/build/lib/vite-plugin-mdx/index.js +1 -1
  356. package/build/lib/vite-plugin-mdx/vite-plugin-mdx.d.ts +1 -1
  357. package/build/lib/vite-plugin-mdx/vite-plugin-mdx.d.ts.map +1 -1
  358. package/build/lib/vite-plugin-mdx/vite-plugin-mdx.js +2 -6
  359. package/build/lib/vite-plugin-mdx/vite-plugin-mdx.js.map +1 -1
  360. package/build/lib/vite-plugin-reactive-data/index.d.ts +1 -1
  361. package/build/lib/vite-plugin-reactive-data/index.js +1 -1
  362. package/build/lib/vite-plugin-reactive-data/vite-plugin-reactive-data.d.ts +1 -1
  363. package/build/lib/vite-plugin-reactive-data/vite-plugin-reactive-data.d.ts.map +1 -1
  364. package/build/lib/vite-plugin-reactive-data/vite-plugin-reactive-data.js +12 -14
  365. package/build/lib/vite-plugin-reactive-data/vite-plugin-reactive-data.js.map +1 -1
  366. package/build/lib/vite-plugins/index.d.ts +1 -1
  367. package/build/lib/vite-plugins/index.js +1 -1
  368. package/build/lib/vite-plugins/vite-plugins.d.ts +1 -1
  369. package/build/lib/vite-plugins/vite-plugins.js +1 -1
  370. package/build/lib/vite-virtual/identified-loader.d.ts +2 -2
  371. package/build/lib/vite-virtual/identified-loader.js +2 -2
  372. package/build/lib/vite-virtual/identifier.js +1 -1
  373. package/build/lib/vite-virtual/index.d.ts +1 -1
  374. package/build/lib/vite-virtual/index.js +1 -1
  375. package/build/lib/vite-virtual/vite-virtual.d.ts +3 -3
  376. package/build/lib/vite-virtual/vite-virtual.js +3 -3
  377. package/build/package-paths.d.ts +18 -6
  378. package/build/package-paths.d.ts.map +1 -1
  379. package/build/package-paths.js +19 -6
  380. package/build/package-paths.js.map +1 -1
  381. package/build/project-data.d.ts +3 -1
  382. package/build/project-data.d.ts.map +1 -1
  383. package/build/sandbox.js +9 -9
  384. package/build/template/components/ArgumentList.js +1 -1
  385. package/build/template/components/ArgumentList.js.map +1 -1
  386. package/build/template/components/ArgumentListAnnotation.js +2 -2
  387. package/build/template/components/ArgumentListAnnotation.js.map +1 -1
  388. package/build/template/components/Changelog.d.ts +1 -1
  389. package/build/template/components/Changelog.js +1 -1
  390. package/build/template/components/CodeBlock.d.ts +0 -8
  391. package/build/template/components/CodeBlock.d.ts.map +1 -1
  392. package/build/template/components/CodeBlock.js +3 -38
  393. package/build/template/components/CodeBlock.js.map +1 -1
  394. package/build/template/components/CodeBlockEnhancer.js +41 -41
  395. package/build/template/components/CodeBlockEnhancer.js.map +1 -1
  396. package/build/template/components/DeprecationReason.js +1 -1
  397. package/build/template/components/DeprecationReason.js.map +1 -1
  398. package/build/template/components/Description.js +1 -1
  399. package/build/template/components/Description.js.map +1 -1
  400. package/build/template/components/Field.js +4 -4
  401. package/build/template/components/Field.js.map +1 -1
  402. package/build/template/components/FieldList.js +1 -1
  403. package/build/template/components/FieldList.js.map +1 -1
  404. package/build/template/components/FieldListSection.js +1 -1
  405. package/build/template/components/FieldListSection.js.map +1 -1
  406. package/build/template/components/HamburgerMenu.js +11 -11
  407. package/build/template/components/HamburgerMenu.js.map +1 -1
  408. package/build/template/components/Link.d.ts +2 -2
  409. package/build/template/components/Link.d.ts.map +1 -1
  410. package/build/template/components/Link.js +17 -17
  411. package/build/template/components/Link.js.map +1 -1
  412. package/build/template/components/Logo.js +4 -4
  413. package/build/template/components/MDXComponents.d.ts +0 -1
  414. package/build/template/components/MDXComponents.d.ts.map +1 -1
  415. package/build/template/components/MDXComponents.js +1 -59
  416. package/build/template/components/MDXComponents.js.map +1 -1
  417. package/build/template/components/NamedType.js +2 -2
  418. package/build/template/components/NamedType.js.map +1 -1
  419. package/build/template/components/TestComponent.js +2 -2
  420. package/build/template/components/Texts/MinorHeading.js +4 -4
  421. package/build/template/components/Texts/index.d.ts +1 -1
  422. package/build/template/components/Texts/index.js +1 -1
  423. package/build/template/components/Texts/texts.d.ts +1 -1
  424. package/build/template/components/Texts/texts.d.ts.map +1 -1
  425. package/build/template/components/Texts/texts.js +1 -1
  426. package/build/template/components/Texts/texts.js.map +1 -1
  427. package/build/template/components/ThemeToggle.d.ts.map +1 -1
  428. package/build/template/components/ThemeToggle.js +25 -4
  429. package/build/template/components/ThemeToggle.js.map +1 -1
  430. package/build/template/components/TypeAnnotation.js +1 -1
  431. package/build/template/components/TypeAnnotation.js.map +1 -1
  432. package/build/template/components/TypeFieldsLinkList.js +1 -1
  433. package/build/template/components/TypeFieldsLinkList.js.map +1 -1
  434. package/build/template/components/TypeIndex.js +1 -1
  435. package/build/template/components/TypeIndex.js.map +1 -1
  436. package/build/template/components/content/$$.d.ts +1 -1
  437. package/build/template/components/content/$$.d.ts.map +1 -1
  438. package/build/template/components/content/$$.js +1 -1
  439. package/build/template/components/content/$$.js.map +1 -1
  440. package/build/template/components/content/GraphQLDocumentWithSchema.d.ts +2 -2
  441. package/build/template/components/content/GraphQLDocumentWithSchema.d.ts.map +1 -1
  442. package/build/template/components/content/GraphQLDocumentWithSchema.js +1 -1
  443. package/build/template/components/content/GraphQLDocumentWithSchema.js.map +1 -1
  444. package/build/template/components/content/GraphQLDocumentWrapper.d.ts +2 -2
  445. package/build/template/components/content/GraphQLDocumentWrapper.d.ts.map +1 -1
  446. package/build/template/components/content/GraphQLDocumentWrapper.js +8 -23
  447. package/build/template/components/content/GraphQLDocumentWrapper.js.map +1 -1
  448. package/build/template/components/graphql/graphql.d.ts +2 -2
  449. package/build/template/components/graphql/graphql.d.ts.map +1 -1
  450. package/build/template/components/graphql/graphql.js +2 -2
  451. package/build/template/components/graphql/graphql.js.map +1 -1
  452. package/build/template/components/graphql/index.d.ts +1 -1
  453. package/build/template/components/graphql/index.d.ts.map +1 -1
  454. package/build/template/components/graphql/index.js +1 -1
  455. package/build/template/components/graphql/index.js.map +1 -1
  456. package/build/template/components/graphql/type-kind-icon.d.ts.map +1 -1
  457. package/build/template/components/graphql/type-kind-icon.js +1 -2
  458. package/build/template/components/graphql/type-kind-icon.js.map +1 -1
  459. package/build/template/components/graphql/type-link.js +3 -3
  460. package/build/template/components/graphql/type-link.js.map +1 -1
  461. package/build/template/components/sidebar/Sidebar.js +1 -1
  462. package/build/template/components/sidebar/Sidebar.js.map +1 -1
  463. package/build/template/components/sidebar/SidebarItem.js +4 -4
  464. package/build/template/components/sidebar/SidebarItem.js.map +1 -1
  465. package/build/template/constants.d.ts +17 -0
  466. package/build/template/constants.d.ts.map +1 -0
  467. package/build/template/constants.js +11 -0
  468. package/build/template/constants.js.map +1 -0
  469. package/build/template/contexts/ThemeContext.d.ts +3 -1
  470. package/build/template/contexts/ThemeContext.d.ts.map +1 -1
  471. package/build/template/contexts/ThemeContext.js +50 -22
  472. package/build/template/contexts/ThemeContext.js.map +1 -1
  473. package/build/template/entry.client.js +6 -2
  474. package/build/template/entry.client.js.map +1 -1
  475. package/build/template/routes/changelog.d.ts +1 -1
  476. package/build/template/routes/changelog.js +1 -1
  477. package/build/template/routes/changelog.js.map +1 -1
  478. package/build/template/routes/reference.$type.$field.js +2 -2
  479. package/build/template/routes/reference.$type.$field.js.map +1 -1
  480. package/build/template/routes/reference.$type.js +2 -2
  481. package/build/template/routes/reference.$type.js.map +1 -1
  482. package/build/template/routes/reference.js +2 -2
  483. package/build/template/routes/reference.js.map +1 -1
  484. package/build/template/routes/root.d.ts.map +1 -1
  485. package/build/template/routes/root.js +29 -26
  486. package/build/template/routes/root.js.map +1 -1
  487. package/build/template/routes.js +1 -1
  488. package/build/template/routes.js.map +1 -1
  489. package/build/template/server/app.d.ts +1 -1
  490. package/build/template/server/app.d.ts.map +1 -1
  491. package/build/template/server/app.js +17 -8
  492. package/build/template/server/app.js.map +1 -1
  493. package/build/template/server/create-page-html-response.d.ts +2 -1
  494. package/build/template/server/create-page-html-response.d.ts.map +1 -1
  495. package/build/template/server/create-page-html-response.js +34 -5
  496. package/build/template/server/create-page-html-response.js.map +1 -1
  497. package/build/template/server/main.js +3 -3
  498. package/build/template/server/middleware/page.d.ts +1 -1
  499. package/build/template/server/middleware/page.d.ts.map +1 -1
  500. package/build/template/server/middleware/page.js +3 -3
  501. package/build/template/server/middleware/page.js.map +1 -1
  502. package/build/template/server/ssg/generate.d.ts.map +1 -1
  503. package/build/template/server/ssg/generate.js +17 -7
  504. package/build/template/server/ssg/generate.js.map +1 -1
  505. package/build/template/server/ssg/get-route-paths.js +1 -1
  506. package/build/template/server/ssg/get-route-paths.js.map +1 -1
  507. package/build/template/server/transformers/inject-polen-data.d.ts +6 -0
  508. package/build/template/server/transformers/inject-polen-data.d.ts.map +1 -0
  509. package/build/template/server/transformers/inject-polen-data.js +28 -0
  510. package/build/template/server/transformers/inject-polen-data.js.map +1 -0
  511. package/build/template/server/transformers/inject-theme-init.d.ts +6 -0
  512. package/build/template/server/transformers/inject-theme-init.d.ts.map +1 -0
  513. package/build/template/server/transformers/inject-theme-init.js +29 -0
  514. package/build/template/server/transformers/inject-theme-init.js.map +1 -0
  515. package/build/template/server/view.js +1 -1
  516. package/build/template/server/view.js.map +1 -1
  517. package/package.json +31 -77
  518. package/src/api/api.ts +4 -4
  519. package/src/api/builder/index.ts +1 -1
  520. package/src/api/config/config.ts +4 -4
  521. package/src/api/config/configurator.ts +94 -15
  522. package/src/api/config/define.ts +1 -1
  523. package/src/api/config/index.ts +1 -1
  524. package/src/api/config/load.ts +1 -4
  525. package/src/api/config/merge.ts +1 -2
  526. package/src/api/config-resolver/config-resolver.ts +2 -2
  527. package/src/api/config-resolver/index.ts +1 -1
  528. package/src/api/config-resolver/resolve.ts +4 -4
  529. package/src/api/config-resolver/vite.ts +1 -1
  530. package/src/api/content/$$.ts +6 -6
  531. package/src/api/content/$.test.ts +1 -1
  532. package/src/api/content/$.ts +1 -1
  533. package/src/api/content/navbar.test.ts +2 -2
  534. package/src/api/content/navbar.ts +3 -3
  535. package/src/api/content/page.ts +1 -1
  536. package/src/api/content/scan.ts +8 -8
  537. package/src/api/content/sidebar.test.ts +3 -3
  538. package/src/api/content/sidebar.ts +20 -20
  539. package/src/api/index.ts +1 -1
  540. package/src/api/schema/data-sources/data-sources.ts +3 -3
  541. package/src/api/schema/data-sources/index.ts +1 -1
  542. package/src/api/schema/data-sources/memory/memory.ts +36 -1
  543. package/src/api/schema/data-sources/schema-directory/file-name-expression/file-name-expression.ts +0 -1
  544. package/src/api/schema/data-sources/schema-directory/file-name-expression/index.ts +1 -1
  545. package/src/api/schema/data-sources/schema-directory/schema-directory.ts +31 -2
  546. package/src/api/schema/data-sources/schema-file/schema-file.ts +20 -1
  547. package/src/api/schema/index.ts +1 -1
  548. package/src/api/schema/read.ts +43 -2
  549. package/src/api/schema/schema.ts +2 -2
  550. package/src/api/schema-augmentation/augmentations/description.ts +2 -2
  551. package/src/api/schema-augmentation/index.ts +1 -1
  552. package/src/api/schema-augmentation/schema-augmentation.ts +1 -2
  553. package/src/api/server/report-error.ts +7 -5
  554. package/src/api/singletons/markdown/index.ts +1 -1
  555. package/src/api/singletons/markdown/markdown.test.ts +27 -30
  556. package/src/api/singletons/markdown/markdown.ts +4 -23
  557. package/src/api/static/index.ts +1 -1
  558. package/src/api/static/manifest.test.ts +1 -1
  559. package/src/api/static/manifest.ts +3 -3
  560. package/src/api/static/rebase.test.ts +2 -2
  561. package/src/api/static/rebase.ts +11 -11
  562. package/src/api/static/static.ts +2 -2
  563. package/src/api/utils/asset-url/asset-url.test.ts +1 -1
  564. package/src/api/utils/asset-url/index.ts +1 -1
  565. package/src/api/vite/logger.ts +5 -5
  566. package/src/api/vite/plugins/{branding/index.ts → branding.ts} +9 -9
  567. package/src/api/vite/plugins/build.ts +11 -13
  568. package/src/api/vite/plugins/core.ts +37 -40
  569. package/src/api/vite/plugins/main.ts +25 -22
  570. package/src/api/vite/plugins/pages.ts +17 -52
  571. package/src/api/vite/plugins/serve.ts +36 -26
  572. package/src/cli/commands/build.ts +0 -1
  573. package/src/cli/commands/config/$default.ts +7 -0
  574. package/src/cli/commands/config/create.ts +25 -0
  575. package/src/cli/commands/config.ts +6 -0
  576. package/src/cli/commands/create.ts +2 -3
  577. package/src/cli/commands/dev.ts +0 -1
  578. package/src/cli/commands/open.ts +0 -1
  579. package/src/cli/commands/static/rebase.ts +0 -1
  580. package/src/cli/commands/static.ts +1 -1
  581. package/src/dep/graphql-inspector/index.ts +1 -1
  582. package/src/dep/hono/hono.ts +1 -1
  583. package/src/dep/hono/index.ts +1 -1
  584. package/src/dep/superjson/index.ts +1 -1
  585. package/src/dep/tiny-globby/index.ts +1 -1
  586. package/src/dep/vite/index.ts +1 -1
  587. package/src/exports/components.ts +3 -3
  588. package/src/exports/index.ts +1 -1
  589. package/src/lib/apple-touch-icon/index.ts +1 -1
  590. package/src/lib/errors/ContextualAggregateError.ts +1 -1
  591. package/src/lib/errors/ContextualError.ts +1 -1
  592. package/src/lib/errors/ErrorInternal.ts +2 -2
  593. package/src/lib/errors/errors.ts +4 -4
  594. package/src/lib/errors/index.ts +1 -1
  595. package/src/lib/errors/types.ts +1 -1
  596. package/src/lib/extensible-data/index.ts +1 -1
  597. package/src/lib/favicon/index.ts +1 -1
  598. package/src/lib/file-router/diagnostic-reporter.ts +9 -9
  599. package/src/lib/file-router/file-router.ts +3 -3
  600. package/src/lib/file-router/index.test.ts +2 -2
  601. package/src/lib/file-router/index.ts +1 -1
  602. package/src/lib/file-router/linter.test.ts +2 -2
  603. package/src/lib/file-router/linter.ts +11 -11
  604. package/src/lib/file-router/scan.ts +4 -4
  605. package/src/lib/grafaid/_Nodes.ts +1 -1
  606. package/src/lib/grafaid/document/OperationTypeNode.ts +1 -1
  607. package/src/lib/grafaid/document/kind.ts +1 -1
  608. package/src/lib/grafaid/document.ts +6 -6
  609. package/src/lib/grafaid/grafaid.ts +4 -4
  610. package/src/lib/grafaid/graphql.ts +3 -3
  611. package/src/lib/grafaid/http/__.ts +1 -1
  612. package/src/lib/grafaid/http/http.ts +1 -1
  613. package/src/lib/grafaid/index.ts +1 -1
  614. package/src/lib/grafaid/schema/KindMap/_.ts +6 -6
  615. package/src/lib/grafaid/schema/KindMap/__.ts +2 -2
  616. package/src/lib/grafaid/schema/OperationType/__.ts +2 -2
  617. package/src/lib/grafaid/schema/RootDetails.ts +3 -3
  618. package/src/lib/grafaid/schema/RootTypeMap.ts +2 -2
  619. package/src/lib/grafaid/schema/nodes-like.ts +2 -2
  620. package/src/lib/grafaid/schema/schema.ts +15 -15
  621. package/src/lib/grafaid/schema/type-kind-name.ts +1 -1
  622. package/src/lib/grafaid/schema/type.ts +1 -1
  623. package/src/lib/grafaid/schema/typeGuards.ts +1 -1
  624. package/src/lib/grafaid-old/grafaid.ts +1 -1
  625. package/src/lib/grafaid-old/index.ts +1 -1
  626. package/src/lib/graphql-change/index.ts +1 -1
  627. package/src/lib/graphql-changeset/index.ts +1 -1
  628. package/src/lib/graphql-document/$$.ts +4 -4
  629. package/src/lib/graphql-document/$.test.ts +3 -3
  630. package/src/lib/graphql-document/$.ts +1 -1
  631. package/src/lib/graphql-document/analysis.ts +49 -49
  632. package/src/lib/graphql-document/components/GraphQLDocument.tsx +38 -39
  633. package/src/lib/graphql-document/components/GraphQLDocument.unit.test.ts +4 -4
  634. package/src/lib/graphql-document/components/GraphQLDocumentWithSchema.tsx +18 -37
  635. package/src/lib/graphql-document/components/GraphQLIdentifierPopover.tsx +31 -29
  636. package/src/lib/graphql-document/components/IdentifierLink.tsx +25 -25
  637. package/src/lib/graphql-document/components/graphql-document-styles.ts +0 -23
  638. package/src/lib/graphql-document/components/index.ts +4 -5
  639. package/src/lib/graphql-document/example.ts +35 -35
  640. package/src/lib/graphql-document/graphql-document.ts +9 -9
  641. package/src/lib/graphql-document/hooks/use-tooltip-state.test.ts +1 -1
  642. package/src/lib/graphql-document/positioning-simple.test.ts +4 -4
  643. package/src/lib/graphql-document/positioning-simple.ts +32 -32
  644. package/src/lib/graphql-document/schema-integration.test.ts +1 -1
  645. package/src/lib/graphql-document/schema-integration.ts +27 -36
  646. package/src/lib/graphql-document/types.ts +4 -4
  647. package/src/lib/graphql-schema-loader/index.ts +1 -1
  648. package/src/lib/helpers.ts +1 -1
  649. package/src/lib/hono-aid/index.ts +1 -1
  650. package/src/lib/html-utils/html-transformer.ts +6 -0
  651. package/src/lib/html-utils/inject-global-data.test.ts +89 -0
  652. package/src/lib/html-utils/inject-global-data.ts +80 -0
  653. package/src/lib/kit-temp.test-d.ts +27 -22
  654. package/src/lib/kit-temp.test.ts +4 -4
  655. package/src/lib/kit-temp.ts +83 -11
  656. package/src/lib/mask/$$.ts +2 -2
  657. package/src/lib/mask/$.test.ts +1 -1
  658. package/src/lib/mask/$.ts +1 -1
  659. package/src/lib/mask/apply.ts +15 -15
  660. package/src/lib/mask/mask.test-d.ts +30 -18
  661. package/src/lib/mask/mask.ts +18 -18
  662. package/src/lib/mutation-type.ts +3 -3
  663. package/src/lib/path-map/$$.ts +7 -0
  664. package/src/lib/path-map/$.test.ts +370 -0
  665. package/src/lib/path-map/$.ts +7 -0
  666. package/src/lib/path-map/path-map.ts +244 -0
  667. package/src/lib/react-router-aid/index.ts +1 -1
  668. package/src/lib/react-router-aid/react-router-aid.ts +1 -1
  669. package/src/lib/react-router-loader/react-router-loader.ts +1 -4
  670. package/src/lib/stack-processor/index.ts +1 -1
  671. package/src/lib/stack-processor/stack-processor.ts +0 -1
  672. package/src/lib/superjson-codec/codecs/graphql-schema.ts +1 -1
  673. package/src/lib/superjson-codec/exports.ts +2 -2
  674. package/src/lib/superjson-codec/index.ts +1 -1
  675. package/src/lib/task/$$.ts +2 -2
  676. package/src/lib/task/$.test.ts +2 -2
  677. package/src/lib/task/$.ts +1 -1
  678. package/src/lib/task/report.ts +1 -1
  679. package/src/lib/task/task.ts +3 -3
  680. package/src/lib/theme/$.ts +2 -0
  681. package/src/lib/theme/theme.test.ts +190 -0
  682. package/src/lib/theme/theme.ts +210 -0
  683. package/src/lib/vite-plugin-json/index.ts +1 -1
  684. package/src/lib/vite-plugin-json/vite-plugin-json.ts +4 -4
  685. package/src/lib/vite-plugin-mdx/index.ts +1 -1
  686. package/src/lib/vite-plugin-mdx/vite-plugin-mdx.ts +1 -5
  687. package/src/lib/vite-plugin-reactive-data/index.ts +1 -1
  688. package/src/lib/vite-plugin-reactive-data/vite-plugin-reactive-data.ts +13 -14
  689. package/src/lib/vite-plugins/index.ts +1 -1
  690. package/src/lib/vite-plugins/vite-plugins.ts +1 -1
  691. package/src/lib/vite-virtual/identified-loader.ts +4 -4
  692. package/src/lib/vite-virtual/identifier.ts +1 -1
  693. package/src/lib/vite-virtual/index.ts +1 -1
  694. package/src/lib/vite-virtual/vite-virtual.ts +3 -3
  695. package/src/package-paths.ts +38 -12
  696. package/src/project-data.ts +3 -1
  697. package/src/sandbox.ts +9 -9
  698. package/src/template/components/ArgumentList.tsx +1 -1
  699. package/src/template/components/ArgumentListAnnotation.tsx +2 -2
  700. package/src/template/components/Changelog.tsx +2 -2
  701. package/src/template/components/CodeBlock.tsx +4 -58
  702. package/src/template/components/CodeBlockEnhancer.tsx +41 -41
  703. package/src/template/components/DeprecationReason.tsx +1 -1
  704. package/src/template/components/Description.tsx +1 -1
  705. package/src/template/components/Field.tsx +4 -4
  706. package/src/template/components/FieldList.tsx +1 -1
  707. package/src/template/components/FieldListSection.tsx +1 -1
  708. package/src/template/components/HamburgerMenu.tsx +11 -11
  709. package/src/template/components/Link.tsx +19 -19
  710. package/src/template/components/Logo.tsx +4 -4
  711. package/src/template/components/MDXComponents.tsx +1 -85
  712. package/src/template/components/NamedType.tsx +2 -2
  713. package/src/template/components/TestComponent.tsx +2 -2
  714. package/src/template/components/Texts/MinorHeading.tsx +4 -4
  715. package/src/template/components/Texts/index.ts +1 -1
  716. package/src/template/components/Texts/texts.ts +1 -1
  717. package/src/template/components/ThemeToggle.tsx +29 -7
  718. package/src/template/components/TypeAnnotation.tsx +1 -1
  719. package/src/template/components/TypeFieldsLinkList.tsx +1 -1
  720. package/src/template/components/TypeIndex.tsx +1 -1
  721. package/src/template/components/content/$$.ts +1 -1
  722. package/src/template/components/content/GraphQLDocumentWithSchema.tsx +3 -3
  723. package/src/template/components/content/GraphQLDocumentWrapper.tsx +9 -26
  724. package/src/template/components/graphql/graphql.tsx +2 -2
  725. package/src/template/components/graphql/index.ts +1 -1
  726. package/src/template/components/graphql/type-kind-icon.tsx +1 -2
  727. package/src/template/components/graphql/type-link.tsx +3 -3
  728. package/src/template/components/sidebar/Sidebar.tsx +1 -1
  729. package/src/template/components/sidebar/SidebarItem.tsx +4 -4
  730. package/src/template/constants.ts +17 -0
  731. package/src/template/contexts/ThemeContext.tsx +55 -24
  732. package/src/template/entry.client.tsx +7 -2
  733. package/src/template/global.d.ts +7 -0
  734. package/src/template/routes/changelog.tsx +1 -1
  735. package/src/template/routes/reference.$type.$field.tsx +3 -3
  736. package/src/template/routes/reference.$type.tsx +3 -3
  737. package/src/template/routes/reference.tsx +2 -2
  738. package/src/template/routes/root.tsx +46 -50
  739. package/src/template/routes.tsx +1 -1
  740. package/src/template/server/app.ts +17 -10
  741. package/src/template/server/create-page-html-response.ts +40 -5
  742. package/src/template/server/main.ts +3 -3
  743. package/src/template/server/middleware/page.ts +4 -4
  744. package/src/template/server/ssg/generate.ts +17 -7
  745. package/src/template/server/ssg/get-route-paths.ts +1 -1
  746. package/src/template/server/transformers/inject-polen-data.ts +32 -0
  747. package/src/template/server/transformers/inject-theme-init.ts +30 -0
  748. package/src/template/server/view.ts +1 -1
  749. package/build/api/vite/data/navbar.d.ts +0 -9
  750. package/build/api/vite/data/navbar.d.ts.map +0 -1
  751. package/build/api/vite/data/navbar.js +0 -6
  752. package/build/api/vite/data/navbar.js.map +0 -1
  753. package/build/api/vite/plugins/branding/index.d.ts.map +0 -1
  754. package/build/api/vite/plugins/branding/index.js.map +0 -1
  755. package/build/lib/demos/builder.d.ts +0 -83
  756. package/build/lib/demos/builder.d.ts.map +0 -1
  757. package/build/lib/demos/builder.js +0 -237
  758. package/build/lib/demos/builder.js.map +0 -1
  759. package/build/lib/demos/config-schema.d.ts +0 -243
  760. package/build/lib/demos/config-schema.d.ts.map +0 -1
  761. package/build/lib/demos/config-schema.js +0 -52
  762. package/build/lib/demos/config-schema.js.map +0 -1
  763. package/build/lib/demos/config.d.ts +0 -40
  764. package/build/lib/demos/config.d.ts.map +0 -1
  765. package/build/lib/demos/config.js +0 -180
  766. package/build/lib/demos/config.js.map +0 -1
  767. package/build/lib/demos/index.d.ts +0 -9
  768. package/build/lib/demos/index.d.ts.map +0 -1
  769. package/build/lib/demos/index.js +0 -8
  770. package/build/lib/demos/index.js.map +0 -1
  771. package/build/lib/demos/ui/components.d.ts +0 -33
  772. package/build/lib/demos/ui/components.d.ts.map +0 -1
  773. package/build/lib/demos/ui/components.js +0 -699
  774. package/build/lib/demos/ui/components.js.map +0 -1
  775. package/build/lib/demos/ui/data-collector.d.ts +0 -88
  776. package/build/lib/demos/ui/data-collector.d.ts.map +0 -1
  777. package/build/lib/demos/ui/data-collector.js +0 -174
  778. package/build/lib/demos/ui/data-collector.js.map +0 -1
  779. package/build/lib/demos/ui/landing-page-cli.d.ts +0 -3
  780. package/build/lib/demos/ui/landing-page-cli.d.ts.map +0 -1
  781. package/build/lib/demos/ui/landing-page-cli.js +0 -21
  782. package/build/lib/demos/ui/landing-page-cli.js.map +0 -1
  783. package/build/lib/demos/ui/landing-page.d.ts +0 -32
  784. package/build/lib/demos/ui/landing-page.d.ts.map +0 -1
  785. package/build/lib/demos/ui/landing-page.js +0 -83
  786. package/build/lib/demos/ui/landing-page.js.map +0 -1
  787. package/build/lib/demos/ui/page-renderer.d.ts +0 -26
  788. package/build/lib/demos/ui/page-renderer.d.ts.map +0 -1
  789. package/build/lib/demos/ui/page-renderer.js +0 -104
  790. package/build/lib/demos/ui/page-renderer.js.map +0 -1
  791. package/build/lib/demos/utils.d.ts +0 -14
  792. package/build/lib/demos/utils.d.ts.map +0 -1
  793. package/build/lib/demos/utils.js +0 -37
  794. package/build/lib/demos/utils.js.map +0 -1
  795. package/build/lib/deployment/$$.d.ts +0 -3
  796. package/build/lib/deployment/$$.d.ts.map +0 -1
  797. package/build/lib/deployment/$$.js +0 -3
  798. package/build/lib/deployment/$$.js.map +0 -1
  799. package/build/lib/deployment/$.d.ts +0 -2
  800. package/build/lib/deployment/$.d.ts.map +0 -1
  801. package/build/lib/deployment/$.js +0 -2
  802. package/build/lib/deployment/$.js.map +0 -1
  803. package/build/lib/deployment/metadata.d.ts +0 -32
  804. package/build/lib/deployment/metadata.d.ts.map +0 -1
  805. package/build/lib/deployment/metadata.js +0 -37
  806. package/build/lib/deployment/metadata.js.map +0 -1
  807. package/build/lib/deployment/path-manager.d.ts +0 -41
  808. package/build/lib/deployment/path-manager.d.ts.map +0 -1
  809. package/build/lib/deployment/path-manager.js +0 -157
  810. package/build/lib/deployment/path-manager.js.map +0 -1
  811. package/build/lib/github-actions/git-controller.d.ts +0 -50
  812. package/build/lib/github-actions/git-controller.d.ts.map +0 -1
  813. package/build/lib/github-actions/git-controller.js +0 -90
  814. package/build/lib/github-actions/git-controller.js.map +0 -1
  815. package/build/lib/github-actions/github-actions.d.ts +0 -7
  816. package/build/lib/github-actions/github-actions.d.ts.map +0 -1
  817. package/build/lib/github-actions/github-actions.js +0 -7
  818. package/build/lib/github-actions/github-actions.js.map +0 -1
  819. package/build/lib/github-actions/index.d.ts +0 -2
  820. package/build/lib/github-actions/index.d.ts.map +0 -1
  821. package/build/lib/github-actions/index.js +0 -2
  822. package/build/lib/github-actions/index.js.map +0 -1
  823. package/build/lib/github-actions/lib/get-pr-deployments.d.ts +0 -12
  824. package/build/lib/github-actions/lib/get-pr-deployments.d.ts.map +0 -1
  825. package/build/lib/github-actions/lib/get-pr-deployments.js +0 -51
  826. package/build/lib/github-actions/lib/get-pr-deployments.js.map +0 -1
  827. package/build/lib/github-actions/pr-controller.d.ts +0 -39
  828. package/build/lib/github-actions/pr-controller.d.ts.map +0 -1
  829. package/build/lib/github-actions/pr-controller.js +0 -122
  830. package/build/lib/github-actions/pr-controller.js.map +0 -1
  831. package/build/lib/github-actions/run-step-cli.d.ts +0 -9
  832. package/build/lib/github-actions/run-step-cli.d.ts.map +0 -1
  833. package/build/lib/github-actions/run-step-cli.js +0 -71
  834. package/build/lib/github-actions/run-step-cli.js.map +0 -1
  835. package/build/lib/github-actions/runner.d.ts +0 -17
  836. package/build/lib/github-actions/runner.d.ts.map +0 -1
  837. package/build/lib/github-actions/runner.js +0 -195
  838. package/build/lib/github-actions/runner.js.map +0 -1
  839. package/build/lib/github-actions/schemas/context.d.ts +0 -933
  840. package/build/lib/github-actions/schemas/context.d.ts.map +0 -1
  841. package/build/lib/github-actions/schemas/context.js +0 -407
  842. package/build/lib/github-actions/schemas/context.js.map +0 -1
  843. package/build/lib/github-actions/schemas/index.d.ts +0 -5
  844. package/build/lib/github-actions/schemas/index.d.ts.map +0 -1
  845. package/build/lib/github-actions/schemas/index.js +0 -5
  846. package/build/lib/github-actions/schemas/index.js.map +0 -1
  847. package/build/lib/github-actions/search-module.d.ts +0 -38
  848. package/build/lib/github-actions/search-module.d.ts.map +0 -1
  849. package/build/lib/github-actions/search-module.js +0 -40
  850. package/build/lib/github-actions/search-module.js.map +0 -1
  851. package/build/lib/github-actions/step.d.ts +0 -163
  852. package/build/lib/github-actions/step.d.ts.map +0 -1
  853. package/build/lib/github-actions/step.js +0 -121
  854. package/build/lib/github-actions/step.js.map +0 -1
  855. package/build/lib/graphql-document/components/CopyButton.d.ts +0 -19
  856. package/build/lib/graphql-document/components/CopyButton.d.ts.map +0 -1
  857. package/build/lib/graphql-document/components/CopyButton.js +0 -43
  858. package/build/lib/graphql-document/components/CopyButton.js.map +0 -1
  859. package/build/lib/graphql-document/schema-integration-example.d.ts +0 -27
  860. package/build/lib/graphql-document/schema-integration-example.d.ts.map +0 -1
  861. package/build/lib/graphql-document/schema-integration-example.js +0 -297
  862. package/build/lib/graphql-document/schema-integration-example.js.map +0 -1
  863. package/build/lib/shiki/index.d.ts +0 -2
  864. package/build/lib/shiki/index.d.ts.map +0 -1
  865. package/build/lib/shiki/index.js +0 -2
  866. package/build/lib/shiki/index.js.map +0 -1
  867. package/build/lib/shiki/shiki.d.ts +0 -26
  868. package/build/lib/shiki/shiki.d.ts.map +0 -1
  869. package/build/lib/shiki/shiki.js +0 -105
  870. package/build/lib/shiki/shiki.js.map +0 -1
  871. package/build/lib/version-history/index.d.ts +0 -3
  872. package/build/lib/version-history/index.d.ts.map +0 -1
  873. package/build/lib/version-history/index.js +0 -2
  874. package/build/lib/version-history/index.js.map +0 -1
  875. package/build/lib/version-history/types.d.ts +0 -64
  876. package/build/lib/version-history/types.d.ts.map +0 -1
  877. package/build/lib/version-history/types.js +0 -5
  878. package/build/lib/version-history/types.js.map +0 -1
  879. package/build/lib/version-history/version-history.d.ts +0 -85
  880. package/build/lib/version-history/version-history.d.ts.map +0 -1
  881. package/build/lib/version-history/version-history.js +0 -248
  882. package/build/lib/version-history/version-history.js.map +0 -1
  883. package/src/api/vite/data/navbar.ts +0 -15
  884. package/src/lib/demos/builder.ts +0 -298
  885. package/src/lib/demos/config-schema.ts +0 -56
  886. package/src/lib/demos/config.test.ts +0 -193
  887. package/src/lib/demos/config.ts +0 -205
  888. package/src/lib/demos/index.ts +0 -9
  889. package/src/lib/demos/ui/components.ts +0 -739
  890. package/src/lib/demos/ui/data-collector.ts +0 -246
  891. package/src/lib/demos/ui/landing-page-cli.ts +0 -23
  892. package/src/lib/demos/ui/landing-page.ts +0 -126
  893. package/src/lib/demos/ui/page-renderer.ts +0 -124
  894. package/src/lib/demos/utils.ts +0 -43
  895. package/src/lib/deployment/$$.ts +0 -2
  896. package/src/lib/deployment/$.test.ts +0 -53
  897. package/src/lib/deployment/$.ts +0 -1
  898. package/src/lib/deployment/metadata.ts +0 -40
  899. package/src/lib/deployment/path-manager.ts +0 -186
  900. package/src/lib/github-actions/git-controller.ts +0 -151
  901. package/src/lib/github-actions/github-actions.ts +0 -6
  902. package/src/lib/github-actions/index.ts +0 -1
  903. package/src/lib/github-actions/lib/get-pr-deployments.ts +0 -76
  904. package/src/lib/github-actions/pr-controller.test.ts +0 -172
  905. package/src/lib/github-actions/pr-controller.ts +0 -183
  906. package/src/lib/github-actions/run-step-cli.ts +0 -84
  907. package/src/lib/github-actions/runner.test.ts +0 -192
  908. package/src/lib/github-actions/runner.ts +0 -226
  909. package/src/lib/github-actions/schemas/context.ts +0 -424
  910. package/src/lib/github-actions/schemas/index.ts +0 -5
  911. package/src/lib/github-actions/search-module.test.ts +0 -110
  912. package/src/lib/github-actions/search-module.ts +0 -76
  913. package/src/lib/github-actions/step.test.ts +0 -149
  914. package/src/lib/github-actions/step.ts +0 -232
  915. package/src/lib/graphql-document/components/CopyButton.tsx +0 -76
  916. package/src/lib/graphql-document/schema-integration-example.ts +0 -341
  917. package/src/lib/shiki/index.ts +0 -1
  918. package/src/lib/shiki/shiki.test.ts +0 -107
  919. package/src/lib/shiki/shiki.ts +0 -161
  920. package/src/lib/version-history/index.test.ts +0 -196
  921. package/src/lib/version-history/index.ts +0 -4
  922. package/src/lib/version-history/types.ts +0 -68
  923. package/src/lib/version-history/version-history.ts +0 -293
@@ -1,6 +1,6 @@
1
1
  import { Ts } from '@wollybeard/kit'
2
- import { Mask } from './$.ts'
3
- import type { InferOptions, Mask as MaskType, PropertiesMask } from './mask.ts'
2
+ import { Mask } from './$.js'
3
+ import type { InferOptions, Mask as MaskType, PropertiesMask } from './mask.js'
4
4
 
5
5
  // Test 1: InferOptions with unknown should accept all option types
6
6
  {
@@ -12,7 +12,7 @@ import type { InferOptions, Mask as MaskType, PropertiesMask } from './mask.ts'
12
12
  // All of these should be valid options
13
13
  const option1: Options = true
14
14
  const option2: Options = false
15
- const option3: Options = ['name', 'age']
15
+ const option3: Options = [`name`, `age`]
16
16
  const option4: Options = []
17
17
  const option5: Options = { name: true, age: false }
18
18
  const option6: Options = {}
@@ -28,9 +28,9 @@ import type { InferOptions, Mask as MaskType, PropertiesMask } from './mask.ts'
28
28
  Ts.assertEqual<MaskType<unknown>>()(mask2)
29
29
 
30
30
  // Array options (no type parameter needed)
31
- const mask3 = Mask.create(['name', 'age'])
31
+ const mask3 = Mask.create([`name`, `age`])
32
32
  const mask4 = Mask.create([])
33
- const mask5 = Mask.create(['a', 'b', 'c'])
33
+ const mask5 = Mask.create([`a`, `b`, `c`])
34
34
  // Returns union type with inferred properties
35
35
  Ts.assertEqual<MaskType<{ name: any; age: any }>>()(mask3)
36
36
  Ts.assertEqual<MaskType<unknown>>()(mask4)
@@ -48,11 +48,15 @@ import type { InferOptions, Mask as MaskType, PropertiesMask } from './mask.ts'
48
48
 
49
49
  // Test 3: With specific data type, options are constrained
50
50
  {
51
- type User = { name: string; age: number; email: string }
51
+ interface User {
52
+ name: string
53
+ age: number
54
+ email: string
55
+ }
52
56
 
53
57
  // Valid options
54
58
  const mask1 = Mask.create<User>(true)
55
- const mask2 = Mask.create<User>(['name', 'age'])
59
+ const mask2 = Mask.create<User>([`name`, `age`])
56
60
  const mask3 = Mask.create<User>({ name: true, age: false, email: true })
57
61
 
58
62
  // With explicit type parameter, still returns union type
@@ -81,18 +85,18 @@ import type { InferOptions, Mask as MaskType, PropertiesMask } from './mask.ts'
81
85
  // Test 5: Test inference in practical scenarios
82
86
  {
83
87
  // Should infer PropertiesMask with object data type
84
- const userMask = Mask.create(['name', 'email', 'password'])
88
+ const userMask = Mask.create([`name`, `email`, `password`])
85
89
  Ts.assertEqual<MaskType<{ name: any; email: any; password: any }>>()(userMask)
86
90
 
87
91
  // When mask is a union type, apply returns a union of possible results
88
- const user1 = { name: 'John', email: 'john@example.com', password: 'secret', extra: 'data' }
92
+ const user1 = { name: `John`, email: `john@example.com`, password: `secret`, extra: `data` }
89
93
  const maskedUser1 = Mask.apply(user1, userMask)
90
94
  // Result is a union type that includes the properties mask result
91
95
  type MaskedUser1 = typeof maskedUser1
92
96
  // Can't use assertSub with union types
93
97
 
94
98
  // For partial data, use applyPartial
95
- const user2 = { name: 'Jane', email: 'jane@example.com' }
99
+ const user2 = { name: `Jane`, email: `jane@example.com` }
96
100
  const maskedUser2 = Mask.applyPartial(user2, userMask)
97
101
  // Result is a union type
98
102
  type MaskedUser2 = typeof maskedUser2
@@ -100,16 +104,20 @@ import type { InferOptions, Mask as MaskType, PropertiesMask } from './mask.ts'
100
104
 
101
105
  // Test 6: Pick and omit helpers
102
106
  {
103
- const pick1 = Mask.pick(['name', 'email'])
104
- const omit1 = Mask.omit(['password', 'secret'])
107
+ const pick1 = Mask.pick([`name`, `email`])
108
+ const omit1 = Mask.omit([`password`, `secret`])
105
109
 
106
110
  // Infers specific property types
107
111
  Ts.assertEqual<PropertiesMask<{ name: any; email: any }>>()(pick1)
108
112
  Ts.assertEqual<PropertiesMask<{ password: any; secret: any }>>()(omit1)
109
113
 
110
- type User = { name: string; email: string; password: string }
111
- const pick2 = Mask.pick<User>(['name', 'email'])
112
- const omit2 = Mask.omit<User>(['password'])
114
+ interface User {
115
+ name: string
116
+ email: string
117
+ password: string
118
+ }
119
+ const pick2 = Mask.pick<User>([`name`, `email`])
120
+ const omit2 = Mask.omit<User>([`password`])
113
121
 
114
122
  Ts.assertEqual<PropertiesMask<User>>()(pick2)
115
123
  Ts.assertEqual<PropertiesMask<User>>()(omit2)
@@ -117,8 +125,12 @@ import type { InferOptions, Mask as MaskType, PropertiesMask } from './mask.ts'
117
125
 
118
126
  // Test 7: Apply type transformations
119
127
  {
120
- type User = { name: string; email: string; password: string }
121
- const user: User = { name: 'John', email: 'john@example.com', password: 'secret' }
128
+ interface User {
129
+ name: string
130
+ email: string
131
+ password: string
132
+ }
133
+ const user: User = { name: `John`, email: `john@example.com`, password: `secret` }
122
134
 
123
135
  // Binary mask
124
136
  const showMask = Mask.create<User>(true)
@@ -131,7 +143,7 @@ import type { InferOptions, Mask as MaskType, PropertiesMask } from './mask.ts'
131
143
  type HiddenType = typeof hidden // Omit<User, keyof User> | undefined
132
144
 
133
145
  // Properties mask - allow mode
134
- const allowMask = Mask.create<User>(['name', 'email'])
146
+ const allowMask = Mask.create<User>([`name`, `email`])
135
147
  const allowed = Mask.apply(user, allowMask)
136
148
  // Result is a union due to mask being a union type
137
149
  type AllowedType = typeof allowed
@@ -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'