toiljs 0.0.14 → 0.0.16

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 (225) hide show
  1. package/.babelrc +13 -13
  2. package/.gitattributes +2 -2
  3. package/.github/ISSUE_TEMPLATE/bug_report.md +38 -38
  4. package/.github/ISSUE_TEMPLATE/bug_report.yml +90 -90
  5. package/.github/ISSUE_TEMPLATE/config.yml +8 -8
  6. package/.github/ISSUE_TEMPLATE/feature_request.md +20 -20
  7. package/.github/PULL_REQUEST_TEMPLATE.md +43 -43
  8. package/.github/changelog-config.json +45 -45
  9. package/.github/dependabot.yml +27 -27
  10. package/.github/workflows/ci.yml +191 -191
  11. package/.prettierrc.json +11 -11
  12. package/.vscode/settings.json +9 -9
  13. package/CHANGELOG.md +5 -5
  14. package/LICENSE +187 -187
  15. package/README.md +339 -315
  16. package/as-pect.asconfig.json +34 -34
  17. package/as-pect.config.js +65 -65
  18. package/assets/logo.svg +36 -36
  19. package/build/backend/.tsbuildinfo +1 -1
  20. package/build/cli/.tsbuildinfo +1 -1
  21. package/build/cli/index.js +2926 -191
  22. package/build/client/.tsbuildinfo +1 -1
  23. package/build/client/dev/devtools.d.ts +6 -0
  24. package/build/client/dev/devtools.js +442 -0
  25. package/build/client/dev/error-overlay.d.ts +9 -0
  26. package/build/client/dev/error-overlay.js +19 -4
  27. package/build/client/head/metadata.d.ts +3 -1
  28. package/build/client/head/metadata.js +8 -0
  29. package/build/client/index.d.ts +4 -4
  30. package/build/client/index.js +2 -2
  31. package/build/client/navigation/navigation.d.ts +2 -0
  32. package/build/client/navigation/navigation.js +9 -1
  33. package/build/client/navigation/prefetch.d.ts +1 -0
  34. package/build/client/navigation/prefetch.js +35 -0
  35. package/build/client/routing/Router.js +1 -1
  36. package/build/client/routing/hooks.js +6 -2
  37. package/build/client/routing/loader.d.ts +25 -0
  38. package/build/client/routing/loader.js +53 -7
  39. package/build/client/routing/mount.js +4 -3
  40. package/build/compiler/.tsbuildinfo +1 -1
  41. package/build/compiler/config.d.ts +18 -0
  42. package/build/compiler/config.js +8 -0
  43. package/build/compiler/docs.js +16 -16
  44. package/build/compiler/generate.js +3 -0
  45. package/build/compiler/index.d.ts +2 -2
  46. package/build/compiler/index.js +3 -1
  47. package/build/compiler/plugin.js +156 -0
  48. package/build/compiler/prerender.d.ts +1 -0
  49. package/build/compiler/prerender.js +2 -1
  50. package/build/compiler/seo.d.ts +2 -2
  51. package/build/compiler/seo.js +8 -6
  52. package/build/compiler/ssg.d.ts +5 -0
  53. package/build/compiler/ssg.js +121 -0
  54. package/build/io/.tsbuildinfo +1 -1
  55. package/build/logger/.tsbuildinfo +1 -1
  56. package/build/shared/.tsbuildinfo +1 -1
  57. package/eslint.config.js +48 -48
  58. package/examples/basic/client/404.tsx +11 -11
  59. package/examples/basic/client/components/.gitkeep +1 -1
  60. package/examples/basic/client/global-error.tsx +13 -13
  61. package/examples/basic/client/layout.tsx +25 -25
  62. package/examples/basic/client/public/images/.gitkeep +1 -1
  63. package/examples/basic/client/public/images/logo.svg +36 -36
  64. package/examples/basic/client/public/robots.txt +2 -2
  65. package/examples/basic/client/routes/docs/[...slug].tsx +12 -12
  66. package/examples/basic/client/routes/features/error/error.tsx +16 -16
  67. package/examples/basic/client/routes/features/template/b.tsx +14 -14
  68. package/examples/basic/client/routes/files/[[...slug]].tsx +21 -21
  69. package/examples/basic/client/routes/gallery/layout.tsx +13 -13
  70. package/examples/basic/client/routes/io.tsx +24 -24
  71. package/examples/basic/client/routes/loader-demo/loading.tsx +13 -13
  72. package/examples/basic/client/routes/search.tsx +61 -61
  73. package/examples/basic/client/toil.tsx +5 -5
  74. package/package.json +155 -147
  75. package/presets/eslint.js +88 -88
  76. package/presets/no-uint8array-tostring.js +200 -200
  77. package/presets/prettier.json +18 -18
  78. package/presets/tsconfig.json +37 -37
  79. package/src/backend/index.ts +160 -160
  80. package/src/cli/proc.ts +50 -50
  81. package/src/cli/updates.ts +69 -69
  82. package/src/cli/validate.ts +31 -31
  83. package/src/client/channel/channel.ts +146 -146
  84. package/src/client/components/Form.tsx +65 -65
  85. package/src/client/components/Script.tsx +113 -113
  86. package/src/client/components/Slot.tsx +21 -21
  87. package/src/client/dev/devtools.tsx +973 -0
  88. package/src/client/dev/error-overlay.tsx +30 -4
  89. package/src/client/head/head.ts +167 -167
  90. package/src/client/head/metadata.ts +19 -1
  91. package/src/client/index.ts +19 -9
  92. package/src/client/navigation/NavLink.tsx +86 -86
  93. package/src/client/navigation/navigation.ts +25 -5
  94. package/src/client/navigation/prefetch.ts +169 -130
  95. package/src/client/navigation/scroll.ts +53 -53
  96. package/src/client/routing/Router.tsx +8 -2
  97. package/src/client/routing/action.ts +122 -122
  98. package/src/client/routing/error-boundary.tsx +43 -43
  99. package/src/client/routing/hooks.ts +21 -6
  100. package/src/client/routing/loader.ts +325 -225
  101. package/src/client/routing/match.ts +47 -47
  102. package/src/client/routing/mount.tsx +54 -52
  103. package/src/client/routing/params-context.ts +10 -10
  104. package/src/client/routing/slot-context.ts +7 -7
  105. package/src/client/search/search.ts +189 -189
  106. package/src/client/search/use-page-search.ts +73 -73
  107. package/src/client/types.ts +73 -73
  108. package/src/compiler/config.ts +47 -1
  109. package/src/compiler/docs.ts +228 -228
  110. package/src/compiler/generate.ts +394 -391
  111. package/src/compiler/index.ts +64 -54
  112. package/src/compiler/pages.ts +70 -70
  113. package/src/compiler/plugin.ts +170 -2
  114. package/src/compiler/prerender.ts +5 -1
  115. package/src/compiler/seo.ts +23 -7
  116. package/src/compiler/ssg.ts +162 -0
  117. package/src/io/BinaryReader.ts +340 -340
  118. package/src/io/BinaryWriter.ts +385 -385
  119. package/src/io/FastMap.ts +127 -127
  120. package/src/io/index.ts +11 -11
  121. package/src/io/lengths.ts +14 -14
  122. package/src/io/types.ts +18 -18
  123. package/src/logger/index.ts +22 -22
  124. package/src/server/index.ts +10 -10
  125. package/src/server/main.ts +13 -13
  126. package/src/server/tsconfig.json +4 -4
  127. package/src/shared/index.ts +10 -10
  128. package/std/client/index.d.ts +15 -15
  129. package/std/client/package.json +3 -3
  130. package/test/assembly/example.spec.ts +7 -7
  131. package/test/channel.test.ts +21 -21
  132. package/test/dom/Link.test.tsx +47 -47
  133. package/test/dom/NavLink.test.tsx +37 -37
  134. package/test/dom/error-overlay.test.tsx +44 -44
  135. package/test/dom/loader.test.tsx +121 -121
  136. package/test/dom/navigation.test.ts +59 -59
  137. package/test/dom/revalidate.test.tsx +38 -38
  138. package/test/dom/route-head.test.tsx +78 -78
  139. package/test/dom/router-loading.test.tsx +44 -44
  140. package/test/dom/scroll.test.ts +56 -56
  141. package/test/dom/use-metadata.test.tsx +58 -0
  142. package/test/io.test.ts +93 -93
  143. package/test/navlink.test.ts +28 -28
  144. package/test/placeholder.test.ts +9 -9
  145. package/test/routes.test.ts +76 -76
  146. package/test/seo.test.ts +175 -164
  147. package/test/slot-layouts.test.ts +69 -69
  148. package/test/ssg.test.ts +36 -0
  149. package/test/update.test.ts +44 -44
  150. package/test/validate.test.ts +42 -42
  151. package/toil-routes.d.ts +7 -0
  152. package/toilconfig.json +30 -30
  153. package/tsconfig.backend.json +13 -13
  154. package/tsconfig.base.json +35 -35
  155. package/tsconfig.cli.json +13 -13
  156. package/tsconfig.client.json +14 -14
  157. package/tsconfig.compiler.json +13 -13
  158. package/tsconfig.io.json +12 -12
  159. package/tsconfig.json +22 -22
  160. package/tsconfig.logger.json +12 -12
  161. package/tsconfig.server.json +10 -10
  162. package/tsconfig.shared.json +12 -12
  163. package/vitest.config.ts +26 -26
  164. package/.idea/codeStyles/Project.xml +0 -54
  165. package/.idea/codeStyles/codeStyleConfig.xml +0 -5
  166. package/.idea/inspectionProfiles/Project_Default.xml +0 -6
  167. package/.idea/modules.xml +0 -8
  168. package/.idea/prettier.xml +0 -7
  169. package/.idea/toiljs.iml +0 -8
  170. package/.idea/vcs.xml +0 -6
  171. package/.toil/entry.tsx +0 -9
  172. package/.toil/index.html +0 -12
  173. package/.toil/routes.ts +0 -9
  174. package/build/cli/configure.d.ts +0 -16
  175. package/build/cli/configure.js +0 -272
  176. package/build/cli/create.d.ts +0 -16
  177. package/build/cli/create.js +0 -420
  178. package/build/cli/diagnostics.d.ts +0 -55
  179. package/build/cli/diagnostics.js +0 -333
  180. package/build/cli/doctor.d.ts +0 -6
  181. package/build/cli/doctor.js +0 -249
  182. package/build/cli/features.d.ts +0 -25
  183. package/build/cli/features.js +0 -107
  184. package/build/cli/index.d.ts +0 -2
  185. package/build/cli/proc.d.ts +0 -6
  186. package/build/cli/proc.js +0 -31
  187. package/build/cli/ui.d.ts +0 -9
  188. package/build/cli/ui.js +0 -75
  189. package/build/cli/update.d.ts +0 -7
  190. package/build/cli/update.js +0 -117
  191. package/build/cli/updates.d.ts +0 -10
  192. package/build/cli/updates.js +0 -45
  193. package/build/cli/validate.d.ts +0 -4
  194. package/build/cli/validate.js +0 -19
  195. package/build/client/Link.d.ts +0 -8
  196. package/build/client/Link.js +0 -44
  197. package/build/client/NavLink.d.ts +0 -14
  198. package/build/client/NavLink.js +0 -37
  199. package/build/client/Router.d.ts +0 -7
  200. package/build/client/Router.js +0 -55
  201. package/build/client/channel.d.ts +0 -23
  202. package/build/client/channel.js +0 -94
  203. package/build/client/error-boundary.d.ts +0 -16
  204. package/build/client/error-boundary.js +0 -19
  205. package/build/client/head.d.ts +0 -26
  206. package/build/client/head.js +0 -87
  207. package/build/client/hooks.d.ts +0 -17
  208. package/build/client/hooks.js +0 -48
  209. package/build/client/lazy.d.ts +0 -16
  210. package/build/client/lazy.js +0 -53
  211. package/build/client/match.d.ts +0 -2
  212. package/build/client/match.js +0 -32
  213. package/build/client/mount.d.ts +0 -2
  214. package/build/client/mount.js +0 -13
  215. package/build/client/navigation.d.ts +0 -13
  216. package/build/client/navigation.js +0 -97
  217. package/build/client/params-context.d.ts +0 -2
  218. package/build/client/params-context.js +0 -2
  219. package/build/client/prefetch.d.ts +0 -11
  220. package/build/client/prefetch.js +0 -100
  221. package/build/client/runtime.d.ts +0 -31
  222. package/build/client/runtime.js +0 -112
  223. package/build/client/scroll.d.ts +0 -8
  224. package/build/client/scroll.js +0 -36
  225. package/toil-env.d.ts +0 -16
