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
@@ -8,27 +8,18 @@
8
8
 
9
9
  import {
10
10
  getNamedType,
11
- type GraphQLEnumType,
12
11
  type GraphQLField,
13
12
  type GraphQLInputField,
14
- type GraphQLInputObjectType,
15
- type GraphQLInterfaceType,
16
- type GraphQLObjectType,
17
- type GraphQLScalarType,
18
13
  type GraphQLSchema,
19
14
  type GraphQLType,
20
- type GraphQLUnionType,
21
- isEnumType,
22
15
  isInputObjectType,
23
16
  isInterfaceType,
24
17
  isListType,
25
18
  isNonNullType,
26
19
  isObjectType,
27
- isScalarType,
28
- isUnionType,
29
20
  } from 'graphql'
30
- import { analyze } from './analysis.ts'
31
- import type { Identifier } from './types.ts'
21
+ import { analyze } from './analysis.js'
22
+ import type { Identifier } from './types.js'
32
23
 
33
24
  /**
34
25
  * Documentation extracted from GraphQL schema
@@ -119,39 +110,39 @@ export class PolenSchemaResolver implements SchemaResolver {
119
110
  * Resolve an identifier against the schema
120
111
  */
121
112
  resolveIdentifier(identifier: Identifier): SchemaResolution | null {
122
- const basePath = this.routeConfig.basePath || '/reference'
113
+ const basePath = this.routeConfig.basePath || `/reference`
123
114
 
124
115
  switch (identifier.kind) {
125
- case 'Type':
116
+ case `Type`:
126
117
  return this.resolveType(identifier, basePath)
127
118
 
128
- case 'Field':
119
+ case `Field`:
129
120
  return this.resolveField(identifier, basePath)
130
121
 
131
- case 'Argument':
122
+ case `Argument`:
132
123
  return this.resolveArgument(identifier, basePath)
133
124
 
134
- case 'Variable':
125
+ case `Variable`:
135
126
  // Variables don't have schema resolution
136
127
  return {
137
128
  exists: true,
138
129
  referenceUrl: `${basePath}#variables`,
139
130
  documentation: {
140
- typeInfo: 'Variable',
131
+ typeInfo: `Variable`,
141
132
  description: `Query variable: $${identifier.name}`,
142
133
  },
143
134
  }
144
135
 
145
- case 'Directive':
136
+ case `Directive`:
146
137
  return this.resolveDirective(identifier, basePath)
147
138
 
148
- case 'Fragment':
139
+ case `Fragment`:
149
140
  // Fragments don't have schema resolution
150
141
  return {
151
142
  exists: true,
152
143
  referenceUrl: `${basePath}#fragments`,
153
144
  documentation: {
154
- typeInfo: 'Fragment',
145
+ typeInfo: `Fragment`,
155
146
  description: `Fragment: ${identifier.name}`,
156
147
  },
157
148
  }
@@ -179,7 +170,7 @@ export class PolenSchemaResolver implements SchemaResolver {
179
170
  return {
180
171
  typeInfo: this.getTypeSignature(type),
181
172
  description: type.description || undefined,
182
- deprecated: 'deprecationReason' in type
173
+ deprecated: `deprecationReason` in type
183
174
  ? {
184
175
  reason: (type as any).deprecationReason,
185
176
  }
@@ -206,7 +197,7 @@ export class PolenSchemaResolver implements SchemaResolver {
206
197
  // Argument-level documentation
207
198
  if (fieldName && argName && schemaPath.length === 3) {
208
199
  const field = this.getFieldFromType(type, fieldName)
209
- if (!field || !('args' in field)) return null
200
+ if (!field || !(`args` in field)) return null
210
201
 
211
202
  const arg = field.args.find((a: any) => a.name === argName)
212
203
  if (!arg) return null
@@ -227,7 +218,7 @@ export class PolenSchemaResolver implements SchemaResolver {
227
218
  * Generate a reference URL for a schema path
228
219
  */
229
220
  generateReferenceLink(schemaPath: string[]): string {
230
- const basePath = this.routeConfig.basePath || '/reference'
221
+ const basePath = this.routeConfig.basePath || `/reference`
231
222
  const includeFragments = this.routeConfig.includeFragments !== false
232
223
 
233
224
  if (schemaPath.length === 0) return basePath
@@ -241,13 +232,13 @@ export class PolenSchemaResolver implements SchemaResolver {
241
232
 
242
233
  // Field reference
243
234
  if (fieldName && schemaPath.length === 2) {
244
- const fragment = includeFragments ? `#${fieldName}` : ''
235
+ const fragment = includeFragments ? `#${fieldName}` : ``
245
236
  return `${basePath}/${typeName}${fragment}`
246
237
  }
247
238
 
248
239
  // Argument reference
249
240
  if (fieldName && argName && schemaPath.length === 3) {
250
- const fragment = includeFragments ? `#${fieldName}-${argName}` : ''
241
+ const fragment = includeFragments ? `#${fieldName}-${argName}` : ``
251
242
  return `${basePath}/${typeName}${fragment}`
252
243
  }
253
244
 
@@ -266,7 +257,7 @@ export class PolenSchemaResolver implements SchemaResolver {
266
257
  */
267
258
  getAllTypes(): string[] {
268
259
  return Object.keys(this.schema.getTypeMap())
269
- .filter(name => !name.startsWith('__')) // Filter out introspection types
260
+ .filter(name => !name.startsWith(`__`)) // Filter out introspection types
270
261
  }
271
262
 
272
263
  // Private helper methods
@@ -353,7 +344,7 @@ export class PolenSchemaResolver implements SchemaResolver {
353
344
  }
354
345
 
355
346
  const field = this.getFieldFromType(parentType, fieldName)
356
- if (!field || !('args' in field)) {
347
+ if (!field || !(`args` in field)) {
357
348
  return {
358
349
  exists: false,
359
350
  referenceUrl: `${basePath}/${typeName}#${fieldName}-${identifier.name}`,
@@ -385,7 +376,7 @@ export class PolenSchemaResolver implements SchemaResolver {
385
376
  referenceUrl: `${basePath}/directives#${identifier.name}`,
386
377
  documentation: directive
387
378
  ? {
388
- typeInfo: 'Directive',
379
+ typeInfo: `Directive`,
389
380
  description: directive.description || undefined,
390
381
  }
391
382
  : undefined,
@@ -432,15 +423,15 @@ export const createPolenSchemaResolver = (
432
423
  */
433
424
  export interface SchemaAwareAnalysisResult {
434
425
  /** Original analysis result */
435
- analysis: import('./types.ts').AnalysisResult
426
+ analysis: import('./types.js').AnalysisResult
436
427
  /** Schema resolutions for all identifiers */
437
428
  resolutions: Map<string, SchemaResolution>
438
429
  /** Validation errors from schema checking */
439
- schemaErrors: Array<{
430
+ schemaErrors: {
440
431
  identifier: Identifier
441
432
  message: string
442
- severity: 'error' | 'warning'
443
- }>
433
+ severity: `error` | `warning`
434
+ }[]
444
435
  }
445
436
 
446
437
  /**
@@ -459,7 +450,7 @@ export const analyzeWithSchema = (
459
450
 
460
451
  const resolver = createPolenSchemaResolver(schema, routeConfig)
461
452
  const resolutions = new Map<string, SchemaResolution>()
462
- const schemaErrors: SchemaAwareAnalysisResult['schemaErrors'] = []
453
+ const schemaErrors: SchemaAwareAnalysisResult[`schemaErrors`] = []
463
454
 
464
455
  // Resolve all identifiers against schema
465
456
  for (const identifier of analysis.identifiers.all) {
@@ -470,11 +461,11 @@ export const analyzeWithSchema = (
470
461
  resolutions.set(key, resolution)
471
462
 
472
463
  // Add validation errors for non-existent identifiers
473
- if (!resolution.exists && (identifier.kind === 'Type' || identifier.kind === 'Field')) {
464
+ if (!resolution.exists && (identifier.kind === `Type` || identifier.kind === `Field`)) {
474
465
  schemaErrors.push({
475
466
  identifier,
476
467
  message: `${identifier.kind} "${identifier.name}" does not exist in schema`,
477
- severity: 'error',
468
+ severity: `error`,
478
469
  })
479
470
  }
480
471
 
@@ -483,7 +474,7 @@ export const analyzeWithSchema = (
483
474
  schemaErrors.push({
484
475
  identifier,
485
476
  message: `${identifier.kind} "${identifier.name}" is deprecated: ${resolution.deprecated.reason}`,
486
- severity: 'warning',
477
+ severity: `warning`,
487
478
  })
488
479
  }
489
480
  }
@@ -7,7 +7,7 @@ export interface Identifier {
7
7
  /** The name of the identifier (e.g., 'User', 'name', 'id') */
8
8
  name: string
9
9
  /** The kind of GraphQL construct this identifier represents */
10
- kind: 'Type' | 'Field' | 'Argument' | 'Directive' | 'Variable' | 'Fragment'
10
+ kind: `Type` | `Field` | `Argument` | `Directive` | `Variable` | `Fragment`
11
11
  /** Position information in the source document */
12
12
  position: {
13
13
  /** Character offset from start of document */
@@ -32,7 +32,7 @@ export interface Identifier {
32
32
  */
33
33
  export interface IdentifierContext {
34
34
  /** The operation type if this identifier is within an operation */
35
- operationType?: 'query' | 'mutation' | 'subscription'
35
+ operationType?: `query` | `mutation` | `subscription`
36
36
  /** The operation name if this identifier is within a named operation */
37
37
  operationName?: string
38
38
  /** Whether this identifier is in a fragment definition */
@@ -48,7 +48,7 @@ export interface IdentifierMap {
48
48
  /** Quick lookup by character position */
49
49
  byPosition: Map<number, Identifier>
50
50
  /** Grouped by identifier kind for easy filtering */
51
- byKind: Map<Identifier['kind'], Identifier[]>
51
+ byKind: Map<Identifier[`kind`], Identifier[]>
52
52
  /** Any validation errors found during analysis */
53
53
  errors: AnalysisError[]
54
54
  /** All identifiers as a flat array */
@@ -64,7 +64,7 @@ export interface AnalysisError {
64
64
  /** Human-readable error message */
65
65
  message: string
66
66
  /** Error severity level */
67
- severity: 'error' | 'warning' | 'info'
67
+ severity: `error` | `warning` | `info`
68
68
  /** Position in the document where the error occurred */
69
69
  position?: {
70
70
  line: number
@@ -1 +1 @@
1
- export * as GraphqlSchemaLoader from './graphql-schema-loader.ts'
1
+ export * as GraphqlSchemaLoader from './graphql-schema-loader.js'
@@ -10,7 +10,7 @@ export async function checkIsProjectHasPackageInstalled(
10
10
  const packageJson = await Manifest.resource.read(projectRoot)
11
11
 
12
12
  if (Err.is(packageJson)) {
13
- if (packageJson._tag === 'ResourceErrorNotFound') return false
13
+ if (packageJson._tag === `ResourceErrorNotFound`) return false
14
14
  throw packageJson
15
15
  }
16
16
 
@@ -1 +1 @@
1
- export * as HonoAid from './hono-aid.ts'
1
+ export * as HonoAid from './hono-aid.js'
@@ -0,0 +1,6 @@
1
+ import type { Hono } from '#dep/hono/index'
2
+ import { Fn } from '@wollybeard/kit'
3
+
4
+ export type HtmlTransformer = (html: string, ctx: Hono.Context) => Promise<string> | string
5
+
6
+ export const createHtmlTransformer = Fn.identity<HtmlTransformer>
@@ -0,0 +1,89 @@
1
+ import { describe, expect, it } from 'vitest'
2
+ import {
3
+ createGlobalDataScript,
4
+ createGlobalDataScriptWithInit,
5
+ injectGlobalDataIntoHTML,
6
+ } from './inject-global-data.js'
7
+
8
+ describe('createGlobalDataScript', () => {
9
+ it('creates a script tag with JSON data', () => {
10
+ const result = createGlobalDataScript('__TEST__', { foo: 'bar', num: 42 })
11
+ expect(result).toBe('<script>globalThis.__TEST__ = {"foo":"bar","num":42};</script>')
12
+ })
13
+
14
+ it('handles nested data structures', () => {
15
+ const data = {
16
+ user: { id: 1, name: 'John' },
17
+ settings: { theme: 'dark', notifications: true },
18
+ }
19
+ const result = createGlobalDataScript('__APP__', data)
20
+ expect(result).toContain('globalThis.__APP__ =')
21
+ expect(result).toContain(JSON.stringify(data))
22
+ })
23
+
24
+ it('escapes special characters in data', () => {
25
+ const data = { html: '</script><script>alert("xss")</script>' }
26
+ const result = createGlobalDataScript('__SAFE__', data)
27
+ // JSON.stringify escapes the forward slashes
28
+ expect(result).not.toContain('</script><script>')
29
+ expect(result).toContain('<\\/script>')
30
+ })
31
+
32
+ it('throws on invalid global names', () => {
33
+ expect(() => createGlobalDataScript('123invalid', {})).toThrow('Invalid global variable name')
34
+ expect(() => createGlobalDataScript('invalid-name', {})).toThrow('Invalid global variable name')
35
+ expect(() => createGlobalDataScript('invalid.name', {})).toThrow('Invalid global variable name')
36
+ })
37
+
38
+ it('accepts valid global names', () => {
39
+ expect(() => createGlobalDataScript('_valid', {})).not.toThrow()
40
+ expect(() => createGlobalDataScript('$valid', {})).not.toThrow()
41
+ expect(() => createGlobalDataScript('VALID_123', {})).not.toThrow()
42
+ })
43
+ })
44
+
45
+ describe('createGlobalDataScriptWithInit', () => {
46
+ it('creates script with data and init code', () => {
47
+ const result = createGlobalDataScriptWithInit(
48
+ '__THEME__',
49
+ { theme: 'dark' },
50
+ 'document.body.className = globalThis.__THEME__.theme;',
51
+ )
52
+ expect(result).toContain('globalThis.__THEME__ = {"theme":"dark"};')
53
+ expect(result).toContain('document.body.className = globalThis.__THEME__.theme;')
54
+ expect(result).toMatch(/<script>.*<\/script>/s)
55
+ })
56
+
57
+ it('returns just data script when no init code provided', () => {
58
+ const result = createGlobalDataScriptWithInit('__TEST__', { foo: 'bar' })
59
+ expect(result).toBe('<script>globalThis.__TEST__ = {"foo":"bar"};</script>')
60
+ })
61
+ })
62
+
63
+ describe('injectGlobalDataIntoHTML', () => {
64
+ const sampleHTML = `
65
+ <html>
66
+ <head>
67
+ <title>Test</title>
68
+ </head>
69
+ <body>
70
+ <div id="app"></div>
71
+ </body>
72
+ </html>`
73
+
74
+ it('injects script into head', () => {
75
+ const result = injectGlobalDataIntoHTML(sampleHTML, '__APP__', { version: '1.0' })
76
+ expect(result).toContain('<head>\n<script>globalThis.__APP__ = {"version":"1.0"};</script>')
77
+ })
78
+
79
+ it('injects script with init code', () => {
80
+ const result = injectGlobalDataIntoHTML(
81
+ sampleHTML,
82
+ '__CONFIG__',
83
+ { apiUrl: '/api' },
84
+ 'console.log("Config loaded:", globalThis.__CONFIG__);',
85
+ )
86
+ expect(result).toContain('globalThis.__CONFIG__ = {"apiUrl":"/api"};')
87
+ expect(result).toContain('console.log("Config loaded:", globalThis.__CONFIG__);')
88
+ })
89
+ })
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Creates an HTML script tag that injects data into a global variable
3
+ *
4
+ * @param globalName - The name of the global variable (e.g., '__POLEN__')
5
+ * @param data - The data to inject (will be JSON stringified)
6
+ * @returns HTML script tag string ready to inject into HTML
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * const script = createGlobalDataScript('__MY_APP__', { user: { id: 1, name: 'John' } })
11
+ * // Returns: <script>globalThis.__MY_APP__ = {"user":{"id":1,"name":"John"}};</script>
12
+ * ```
13
+ */
14
+ export const createGlobalDataScript = (globalName: string, data: unknown): string => {
15
+ // Validate global name to prevent injection attacks
16
+ if (!/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(globalName)) {
17
+ throw new Error(`Invalid global variable name: ${globalName}`)
18
+ }
19
+
20
+ // JSON.stringify and then escape </script> tags to prevent XSS
21
+ const jsonData = JSON.stringify(data)
22
+ // Escape </script> to prevent breaking out of script tag
23
+ .replace(/<\/script>/gi, '<\\/script>')
24
+
25
+ return `<script>globalThis.${globalName} = ${jsonData};</script>`
26
+ }
27
+
28
+ /**
29
+ * Creates a script tag that initializes global data and runs initialization code
30
+ *
31
+ * @param globalName - The name of the global variable
32
+ * @param data - The data to inject
33
+ * @param initCode - Optional initialization code to run after setting the global
34
+ * @returns HTML script tag string
35
+ *
36
+ * @example
37
+ * ```ts
38
+ * const script = createGlobalDataScriptWithInit('__THEME__', { theme: 'dark' }, `
39
+ * document.documentElement.className = globalThis.__THEME__.theme;
40
+ * `)
41
+ * ```
42
+ */
43
+ export const createGlobalDataScriptWithInit = (
44
+ globalName: string,
45
+ data: unknown,
46
+ initCode?: string,
47
+ ): string => {
48
+ const dataScript = createGlobalDataScript(globalName, data)
49
+
50
+ if (!initCode) {
51
+ return dataScript
52
+ }
53
+
54
+ // Remove the closing </script> tag from data script and append init code
55
+ const scriptContent = dataScript.replace('</script>', `\n${initCode}\n</script>`)
56
+ return scriptContent
57
+ }
58
+
59
+ /**
60
+ * Injects a global data script into the head of an HTML document
61
+ *
62
+ * @param html - The HTML document string
63
+ * @param globalName - The name of the global variable
64
+ * @param data - The data to inject
65
+ * @param initCode - Optional initialization code
66
+ * @returns Modified HTML with script injected
67
+ */
68
+ export const injectGlobalDataIntoHTML = (
69
+ html: string,
70
+ globalName: string,
71
+ data: unknown,
72
+ initCode?: string,
73
+ ): string => {
74
+ const script = initCode
75
+ ? createGlobalDataScriptWithInit(globalName, data, initCode)
76
+ : createGlobalDataScript(globalName, data)
77
+
78
+ // Inject at the beginning of head to ensure it runs first
79
+ return html.replace('<head>', `<head>\n${script}`)
80
+ }
@@ -3,24 +3,29 @@ import { objFilter, ObjOmit, ObjPick, objPolicyFilter } from './kit-temp.js'
3
3
  import type { ObjPolicyFilter } from './kit-temp.js'
4
4
 
5
5
  // Test object for all tests
6
- type TestObj = { a: string; b: number; c: boolean; d: string[] }
6
+ interface TestObj {
7
+ a: string
8
+ b: number
9
+ c: boolean
10
+ d: string[]
11
+ }
7
12
  declare const testObj: TestObj
8
13
 
9
14
  // Test 1: objPolicyFilter with allow mode
10
15
  {
11
- const result = objPolicyFilter('allow', testObj, ['a', 'c'] as const)
16
+ const result = objPolicyFilter(`allow`, testObj, [`a`, `c`] as const)
12
17
  Ts.assertEqual<{ a: string; c: boolean }>()(result)
13
18
  }
14
19
 
15
20
  // Test 2: objPolicyFilter with deny mode
16
21
  {
17
- const result = objPolicyFilter('deny', testObj, ['a', 'c'] as const)
22
+ const result = objPolicyFilter(`deny`, testObj, [`a`, `c`] as const)
18
23
  Ts.assertEqual<{ b: number; d: string[] }>()(result)
19
24
  }
20
25
 
21
26
  // Test 3: objFilter returns Partial<T>
22
27
  {
23
- const result = objFilter(testObj, (key, value) => value !== 'hello')
28
+ const result = objFilter(testObj, (key, value) => value !== `hello`)
24
29
  Ts.assertEqual<Partial<TestObj>>()(result)
25
30
 
26
31
  // All properties are optional
@@ -32,28 +37,28 @@ declare const testObj: TestObj
32
37
 
33
38
  // Test 4: ObjPick type inference
34
39
  {
35
- const result = ObjPick(testObj, ['a', 'c'] as const)
40
+ const result = ObjPick(testObj, [`a`, `c`] as const)
36
41
  Ts.assertEqual<{ a: string; c: boolean }>()(result)
37
42
  }
38
43
 
39
44
  // Test 5: ObjOmit type inference
40
45
  {
41
- const result = ObjOmit(testObj, ['a', 'c'] as const)
46
+ const result = ObjOmit(testObj, [`a`, `c`] as const)
42
47
  Ts.assertEqual<{ b: number; d: string[] }>()(result)
43
48
  }
44
49
 
45
50
  // Test 6: ObjPolicyFilter type-level function
46
51
  {
47
- type Allow = ObjPolicyFilter<TestObj, 'a' | 'c', 'allow'>
52
+ type Allow = ObjPolicyFilter<TestObj, `a` | `c`, `allow`>
48
53
  type _TestAllow = Ts.AssertEqual<Allow, { a: string; c: boolean }>
49
54
 
50
- type Deny = ObjPolicyFilter<TestObj, 'a' | 'c', 'deny'>
55
+ type Deny = ObjPolicyFilter<TestObj, `a` | `c`, `deny`>
51
56
  type _TestDeny = Ts.AssertEqual<Deny, { b: number; d: string[] }>
52
57
 
53
- type AllowEmpty = ObjPolicyFilter<TestObj, never, 'allow'>
58
+ type AllowEmpty = ObjPolicyFilter<TestObj, never, `allow`>
54
59
  type _TestAllowEmpty = Ts.AssertEqual<AllowEmpty, {}>
55
60
 
56
- type DenyEmpty = ObjPolicyFilter<TestObj, never, 'deny'>
61
+ type DenyEmpty = ObjPolicyFilter<TestObj, never, `deny`>
57
62
  type _TestDenyEmpty = Ts.AssertEqual<DenyEmpty, TestObj>
58
63
  }
59
64
 
@@ -61,8 +66,8 @@ declare const testObj: TestObj
61
66
  {
62
67
  // Empty object
63
68
  const empty = {}
64
- const allowEmpty = objPolicyFilter('allow', empty, [])
65
- const denyEmpty = objPolicyFilter('deny', empty, [])
69
+ const allowEmpty = objPolicyFilter(`allow`, empty, [])
70
+ const denyEmpty = objPolicyFilter(`deny`, empty, [])
66
71
  const filterEmpty = objFilter(empty, () => true)
67
72
 
68
73
  Ts.assertEqual<{}>()(allowEmpty)
@@ -71,8 +76,8 @@ declare const testObj: TestObj
71
76
 
72
77
  // Single property object
73
78
  const single = { a: 1 }
74
- const allowSingle = objPolicyFilter('allow', single, ['a'] as const)
75
- const denySingle = objPolicyFilter('deny', single, ['a'] as const)
79
+ const allowSingle = objPolicyFilter(`allow`, single, [`a`] as const)
80
+ const denySingle = objPolicyFilter(`deny`, single, [`a`] as const)
76
81
  const filterSingle = objFilter(single, () => true)
77
82
 
78
83
  Ts.assertEqual<{ a: number }>()(allowSingle)
@@ -82,7 +87,7 @@ declare const testObj: TestObj
82
87
 
83
88
  // Test 8: Complex nested object
84
89
  {
85
- type ComplexObj = {
90
+ interface ComplexObj {
86
91
  nested: { a: string; b: number }
87
92
  array: string[]
88
93
  optional?: boolean
@@ -90,26 +95,26 @@ declare const testObj: TestObj
90
95
  }
91
96
  const complexObj = {} as ComplexObj
92
97
 
93
- const picked = objPolicyFilter('allow', complexObj, ['nested', 'optional'] as const)
98
+ const picked = objPolicyFilter(`allow`, complexObj, [`nested`, `optional`] as const)
94
99
  Ts.assertEqual<{ nested: { a: string; b: number }; optional?: boolean }>()(picked)
95
100
 
96
- const omitted = objPolicyFilter('deny', complexObj, ['nested', 'optional'] as const)
101
+ const omitted = objPolicyFilter(`deny`, complexObj, [`nested`, `optional`] as const)
97
102
  Ts.assertEqual<{ array: string[]; readonly ro: string }>()(omitted)
98
103
 
99
- const filtered = objFilter(complexObj, (key) => key !== 'array')
104
+ const filtered = objFilter(complexObj, (key) => key !== `array`)
100
105
  Ts.assertEqual<Partial<ComplexObj>>()(filtered)
101
106
  }
102
107
 
103
108
  // Test 9: Keys parameter type inference
104
109
  {
105
110
  // With const assertion
106
- const keys1 = ['a', 'c'] as const
107
- const result1 = objPolicyFilter('allow', testObj, keys1)
111
+ const keys1 = [`a`, `c`] as const
112
+ const result1 = objPolicyFilter(`allow`, testObj, keys1)
108
113
  Ts.assertEqual<{ a: string; c: boolean }>()(result1)
109
114
 
110
115
  // Without const assertion (wider type)
111
- const keys2: (keyof TestObj)[] = ['a', 'c']
112
- const result2 = objPolicyFilter('allow', testObj, keys2)
116
+ const keys2: (keyof TestObj)[] = [`a`, `c`]
117
+ const result2 = objPolicyFilter(`allow`, testObj, keys2)
113
118
  // Result is a union of all possible picks
114
119
  type Result2 = typeof result2 // Pick<TestObj, keyof TestObj>
115
120
  }
@@ -74,8 +74,13 @@ describe('property-based tests', () => {
74
74
  expect(inAllowed).toBe(!inDenied)
75
75
  })
76
76
 
77
- // Combined they reconstruct the original object
78
- expect({ ...allowed, ...denied }).toEqual(obj)
77
+ // Combined they reconstruct the original object (only own properties)
78
+ const reconstructed = { ...allowed, ...denied }
79
+ const ownPropsObj = Object.keys(obj).reduce<any>((acc, key) => {
80
+ acc[key] = obj[key]
81
+ return acc
82
+ }, {})
83
+ expect(reconstructed).toEqual(ownPropsObj)
79
84
  },
80
85
  ),
81
86
  )
@@ -87,7 +92,14 @@ describe('property-based tests', () => {
87
92
  fc.object(),
88
93
  (obj) => {
89
94
  const filtered = objFilter(obj, () => true)
90
- expect(filtered).toEqual(obj)
95
+
96
+ // Object.keys doesn't include __proto__, so we need to handle it specially
97
+ const objWithoutProto = Object.keys(obj).reduce<any>((acc, key) => {
98
+ acc[key] = obj[key]
99
+ return acc
100
+ }, {})
101
+
102
+ expect(filtered).toEqual(objWithoutProto)
91
103
 
92
104
  // Values are the same reference
93
105
  Object.keys(filtered).forEach(key => {