@@ -1 +1 @@
1
- {"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/typescript/lib/lib.es2023.d.ts","../../node_modules/typescript/lib/lib.es2024.d.ts","../../node_modules/typescript/lib/lib.es2025.d.ts","../../node_modules/typescript/lib/lib.esnext.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../node_modules/typescript/lib/lib.es2023.array.d.ts","../../node_modules/typescript/lib/lib.es2023.collection.d.ts","../../node_modules/typescript/lib/lib.es2023.intl.d.ts","../../node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../../node_modules/typescript/lib/lib.es2024.collection.d.ts","../../node_modules/typescript/lib/lib.es2024.object.d.ts","../../node_modules/typescript/lib/lib.es2024.promise.d.ts","../../node_modules/typescript/lib/lib.es2024.regexp.d.ts","../../node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2024.string.d.ts","../../node_modules/typescript/lib/lib.es2025.collection.d.ts","../../node_modules/typescript/lib/lib.es2025.float16.d.ts","../../node_modules/typescript/lib/lib.es2025.intl.d.ts","../../node_modules/typescript/lib/lib.es2025.iterator.d.ts","../../node_modules/typescript/lib/lib.es2025.promise.d.ts","../../node_modules/typescript/lib/lib.es2025.regexp.d.ts","../../node_modules/typescript/lib/lib.esnext.array.d.ts","../../node_modules/typescript/lib/lib.esnext.collection.d.ts","../../node_modules/typescript/lib/lib.esnext.date.d.ts","../../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../node_modules/typescript/lib/lib.esnext.error.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.esnext.temporal.d.ts","../../node_modules/typescript/lib/lib.esnext.typedarrays.d.ts","../../node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../node_modules/@types/react/global.d.ts","../../node_modules/csstype/index.d.ts","../../node_modules/@types/react/index.d.ts","../../node_modules/@types/react/jsx-runtime.d.ts","../../node_modules/@types/react-dom/client.d.ts","../../src/client/dev/error-overlay.tsx","../../node_modules/@types/react-dom/index.d.ts","../../src/client/navigation/scroll.ts","../../src/client/types.ts","../../src/client/navigation/navigation.ts","../../src/client/routing/match.ts","../../src/client/navigation/prefetch.ts","../../src/client/routing/error-boundary.tsx","../../src/client/head/head.ts","../../src/client/head/metadata.ts","../../src/client/routing/loader.ts","../../src/client/routing/params-context.ts","../../src/client/routing/hooks.ts","../../src/client/routing/lazy.ts","../../src/client/routing/slot-context.ts","../../src/client/routing/router.tsx","../../src/client/routing/mount.tsx","../../src/client/navigation/link.tsx","../../src/client/navigation/navlink.tsx","../../src/client/routing/action.ts","../../src/client/channel/channel.ts","../../src/client/search/search.ts","../../src/client/search/use-page-search.ts","../../src/client/components/image.tsx","../../src/client/components/script.tsx","../../src/client/components/form.tsx","../../src/client/components/slot.tsx","../../src/client/index.ts"],"fileIdsList":[[92],[90,91],[92,93],[92,93,114],[92,93,109],[93,100,103],[93,98,99,100,101,103,104,105,107,110,111,112,113,114,115,116,117,118,119,120,121],[92,93,98,99,101],[92,93,96,97,98],[92,93,107,112],[93,98,100],[93],[92,93,98,99,105],[92,93,98],[92,93,98,99,100,101,105,106],[92,93,98,99,100,103,104],[93,94,95,98,99,101,110],[92,93,100],[92,93,97,98,99,100,102,103,105,106,107,108,109],[93,104],[92,93,98,99,116]],"fileInfos":[{"version":"bcd24271a113971ba9eb71ff8cb01bc6b0f872a85c23fdbe5d93065b375933cd","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f88bedbeb09c6f5a6645cb24c7c55f1aa22d19ae96c8e6959cbd8b85a707bc6","impliedFormat":1},{"version":"7fe93b39b810eadd916be8db880dd7f0f7012a5cc6ffb62de8f62a2117fa6f1f","impliedFormat":1},{"version":"bb0074cc08b84a2374af33d8bf044b80851ccc9e719a5e202eacf40db2c31600","impliedFormat":1},{"version":"1a7daebe4f45fb03d9ec53d60008fbf9ac45a697fdc89e4ce218bc94b94f94d6","impliedFormat":1},{"version":"f94b133a3cb14a288803be545ac2683e0d0ff6661bcd37e31aaaec54fc382aed","impliedFormat":1},{"version":"f59d0650799f8782fd74cf73c19223730c6d1b9198671b1c5b3a38e1188b5953","impliedFormat":1},{"version":"8a15b4607d9a499e2dbeed9ec0d3c0d7372c850b2d5f1fb259e8f6d41d468a84","impliedFormat":1},{"version":"26e0fe14baee4e127f4365d1ae0b276f400562e45e19e35fd2d4c296684715e6","impliedFormat":1},{"version":"1e9332c23e9a907175e0ffc6a49e236f97b48838cc8aec9ce7e4cec21e544b65","impliedFormat":1},{"version":"3753fbc1113dc511214802a2342280a8b284ab9094f6420e7aa171e868679f91","impliedFormat":1},{"version":"999ca32883495a866aa5737fe1babc764a469e4cde6ee6b136a4b9ae68853e4b","impliedFormat":1},{"version":"17f13ecb98cbc39243f2eee1f16d45cd8ec4706b03ee314f1915f1a8b42f6984","impliedFormat":1},{"version":"d6b1eba8496bdd0eed6fc8a685768fe01b2da4a0388b5fe7df558290bffcf32f","affectsGlobalScope":true,"impliedFormat":1},{"version":"7f57fc4404ff020bc45b9c620aff2b40f700b95fe31164024c453a5e3c163c54","impliedFormat":1},{"version":"eadcffda2aa84802c73938e589b9e58248d74c59cb7fcbca6474e3435ac15504","affectsGlobalScope":true,"impliedFormat":1},{"version":"105ba8ff7ba746404fe1a2e189d1d3d2e0eb29a08c18dded791af02f29fb4711","affectsGlobalScope":true,"impliedFormat":1},{"version":"00343ca5b2e3d48fa5df1db6e32ea2a59afab09590274a6cccb1dbae82e60c7c","affectsGlobalScope":true,"impliedFormat":1},{"version":"ebd9f816d4002697cb2864bea1f0b70a103124e18a8cd9645eeccc09bdf80ab4","affectsGlobalScope":true,"impliedFormat":1},{"version":"2c1afac30a01772cd2a9a298a7ce7706b5892e447bb46bdbeef720f7b5da77ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"7b0225f483e4fa685625ebe43dd584bb7973bbd84e66a6ba7bbe175ee1048b4f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c0a4b8ac6ce74679c1da2b3795296f5896e31c38e888469a8e0f99dc3305de60","affectsGlobalScope":true,"impliedFormat":1},{"version":"3084a7b5f569088e0146533a00830e206565de65cae2239509168b11434cd84f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5079c53f0f141a0698faa903e76cb41cd664e3efb01cc17a5c46ec2eb0bef42","affectsGlobalScope":true,"impliedFormat":1},{"version":"32cafbc484dea6b0ab62cf8473182bbcb23020d70845b406f80b7526f38ae862","affectsGlobalScope":true,"impliedFormat":1},{"version":"fca4cdcb6d6c5ef18a869003d02c9f0fd95df8cfaf6eb431cd3376bc034cad36","affectsGlobalScope":true,"impliedFormat":1},{"version":"b93ec88115de9a9dc1b602291b85baf825c85666bf25985cc5f698073892b467","affectsGlobalScope":true,"impliedFormat":1},{"version":"f5c06dcc3fe849fcb297c247865a161f995cc29de7aa823afdd75aaaddc1419b","affectsGlobalScope":true,"impliedFormat":1},{"version":"b77e16112127a4b169ef0b8c3a4d730edf459c5f25fe52d5e436a6919206c4d7","affectsGlobalScope":true,"impliedFormat":1},{"version":"fbffd9337146eff822c7c00acbb78b01ea7ea23987f6c961eba689349e744f8c","affectsGlobalScope":true,"impliedFormat":1},{"version":"a995c0e49b721312f74fdfb89e4ba29bd9824c770bbb4021d74d2bf560e4c6bd","affectsGlobalScope":true,"impliedFormat":1},{"version":"c7b3542146734342e440a84b213384bfa188835537ddbda50d30766f0593aff9","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce6180fa19b1cccd07ee7f7dbb9a367ac19c0ed160573e4686425060b6df7f57","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f02e2476bccb9dbe21280d6090f0df17d2f66b74711489415a8aa4df73c9675","affectsGlobalScope":true,"impliedFormat":1},{"version":"45e3ab34c1c013c8ab2dc1ba4c80c780744b13b5676800ae2e3be27ae862c40c","affectsGlobalScope":true,"impliedFormat":1},{"version":"805c86f6cca8d7702a62a844856dbaa2a3fd2abef0536e65d48732441dde5b5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"e42e397f1a5a77994f0185fd1466520691456c772d06bf843e5084ceb879a0ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"f4c2b41f90c95b1c532ecc874bd3c111865793b23aebcc1c3cbbabcd5d76ffb0","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab26191cfad5b66afa11b8bf935ef1cd88fabfcb28d30b2dfa6fad877d050332","affectsGlobalScope":true,"impliedFormat":1},{"version":"2088bc26531e38fb05eedac2951480db5309f6be3fa4a08d2221abb0f5b4200d","affectsGlobalScope":true,"impliedFormat":1},{"version":"cb9d366c425fea79716a8fb3af0d78e6b22ebbab3bd64d25063b42dc9f531c1e","affectsGlobalScope":true,"impliedFormat":1},{"version":"500934a8089c26d57ebdb688fc9757389bb6207a3c8f0674d68efa900d2abb34","affectsGlobalScope":true,"impliedFormat":1},{"version":"689da16f46e647cef0d64b0def88910e818a5877ca5379ede156ca3afb780ac3","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc21cc8b6fee4f4c2440d08035b7ea3c06b3511314c8bab6bef7a92de58a2593","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ca53d13d2957003abb47922a71866ba7cb2068f8d154877c596d63c359fed25","affectsGlobalScope":true,"impliedFormat":1},{"version":"54725f8c4df3d900cb4dac84b64689ce29548da0b4e9b7c2de61d41c79293611","affectsGlobalScope":true,"impliedFormat":1},{"version":"e5594bc3076ac29e6c1ebda77939bc4c8833de72f654b6e376862c0473199323","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f3eb332c2d73e729f3364fcc0c2b375e72a121e8157d25a82d67a138c83a95c","affectsGlobalScope":true,"impliedFormat":1},{"version":"6f4427f9642ce8d500970e4e69d1397f64072ab73b97e476b4002a646ac743b1","affectsGlobalScope":true,"impliedFormat":1},{"version":"48915f327cd1dea4d7bd358d9dc7732f58f9e1626a29cc0c05c8c692419d9bb7","affectsGlobalScope":true,"impliedFormat":1},{"version":"b7bf9377723203b5a6a4b920164df22d56a43f593269ba6ae1fdc97774b68855","affectsGlobalScope":true,"impliedFormat":1},{"version":"db9709688f82c9e5f65a119c64d835f906efe5f559d08b11642d56eb85b79357","affectsGlobalScope":true,"impliedFormat":1},{"version":"4b25b8c874acd1a4cf8444c3617e037d444d19080ac9f634b405583fd10ce1f7","affectsGlobalScope":true,"impliedFormat":1},{"version":"37be57d7c90cf1f8112ee2636a068d8fd181289f82b744160ec56a7dc158a9f5","affectsGlobalScope":true,"impliedFormat":1},{"version":"a917a49ac94cd26b754ab84e113369a75d1a47a710661d7cd25e961cc797065f","affectsGlobalScope":true,"impliedFormat":1},{"version":"6d3261badeb7843d157ef3e6f5d1427d0eeb0af0cf9df84a62cfd29fd47ac86e","affectsGlobalScope":true,"impliedFormat":1},{"version":"195daca651dde22f2167ac0d0a05e215308119a3100f5e6268e8317d05a92526","affectsGlobalScope":true,"impliedFormat":1},{"version":"8b11e4285cd2bb164a4dc09248bdec69e9842517db4ca47c1ba913011e44ff2f","affectsGlobalScope":true,"impliedFormat":1},{"version":"0508571a52475e245b02bc50fa1394065a0a3d05277fbf5120c3784b85651799","affectsGlobalScope":true,"impliedFormat":1},{"version":"8f9af488f510c3015af3cc8c267a9e9d96c4dd38a1fdff0e11dc5a544711415b","affectsGlobalScope":true,"impliedFormat":1},{"version":"fc611fea8d30ea72c6bbfb599c9b4d393ce22e2f5bfef2172534781e7d138104","affectsGlobalScope":true,"impliedFormat":1},{"version":"0bd714129fca875f7d4c477a1a392200b0bcd13fb2e80928cd334b63830ea047","affectsGlobalScope":true,"impliedFormat":1},{"version":"e2c9037ae6cd2c52d80ceef0b3c5ffdb488627d71529cf4f63776daf11161c9a","affectsGlobalScope":true,"impliedFormat":1},{"version":"135d5cf4d345f59f1a9caadfafcd858d3d9cc68290db616cc85797224448cccc","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc238c3f81c2984751932b6aab223cd5b830e0ac6cad76389e5e9d2ffc03287d","affectsGlobalScope":true,"impliedFormat":1},{"version":"4a07f9b76d361f572620927e5735b77d6d2101c23cdd94383eb5b706e7b36357","affectsGlobalScope":true,"impliedFormat":1},{"version":"7c4e8dc6ab834cc6baa0227e030606d29e3e8449a9f67cdf5605ea5493c4db29","affectsGlobalScope":true,"impliedFormat":1},{"version":"de7ba0fd02e06cd9a5bd4ab441ed0e122735786e67dde1e849cced1cd8b46b78","affectsGlobalScope":true,"impliedFormat":1},{"version":"6148e4e88d720a06855071c3db02069434142a8332cf9c182cda551adedf3156","affectsGlobalScope":true,"impliedFormat":1},{"version":"d63dba625b108316a40c95a4425f8d4294e0deeccfd6c7e59d819efa19e23409","affectsGlobalScope":true,"impliedFormat":1},{"version":"0568d6befee03dd435bed4fc25c4e46865b24bdcb8c563fdc21f580a2c301904","affectsGlobalScope":true,"impliedFormat":1},{"version":"30d62269b05b584741f19a5369852d5d34895aa2ac4fd948956f886d15f9cc0d","affectsGlobalScope":true,"impliedFormat":1},{"version":"f128dae7c44d8f35ee42e0a437000a57c9f06cc04f8b4fb42eebf44954d53dc8","affectsGlobalScope":true,"impliedFormat":1},{"version":"ffbe6d7b295306b2ba88030f65b74c107d8d99bdcf596ea99c62a02f606108b0","affectsGlobalScope":true,"impliedFormat":1},{"version":"996fb27b15277369c68a4ba46ed138b4e9e839a02fb4ec756f7997629242fd9f","affectsGlobalScope":true,"impliedFormat":1},{"version":"79b712591b270d4778c89706ca2cfc56ddb8c3f895840e477388f1710dc5eda9","affectsGlobalScope":true,"impliedFormat":1},{"version":"20884846cef428b992b9bd032e70a4ef88e349263f63aeddf04dda837a7dba26","affectsGlobalScope":true,"impliedFormat":1},{"version":"5fcab789c73a97cd43828ee3cc94a61264cf24d4c44472ce64ced0e0f148bdb2","affectsGlobalScope":true,"impliedFormat":1},{"version":"db59a81f070c1880ad645b2c0275022baa6a0c4f0acdc58d29d349c6efcf0903","affectsGlobalScope":true,"impliedFormat":1},{"version":"673294292640f5722b700e7d814e17aaf7d93f83a48a2c9b38f33cbc940ad8b0","affectsGlobalScope":true,"impliedFormat":1},{"version":"d786b48f934cbca483b3c6d0a798cb43bbb4ada283e76fb22c28e53ae05b9e69","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ecb8e347cb6b2a8927c09b86263663289418df375f5e68e11a0ae683776978f","affectsGlobalScope":true,"impliedFormat":1},{"version":"142efd4ce210576f777dc34df121777be89eda476942d6d6663b03dcb53be3ff","affectsGlobalScope":true,"impliedFormat":1},{"version":"379bc41580c2d774f82e828c70308f24a005b490c25ba34d679d84bcf05c3d9d","affectsGlobalScope":true,"impliedFormat":1},{"version":"ed484fb2aa8a1a23d0277056ec3336e0a0b52f9b8d6a961f338a642faf43235d","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ffedae1d1c2d53fdbca1c96d3c7dda544281f7d262f99b6880634f8fd8d9820","affectsGlobalScope":true,"impliedFormat":1},{"version":"83a730b125d477dd264df8ba479afab27a3dae7152b005c214ab94dc7ee44fd3","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ce14b81c5cc821994aa8ec1d42b220dd41b27fcc06373bce3958af7421b77d4","affectsGlobalScope":true,"impliedFormat":1},{"version":"b3a048b3e9302ef9a34ef4ebb9aecfb28b66abb3bce577206a79fee559c230da","affectsGlobalScope":true,"impliedFormat":1},{"version":"7e29f41b158de217f94cb9676bf9cbd0cd9b5a46e1985141ed36e075c52bf6ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac51dd7d31333793807a6abaa5ae168512b6131bd41d9c5b98477fc3b7800f9f","impliedFormat":1},{"version":"bd7dee3446a5b94651d58000ddfda40296f073e9372891f65003a524b4620697","impliedFormat":1},{"version":"42c169fb8c2d42f4f668c624a9a11e719d5d07dacbebb63cbcf7ef365b0a75b3","impliedFormat":1},{"version":"bc03c3c352f689e38c0ddd50c39b1e65d59273991bfc8858a9e3c0ebb79c023b","impliedFormat":1},{"version":"a716a86c8c76742b47f4e7475ba3219188f2151979d1c55a027e275852890c45","signature":"9f8a4a6f0fa33835fe10847c3313103535a4aa19ab49260497e23bb938197acc"},{"version":"be1cc4d94ea60cbe567bc29ed479d42587bf1e6cba490f123d329976b0fe4ee5","impliedFormat":1},{"version":"ee8a149229af2834098b2776d0de116b0ead67ecefb18d06ef9638ad0ebe7286","signature":"2b2db01796f774852b44cacad054f31b9e63a3c4ed787d12c1dd75c75e602bef"},{"version":"1684064f1b0252907917f0c1a684ac3e2f2cb0b83f88d3362e38d3f3cf74b8ad","signature":"d86aae3a61fb2a3734379428044eefd6b048996f3a1a1cd7e57bb94d3d36b02b"},{"version":"ea3728b01d2575f1b383ebdc58f56d006c9f7d3d408b05416759df19126c8911","signature":"07a133f6bd32dbfd81aa6cbbd0eed2b4e26c920cb00508a58506897ef443f17f"},{"version":"4545a2b4483788cc65b488100c61f20ebdb08c22c7344572885ec14826d2f24b","signature":"b9f112f8e9a593f362dd5f434f8f997385dd62f15e2d2fb6d316e5d0d9942a51"},{"version":"d46f90a72c5370fdf90115c2c3a3c1b6f344cbac30e176eb92a083823233b2bb","signature":"09d6078412069edc1a6faad02c5846365d560ea26b03f0cd960137bd30ae4df9","affectsGlobalScope":true},{"version":"4ffbc79d3bf30be74fd9258569c6012cdbfee5a9249fed04b8e9072bcebd29e9","signature":"9382f138465c4775c54940f2a3d4334a083a6fc9a622a7c926c5f8233228cbae"},{"version":"635b1d7f9277daa21f877a84911e298ccd45c0961ef240da48102909ecace4cf","signature":"2100acdf9780bbfaa7c7c41109ea60464c7e17af1fb6ab3aa89e860ad1c3f350"},{"version":"a8e3c8077c3204a7f88c2e5c9e0a11dbbf89de7736b901e4ab0fdcee3c015252","signature":"008b61907cfba2dd062cbbf6aa6b790714c9f10bbbeff1af4cac610e3bcf688f"},{"version":"564dfb7b5db8da37501a9bc4a5bda849817d061fcbd02d4c811211d238836261","signature":"197426b39a1ee9b5dc05020bd7285c804a9c57358104677cdd68986edb7ecf0b"},{"version":"b823a47f674739ef4f8930b4fc7961da84deed0125827758c3eccf6b0f667943","signature":"c8525f0be940a19f3d03f06b6e43d4bea21ba910db62fb5024ecc671bcc23932"},{"version":"8829818558c8f86bf5fac39bb3ab3c683b93c698fff0717cceceeb292849bbf4","signature":"b47403a7e6e239e43bf3b91e224e38b4c8345da2dc9967a2a1682996e1d48829"},{"version":"bdf04d4dd9ed94c85da1be565643ef5fad4212b7a545da8f4792deb4cf426665","signature":"c6384012cac726d5b05237d2bd2c9c9da0893feaf54ab1dd0042fe141b9e5bd8"},{"version":"8ff6ca449f20c1d1bc8338fa1017ca8b45d0766cab6fa11e7fce8aa670cbd80c","signature":"994bfb8326dca5c985462ba74b5c64146aef0e3ea7bbbbf265ad426d884fbc9e"},{"version":"09549171f4eca3cb29097163a9371c02298e61d02cd12bb161f9b41eb677c86f","signature":"00dd4ce0458ebf64e2e0617d4bc04f3a9a569bc388f3a20c1c4416d465e99245"},{"version":"5889d61cffb3a390c141cce41c0b115302ab5a5760533839f106c41f07671a3d","signature":"e5f0e0e21621bb3e87958857cc9695abf011fb257bd249abd42ae97b3b61e1d0"},{"version":"9c613530527e7eddd1ef9fade0ee8fe5a6f9ac40bb7b454ff1e03530cafde053","signature":"5cf43ceac60fba7927af9ce9b27fb6031854fc923263b78c353fb986857218b9"},{"version":"8bec5d913b66865ea88ced047c96b2f048c8343ca8e142e8c37942f6f9d62a35","signature":"0caa217adbbdb001facd9aeb363fa2a446eabbeb4e5af2c1f2c3d1ef4bbffc6e"},{"version":"5a86d3602f726666a25128f4710406135d5a52dcba3c1b47d6c5f244490e706b","signature":"63bfd9f3fbbcb2dc649dd7303b9fdcf5680c25e217228a5abe005674bfc8bed5"},{"version":"934d2d6e26d57425550744e36443449d1d1d7e2e5d91e03afb1ca27290d4a158","signature":"bbaa85a96900ee24d770ce38f7807d2d3cc2ca203e223cd4080447680910992e"},{"version":"7ef8ebe7a41a41bbc487bdacb11f5d5ea98dd939cd2d9f49f72b4665bfc7818b","signature":"b43c263b28c6f20a6d7066e22f6906fe51605b6a4b7709a3c47d7cf6c0ccf93e"},{"version":"9708aa48c6d4b4585f90bf895e19db6e5ba1324a0bf7d7d12eb9d19eded02875","signature":"ea9768ee8ae2400a4352956f0937ff7ce12640c4de3c69d6e71e8a2f954ad58a"},{"version":"c1765ec7c06443b1c353c2bb94b99b3b5a423acd7ee15bb434f7697d955111a8","signature":"7302ddfa6ab62295a7ad2cf47cc8b933be587d161d5b818aba3e85d7af69e59e"},{"version":"f4d4df48a8a99b91545aaed8ad1beaaef5c314aa5d8d55029d80910960dc93a5","signature":"d9ce1372a43589027af010d0293b17099bf27089071c6d12ce30eb94b70191af"},{"version":"296c26ce70323317972ec25f9d5cfe79cb99f576423c81798f906d52e7c48432","signature":"dbb3eab27a108491f80873c1031ddc0b1a16c47f4c32e2ec2e70b83e9cee161b"},{"version":"49ccdd12861c01e002d1278b952c68ae68c8f8d73f7148f6fd62fe266c607b09","signature":"8aec088c8b901c6fe9e7fe22785892138849af77a640d12b7015ec52a95aa27c"},{"version":"b0deee63596a2b6eae6f15e9c749f457b19193c4bd7a1e12be6631e7bff0fafd","signature":"fbf09bd600d727f9b55ca83a7631c3554da2e367ffb904981dda443f22daf7aa"}],"root":[95,[97,122]],"options":{"allowJs":true,"allowSyntheticDefaultImports":true,"alwaysStrict":true,"declaration":true,"esModuleInterop":true,"experimentalDecorators":true,"jsx":4,"module":99,"noImplicitAny":true,"outDir":"./","preserveConstEnums":true,"removeComments":true,"rootDir":"../../src/client","skipLibCheck":true,"sourceMap":false,"strict":true,"strictBindCallApply":true,"strictFunctionTypes":true,"strictNullChecks":true,"strictPropertyInitialization":true,"suppressImplicitAnyIndexErrors":false,"target":99,"tsBuildInfoFile":"./.tsbuildinfo"},"referencedMap":[[94,1],[96,1],[92,2],[93,1],[115,3],[120,4],[118,3],[119,3],[121,5],[95,3],[103,3],[104,6],[122,7],[112,8],[99,9],[113,10],[101,11],[97,12],[114,13],[102,14],[107,15],[108,14],[105,16],[100,12],[111,17],[106,18],[110,19],[109,3],[116,20],[117,21],[98,3]],"version":"6.0.3"}
1
+ {"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/typescript/lib/lib.es2023.d.ts","../../node_modules/typescript/lib/lib.es2024.d.ts","../../node_modules/typescript/lib/lib.es2025.d.ts","../../node_modules/typescript/lib/lib.esnext.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../node_modules/typescript/lib/lib.es2023.array.d.ts","../../node_modules/typescript/lib/lib.es2023.collection.d.ts","../../node_modules/typescript/lib/lib.es2023.intl.d.ts","../../node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../../node_modules/typescript/lib/lib.es2024.collection.d.ts","../../node_modules/typescript/lib/lib.es2024.object.d.ts","../../node_modules/typescript/lib/lib.es2024.promise.d.ts","../../node_modules/typescript/lib/lib.es2024.regexp.d.ts","../../node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2024.string.d.ts","../../node_modules/typescript/lib/lib.es2025.collection.d.ts","../../node_modules/typescript/lib/lib.es2025.float16.d.ts","../../node_modules/typescript/lib/lib.es2025.intl.d.ts","../../node_modules/typescript/lib/lib.es2025.iterator.d.ts","../../node_modules/typescript/lib/lib.es2025.promise.d.ts","../../node_modules/typescript/lib/lib.es2025.regexp.d.ts","../../node_modules/typescript/lib/lib.esnext.array.d.ts","../../node_modules/typescript/lib/lib.esnext.collection.d.ts","../../node_modules/typescript/lib/lib.esnext.date.d.ts","../../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../node_modules/typescript/lib/lib.esnext.error.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.esnext.temporal.d.ts","../../node_modules/typescript/lib/lib.esnext.typedarrays.d.ts","../../node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../node_modules/@types/react/global.d.ts","../../node_modules/csstype/index.d.ts","../../node_modules/@types/react/index.d.ts","../../node_modules/@types/react/jsx-runtime.d.ts","../../node_modules/@types/react-dom/client.d.ts","../../src/client/dev/error-overlay.tsx","../../node_modules/@types/react-dom/index.d.ts","../../src/client/navigation/scroll.ts","../../src/client/types.ts","../../src/client/navigation/navigation.ts","../../src/client/head/head.ts","../../src/client/routing/match.ts","../../src/client/head/metadata.ts","../../src/client/routing/loader.ts","../../src/client/search/search.ts","../../src/client/dev/devtools.tsx","../../src/client/navigation/prefetch.ts","../../src/client/routing/error-boundary.tsx","../../src/client/routing/params-context.ts","../../src/client/routing/hooks.ts","../../src/client/routing/lazy.ts","../../src/client/routing/slot-context.ts","../../src/client/routing/Router.tsx","../../src/client/routing/mount.tsx","../../src/client/navigation/Link.tsx","../../src/client/navigation/NavLink.tsx","../../src/client/routing/action.ts","../../src/client/channel/channel.ts","../../src/client/search/use-page-search.ts","../../src/client/components/Image.tsx","../../src/client/components/Script.tsx","../../src/client/components/Form.tsx","../../src/client/components/Slot.tsx","../../src/client/index.ts"],"fileIdsList":[[92],[90,91],[92,93],[92,93,116],[92,93,111],[92,93,95,98,99,101,103,104],[93,100,101],[93,98,99,100,101,102,103,104,106,109,112,113,114,115,116,117,118,119,120,121,122],[92,93,98,99,106],[92,93,109,114],[92,93,96,97,98],[93,98,101,103],[93],[92,93,97,98,99,100,101,103,107,108,109,110,111],[92,93,98,99,103],[92,93,98],[92,93,98,99,101,103,106,108],[92,93,98,99,100,101,102],[93,94,95,98,99,105,106,112],[92,93,101],[93,102],[92,93,98,99,104]],"fileInfos":[{"version":"bcd24271a113971ba9eb71ff8cb01bc6b0f872a85c23fdbe5d93065b375933cd","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f88bedbeb09c6f5a6645cb24c7c55f1aa22d19ae96c8e6959cbd8b85a707bc6","impliedFormat":1},{"version":"7fe93b39b810eadd916be8db880dd7f0f7012a5cc6ffb62de8f62a2117fa6f1f","impliedFormat":1},{"version":"bb0074cc08b84a2374af33d8bf044b80851ccc9e719a5e202eacf40db2c31600","impliedFormat":1},{"version":"1a7daebe4f45fb03d9ec53d60008fbf9ac45a697fdc89e4ce218bc94b94f94d6","impliedFormat":1},{"version":"f94b133a3cb14a288803be545ac2683e0d0ff6661bcd37e31aaaec54fc382aed","impliedFormat":1},{"version":"f59d0650799f8782fd74cf73c19223730c6d1b9198671b1c5b3a38e1188b5953","impliedFormat":1},{"version":"8a15b4607d9a499e2dbeed9ec0d3c0d7372c850b2d5f1fb259e8f6d41d468a84","impliedFormat":1},{"version":"26e0fe14baee4e127f4365d1ae0b276f400562e45e19e35fd2d4c296684715e6","impliedFormat":1},{"version":"1e9332c23e9a907175e0ffc6a49e236f97b48838cc8aec9ce7e4cec21e544b65","impliedFormat":1},{"version":"3753fbc1113dc511214802a2342280a8b284ab9094f6420e7aa171e868679f91","impliedFormat":1},{"version":"999ca32883495a866aa5737fe1babc764a469e4cde6ee6b136a4b9ae68853e4b","impliedFormat":1},{"version":"17f13ecb98cbc39243f2eee1f16d45cd8ec4706b03ee314f1915f1a8b42f6984","impliedFormat":1},{"version":"d6b1eba8496bdd0eed6fc8a685768fe01b2da4a0388b5fe7df558290bffcf32f","affectsGlobalScope":true,"impliedFormat":1},{"version":"7f57fc4404ff020bc45b9c620aff2b40f700b95fe31164024c453a5e3c163c54","impliedFormat":1},{"version":"eadcffda2aa84802c73938e589b9e58248d74c59cb7fcbca6474e3435ac15504","affectsGlobalScope":true,"impliedFormat":1},{"version":"105ba8ff7ba746404fe1a2e189d1d3d2e0eb29a08c18dded791af02f29fb4711","affectsGlobalScope":true,"impliedFormat":1},{"version":"00343ca5b2e3d48fa5df1db6e32ea2a59afab09590274a6cccb1dbae82e60c7c","affectsGlobalScope":true,"impliedFormat":1},{"version":"ebd9f816d4002697cb2864bea1f0b70a103124e18a8cd9645eeccc09bdf80ab4","affectsGlobalScope":true,"impliedFormat":1},{"version":"2c1afac30a01772cd2a9a298a7ce7706b5892e447bb46bdbeef720f7b5da77ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"7b0225f483e4fa685625ebe43dd584bb7973bbd84e66a6ba7bbe175ee1048b4f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c0a4b8ac6ce74679c1da2b3795296f5896e31c38e888469a8e0f99dc3305de60","affectsGlobalScope":true,"impliedFormat":1},{"version":"3084a7b5f569088e0146533a00830e206565de65cae2239509168b11434cd84f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5079c53f0f141a0698faa903e76cb41cd664e3efb01cc17a5c46ec2eb0bef42","affectsGlobalScope":true,"impliedFormat":1},{"version":"32cafbc484dea6b0ab62cf8473182bbcb23020d70845b406f80b7526f38ae862","affectsGlobalScope":true,"impliedFormat":1},{"version":"fca4cdcb6d6c5ef18a869003d02c9f0fd95df8cfaf6eb431cd3376bc034cad36","affectsGlobalScope":true,"impliedFormat":1},{"version":"b93ec88115de9a9dc1b602291b85baf825c85666bf25985cc5f698073892b467","affectsGlobalScope":true,"impliedFormat":1},{"version":"f5c06dcc3fe849fcb297c247865a161f995cc29de7aa823afdd75aaaddc1419b","affectsGlobalScope":true,"impliedFormat":1},{"version":"b77e16112127a4b169ef0b8c3a4d730edf459c5f25fe52d5e436a6919206c4d7","affectsGlobalScope":true,"impliedFormat":1},{"version":"fbffd9337146eff822c7c00acbb78b01ea7ea23987f6c961eba689349e744f8c","affectsGlobalScope":true,"impliedFormat":1},{"version":"a995c0e49b721312f74fdfb89e4ba29bd9824c770bbb4021d74d2bf560e4c6bd","affectsGlobalScope":true,"impliedFormat":1},{"version":"c7b3542146734342e440a84b213384bfa188835537ddbda50d30766f0593aff9","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce6180fa19b1cccd07ee7f7dbb9a367ac19c0ed160573e4686425060b6df7f57","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f02e2476bccb9dbe21280d6090f0df17d2f66b74711489415a8aa4df73c9675","affectsGlobalScope":true,"impliedFormat":1},{"version":"45e3ab34c1c013c8ab2dc1ba4c80c780744b13b5676800ae2e3be27ae862c40c","affectsGlobalScope":true,"impliedFormat":1},{"version":"805c86f6cca8d7702a62a844856dbaa2a3fd2abef0536e65d48732441dde5b5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"e42e397f1a5a77994f0185fd1466520691456c772d06bf843e5084ceb879a0ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"f4c2b41f90c95b1c532ecc874bd3c111865793b23aebcc1c3cbbabcd5d76ffb0","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab26191cfad5b66afa11b8bf935ef1cd88fabfcb28d30b2dfa6fad877d050332","affectsGlobalScope":true,"impliedFormat":1},{"version":"2088bc26531e38fb05eedac2951480db5309f6be3fa4a08d2221abb0f5b4200d","affectsGlobalScope":true,"impliedFormat":1},{"version":"cb9d366c425fea79716a8fb3af0d78e6b22ebbab3bd64d25063b42dc9f531c1e","affectsGlobalScope":true,"impliedFormat":1},{"version":"500934a8089c26d57ebdb688fc9757389bb6207a3c8f0674d68efa900d2abb34","affectsGlobalScope":true,"impliedFormat":1},{"version":"689da16f46e647cef0d64b0def88910e818a5877ca5379ede156ca3afb780ac3","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc21cc8b6fee4f4c2440d08035b7ea3c06b3511314c8bab6bef7a92de58a2593","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ca53d13d2957003abb47922a71866ba7cb2068f8d154877c596d63c359fed25","affectsGlobalScope":true,"impliedFormat":1},{"version":"54725f8c4df3d900cb4dac84b64689ce29548da0b4e9b7c2de61d41c79293611","affectsGlobalScope":true,"impliedFormat":1},{"version":"e5594bc3076ac29e6c1ebda77939bc4c8833de72f654b6e376862c0473199323","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f3eb332c2d73e729f3364fcc0c2b375e72a121e8157d25a82d67a138c83a95c","affectsGlobalScope":true,"impliedFormat":1},{"version":"6f4427f9642ce8d500970e4e69d1397f64072ab73b97e476b4002a646ac743b1","affectsGlobalScope":true,"impliedFormat":1},{"version":"48915f327cd1dea4d7bd358d9dc7732f58f9e1626a29cc0c05c8c692419d9bb7","affectsGlobalScope":true,"impliedFormat":1},{"version":"b7bf9377723203b5a6a4b920164df22d56a43f593269ba6ae1fdc97774b68855","affectsGlobalScope":true,"impliedFormat":1},{"version":"db9709688f82c9e5f65a119c64d835f906efe5f559d08b11642d56eb85b79357","affectsGlobalScope":true,"impliedFormat":1},{"version":"4b25b8c874acd1a4cf8444c3617e037d444d19080ac9f634b405583fd10ce1f7","affectsGlobalScope":true,"impliedFormat":1},{"version":"37be57d7c90cf1f8112ee2636a068d8fd181289f82b744160ec56a7dc158a9f5","affectsGlobalScope":true,"impliedFormat":1},{"version":"a917a49ac94cd26b754ab84e113369a75d1a47a710661d7cd25e961cc797065f","affectsGlobalScope":true,"impliedFormat":1},{"version":"6d3261badeb7843d157ef3e6f5d1427d0eeb0af0cf9df84a62cfd29fd47ac86e","affectsGlobalScope":true,"impliedFormat":1},{"version":"195daca651dde22f2167ac0d0a05e215308119a3100f5e6268e8317d05a92526","affectsGlobalScope":true,"impliedFormat":1},{"version":"8b11e4285cd2bb164a4dc09248bdec69e9842517db4ca47c1ba913011e44ff2f","affectsGlobalScope":true,"impliedFormat":1},{"version":"0508571a52475e245b02bc50fa1394065a0a3d05277fbf5120c3784b85651799","affectsGlobalScope":true,"impliedFormat":1},{"version":"8f9af488f510c3015af3cc8c267a9e9d96c4dd38a1fdff0e11dc5a544711415b","affectsGlobalScope":true,"impliedFormat":1},{"version":"fc611fea8d30ea72c6bbfb599c9b4d393ce22e2f5bfef2172534781e7d138104","affectsGlobalScope":true,"impliedFormat":1},{"version":"0bd714129fca875f7d4c477a1a392200b0bcd13fb2e80928cd334b63830ea047","affectsGlobalScope":true,"impliedFormat":1},{"version":"e2c9037ae6cd2c52d80ceef0b3c5ffdb488627d71529cf4f63776daf11161c9a","affectsGlobalScope":true,"impliedFormat":1},{"version":"135d5cf4d345f59f1a9caadfafcd858d3d9cc68290db616cc85797224448cccc","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc238c3f81c2984751932b6aab223cd5b830e0ac6cad76389e5e9d2ffc03287d","affectsGlobalScope":true,"impliedFormat":1},{"version":"4a07f9b76d361f572620927e5735b77d6d2101c23cdd94383eb5b706e7b36357","affectsGlobalScope":true,"impliedFormat":1},{"version":"7c4e8dc6ab834cc6baa0227e030606d29e3e8449a9f67cdf5605ea5493c4db29","affectsGlobalScope":true,"impliedFormat":1},{"version":"de7ba0fd02e06cd9a5bd4ab441ed0e122735786e67dde1e849cced1cd8b46b78","affectsGlobalScope":true,"impliedFormat":1},{"version":"6148e4e88d720a06855071c3db02069434142a8332cf9c182cda551adedf3156","affectsGlobalScope":true,"impliedFormat":1},{"version":"d63dba625b108316a40c95a4425f8d4294e0deeccfd6c7e59d819efa19e23409","affectsGlobalScope":true,"impliedFormat":1},{"version":"0568d6befee03dd435bed4fc25c4e46865b24bdcb8c563fdc21f580a2c301904","affectsGlobalScope":true,"impliedFormat":1},{"version":"30d62269b05b584741f19a5369852d5d34895aa2ac4fd948956f886d15f9cc0d","affectsGlobalScope":true,"impliedFormat":1},{"version":"f128dae7c44d8f35ee42e0a437000a57c9f06cc04f8b4fb42eebf44954d53dc8","affectsGlobalScope":true,"impliedFormat":1},{"version":"ffbe6d7b295306b2ba88030f65b74c107d8d99bdcf596ea99c62a02f606108b0","affectsGlobalScope":true,"impliedFormat":1},{"version":"996fb27b15277369c68a4ba46ed138b4e9e839a02fb4ec756f7997629242fd9f","affectsGlobalScope":true,"impliedFormat":1},{"version":"79b712591b270d4778c89706ca2cfc56ddb8c3f895840e477388f1710dc5eda9","affectsGlobalScope":true,"impliedFormat":1},{"version":"20884846cef428b992b9bd032e70a4ef88e349263f63aeddf04dda837a7dba26","affectsGlobalScope":true,"impliedFormat":1},{"version":"5fcab789c73a97cd43828ee3cc94a61264cf24d4c44472ce64ced0e0f148bdb2","affectsGlobalScope":true,"impliedFormat":1},{"version":"db59a81f070c1880ad645b2c0275022baa6a0c4f0acdc58d29d349c6efcf0903","affectsGlobalScope":true,"impliedFormat":1},{"version":"673294292640f5722b700e7d814e17aaf7d93f83a48a2c9b38f33cbc940ad8b0","affectsGlobalScope":true,"impliedFormat":1},{"version":"d786b48f934cbca483b3c6d0a798cb43bbb4ada283e76fb22c28e53ae05b9e69","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ecb8e347cb6b2a8927c09b86263663289418df375f5e68e11a0ae683776978f","affectsGlobalScope":true,"impliedFormat":1},{"version":"142efd4ce210576f777dc34df121777be89eda476942d6d6663b03dcb53be3ff","affectsGlobalScope":true,"impliedFormat":1},{"version":"379bc41580c2d774f82e828c70308f24a005b490c25ba34d679d84bcf05c3d9d","affectsGlobalScope":true,"impliedFormat":1},{"version":"ed484fb2aa8a1a23d0277056ec3336e0a0b52f9b8d6a961f338a642faf43235d","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ffedae1d1c2d53fdbca1c96d3c7dda544281f7d262f99b6880634f8fd8d9820","affectsGlobalScope":true,"impliedFormat":1},{"version":"83a730b125d477dd264df8ba479afab27a3dae7152b005c214ab94dc7ee44fd3","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ce14b81c5cc821994aa8ec1d42b220dd41b27fcc06373bce3958af7421b77d4","affectsGlobalScope":true,"impliedFormat":1},{"version":"b3a048b3e9302ef9a34ef4ebb9aecfb28b66abb3bce577206a79fee559c230da","affectsGlobalScope":true,"impliedFormat":1},{"version":"7e29f41b158de217f94cb9676bf9cbd0cd9b5a46e1985141ed36e075c52bf6ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac51dd7d31333793807a6abaa5ae168512b6131bd41d9c5b98477fc3b7800f9f","impliedFormat":1},{"version":"2577e7e800bdece2956ca027cb5c17aa359abd968eb9355760110c853f4fb9da","impliedFormat":1},{"version":"b838d4c72740eb0afd284bf7575b74c624b105eff2e8c7b4aeead57e7ac320ff","impliedFormat":1},{"version":"bc03c3c352f689e38c0ddd50c39b1e65d59273991bfc8858a9e3c0ebb79c023b","impliedFormat":1},{"version":"890c987c12bc431c8d51f2c663b7d689be996e9ada6a3de2b2e95af43b69e25e","signature":"61814a0254524d3e14d405795a649b8b838386ff0f82caf50a0b7d4c72008c3d"},{"version":"be1cc4d94ea60cbe567bc29ed479d42587bf1e6cba490f123d329976b0fe4ee5","impliedFormat":1},{"version":"dbafe5664a764167d089a3ecce720259c6f4837696f2cf5e0adb199de6a9150c","signature":"2b2db01796f774852b44cacad054f31b9e63a3c4ed787d12c1dd75c75e602bef"},{"version":"43c268c58c28f2f6f80bc2a42104a2e8ce3891d1c8a2b8767e2a52606e61952b","signature":"d86aae3a61fb2a3734379428044eefd6b048996f3a1a1cd7e57bb94d3d36b02b"},{"version":"31946b8cd45a08d2f4d3be4e8b31b5896e5f0fb24840cc53e6d9a45d71e24506","signature":"50c12b83406070a98041a222f49db12395234ac00db0f16d18d01d8fccfe9d9d"},{"version":"ffed9a09c6bb6fcb84d667349a799875a9f03522afab97db8daa260f704329b2","signature":"2100acdf9780bbfaa7c7c41109ea60464c7e17af1fb6ab3aa89e860ad1c3f350"},{"version":"f6eaf207ae99ba6778460fa1d857e80c870be1533e9b1668060f0f53e6aa6b41","signature":"b9f112f8e9a593f362dd5f434f8f997385dd62f15e2d2fb6d316e5d0d9942a51"},{"version":"648f0495d4f45f8a0a29b5734255abbfea0d653e9b008697fbfb2e3bb0438396","signature":"86c42189ea1d9f57a18c3bf07dc69d1401acc1ebfd560c83fc7272826c0d28e2"},{"version":"9f688902791590bb64d8f9e04b6df74a93a3fb9ca965bc5e5ac9f631d3cc1bb8","signature":"26661a45e46e1ddd3976b866514eb2562bda9008d847288b92b654c45d54e69a"},{"version":"3fcfd875b042c0855e76061aae81b0d8333c1990c1e4ca4d1f3141652b988b06","signature":"b43c263b28c6f20a6d7066e22f6906fe51605b6a4b7709a3c47d7cf6c0ccf93e"},{"version":"cdbe6959fbc6a3584fe94eacf04c4f124906fb9e4a4fd2d6a1ae6996ea629034","signature":"58d2bb278ba2b594a3b664571b357e10388c6a1eef2c27e2946d3ee447fb4e16"},{"version":"26a4fb1b862a479d7a5d90aa1745f070d44bc351e79c6e4f8a6481b206a1655b","signature":"ad70244d75add3a5819000694ceb8f6ffca2fff2bd49acbd6786e1457c9d1d82","affectsGlobalScope":true},{"version":"c75f2d502a494c79d167c744446b8e360d89ced10fa3b052867ef2604ac635c7","signature":"9382f138465c4775c54940f2a3d4334a083a6fc9a622a7c926c5f8233228cbae"},{"version":"336f74bb2ca217a8b08f3c146c41295de7597a86d52ca333fac5634561261846","signature":"c8525f0be940a19f3d03f06b6e43d4bea21ba910db62fb5024ecc671bcc23932"},{"version":"2df764abdd1a4c7d40802723069185fc333ff51a494bd84472ac48bfaac09f34","signature":"b47403a7e6e239e43bf3b91e224e38b4c8345da2dc9967a2a1682996e1d48829"},{"version":"bdf04d4dd9ed94c85da1be565643ef5fad4212b7a545da8f4792deb4cf426665","signature":"c6384012cac726d5b05237d2bd2c9c9da0893feaf54ab1dd0042fe141b9e5bd8"},{"version":"1ac886967a62c940d61ab89f3411f64893d779d69e1435f15215547ba50fa03b","signature":"994bfb8326dca5c985462ba74b5c64146aef0e3ea7bbbbf265ad426d884fbc9e"},{"version":"b5f79dd85b6024ba711a6434232d410799d63ec3ac1b259290ccb2cf9907bd45","signature":"00dd4ce0458ebf64e2e0617d4bc04f3a9a569bc388f3a20c1c4416d465e99245"},{"version":"9cd7480bca9eca570026b270717fd76b72e508310af3b9bbe906c1f69e5fe59b","signature":"e5f0e0e21621bb3e87958857cc9695abf011fb257bd249abd42ae97b3b61e1d0"},{"version":"9c613530527e7eddd1ef9fade0ee8fe5a6f9ac40bb7b454ff1e03530cafde053","signature":"5cf43ceac60fba7927af9ce9b27fb6031854fc923263b78c353fb986857218b9"},{"version":"64837fd5187d6a3c2abc6a265251be66c4a9961c369e5cf647ac87511d328d90","signature":"0caa217adbbdb001facd9aeb363fa2a446eabbeb4e5af2c1f2c3d1ef4bbffc6e"},{"version":"40896dfcdeafc76e4d85bfd4acca390f542032e613c6f5b7c5c8e1e99bb3b63d","signature":"63bfd9f3fbbcb2dc649dd7303b9fdcf5680c25e217228a5abe005674bfc8bed5"},{"version":"f79040aab08b6460794739412f2f175f902517183e6a5196e4aec528d4634347","signature":"bbaa85a96900ee24d770ce38f7807d2d3cc2ca203e223cd4080447680910992e"},{"version":"69a362101efd9d9fe1a4d2d246ae3ac1d76ffc26e222817d13146f7a07bfe5cd","signature":"ea9768ee8ae2400a4352956f0937ff7ce12640c4de3c69d6e71e8a2f954ad58a"},{"version":"c1765ec7c06443b1c353c2bb94b99b3b5a423acd7ee15bb434f7697d955111a8","signature":"7302ddfa6ab62295a7ad2cf47cc8b933be587d161d5b818aba3e85d7af69e59e"},{"version":"d6b31ff724e8e01666f5ea0bbfd3e36dc12a0d6183971489d8d3d3bacbc64ff7","signature":"d9ce1372a43589027af010d0293b17099bf27089071c6d12ce30eb94b70191af"},{"version":"3a457804833548916b70ab4349e05b3aba51f5a83e611f08c5706dd276e76123","signature":"dbb3eab27a108491f80873c1031ddc0b1a16c47f4c32e2ec2e70b83e9cee161b"},{"version":"e70ff59723d81c0daea510f74742aaa463d396a1601eb8962d452ab7a9f40d83","signature":"8aec088c8b901c6fe9e7fe22785892138849af77a640d12b7015ec52a95aa27c"},{"version":"9946a94aec19a5db4015020e8865cc84c4604af33af2614adc52115e86a32aab","signature":"c994a8ab92ed0cdf9c271cc6954ba6cac3d58ef1b2bf53a41a4b33439b394f94"}],"root":[95,[97,123]],"options":{"allowJs":true,"allowSyntheticDefaultImports":true,"alwaysStrict":true,"declaration":true,"esModuleInterop":true,"experimentalDecorators":true,"jsx":4,"module":99,"noImplicitAny":true,"outDir":"./","preserveConstEnums":true,"removeComments":true,"rootDir":"../../src/client","skipLibCheck":true,"sourceMap":false,"strict":true,"strictBindCallApply":true,"strictFunctionTypes":true,"strictNullChecks":true,"strictPropertyInitialization":true,"suppressImplicitAnyIndexErrors":false,"target":99,"tsBuildInfoFile":"./.tsbuildinfo"},"referencedMap":[[94,1],[96,1],[92,2],[93,1],[117,3],[121,4],[119,3],[120,3],[122,5],[105,6],[95,3],[100,3],[102,7],[123,8],[114,9],[115,10],[99,11],[106,12],[97,13],[112,14],[116,15],[107,16],[109,17],[110,16],[103,18],[101,13],[113,19],[108,20],[111,3],[104,21],[118,22],[98,3]],"version":"6.0.3"}
@@ -0,0 +1,6 @@
1
+ import { type ReactNode } from 'react';
2
+ import type { RouteDef } from '../types.js';
3
+ export declare function DevToolbar({ routes, slots, }: {
4
+ routes: RouteDef[];
5
+ slots: Record<string, RouteDef[]>;
6
+ }): ReactNode;
@@ -0,0 +1,442 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { useEffect, useState, useSyncExternalStore } from 'react';
3
+ import { getErrorLog, subscribeErrors } from './error-overlay.js';
4
+ import { isNavigationPending, navigate, setTransitions, setViewTransitions, subscribeLocation, subscribePending, } from '../navigation/navigation.js';
5
+ import { clearLoaderData, inspectLoaderCache, loaderKey, revalidate, subscribeLoaderCache, } from '../routing/loader.js';
6
+ import { matchRoute } from '../routing/match.js';
7
+ import { getPages } from '../search/search.js';
8
+ const DOCS_BASE = 'https://toil.org/docs';
9
+ function ToilLogo({ size = 16 }) {
10
+ return (_jsxs("svg", { width: size, height: size, viewBox: "0 0 500 500", "aria-hidden": "true", style: { display: 'block', flex: '0 0 auto' }, children: [_jsxs("defs", { children: [_jsxs("linearGradient", { id: "toilDtA", x1: "43.27", y1: "43.27", x2: "467.12", y2: "467.12", gradientUnits: "userSpaceOnUse", children: [_jsx("stop", { offset: "0", stopColor: "#6990ff" }), _jsx("stop", { offset: ".28", stopColor: "#521be0" }), _jsx("stop", { offset: ".66", stopColor: "#6900f4" }), _jsx("stop", { offset: "1", stopColor: "#7f00f6" })] }), _jsxs("linearGradient", { id: "toilDtB", x1: "149.99", y1: "355.49", x2: "149.99", y2: "0", gradientUnits: "userSpaceOnUse", children: [_jsx("stop", { offset: ".15", stopColor: "#6990ff", stopOpacity: ".6" }), _jsx("stop", { offset: ".55", stopColor: "#531ae1" })] })] }), _jsx("rect", { width: "500", height: "500", rx: "130", ry: "130", fill: "url(#toilDtA)" }), _jsx("path", { d: "M299.98,0L0,355.49v-225.49C0,58.2,58.2,0,130,0h169.98Z", fill: "url(#toilDtB)" }), _jsx("path", { d: "M106.17,111.11h285.24c9.9,0,16.7,9.96,13.09,19.18l-17.98,45.96c-2.11,5.39-7.31,8.94-13.09,8.94h-74.65c-7.76,0-14.06,6.29-14.06,14.06v214.94c0,7.76-6.29,14.06-14.06,14.06h-45.96c-7.76,0-14.06-6.29-14.06-14.06v-217.25c0-7.76-6.29-14.06-14.06-14.06h-73.66c-5.82,0-11.04-3.59-13.12-9.02l-16.76-43.64c-3.54-9.21,3.26-19.1,13.12-19.1Z", fill: "#fff" })] }));
11
+ }
12
+ function ClaudeLogo({ size = 16 }) {
13
+ return (_jsx("svg", { width: size, height: size, viewBox: "0 0 92 65", "aria-hidden": "true", style: { display: 'block', flex: '0 0 auto' }, children: _jsx("path", { fill: "#d97757", d: "M66.5 0H52.4L78 65h14.1L66.5 0zM25.6 0L0 65h14.4l5.2-13.6h26.8L51.6 65H66L40.4 0H25.6zm-1.2 39.3l8.8-22.8 8.8 22.8H24.4z" }) }));
14
+ }
15
+ function ChatGptLogo({ size = 16 }) {
16
+ return (_jsx("svg", { width: size, height: size, viewBox: "0 0 24 24", "aria-hidden": "true", style: { display: 'block', flex: '0 0 auto' }, children: _jsx("path", { fill: "#10a37f", d: "M22.2819 9.8211a5.9847 5.9847 0 0 0-.5157-4.9108 6.0462 6.0462 0 0 0-6.5098-2.9A6.0651 6.0651 0 0 0 4.9807 4.1818a5.9847 5.9847 0 0 0-3.9977 2.9 6.0462 6.0462 0 0 0 .7427 7.0966 5.98 5.98 0 0 0 .511 4.9107 6.051 6.051 0 0 0 6.5146 2.9001A5.9847 5.9847 0 0 0 13.2599 24a6.0557 6.0557 0 0 0 5.7718-4.2058 5.9894 5.9894 0 0 0 3.9977-2.9001 6.0557 6.0557 0 0 0-.7475-7.0729zm-9.022 12.6081a4.4755 4.4755 0 0 1-2.8764-1.0408l.1419-.0804 4.7783-2.7582a.7948.7948 0 0 0 .3927-.6813v-6.7369l2.02 1.1686a.071.071 0 0 1 .038.052v5.5826a4.504 4.504 0 0 1-4.4945 4.4944zm-9.6607-4.1254a4.4708 4.4708 0 0 1-.5346-3.0137l.142.0852 4.783 2.7582a.7712.7712 0 0 0 .7806 0l5.8428-3.3685v2.3324a.0804.0804 0 0 1-.0332.0615L9.74 19.9502a4.4992 4.4992 0 0 1-6.1408-1.6464zM2.3408 7.8956a4.485 4.485 0 0 1 2.3655-1.9728V11.6a.7664.7664 0 0 0 .3879.6765l5.8144 3.3543-2.0201 1.1685a.0757.0757 0 0 1-.071 0l-4.8303-2.7865A4.504 4.504 0 0 1 2.3408 7.872zm16.5963 3.8558L13.1038 8.364 15.1192 7.2a.0757.0757 0 0 1 .071 0l4.8303 2.7913a4.4944 4.4944 0 0 1-.6765 8.1042v-5.6772a.79.79 0 0 0-.407-.667zm2.0107-3.0231l-.142-.0852-4.7735-2.7818a.7759.7759 0 0 0-.7854 0L9.409 9.2297V6.8974a.0662.0662 0 0 1 .0284-.0615l4.8303-2.7866a4.4992 4.4992 0 0 1 6.6802 4.66zM8.3065 12.863l-2.02-1.1638a.0804.0804 0 0 1-.038-.0567V6.0742a4.4992 4.4992 0 0 1 7.3757-3.4537l-.142.0805L8.704 5.459a.7948.7948 0 0 0-.3927.6813zm1.0976-2.3654l2.602-1.4998 2.6069 1.4998v2.9994l-2.5974 1.4997-2.6067-1.4997z" }) }));
17
+ }
18
+ const PREFS_KEY = 'toil.devtools';
19
+ const defaultPrefs = { open: false, tab: 'route', side: 'left' };
20
+ function loadPrefs() {
21
+ try {
22
+ const raw = localStorage.getItem(PREFS_KEY);
23
+ return raw ? { ...defaultPrefs, ...JSON.parse(raw) } : defaultPrefs;
24
+ }
25
+ catch {
26
+ return defaultPrefs;
27
+ }
28
+ }
29
+ let prefs = typeof localStorage !== 'undefined' ? loadPrefs() : defaultPrefs;
30
+ const prefListeners = new Set();
31
+ function setPrefs(next) {
32
+ prefs = { ...prefs, ...next };
33
+ try {
34
+ localStorage.setItem(PREFS_KEY, JSON.stringify(prefs));
35
+ }
36
+ catch {
37
+ }
38
+ for (const l of prefListeners)
39
+ l();
40
+ }
41
+ function usePrefs() {
42
+ return useSyncExternalStore((l) => {
43
+ prefListeners.add(l);
44
+ return () => prefListeners.delete(l);
45
+ }, () => prefs, () => defaultPrefs);
46
+ }
47
+ function useCurrentUrl() {
48
+ return useSyncExternalStore(subscribeLocation, () => window.location.pathname + window.location.search, () => '/');
49
+ }
50
+ function usePending() {
51
+ return useSyncExternalStore(subscribePending, isNavigationPending, () => false);
52
+ }
53
+ function useErrors() {
54
+ return useSyncExternalStore(subscribeErrors, getErrorLog, () => getErrorLog());
55
+ }
56
+ function useLoaderCache() {
57
+ return useSyncExternalStore(subscribeLoaderCache, inspectLoaderCache, inspectLoaderCache);
58
+ }
59
+ function safeJson(value) {
60
+ try {
61
+ return JSON.stringify(value, null, 2) ?? String(value);
62
+ }
63
+ catch {
64
+ return String(value);
65
+ }
66
+ }
67
+ function readHead() {
68
+ const metas = [];
69
+ const links = [];
70
+ if (typeof document === 'undefined')
71
+ return { metas, links };
72
+ document.head.querySelectorAll('meta').forEach((m) => {
73
+ const name = m.getAttribute('name') ?? m.getAttribute('property');
74
+ const content = m.getAttribute('content');
75
+ if (name && content)
76
+ metas.push({ name, content });
77
+ });
78
+ document.head.querySelectorAll('link[rel]').forEach((l) => {
79
+ links.push({ rel: l.getAttribute('rel') ?? '', href: l.getAttribute('href') ?? '' });
80
+ });
81
+ return { metas, links };
82
+ }
83
+ const STYLE_ID = 'toil-devtools-style';
84
+ const CSS = `
85
+ .toil-dt{position:fixed;bottom:12px;z-index:2147483646;font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;color:#e7e9f0}
86
+ .toil-dt.left{left:12px}.toil-dt.right{right:12px}
87
+ .toil-dt-badge{display:flex;align-items:center;gap:7px;background:#15151c;border:1px solid #2c2c38;border-radius:999px;padding:5px 11px 5px 8px;cursor:pointer;box-shadow:0 4px 16px rgba(0,0,0,.35);user-select:none}
88
+ .toil-dt-badge:hover{border-color:#3a3a48}
89
+ .toil-dt-dot{width:8px;height:8px;border-radius:50%;background:#22e3ab;box-shadow:0 0 6px #22e3ab}
90
+ .toil-dt-dot.pending{background:#f7b93e;box-shadow:0 0 6px #f7b93e;animation:toil-dt-pulse 1s infinite}
91
+ .toil-dt-dot.error{background:#ef4444;box-shadow:0 0 6px #ef4444}
92
+ @keyframes toil-dt-pulse{0%,100%{opacity:1}50%{opacity:.4}}
93
+ .toil-dt-logo{font-weight:700;background:linear-gradient(90deg,#2563ff,#7c3aed,#22e3ab);-webkit-background-clip:text;background-clip:text;color:transparent}
94
+ .toil-dt-panel{width:380px;max-width:calc(100vw - 24px);max-height:min(70vh,560px);background:#101016;border:1px solid #2c2c38;border-radius:12px;box-shadow:0 16px 56px rgba(0,0,0,.55);display:flex;flex-direction:column;overflow:hidden}
95
+ .toil-dt-tabs{display:flex;border-bottom:1px solid #23232e;flex:0 0 auto}
96
+ .toil-dt-tab{flex:1;padding:8px 4px;background:none;border:0;color:#8b90a4;font:inherit;cursor:pointer;border-bottom:2px solid transparent}
97
+ .toil-dt-tab.active{color:#e7e9f0;border-bottom-color:#2563ff}
98
+ .toil-dt-tab:hover{color:#c8cee0}
99
+ .toil-dt-body{padding:12px 14px;overflow:auto}
100
+ .toil-dt-head{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid #23232e;flex:0 0 auto}
101
+ .toil-dt-x{background:none;border:0;color:#8b90a4;cursor:pointer;font:inherit;font-size:14px}
102
+ .toil-dt-row{display:flex;justify-content:space-between;gap:10px;padding:3px 0;border-bottom:1px solid #1b1b24}
103
+ .toil-dt-k{color:#8b90a4}
104
+ .toil-dt-v{color:#e7e9f0;text-align:right;word-break:break-all}
105
+ .toil-dt-tag{display:inline-block;padding:1px 6px;border-radius:5px;background:#23232e;color:#a8b0c8;margin:1px 3px 1px 0;font-size:11px}
106
+ .toil-dt-rt{display:flex;align-items:center;gap:6px;padding:3px 0}
107
+ .toil-dt-rt a{color:#7aa2ff;text-decoration:none;cursor:pointer}.toil-dt-rt a:hover{text-decoration:underline}
108
+ .toil-dt-rt .dyn{color:#c8cee0;cursor:default}
109
+ .toil-dt-edit{margin-left:auto;background:none;border:0;color:#5b6178;cursor:pointer;font:inherit}.toil-dt-edit:hover{color:#7aa2ff}
110
+ .toil-dt-sec{margin:0 0 6px;color:#6b7088;text-transform:uppercase;letter-spacing:.05em;font-size:10px}
111
+ .toil-dt-sw{display:flex;align-items:center;justify-content:space-between;padding:5px 0}
112
+ .toil-dt-btn{font:inherit;color:#e7e9f0;background:#23232e;border:1px solid #33333f;border-radius:6px;padding:3px 9px;cursor:pointer}
113
+ .toil-dt-btn:hover{border-color:#454556}
114
+ .toil-dt-err{padding:6px 0;border-bottom:1px solid #1b1b24}
115
+ .toil-dt-err .msg{color:#ff8a8a;word-break:break-word}
116
+ .toil-dt-empty{color:#6b7088;padding:8px 0}
117
+ .toil-dt-pre{background:#0a0a0e;border:1px solid #1b1b24;border-radius:6px;padding:8px;max-height:200px;overflow:auto;white-space:pre-wrap;word-break:break-word;color:#c8cee0;margin:6px 0 0;font-size:11px}
118
+ .toil-dt-chk{display:flex;gap:8px;align-items:center;padding:3px 0}
119
+ .toil-dt-ok{color:#22e3ab}.toil-dt-bad{color:#ef4444}
120
+ .toil-dt-og{display:flex;gap:8px;border:1px solid #23232e;border-radius:8px;overflow:hidden;background:#0d0d13}
121
+ .toil-dt-og-img{width:72px;height:72px;object-fit:cover;flex:0 0 auto}
122
+ .toil-dt-og-body{padding:6px 8px;min-width:0}
123
+ .toil-dt-og-title{color:#e7e9f0;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
124
+ .toil-dt-og-desc{color:#8b90a4;font-size:11px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
125
+ .toil-dt-ta{width:100%;box-sizing:border-box;background:#0a0a0e;border:1px solid #23232e;border-radius:6px;color:#e7e9f0;font:inherit;padding:7px 8px;resize:vertical;min-height:54px}
126
+ .toil-dt-ta:focus{outline:none;border-color:#2563ff}
127
+ .toil-dt-ai-btns{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}
128
+ .toil-dt-ai-btn{display:flex;align-items:center;gap:6px;font:inherit;color:#e7e9f0;background:#23232e;border:1px solid #33333f;border-radius:6px;padding:5px 10px;cursor:pointer}
129
+ .toil-dt-ai-btn:hover{border-color:#454556}
130
+ .toil-dt-doc{display:block;color:#7aa2ff;text-decoration:none;padding:3px 0}.toil-dt-doc:hover{text-decoration:underline}
131
+ .toil-dt-pal-wrap{position:fixed;inset:0;z-index:2147483647;display:flex;align-items:flex-start;justify-content:center;background:rgba(0,0,0,.45);padding-top:14vh}
132
+ .toil-dt-pal{width:440px;max-width:calc(100vw - 24px);background:#101016;border:1px solid #2c2c38;border-radius:12px;box-shadow:0 16px 56px rgba(0,0,0,.6);overflow:hidden;font:13px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;color:#e7e9f0}
133
+ .toil-dt-pal input{width:100%;box-sizing:border-box;background:none;border:0;border-bottom:1px solid #23232e;color:#e7e9f0;font:inherit;padding:11px 14px}
134
+ .toil-dt-pal input:focus{outline:none}
135
+ .toil-dt-pal-list{max-height:340px;overflow:auto;padding:4px}
136
+ .toil-dt-pal-item{display:flex;gap:8px;align-items:center;padding:7px 10px;border-radius:6px;cursor:pointer;color:#c8cee0}
137
+ .toil-dt-pal-item.sel{background:#1c1c26;color:#e7e9f0}
138
+ .toil-dt-pal-kind{color:#6b7088;font-size:11px;margin-left:auto}
139
+ `;
140
+ function injectStyles() {
141
+ if (typeof document === 'undefined' || document.getElementById(STYLE_ID))
142
+ return;
143
+ const el = document.createElement('style');
144
+ el.id = STYLE_ID;
145
+ el.textContent = CSS;
146
+ document.head.appendChild(el);
147
+ }
148
+ function isDynamic(pattern) {
149
+ return /[:*]/.test(pattern);
150
+ }
151
+ function openInEditor(file) {
152
+ void fetch(`/__toil/open?file=${encodeURIComponent(file)}`).catch(() => undefined);
153
+ }
154
+ function Row({ k, children }) {
155
+ return (_jsxs("div", { className: "toil-dt-row", children: [_jsx("span", { className: "toil-dt-k", children: k }), _jsx("span", { className: "toil-dt-v", children: children })] }));
156
+ }
157
+ function RouteTab({ routes, slots, info, }) {
158
+ const url = useCurrentUrl();
159
+ const pending = usePending();
160
+ const pathname = url.split('?')[0];
161
+ const search = url.slice(pathname.length);
162
+ let matched = null;
163
+ for (const r of routes) {
164
+ const params = matchRoute(r.pattern, pathname);
165
+ if (params) {
166
+ matched = { route: r, params };
167
+ break;
168
+ }
169
+ }
170
+ const activeSlots = [];
171
+ for (const [name, defs] of Object.entries(slots)) {
172
+ if (defs.some((d) => matchRoute(d.pattern, pathname)))
173
+ activeSlots.push(name);
174
+ }
175
+ const has = (r) => [
176
+ r.loading ? 'loading' : '',
177
+ r.errorComponent ? 'error' : '',
178
+ r.templates?.length ? 'template' : '',
179
+ r.layouts?.length ? `${String(r.layouts.length)} layout` : '',
180
+ ]
181
+ .filter(Boolean)
182
+ .join(', ') || 'none';
183
+ return (_jsxs("div", { className: "toil-dt-body", children: [_jsx(Row, { k: "path", children: pathname || '/' }), _jsx(Row, { k: "match", children: matched ? matched.route.pattern : 'no match (404)' }), search && _jsx(Row, { k: "query", children: search }), matched && Object.keys(matched.params).length > 0 && (_jsx(Row, { k: "params", children: JSON.stringify(matched.params) })), matched && _jsx(Row, { k: "boundaries", children: has(matched.route) }), _jsx(Row, { k: "slots", children: activeSlots.length ? activeSlots.join(', ') : 'none' }), _jsx(Row, { k: "navigating", children: pending ? 'yes' : 'no' }), _jsxs("p", { className: "toil-dt-sec", style: { marginTop: 12 }, children: ["Routes (", routes.length, ")"] }), routes.map((r) => {
184
+ const file = info?.routes[r.pattern];
185
+ return (_jsxs("div", { className: "toil-dt-rt", children: [isDynamic(r.pattern) ? (_jsx("span", { className: "dyn", children: r.pattern })) : (_jsx("a", { onClick: () => {
186
+ navigate(r.pattern);
187
+ }, children: r.pattern })), file && (_jsx("button", { className: "toil-dt-edit", title: `open ${file}`, onClick: () => {
188
+ openInEditor(file);
189
+ }, children: "edit" }))] }, r.pattern));
190
+ })] }));
191
+ }
192
+ function DataTab() {
193
+ const url = useCurrentUrl();
194
+ const entries = useLoaderCache();
195
+ const pathname = url.split('?')[0];
196
+ const key = loaderKey(pathname, url.slice(pathname.length));
197
+ const entry = entries.find((e) => e.key === key);
198
+ return (_jsxs("div", { className: "toil-dt-body", children: [!entry && _jsx("p", { className: "toil-dt-empty", children: "No cached loader data for this route." }), entry && (_jsxs(_Fragment, { children: [_jsx(Row, { k: "status", children: entry.status }), _jsx(Row, { k: "has loader", children: entry.hasLoader ? 'yes' : 'no' }), _jsx(Row, { k: "revalidate", children: entry.revalidate === false ? 'never' : `${String(entry.revalidate)}s` }), _jsx(Row, { k: "loaded", children: entry.loadedAt ? new Date(entry.loadedAt).toLocaleTimeString() : '-' }), entry.hasLoader ? (_jsxs(_Fragment, { children: [_jsxs("div", { style: { margin: '8px 0' }, children: [_jsx("button", { className: "toil-dt-btn", onClick: () => {
199
+ revalidate();
200
+ }, children: "Revalidate" }), ' ', _jsx("button", { className: "toil-dt-btn", onClick: () => {
201
+ clearLoaderData();
202
+ }, children: "Clear cache" })] }), entry.data === undefined ? (_jsx("p", { className: "toil-dt-empty", children: "Loader returned no data." })) : (_jsx("pre", { className: "toil-dt-pre", children: safeJson(entry.data) }))] })) : (_jsx("p", { className: "toil-dt-empty", children: "This route has no loader, so there is no data to inspect." }))] })), _jsxs("p", { className: "toil-dt-sec", style: { marginTop: 12 }, children: ["Cache (", entries.length, ")"] }), entries.map((e) => (_jsx(Row, { k: e.key, children: e.status }, e.key)))] }));
203
+ }
204
+ function Check({ ok, label }) {
205
+ return (_jsxs("div", { className: "toil-dt-chk", children: [_jsx("span", { className: ok ? 'toil-dt-ok' : 'toil-dt-bad', children: ok ? '✓' : '✗' }), _jsx("span", { children: label })] }));
206
+ }
207
+ function HeadTab() {
208
+ useCurrentUrl();
209
+ const title = typeof document !== 'undefined' ? document.title : '';
210
+ const { metas, links } = readHead();
211
+ const meta = (n) => metas.find((m) => m.name === n)?.content;
212
+ const og = {
213
+ title: meta('og:title') ?? title,
214
+ description: meta('og:description') ?? meta('description'),
215
+ image: meta('og:image'),
216
+ };
217
+ const pages = getPages();
218
+ const described = pages.filter((p) => p.metadata.description !== undefined).length;
219
+ return (_jsxs("div", { className: "toil-dt-body", children: [_jsx(Row, { k: "title", children: title || '(none)' }), _jsx("p", { className: "toil-dt-sec", style: { marginTop: 10 }, children: "OpenGraph preview" }), _jsxs("div", { className: "toil-dt-og", children: [og.image && (_jsx("img", { src: og.image, alt: "", className: "toil-dt-og-img" })), _jsxs("div", { className: "toil-dt-og-body", children: [_jsx("div", { className: "toil-dt-og-title", children: og.title || '(no title)' }), _jsx("div", { className: "toil-dt-og-desc", children: og.description ?? '(no description)' })] })] }), _jsx("p", { className: "toil-dt-sec", style: { marginTop: 10 }, children: "SEO checklist" }), _jsx(Check, { ok: Boolean(title), label: "Has a title" }), _jsx(Check, { ok: meta('description') !== undefined, label: "Has a meta description" }), _jsx(Check, { ok: og.image !== undefined, label: "Has an og:image" }), _jsx(Check, { ok: links.some((l) => l.rel === 'canonical'), label: "Has a canonical link" }), _jsx(Check, { ok: pages.length === 0 || described === pages.length, label: `Pages with a description: ${String(described)}/${String(pages.length)}` }), _jsxs("p", { className: "toil-dt-sec", style: { marginTop: 10 }, children: ["Meta (", metas.length, ")"] }), metas.map((m, i) => (_jsx(Row, { k: m.name, children: m.content }, `${m.name}:${String(i)}`)))] }));
220
+ }
221
+ function BuildTab({ info }) {
222
+ return (_jsxs("div", { className: "toil-dt-body", children: [!info && _jsx("p", { className: "toil-dt-empty", children: "Loading dev info..." }), info && (_jsxs(_Fragment, { children: [_jsx(Row, { k: "toiljs", children: info.toiljs }), _jsx(Row, { k: "vite", children: info.vite }), _jsx(Row, { k: "react", children: info.react }), _jsx(Row, { k: "dev server", children: `localhost:${String(info.port)}` }), _jsx("p", { className: "toil-dt-sec", style: { marginTop: 12 }, children: "Config" }), Object.entries(info.flags).map(([k, v]) => (_jsx(Row, { k: k, children: v ? 'on' : 'off' }, k))), _jsx(Row, { k: "ai", children: info.ai ? 'configured' : 'hand-off only' })] }))] }));
223
+ }
224
+ function ErrorsTab() {
225
+ const errors = useErrors();
226
+ if (errors.length === 0)
227
+ return _jsx("p", { className: "toil-dt-empty toil-dt-body", children: "No errors captured." });
228
+ return (_jsx("div", { className: "toil-dt-body", children: [...errors].reverse().map((e, i) => (_jsxs("div", { className: "toil-dt-err", children: [_jsxs("div", { className: "msg", children: [e.error.name, ": ", e.error.message] }), _jsxs("div", { className: "toil-dt-k", children: [e.source, ", ", new Date(e.time).toLocaleTimeString()] })] }, `${String(e.time)}:${String(i)}`))) }));
229
+ }
230
+ function buildAiContext() {
231
+ if (typeof window === 'undefined')
232
+ return '';
233
+ const where = window.location.pathname + window.location.search;
234
+ const title = document.title;
235
+ const desc = readHead().metas.find((m) => m.name === 'description')?.content;
236
+ const lines = [
237
+ 'I am working on a toiljs app (React with file-based routing, backend in toilscript/WASM).',
238
+ `Current page: ${where}`,
239
+ ];
240
+ if (title)
241
+ lines.push(`Page title: ${title}`);
242
+ if (desc)
243
+ lines.push(`Meta description: ${desc}`);
244
+ return lines.join('\n');
245
+ }
246
+ const DOC_LINKS = [
247
+ { label: 'Routing and file conventions', slug: 'routing' },
248
+ { label: 'Loaders and data', slug: 'loaders' },
249
+ { label: 'Metadata and SEO', slug: 'metadata' },
250
+ { label: 'Parallel routes and slots', slug: 'slots' },
251
+ ];
252
+ function AiTab({ info }) {
253
+ useCurrentUrl();
254
+ const [question, setQuestion] = useState('');
255
+ const [answer, setAnswer] = useState(null);
256
+ const [busy, setBusy] = useState(false);
257
+ const configured = info?.ai === true;
258
+ const prompt = () => {
259
+ const q = question.trim() || 'Explain this page and suggest improvements.';
260
+ return `${buildAiContext()}\n\nQuestion: ${q}`;
261
+ };
262
+ const handOff = (base) => {
263
+ window.open(`${base}${encodeURIComponent(prompt())}`, '_blank', 'noopener');
264
+ };
265
+ const copy = () => {
266
+ void navigator.clipboard.writeText(prompt()).catch(() => undefined);
267
+ };
268
+ const askInline = () => {
269
+ setBusy(true);
270
+ setAnswer(null);
271
+ void fetch('/__toil/ai', {
272
+ method: 'POST',
273
+ headers: { 'content-type': 'application/json' },
274
+ body: JSON.stringify({ prompt: prompt() }),
275
+ })
276
+ .then((r) => r.ok
277
+ ? r.json()
278
+ : Promise.reject(new Error(`HTTP ${String(r.status)}`)))
279
+ .then((d) => {
280
+ setAnswer(d.text ?? '(empty response)');
281
+ })
282
+ .catch((e) => {
283
+ setAnswer(`Error: ${e instanceof Error ? e.message : String(e)}`);
284
+ })
285
+ .finally(() => {
286
+ setBusy(false);
287
+ });
288
+ };
289
+ return (_jsxs("div", { className: "toil-dt-body", children: [_jsx("p", { className: "toil-dt-sec", children: "Ask about this page" }), _jsx("textarea", { className: "toil-dt-ta", placeholder: "Ask about the current route, or leave blank for a summary...", value: question, onChange: (e) => {
290
+ setQuestion(e.target.value);
291
+ } }), _jsxs("div", { className: "toil-dt-ai-btns", children: [_jsxs("button", { className: "toil-dt-ai-btn", onClick: () => {
292
+ handOff('https://claude.ai/new?q=');
293
+ }, children: [_jsx(ClaudeLogo, { size: 14 }), " Claude"] }), _jsxs("button", { className: "toil-dt-ai-btn", onClick: () => {
294
+ handOff('https://chatgpt.com/?q=');
295
+ }, children: [_jsx(ChatGptLogo, { size: 14 }), " ChatGPT"] }), _jsx("button", { className: "toil-dt-ai-btn", onClick: copy, children: "Copy" }), configured && (_jsx("button", { className: "toil-dt-ai-btn", disabled: busy, onClick: askInline, children: busy ? 'Asking...' : 'Ask inline' }))] }), !configured && (_jsxs("p", { className: "toil-dt-k", children: ["Inline answers are off. Set ", _jsx("span", { className: "toil-dt-tag", children: "devtools.ai" }), " in your config to proxy a provider; the API key stays server-side."] })), answer !== null && _jsx("pre", { className: "toil-dt-pre", children: answer }), _jsx("p", { className: "toil-dt-sec", style: { marginTop: 12 }, children: "Quick docs" }), DOC_LINKS.map((d) => (_jsx("a", { className: "toil-dt-doc", href: `${DOCS_BASE}/${d.slug}`, target: "_blank", rel: "noreferrer", children: d.label }, d.slug)))] }));
296
+ }
297
+ function Palette({ routes, onClose }) {
298
+ const [q, setQ] = useState('');
299
+ const [sel, setSel] = useState(0);
300
+ const items = [];
301
+ for (const r of routes) {
302
+ if (!isDynamic(r.pattern)) {
303
+ items.push({
304
+ label: r.pattern,
305
+ kind: 'route',
306
+ run: () => {
307
+ navigate(r.pattern);
308
+ onClose();
309
+ },
310
+ });
311
+ }
312
+ }
313
+ items.push({
314
+ label: 'Revalidate current route',
315
+ kind: 'action',
316
+ run: () => {
317
+ revalidate();
318
+ onClose();
319
+ },
320
+ }, {
321
+ label: 'Clear loader cache',
322
+ kind: 'action',
323
+ run: () => {
324
+ clearLoaderData();
325
+ onClose();
326
+ },
327
+ }, {
328
+ label: 'Ask AI about this page',
329
+ kind: 'action',
330
+ run: () => {
331
+ setPrefs({ open: true, tab: 'ai' });
332
+ onClose();
333
+ },
334
+ }, {
335
+ label: 'Open preferences',
336
+ kind: 'action',
337
+ run: () => {
338
+ setPrefs({ open: true, tab: 'prefs' });
339
+ onClose();
340
+ },
341
+ });
342
+ const needle = q.toLowerCase();
343
+ const filtered = items.filter((it) => it.label.toLowerCase().includes(needle));
344
+ const clamped = Math.min(sel, Math.max(0, filtered.length - 1));
345
+ return (_jsx("div", { className: "toil-dt-pal-wrap", onClick: onClose, children: _jsxs("div", { className: "toil-dt-pal", onClick: (e) => {
346
+ e.stopPropagation();
347
+ }, children: [_jsx("input", { autoFocus: true, placeholder: "Go to a route or run an action...", value: q, onChange: (e) => {
348
+ setQ(e.target.value);
349
+ setSel(0);
350
+ }, onKeyDown: (e) => {
351
+ if (e.key === 'ArrowDown') {
352
+ e.preventDefault();
353
+ setSel((s) => Math.min(s + 1, filtered.length - 1));
354
+ }
355
+ else if (e.key === 'ArrowUp') {
356
+ e.preventDefault();
357
+ setSel((s) => Math.max(s - 1, 0));
358
+ }
359
+ else if (e.key === 'Enter') {
360
+ e.preventDefault();
361
+ filtered[clamped]?.run();
362
+ }
363
+ else if (e.key === 'Escape') {
364
+ onClose();
365
+ }
366
+ } }), _jsxs("div", { className: "toil-dt-pal-list", children: [filtered.length === 0 && _jsx("div", { className: "toil-dt-pal-item", children: "No matches" }), filtered.map((it, i) => (_jsxs("div", { className: `toil-dt-pal-item ${i === clamped ? 'sel' : ''}`, onMouseEnter: () => {
367
+ setSel(i);
368
+ }, onClick: it.run, children: [_jsx("span", { children: it.label }), _jsx("span", { className: "toil-dt-pal-kind", children: it.kind })] }, `${it.kind}:${it.label}`)))] })] }) }));
369
+ }
370
+ function PrefsTab() {
371
+ const p = usePrefs();
372
+ const [flags, setFlags] = useState({ viewTransitions: false, transitions: false });
373
+ const toggle = (key) => {
374
+ const next = !flags[key];
375
+ setFlags((f) => ({ ...f, [key]: next }));
376
+ if (key === 'viewTransitions')
377
+ setViewTransitions(next);
378
+ else
379
+ setTransitions(next);
380
+ };
381
+ return (_jsxs("div", { className: "toil-dt-body", children: [_jsxs("div", { className: "toil-dt-sw", children: [_jsx("span", { children: "View transitions" }), _jsx("button", { className: "toil-dt-btn", onClick: () => {
382
+ toggle('viewTransitions');
383
+ }, children: flags.viewTransitions ? 'on' : 'off' })] }), _jsxs("div", { className: "toil-dt-sw", children: [_jsx("span", { children: "Loader transition" }), _jsx("button", { className: "toil-dt-btn", onClick: () => {
384
+ toggle('transitions');
385
+ }, children: flags.transitions ? 'on' : 'off' })] }), _jsxs("div", { className: "toil-dt-sw", children: [_jsx("span", { children: "Toolbar side" }), _jsx("button", { className: "toil-dt-btn", onClick: () => {
386
+ setPrefs({ side: p.side === 'left' ? 'right' : 'left' });
387
+ }, children: p.side })] })] }));
388
+ }
389
+ const TABS = [
390
+ { id: 'route', label: 'Route' },
391
+ { id: 'data', label: 'Data' },
392
+ { id: 'head', label: 'Head' },
393
+ { id: 'build', label: 'Build' },
394
+ { id: 'errors', label: 'Errors' },
395
+ { id: 'ai', label: 'AI' },
396
+ { id: 'prefs', label: 'Prefs' },
397
+ ];
398
+ export function DevToolbar({ routes, slots, }) {
399
+ const p = usePrefs();
400
+ const pending = usePending();
401
+ const errors = useErrors();
402
+ const [info, setInfo] = useState(null);
403
+ const [palette, setPalette] = useState(false);
404
+ useEffect(() => {
405
+ injectStyles();
406
+ void fetch('/__toil/devinfo')
407
+ .then((r) => (r.ok ? r.json() : null))
408
+ .then((data) => {
409
+ if (data)
410
+ setInfo(data);
411
+ })
412
+ .catch(() => undefined);
413
+ }, []);
414
+ useEffect(() => {
415
+ const onKey = (e) => {
416
+ if ((e.metaKey || e.ctrlKey) && e.key.toLowerCase() === 'k') {
417
+ e.preventDefault();
418
+ setPalette((v) => !v);
419
+ }
420
+ };
421
+ window.addEventListener('keydown', onKey);
422
+ return () => {
423
+ window.removeEventListener('keydown', onKey);
424
+ };
425
+ }, []);
426
+ if (info && !info.enabled)
427
+ return null;
428
+ const dotClass = errors.length > 0 ? 'error' : pending ? 'pending' : '';
429
+ const pal = palette ? (_jsx(Palette, { routes: routes, onClose: () => {
430
+ setPalette(false);
431
+ } })) : null;
432
+ if (!p.open) {
433
+ return (_jsxs(_Fragment, { children: [_jsx("div", { className: `toil-dt ${p.side}`, children: _jsxs("div", { className: "toil-dt-badge", onClick: () => {
434
+ setPrefs({ open: true });
435
+ }, title: "toiljs devtools (cmd+K)", children: [_jsx(ToilLogo, { size: 16 }), _jsx("span", { className: `toil-dt-dot ${dotClass}` })] }) }), pal] }));
436
+ }
437
+ return (_jsxs(_Fragment, { children: [_jsx("div", { className: `toil-dt ${p.side}`, children: _jsxs("div", { className: "toil-dt-panel", children: [_jsxs("div", { className: "toil-dt-head", children: [_jsxs("span", { style: { display: 'flex', alignItems: 'center', gap: 6 }, children: [_jsx(ToilLogo, { size: 14 }), _jsx("span", { className: "toil-dt-logo", children: "toiljs" }), " devtools", _jsx("span", { className: `toil-dt-dot ${dotClass}` })] }), _jsx("button", { className: "toil-dt-x", onClick: () => {
438
+ setPrefs({ open: false });
439
+ }, children: "\u2715" })] }), _jsx("div", { className: "toil-dt-tabs", children: TABS.map((t) => (_jsxs("button", { className: `toil-dt-tab ${p.tab === t.id ? 'active' : ''}`, onClick: () => {
440
+ setPrefs({ tab: t.id });
441
+ }, children: [t.label, t.id === 'errors' && errors.length > 0 ? ` (${String(errors.length)})` : ''] }, t.id))) }), p.tab === 'route' && _jsx(RouteTab, { routes: routes, slots: slots, info: info }), p.tab === 'data' && _jsx(DataTab, {}), p.tab === 'head' && _jsx(HeadTab, {}), p.tab === 'build' && _jsx(BuildTab, { info: info }), p.tab === 'errors' && _jsx(ErrorsTab, {}), p.tab === 'ai' && _jsx(AiTab, { info: info }), p.tab === 'prefs' && _jsx(PrefsTab, {})] }) }), pal] }));
442
+ }
@@ -1,4 +1,13 @@
1
1
  import { Component, type ErrorInfo, type ReactNode } from 'react';
2
+ export interface DevError {
3
+ readonly error: Error;
4
+ readonly componentStack?: string;
5
+ readonly source: 'render' | 'window' | 'unhandledrejection';
6
+ readonly time: number;
7
+ }
8
+ declare function subscribe(listener: () => void): () => void;
9
+ export declare function getErrorLog(): readonly DevError[];
10
+ export declare const subscribeErrors: typeof subscribe;
2
11
  export declare function isDevMode(): boolean;
3
12
  export declare function initDevErrorOverlay(): void;
4
13
  interface BoundaryProps {