veryfront 0.1.1238 → 0.1.1239

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 (472) hide show
  1. package/esm/cli/auth/login.d.ts +24 -2
  2. package/esm/cli/auth/login.d.ts.map +1 -1
  3. package/esm/cli/auth/login.js +444 -35
  4. package/esm/cli/commands/build/error-handler.js +1 -1
  5. package/esm/cli/commands/generate/command.d.ts.map +1 -1
  6. package/esm/cli/commands/generate/command.js +2 -3
  7. package/esm/cli/commands/init/init-command.d.ts.map +1 -1
  8. package/esm/cli/commands/init/init-command.js +23 -31
  9. package/esm/cli/commands/install/registry.d.ts.map +1 -1
  10. package/esm/cli/commands/install/registry.js +6 -9
  11. package/esm/cli/commands/login/command-help.d.ts.map +1 -1
  12. package/esm/cli/commands/login/command-help.js +3 -1
  13. package/esm/cli/commands/pull/command.d.ts +1 -0
  14. package/esm/cli/commands/pull/command.d.ts.map +1 -1
  15. package/esm/cli/commands/pull/command.js +49 -6
  16. package/esm/cli/commands/push/command-help.d.ts.map +1 -1
  17. package/esm/cli/commands/push/command-help.js +7 -0
  18. package/esm/cli/commands/push/command.d.ts +23 -12
  19. package/esm/cli/commands/push/command.d.ts.map +1 -1
  20. package/esm/cli/commands/push/command.js +461 -44
  21. package/esm/cli/commands/push/plan.d.ts +35 -0
  22. package/esm/cli/commands/push/plan.d.ts.map +1 -0
  23. package/esm/cli/commands/push/plan.js +96 -0
  24. package/esm/cli/commands/schedule/handler.d.ts +21 -2
  25. package/esm/cli/commands/schedule/handler.d.ts.map +1 -1
  26. package/esm/cli/commands/schedule/handler.js +74 -27
  27. package/esm/cli/commands/schema/command-help.js +1 -1
  28. package/esm/cli/commands/up/command.js +1 -1
  29. package/esm/cli/commands/webhook/handler.d.ts.map +1 -1
  30. package/esm/cli/commands/webhook/handler.js +3 -1
  31. package/esm/cli/router.d.ts.map +1 -1
  32. package/esm/cli/router.js +27 -5
  33. package/esm/cli/shared/args.d.ts +10 -0
  34. package/esm/cli/shared/args.d.ts.map +1 -1
  35. package/esm/cli/shared/args.js +15 -2
  36. package/esm/cli/shared/config.d.ts +11 -2
  37. package/esm/cli/shared/config.d.ts.map +1 -1
  38. package/esm/cli/shared/config.js +72 -27
  39. package/esm/cli/shared/project-creation.js +1 -1
  40. package/esm/cli/sync/state.d.ts +20 -0
  41. package/esm/cli/sync/state.d.ts.map +1 -0
  42. package/esm/cli/sync/state.js +193 -0
  43. package/esm/deno.js +2 -2
  44. package/esm/extensions/ext-llm-anthropic/src/anthropic-request-builder.d.ts.map +1 -1
  45. package/esm/extensions/ext-llm-anthropic/src/anthropic-request-builder.js +852 -21
  46. package/esm/extensions/ext-observability-sentry/src/policy.d.ts +2 -0
  47. package/esm/extensions/ext-observability-sentry/src/policy.d.ts.map +1 -1
  48. package/esm/extensions/ext-observability-sentry/src/policy.js +214 -3
  49. package/esm/src/agent/conversation/delegation-policy.d.ts +2 -0
  50. package/esm/src/agent/conversation/delegation-policy.d.ts.map +1 -1
  51. package/esm/src/agent/conversation/delegation-policy.js +13 -3
  52. package/esm/src/agent/conversation/hosted-terminal.d.ts.map +1 -1
  53. package/esm/src/agent/conversation/hosted-terminal.js +6 -2
  54. package/esm/src/agent/factory.d.ts.map +1 -1
  55. package/esm/src/agent/factory.js +22 -11
  56. package/esm/src/agent/hosted/chat-runtime-tool-assembly.d.ts +2 -0
  57. package/esm/src/agent/hosted/chat-runtime-tool-assembly.d.ts.map +1 -1
  58. package/esm/src/agent/hosted/chat-runtime-tool-assembly.js +6 -1
  59. package/esm/src/agent/hosted/child-fork-execution-runner.d.ts +2 -1
  60. package/esm/src/agent/hosted/child-fork-execution-runner.d.ts.map +1 -1
  61. package/esm/src/agent/hosted/child-fork-execution-runner.js +6 -3
  62. package/esm/src/agent/hosted/child-fork-step-message-preparation.d.ts +12 -3
  63. package/esm/src/agent/hosted/child-fork-step-message-preparation.d.ts.map +1 -1
  64. package/esm/src/agent/hosted/child-fork-step-message-preparation.js +16 -3
  65. package/esm/src/agent/hosted/cloud-agent-chat-execution.d.ts +1 -1
  66. package/esm/src/agent/hosted/cloud-agent-chat-execution.d.ts.map +1 -1
  67. package/esm/src/agent/hosted/cloud-agent-chat-execution.js +3 -3
  68. package/esm/src/agent/hosted/cloud-agent-child-tools.d.ts +11 -0
  69. package/esm/src/agent/hosted/cloud-agent-child-tools.d.ts.map +1 -1
  70. package/esm/src/agent/hosted/cloud-agent-child-tools.js +2 -3
  71. package/esm/src/agent/hosted/cloud-agent-config.d.ts +1 -0
  72. package/esm/src/agent/hosted/cloud-agent-config.d.ts.map +1 -1
  73. package/esm/src/agent/hosted/cloud-runtime-system-messages.d.ts +16 -1
  74. package/esm/src/agent/hosted/cloud-runtime-system-messages.d.ts.map +1 -1
  75. package/esm/src/agent/hosted/cloud-runtime-system-messages.js +13 -3
  76. package/esm/src/agent/hosted/default-chat-runtime.d.ts +2 -1
  77. package/esm/src/agent/hosted/default-chat-runtime.d.ts.map +1 -1
  78. package/esm/src/agent/hosted/default-chat-runtime.js +18 -7
  79. package/esm/src/agent/hosted/default-invoke-agent-tool.d.ts +2 -1
  80. package/esm/src/agent/hosted/default-invoke-agent-tool.d.ts.map +1 -1
  81. package/esm/src/agent/hosted/default-invoke-agent-tool.js +11 -3
  82. package/esm/src/agent/hosted/default-project-steering-refresh.d.ts +2 -1
  83. package/esm/src/agent/hosted/default-project-steering-refresh.d.ts.map +1 -1
  84. package/esm/src/agent/hosted/default-project-steering-refresh.js +4 -1
  85. package/esm/src/agent/hosted/runtime-state-resolver.d.ts +6 -4
  86. package/esm/src/agent/hosted/runtime-state-resolver.d.ts.map +1 -1
  87. package/esm/src/agent/hosted/runtime-state-resolver.js +8 -11
  88. package/esm/src/agent/index.d.ts +3 -3
  89. package/esm/src/agent/index.d.ts.map +1 -1
  90. package/esm/src/agent/project/agent-runtime.d.ts.map +1 -1
  91. package/esm/src/agent/project/agent-runtime.js +6 -3
  92. package/esm/src/agent/runtime/agent-definition.d.ts +68 -66
  93. package/esm/src/agent/runtime/agent-definition.d.ts.map +1 -1
  94. package/esm/src/agent/runtime/agent-definition.js +15 -2
  95. package/esm/src/agent/runtime/agent-invocation-contract.d.ts +2 -0
  96. package/esm/src/agent/runtime/agent-invocation-contract.d.ts.map +1 -1
  97. package/esm/src/agent/runtime/agent-markdown-adapter.js +1 -1
  98. package/esm/src/agent/runtime/agent-runtime-step.d.ts +11 -5
  99. package/esm/src/agent/runtime/agent-runtime-step.d.ts.map +1 -1
  100. package/esm/src/agent/runtime/agent-runtime-step.js +23 -6
  101. package/esm/src/agent/runtime/call-context.d.ts +42 -11
  102. package/esm/src/agent/runtime/call-context.d.ts.map +1 -1
  103. package/esm/src/agent/runtime/call-context.js +480 -42
  104. package/esm/src/agent/runtime/chat-stream-handler.d.ts +18 -0
  105. package/esm/src/agent/runtime/chat-stream-handler.d.ts.map +1 -1
  106. package/esm/src/agent/runtime/chat-stream-handler.js +38 -18
  107. package/esm/src/agent/runtime/effective-agent-system.d.ts +13 -4
  108. package/esm/src/agent/runtime/effective-agent-system.d.ts.map +1 -1
  109. package/esm/src/agent/runtime/effective-agent-system.js +29 -0
  110. package/esm/src/agent/runtime/index.d.ts +1 -0
  111. package/esm/src/agent/runtime/index.d.ts.map +1 -1
  112. package/esm/src/agent/runtime/index.js +638 -53
  113. package/esm/src/agent/runtime/load-skill-tool.d.ts +33 -3
  114. package/esm/src/agent/runtime/load-skill-tool.d.ts.map +1 -1
  115. package/esm/src/agent/runtime/load-skill-tool.js +152 -21
  116. package/esm/src/agent/runtime/model-resolution.d.ts +3 -0
  117. package/esm/src/agent/runtime/model-resolution.d.ts.map +1 -1
  118. package/esm/src/agent/runtime/model-resolution.js +14 -0
  119. package/esm/src/agent/runtime/model-transport.d.ts +1 -0
  120. package/esm/src/agent/runtime/model-transport.d.ts.map +1 -1
  121. package/esm/src/agent/runtime/model-transport.js +5 -2
  122. package/esm/src/agent/runtime/run-runtime-context.d.ts +4 -0
  123. package/esm/src/agent/runtime/run-runtime-context.d.ts.map +1 -1
  124. package/esm/src/agent/runtime/run-runtime-context.js +9 -3
  125. package/esm/src/agent/runtime/runtime-tool-config.d.ts +1 -0
  126. package/esm/src/agent/runtime/runtime-tool-config.d.ts.map +1 -1
  127. package/esm/src/agent/runtime/skill-prompt.d.ts +3 -0
  128. package/esm/src/agent/runtime/skill-prompt.d.ts.map +1 -1
  129. package/esm/src/agent/runtime/skill-prompt.js +113 -25
  130. package/esm/src/agent/runtime/streamed-assistant-message.d.ts +22 -2
  131. package/esm/src/agent/runtime/streamed-assistant-message.d.ts.map +1 -1
  132. package/esm/src/agent/runtime/streamed-assistant-message.js +26 -5
  133. package/esm/src/agent/runtime/tool-inventory.d.ts.map +1 -1
  134. package/esm/src/agent/runtime/tool-inventory.js +13 -9
  135. package/esm/src/agent/runtime/tool-result-continuation.d.ts +4 -2
  136. package/esm/src/agent/runtime/tool-result-continuation.d.ts.map +1 -1
  137. package/esm/src/agent/runtime/tool-result-continuation.js +24 -20
  138. package/esm/src/agent/schemas/agent.schema.d.ts +2 -2
  139. package/esm/src/agent/service/runtime.js +1 -1
  140. package/esm/src/agent/streaming/fork-runtime-stream.d.ts +5 -4
  141. package/esm/src/agent/streaming/fork-runtime-stream.d.ts.map +1 -1
  142. package/esm/src/agent/types.d.ts +14 -1
  143. package/esm/src/agent/types.d.ts.map +1 -1
  144. package/esm/src/chat/chat-ui-message-helpers.d.ts.map +1 -1
  145. package/esm/src/chat/chat-ui-message-helpers.js +75 -16
  146. package/esm/src/errors/catalog/build-errors.d.ts.map +1 -1
  147. package/esm/src/errors/catalog/build-errors.js +14 -0
  148. package/esm/src/errors/error-registry/build.d.ts +2 -0
  149. package/esm/src/errors/error-registry/build.d.ts.map +1 -1
  150. package/esm/src/errors/error-registry/build.js +8 -0
  151. package/esm/src/errors/error-registry/deploy.d.ts +4 -0
  152. package/esm/src/errors/error-registry/deploy.d.ts.map +1 -1
  153. package/esm/src/errors/error-registry/deploy.js +16 -0
  154. package/esm/src/errors/error-registry.d.ts +3 -0
  155. package/esm/src/errors/error-registry.d.ts.map +1 -1
  156. package/esm/src/errors/index.d.ts +2 -1
  157. package/esm/src/errors/index.d.ts.map +1 -1
  158. package/esm/src/errors/index.js +4 -3
  159. package/esm/src/errors/tenant-classification.d.ts +25 -0
  160. package/esm/src/errors/tenant-classification.d.ts.map +1 -0
  161. package/esm/src/errors/tenant-classification.js +61 -0
  162. package/esm/src/extensions/builtin-extensions.d.ts +10 -15
  163. package/esm/src/extensions/builtin-extensions.d.ts.map +1 -1
  164. package/esm/src/extensions/builtin-extensions.js +32 -26
  165. package/esm/src/extensions/deferred-extension.d.ts +4 -4
  166. package/esm/src/extensions/deferred-extension.js +4 -4
  167. package/esm/src/extensions/index.d.ts +1 -0
  168. package/esm/src/extensions/index.d.ts.map +1 -1
  169. package/esm/src/extensions/index.js +1 -0
  170. package/esm/src/html/hydration-script-builder/hydration-runtime.generated.js +1 -1
  171. package/esm/src/integrations/_data.d.ts.map +1 -1
  172. package/esm/src/integrations/_data.js +6 -0
  173. package/esm/src/integrations/schema.d.ts +8 -0
  174. package/esm/src/integrations/schema.d.ts.map +1 -1
  175. package/esm/src/integrations/schema.js +3 -0
  176. package/esm/src/integrations/types.d.ts +2 -0
  177. package/esm/src/integrations/types.d.ts.map +1 -1
  178. package/esm/src/internal-agents/run-stream.d.ts.map +1 -1
  179. package/esm/src/internal-agents/run-stream.js +35 -20
  180. package/esm/src/internal-agents/run-system-prompt.d.ts +7 -2
  181. package/esm/src/internal-agents/run-system-prompt.d.ts.map +1 -1
  182. package/esm/src/internal-agents/run-system-prompt.js +19 -13
  183. package/esm/src/internal-agents/schema.d.ts +2 -0
  184. package/esm/src/internal-agents/schema.d.ts.map +1 -1
  185. package/esm/src/modules/react-loader/ssr-module-loader/loader.d.ts.map +1 -1
  186. package/esm/src/modules/react-loader/ssr-module-loader/loader.js +2 -18
  187. package/esm/src/modules/react-loader/ssr-module-loader/ssr-dependency-validator.d.ts +11 -0
  188. package/esm/src/modules/react-loader/ssr-module-loader/ssr-dependency-validator.d.ts.map +1 -1
  189. package/esm/src/modules/react-loader/ssr-module-loader/ssr-dependency-validator.js +53 -6
  190. package/esm/src/observability/application-error-contract.d.ts +4 -0
  191. package/esm/src/observability/application-error-contract.d.ts.map +1 -1
  192. package/esm/src/observability/application-errors.d.ts.map +1 -1
  193. package/esm/src/observability/application-errors.js +55 -2
  194. package/esm/src/platform/adapters/runtime/deno/http-server.d.ts.map +1 -1
  195. package/esm/src/platform/adapters/runtime/deno/http-server.js +2 -10
  196. package/esm/src/platform/adapters/runtime/shared/request-peer.d.ts +14 -0
  197. package/esm/src/platform/adapters/runtime/shared/request-peer.d.ts.map +1 -1
  198. package/esm/src/platform/adapters/runtime/shared/request-peer.js +82 -0
  199. package/esm/src/platform/compat/http/pinned-fetch.d.ts +1 -1
  200. package/esm/src/provider/runtime-loader/provider-http.d.ts +5 -1
  201. package/esm/src/provider/runtime-loader/provider-http.d.ts.map +1 -1
  202. package/esm/src/provider/runtime-loader/provider-http.js +55 -17
  203. package/esm/src/provider/shared/index.d.ts +1 -0
  204. package/esm/src/provider/shared/index.d.ts.map +1 -1
  205. package/esm/src/provider/shared/index.js +2 -0
  206. package/esm/src/provider/types.d.ts +1 -0
  207. package/esm/src/provider/types.d.ts.map +1 -1
  208. package/esm/src/react/components/ui/adapter/builtin/combobox.d.ts +3 -0
  209. package/esm/src/react/components/ui/adapter/builtin/combobox.d.ts.map +1 -0
  210. package/esm/src/react/components/ui/adapter/builtin/combobox.js +204 -0
  211. package/esm/src/react/components/ui/adapter/builtin/dialog.d.ts +3 -0
  212. package/esm/src/react/components/ui/adapter/builtin/dialog.d.ts.map +1 -0
  213. package/esm/src/react/components/ui/adapter/builtin/dialog.js +20 -0
  214. package/esm/src/react/components/ui/adapter/builtin/drawer.d.ts +3 -0
  215. package/esm/src/react/components/ui/adapter/builtin/drawer.d.ts.map +1 -0
  216. package/esm/src/react/components/ui/adapter/builtin/drawer.js +21 -0
  217. package/esm/src/react/components/ui/adapter/builtin/index.d.ts.map +1 -1
  218. package/esm/src/react/components/ui/adapter/builtin/index.js +10 -0
  219. package/esm/src/react/components/ui/adapter/builtin/popover.d.ts +3 -0
  220. package/esm/src/react/components/ui/adapter/builtin/popover.d.ts.map +1 -0
  221. package/esm/src/react/components/ui/adapter/builtin/popover.js +28 -0
  222. package/esm/src/react/components/ui/adapter/builtin/tabs.d.ts +3 -0
  223. package/esm/src/react/components/ui/adapter/builtin/tabs.d.ts.map +1 -0
  224. package/esm/src/react/components/ui/adapter/builtin/tabs.js +73 -0
  225. package/esm/src/react/components/ui/adapter/context.d.ts.map +1 -1
  226. package/esm/src/react/components/ui/adapter/context.js +10 -0
  227. package/esm/src/react/components/ui/adapter/contract.d.ts +212 -0
  228. package/esm/src/react/components/ui/adapter/contract.d.ts.map +1 -1
  229. package/esm/src/react/components/ui/adapter/token-scope.d.ts +24 -0
  230. package/esm/src/react/components/ui/adapter/token-scope.d.ts.map +1 -0
  231. package/esm/src/react/components/ui/adapter/token-scope.js +26 -0
  232. package/esm/src/react/components/ui/alert-dialog.d.ts +101 -0
  233. package/esm/src/react/components/ui/alert-dialog.d.ts.map +1 -0
  234. package/esm/src/react/components/ui/alert-dialog.js +181 -0
  235. package/esm/src/react/components/ui/aspect-ratio.d.ts +18 -0
  236. package/esm/src/react/components/ui/aspect-ratio.d.ts.map +1 -0
  237. package/esm/src/react/components/ui/aspect-ratio.js +13 -0
  238. package/esm/src/react/components/ui/autocomplete.d.ts +67 -0
  239. package/esm/src/react/components/ui/autocomplete.d.ts.map +1 -0
  240. package/esm/src/react/components/ui/autocomplete.js +59 -0
  241. package/esm/src/react/components/ui/breadcrumb.d.ts +86 -0
  242. package/esm/src/react/components/ui/breadcrumb.d.ts.map +1 -0
  243. package/esm/src/react/components/ui/breadcrumb.js +67 -0
  244. package/esm/src/react/components/ui/calendar.d.ts +40 -0
  245. package/esm/src/react/components/ui/calendar.d.ts.map +1 -0
  246. package/esm/src/react/components/ui/calendar.js +170 -0
  247. package/esm/src/react/components/ui/combobox.d.ts +74 -0
  248. package/esm/src/react/components/ui/combobox.d.ts.map +1 -0
  249. package/esm/src/react/components/ui/combobox.js +100 -0
  250. package/esm/src/react/components/ui/context-menu.d.ts +116 -0
  251. package/esm/src/react/components/ui/context-menu.d.ts.map +1 -0
  252. package/esm/src/react/components/ui/context-menu.js +168 -0
  253. package/esm/src/react/components/ui/date-picker.d.ts +69 -0
  254. package/esm/src/react/components/ui/date-picker.d.ts.map +1 -0
  255. package/esm/src/react/components/ui/date-picker.js +96 -0
  256. package/esm/src/react/components/ui/dialog.d.ts +41 -11
  257. package/esm/src/react/components/ui/dialog.d.ts.map +1 -1
  258. package/esm/src/react/components/ui/dialog.js +47 -28
  259. package/esm/src/react/components/ui/drawer.d.ts +31 -8
  260. package/esm/src/react/components/ui/drawer.d.ts.map +1 -1
  261. package/esm/src/react/components/ui/drawer.js +33 -22
  262. package/esm/src/react/components/ui/dropdown-menu.d.ts.map +1 -1
  263. package/esm/src/react/components/ui/dropdown-menu.js +7 -75
  264. package/esm/src/react/components/ui/field.d.ts +70 -0
  265. package/esm/src/react/components/ui/field.d.ts.map +1 -0
  266. package/esm/src/react/components/ui/field.js +161 -0
  267. package/esm/src/react/components/ui/file-type.d.ts +9 -8
  268. package/esm/src/react/components/ui/file-type.d.ts.map +1 -1
  269. package/esm/src/react/components/ui/file-type.js +8 -8
  270. package/esm/src/react/components/ui/hover-card.d.ts +82 -0
  271. package/esm/src/react/components/ui/hover-card.d.ts.map +1 -0
  272. package/esm/src/react/components/ui/hover-card.js +140 -0
  273. package/esm/src/react/components/ui/index.d.ts +23 -2
  274. package/esm/src/react/components/ui/index.d.ts.map +1 -1
  275. package/esm/src/react/components/ui/index.js +21 -0
  276. package/esm/src/react/components/ui/input-otp.d.ts +37 -0
  277. package/esm/src/react/components/ui/input-otp.d.ts.map +1 -0
  278. package/esm/src/react/components/ui/input-otp.js +42 -0
  279. package/esm/src/react/components/ui/menu-keyboard.d.ts +8 -0
  280. package/esm/src/react/components/ui/menu-keyboard.d.ts.map +1 -0
  281. package/esm/src/react/components/ui/menu-keyboard.js +76 -0
  282. package/esm/src/react/components/ui/menubar.d.ts +98 -0
  283. package/esm/src/react/components/ui/menubar.d.ts.map +1 -0
  284. package/esm/src/react/components/ui/menubar.js +173 -0
  285. package/esm/src/react/components/ui/meter.d.ts +45 -0
  286. package/esm/src/react/components/ui/meter.d.ts.map +1 -0
  287. package/esm/src/react/components/ui/meter.js +59 -0
  288. package/esm/src/react/components/ui/modal-surface.d.ts +7 -1
  289. package/esm/src/react/components/ui/modal-surface.d.ts.map +1 -1
  290. package/esm/src/react/components/ui/modal-surface.js +23 -6
  291. package/esm/src/react/components/ui/navigation-menu.d.ts +101 -0
  292. package/esm/src/react/components/ui/navigation-menu.d.ts.map +1 -0
  293. package/esm/src/react/components/ui/navigation-menu.js +195 -0
  294. package/esm/src/react/components/ui/number-field.d.ts +46 -0
  295. package/esm/src/react/components/ui/number-field.d.ts.map +1 -0
  296. package/esm/src/react/components/ui/number-field.js +121 -0
  297. package/esm/src/react/components/ui/pagination.d.ts +77 -0
  298. package/esm/src/react/components/ui/pagination.d.ts.map +1 -0
  299. package/esm/src/react/components/ui/pagination.js +62 -0
  300. package/esm/src/react/components/ui/popover.d.ts +42 -13
  301. package/esm/src/react/components/ui/popover.d.ts.map +1 -1
  302. package/esm/src/react/components/ui/popover.js +25 -12
  303. package/esm/src/react/components/ui/scroll-area.d.ts +38 -0
  304. package/esm/src/react/components/ui/scroll-area.d.ts.map +1 -0
  305. package/esm/src/react/components/ui/scroll-area.js +35 -0
  306. package/esm/src/react/components/ui/separator.d.ts +20 -0
  307. package/esm/src/react/components/ui/separator.d.ts.map +1 -0
  308. package/esm/src/react/components/ui/separator.js +13 -0
  309. package/esm/src/react/components/ui/slider.d.ts +44 -0
  310. package/esm/src/react/components/ui/slider.d.ts.map +1 -0
  311. package/esm/src/react/components/ui/slider.js +46 -0
  312. package/esm/src/react/components/ui/status.d.ts +6 -5
  313. package/esm/src/react/components/ui/status.d.ts.map +1 -1
  314. package/esm/src/react/components/ui/status.js +4 -4
  315. package/esm/src/react/components/ui/tabs.d.ts +32 -9
  316. package/esm/src/react/components/ui/tabs.d.ts.map +1 -1
  317. package/esm/src/react/components/ui/tabs.js +46 -22
  318. package/esm/src/react/components/ui/toggle.d.ts +26 -0
  319. package/esm/src/react/components/ui/toggle.d.ts.map +1 -0
  320. package/esm/src/react/components/ui/toggle.js +29 -0
  321. package/esm/src/react/components/ui/use-isomorphic-layout-effect.d.ts +2 -1
  322. package/esm/src/react/components/ui/use-isomorphic-layout-effect.d.ts.map +1 -1
  323. package/esm/src/react/components/ui/use-isomorphic-layout-effect.js +6 -3
  324. package/esm/src/rendering/chunk-optimizer/source-imports.d.ts.map +1 -1
  325. package/esm/src/rendering/chunk-optimizer/source-imports.js +4 -114
  326. package/esm/src/rendering/orchestrator/module-loader/build-failure.d.ts +10 -0
  327. package/esm/src/rendering/orchestrator/module-loader/build-failure.d.ts.map +1 -1
  328. package/esm/src/rendering/orchestrator/module-loader/build-failure.js +50 -3
  329. package/esm/src/rendering/orchestrator/module-loader/dependency-resolver.d.ts +2 -0
  330. package/esm/src/rendering/orchestrator/module-loader/dependency-resolver.d.ts.map +1 -1
  331. package/esm/src/rendering/orchestrator/module-loader/dependency-resolver.js +21 -6
  332. package/esm/src/rendering/orchestrator/module-loader/index.d.ts +2 -1
  333. package/esm/src/rendering/orchestrator/module-loader/index.d.ts.map +1 -1
  334. package/esm/src/rendering/orchestrator/module-loader/index.js +190 -7
  335. package/esm/src/rendering/orchestrator/module-loader/module-persistence.d.ts +4 -0
  336. package/esm/src/rendering/orchestrator/module-loader/module-persistence.d.ts.map +1 -1
  337. package/esm/src/rendering/orchestrator/module-loader/module-persistence.js +374 -7
  338. package/esm/src/rendering/orchestrator/pipeline.d.ts.map +1 -1
  339. package/esm/src/rendering/orchestrator/pipeline.js +12 -1
  340. package/esm/src/runs/runs-client.d.ts +2 -4
  341. package/esm/src/runs/runs-client.d.ts.map +1 -1
  342. package/esm/src/runs/schemas.d.ts +18 -8
  343. package/esm/src/runs/schemas.d.ts.map +1 -1
  344. package/esm/src/runs/schemas.js +26 -0
  345. package/esm/src/runtime/model-call-context.d.ts +6 -1
  346. package/esm/src/runtime/model-call-context.d.ts.map +1 -1
  347. package/esm/src/runtime/runtime-bridge.d.ts.map +1 -1
  348. package/esm/src/runtime/runtime-bridge.js +133 -15
  349. package/esm/src/schedule/factory.d.ts +8 -2
  350. package/esm/src/schedule/factory.d.ts.map +1 -1
  351. package/esm/src/schedule/factory.js +0 -8
  352. package/esm/src/schedule/index.d.ts +10 -1
  353. package/esm/src/schedule/index.d.ts.map +1 -1
  354. package/esm/src/schedule/index.js +9 -0
  355. package/esm/src/schedule/types.d.ts +30 -11
  356. package/esm/src/schedule/types.d.ts.map +1 -1
  357. package/esm/src/schedule/validation.d.ts +17 -0
  358. package/esm/src/schedule/validation.d.ts.map +1 -1
  359. package/esm/src/schedule/validation.js +93 -5
  360. package/esm/src/server/dev-server/index.d.ts +1 -1
  361. package/esm/src/server/dev-server/index.d.ts.map +1 -1
  362. package/esm/src/server/dev-server/server.d.ts +7 -3
  363. package/esm/src/server/dev-server/server.d.ts.map +1 -1
  364. package/esm/src/server/dev-server/server.js +12 -3
  365. package/esm/src/server/dev-server/types.d.ts +7 -1
  366. package/esm/src/server/dev-server/types.d.ts.map +1 -1
  367. package/esm/src/server/dev-server.d.ts +1 -1
  368. package/esm/src/server/dev-server.d.ts.map +1 -1
  369. package/esm/src/server/handlers/dev/framework-candidates.generated.d.ts.map +1 -1
  370. package/esm/src/server/handlers/dev/framework-candidates.generated.js +2509 -34
  371. package/esm/src/server/handlers/dev/projects/index.d.ts.map +1 -1
  372. package/esm/src/server/handlers/dev/projects/index.js +3 -0
  373. package/esm/src/server/handlers/request/agent-stream.handler.d.ts.map +1 -1
  374. package/esm/src/server/handlers/request/agent-stream.handler.js +29 -24
  375. package/esm/src/server/index.d.ts +3 -3
  376. package/esm/src/server/index.d.ts.map +1 -1
  377. package/esm/src/server/index.js +10 -5
  378. package/esm/src/server/node-handler.d.ts.map +1 -1
  379. package/esm/src/server/node-handler.js +4 -1
  380. package/esm/src/server/production-server.d.ts.map +1 -1
  381. package/esm/src/server/production-server.js +2 -1
  382. package/esm/src/server/project-env/cache.d.ts +17 -0
  383. package/esm/src/server/project-env/cache.d.ts.map +1 -1
  384. package/esm/src/server/project-env/cache.js +78 -2
  385. package/esm/src/server/project-env/fetcher.d.ts.map +1 -1
  386. package/esm/src/server/project-env/fetcher.js +13 -3
  387. package/esm/src/server/project-env/index.d.ts +1 -1
  388. package/esm/src/server/project-env/index.d.ts.map +1 -1
  389. package/esm/src/server/project-env/index.js +1 -1
  390. package/esm/src/server/runtime-handler/index.d.ts.map +1 -1
  391. package/esm/src/server/runtime-handler/index.js +1 -1
  392. package/esm/src/server/runtime-handler/projects-handler.d.ts +1 -1
  393. package/esm/src/server/runtime-handler/projects-handler.d.ts.map +1 -1
  394. package/esm/src/server/runtime-handler/projects-handler.js +4 -2
  395. package/esm/src/transforms/esm/http-bundler.d.ts.map +1 -1
  396. package/esm/src/transforms/esm/http-bundler.js +6 -5
  397. package/esm/src/transforms/esm/http-cache-helpers.d.ts +11 -0
  398. package/esm/src/transforms/esm/http-cache-helpers.d.ts.map +1 -1
  399. package/esm/src/transforms/esm/http-cache-helpers.js +35 -0
  400. package/esm/src/transforms/esm/http-cache.d.ts.map +1 -1
  401. package/esm/src/transforms/esm/http-cache.js +16 -10
  402. package/esm/src/transforms/esm/specifier-resolver.d.ts.map +1 -1
  403. package/esm/src/transforms/esm/specifier-resolver.js +87 -7
  404. package/esm/src/transforms/import-rewriter/strategies/alias-strategy.d.ts +2 -0
  405. package/esm/src/transforms/import-rewriter/strategies/alias-strategy.d.ts.map +1 -1
  406. package/esm/src/transforms/import-rewriter/strategies/alias-strategy.js +11 -6
  407. package/esm/src/transforms/md/compiler/md-compiler.d.ts.map +1 -1
  408. package/esm/src/transforms/md/compiler/md-compiler.js +12 -5
  409. package/esm/src/transforms/mdx/compiler/frontmatter-extractor.d.ts +2 -0
  410. package/esm/src/transforms/mdx/compiler/frontmatter-extractor.d.ts.map +1 -1
  411. package/esm/src/transforms/mdx/compiler/frontmatter-extractor.js +33 -1
  412. package/esm/src/transforms/mdx/compiler/mdx-compiler.d.ts.map +1 -1
  413. package/esm/src/transforms/mdx/compiler/mdx-compiler.js +46 -7
  414. package/esm/src/transforms/mdx/esm-module-loader/cache/index.d.ts.map +1 -1
  415. package/esm/src/transforms/mdx/esm-module-loader/cache/index.js +8 -2
  416. package/esm/src/transforms/mdx/esm-module-loader/cache-format.d.ts +1 -0
  417. package/esm/src/transforms/mdx/esm-module-loader/cache-format.d.ts.map +1 -1
  418. package/esm/src/transforms/mdx/esm-module-loader/cache-format.js +3 -0
  419. package/esm/src/transforms/mdx/esm-module-loader/loader-helpers.d.ts +4 -0
  420. package/esm/src/transforms/mdx/esm-module-loader/loader-helpers.d.ts.map +1 -1
  421. package/esm/src/transforms/mdx/esm-module-loader/loader-helpers.js +44 -8
  422. package/esm/src/transforms/mdx/esm-module-loader/missing-module.d.ts +2 -0
  423. package/esm/src/transforms/mdx/esm-module-loader/missing-module.d.ts.map +1 -1
  424. package/esm/src/transforms/mdx/esm-module-loader/missing-module.js +4 -0
  425. package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/http-fallback.d.ts.map +1 -1
  426. package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/http-fallback.js +5 -1
  427. package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/http-fetcher.d.ts +2 -0
  428. package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/http-fetcher.d.ts.map +1 -1
  429. package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/http-fetcher.js +50 -11
  430. package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/nested-imports.d.ts +24 -12
  431. package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/nested-imports.d.ts.map +1 -1
  432. package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/nested-imports.js +201 -18
  433. package/esm/src/transforms/mdx/esm-module-loader/types.d.ts +5 -0
  434. package/esm/src/transforms/mdx/esm-module-loader/types.d.ts.map +1 -1
  435. package/esm/src/transforms/mdx/esm-module-loader/utils/source-spans.d.ts +22 -2
  436. package/esm/src/transforms/mdx/esm-module-loader/utils/source-spans.d.ts.map +1 -1
  437. package/esm/src/transforms/mdx/esm-module-loader/utils/source-spans.js +2080 -129
  438. package/esm/src/transforms/mdx/esm-module-loader/utils/stub-module.d.ts +11 -1
  439. package/esm/src/transforms/mdx/esm-module-loader/utils/stub-module.d.ts.map +1 -1
  440. package/esm/src/transforms/mdx/esm-module-loader/utils/stub-module.js +32 -15
  441. package/esm/src/transforms/pipeline/stages/compile.d.ts.map +1 -1
  442. package/esm/src/transforms/pipeline/stages/compile.js +44 -0
  443. package/esm/src/transforms/shared/specifier-suffix.d.ts +25 -0
  444. package/esm/src/transforms/shared/specifier-suffix.d.ts.map +1 -0
  445. package/esm/src/transforms/shared/specifier-suffix.js +43 -0
  446. package/esm/src/trigger/index.d.ts +2 -2
  447. package/esm/src/trigger/index.d.ts.map +1 -1
  448. package/esm/src/trigger/index.js +1 -1
  449. package/esm/src/trigger/local-runner.d.ts +2 -2
  450. package/esm/src/trigger/local-runner.d.ts.map +1 -1
  451. package/esm/src/trigger/local-runner.js +11 -4
  452. package/esm/src/trigger/target.d.ts +97 -5
  453. package/esm/src/trigger/target.d.ts.map +1 -1
  454. package/esm/src/trigger/target.js +175 -5
  455. package/esm/src/utils/version-constant.d.ts +1 -1
  456. package/esm/src/utils/version-constant.js +1 -1
  457. package/esm/src/webhook/types.d.ts +21 -6
  458. package/esm/src/webhook/types.d.ts.map +1 -1
  459. package/esm/src/webhook/validation.d.ts.map +1 -1
  460. package/esm/src/webhook/validation.js +27 -39
  461. package/esm/templates/index.d.ts +1 -1
  462. package/esm/templates/index.d.ts.map +1 -1
  463. package/esm/templates/loader.d.ts +6 -6
  464. package/esm/templates/loader.d.ts.map +1 -1
  465. package/esm/templates/loader.js +34 -18
  466. package/esm/templates/manifest.generated.d.ts +3 -0
  467. package/esm/templates/manifest.generated.d.ts.map +1 -0
  468. package/esm/templates/manifest.generated.js +2 -0
  469. package/package.json +8 -8
  470. package/esm/templates/manifest.d.ts +0 -664
  471. package/esm/templates/manifest.d.ts.map +0 -1
  472. package/esm/templates/manifest.js +0 -662
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Toggle - a two-state pressed button (on / off). Behavioural but self-contained
3
+ * (a single `aria-pressed` button, no floating engine needed): controlled via
4
+ * `pressed`/`onPressedChange` or uncontrolled via `defaultPressed`. State is
5
+ * exposed as `data-state="on" | "off"` for styling; `asChild` grafts the toggle
6
+ * behaviour onto your own element. Skinned entirely with veryfront theme tokens.
7
+ *
8
+ * @module react/components/ui/toggle
9
+ */
10
+ import * as React from "react";
11
+ /** Props accepted by `<Toggle>`. */
12
+ export interface ToggleProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "onChange"> {
13
+ /** Controlled pressed state. Pair with `onPressedChange`. */
14
+ pressed?: boolean;
15
+ /** Initial pressed state when uncontrolled. @default false */
16
+ defaultPressed?: boolean;
17
+ /** Fires with the next pressed state on user activation. */
18
+ onPressedChange?: (pressed: boolean) => void;
19
+ /** Render as a Slot, merging the toggle behaviour onto the child element. */
20
+ asChild?: boolean;
21
+ /** React 19: ref is a regular prop. */
22
+ ref?: React.Ref<HTMLButtonElement>;
23
+ }
24
+ /** Render a pressed toggle button. */
25
+ export declare function Toggle({ pressed, defaultPressed, onPressedChange, asChild, disabled, className, onClick, ref, ...props }: ToggleProps): React.ReactElement;
26
+ //# sourceMappingURL=toggle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toggle.d.ts","sourceRoot":"","sources":["../../../../../src/src/react/components/ui/toggle.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,oCAAoC;AACpC,MAAM,WAAW,WACf,SAAQ,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC;IACvE,6DAA6D;IAC7D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,8DAA8D;IAC9D,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,4DAA4D;IAC5D,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7C,6EAA6E;IAC7E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,uCAAuC;IACvC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;CACpC;AAED,sCAAsC;AACtC,wBAAgB,MAAM,CAAC,EACrB,OAAO,EACP,cAAsB,EACtB,eAAe,EACf,OAAe,EACf,QAAQ,EACR,SAAS,EACT,OAAO,EACP,GAAG,EACH,GAAG,KAAK,EACT,EAAE,WAAW,GAAG,KAAK,CAAC,YAAY,CAsClC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Toggle - a two-state pressed button (on / off). Behavioural but self-contained
3
+ * (a single `aria-pressed` button, no floating engine needed): controlled via
4
+ * `pressed`/`onPressedChange` or uncontrolled via `defaultPressed`. State is
5
+ * exposed as `data-state="on" | "off"` for styling; `asChild` grafts the toggle
6
+ * behaviour onto your own element. Skinned entirely with veryfront theme tokens.
7
+ *
8
+ * @module react/components/ui/toggle
9
+ */
10
+ import * as React from "react";
11
+ import { cx as cn } from "./cva.js";
12
+ import { Slot } from "./slot.js";
13
+ /** Render a pressed toggle button. */
14
+ export function Toggle({ pressed, defaultPressed = false, onPressedChange, asChild = false, disabled, className, onClick, ref, ...props }) {
15
+ const isControlled = pressed !== undefined;
16
+ const [internal, setInternal] = React.useState(defaultPressed);
17
+ const isOn = isControlled ? pressed : internal;
18
+ const handleClick = (event) => {
19
+ onClick?.(event);
20
+ if (event.defaultPrevented)
21
+ return;
22
+ const next = !isOn;
23
+ if (!isControlled)
24
+ setInternal(next);
25
+ onPressedChange?.(next);
26
+ };
27
+ const Comp = asChild ? Slot : "button";
28
+ return (React.createElement(Comp, { ref: ref, type: asChild ? undefined : "button", "aria-pressed": isOn, "data-state": isOn ? "on" : "off", "data-disabled": disabled ? "" : undefined, disabled: disabled, onClick: handleClick, className: cn("inline-flex items-center justify-center gap-1.5 whitespace-nowrap rounded-md", "h-[38px] min-w-[38px] px-3 text-base font-normal", "transition-[background-color,color] duration-150 ease-in", "text-[var(--foreground)] hover:bg-[var(--accent)]", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--edge-medium)] focus-visible:ring-offset-2 focus-visible:ring-offset-[var(--background)]", "data-[state=on]:bg-[var(--secondary)] data-[state=on]:text-[var(--foreground)]", "disabled:pointer-events-none disabled:opacity-50", "[&_svg]:size-4 [&_svg]:shrink-0", className), ...props }));
29
+ }
@@ -1,6 +1,7 @@
1
+ import * as React from "react";
1
2
  /**
2
3
  * Use a layout effect in browsers without emitting React's server-rendering
3
4
  * warning when a primitive is rendered on the server.
4
5
  */
5
- export declare const useIsomorphicLayoutEffect: any;
6
+ export declare const useIsomorphicLayoutEffect: typeof React.useLayoutEffect;
6
7
  //# sourceMappingURL=use-isomorphic-layout-effect.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-isomorphic-layout-effect.d.ts","sourceRoot":"","sources":["../../../../../src/src/react/components/ui/use-isomorphic-layout-effect.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,eAAO,MAAM,yBAAyB,KAEb,CAAC"}
1
+ {"version":3,"file":"use-isomorphic-layout-effect.d.ts","sourceRoot":"","sources":["../../../../../src/src/react/components/ui/use-isomorphic-layout-effect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;;GAGG;AACH,eAAO,MAAM,yBAAyB,EAAE,OAAO,KAAK,CAAC,eAKpD,CAAC"}
@@ -3,6 +3,9 @@ import * as React from "react";
3
3
  * Use a layout effect in browsers without emitting React's server-rendering
4
4
  * warning when a primitive is rendered on the server.
5
5
  */
6
- export const useIsomorphicLayoutEffect = typeof globalThis.document === "undefined"
7
- ? React.useEffect
8
- : React.useLayoutEffect;
6
+ export const useIsomorphicLayoutEffect = (effect, deps) => {
7
+ const useEffectHook = typeof globalThis.document === "undefined"
8
+ ? React.useEffect
9
+ : React.useLayoutEffect;
10
+ return useEffectHook(effect, deps);
11
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"source-imports.d.ts","sourceRoot":"","sources":["../../../../src/src/rendering/chunk-optimizer/source-imports.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAKjE,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAqXD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAwBhE;AAED,OAAO,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"source-imports.d.ts","sourceRoot":"","sources":["../../../../src/src/rendering/chunk-optimizer/source-imports.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAKjE,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AA8PD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAwBhE;AAED,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -179,123 +179,13 @@ function maskMarkdownRegions(source) {
179
179
  }
180
180
  return maskHtmlComments(parts.join(""));
181
181
  }
182
- function readHexDigit(char) {
183
- if (char === undefined)
184
- return -1;
185
- const code = char.charCodeAt(0);
186
- if (code >= 0x30 && code <= 0x39)
187
- return code - 0x30;
188
- if (code >= 0x41 && code <= 0x46)
189
- return code - 0x41 + 10;
190
- if (code >= 0x61 && code <= 0x66)
191
- return code - 0x61 + 10;
192
- return -1;
193
- }
194
- function readFixedHex(value, start, length) {
195
- let parsed = 0;
196
- for (let index = 0; index < length; index++) {
197
- const digit = readHexDigit(value[start + index]);
198
- if (digit === -1) {
199
- throw new SyntaxError("Invalid escaped module specifier");
200
- }
201
- parsed = parsed * 16 + digit;
202
- }
203
- return { value: parsed, end: start + length };
204
- }
205
- function decodeModuleSpecifier(value) {
206
- if (!value.includes("\\"))
207
- return value;
208
- let decoded = "";
209
- let cursor = 0;
210
- while (cursor < value.length) {
211
- const char = value[cursor++];
212
- if (char !== "\\") {
213
- if (char === "\n" || char === "\r") {
214
- throw new SyntaxError("Module specifiers cannot contain line terminators");
215
- }
216
- decoded += char;
217
- continue;
218
- }
219
- if (cursor >= value.length) {
220
- throw new SyntaxError("Invalid escaped module specifier");
221
- }
222
- const escaped = value[cursor++];
223
- const simple = {
224
- b: "\b",
225
- f: "\f",
226
- n: "\n",
227
- r: "\r",
228
- t: "\t",
229
- v: "\v",
230
- "\\": "\\",
231
- "'": "'",
232
- '"': '"',
233
- };
234
- if (Object.hasOwn(simple, escaped)) {
235
- decoded += simple[escaped];
236
- continue;
237
- }
238
- if (escaped === "\n")
239
- continue;
240
- if (escaped === "\r") {
241
- if (value[cursor] === "\n")
242
- cursor++;
243
- continue;
244
- }
245
- if (escaped === "0") {
246
- if (/[0-9]/.test(value[cursor] ?? "")) {
247
- throw new SyntaxError("Legacy octal escapes are not valid in module specifiers");
248
- }
249
- decoded += "\0";
250
- continue;
251
- }
252
- if (escaped === "x") {
253
- const parsed = readFixedHex(value, cursor, 2);
254
- decoded += String.fromCharCode(parsed.value);
255
- cursor = parsed.end;
256
- continue;
257
- }
258
- if (escaped === "u") {
259
- if (value[cursor] === "{") {
260
- const closing = value.indexOf("}", cursor + 1);
261
- if (closing === -1 || closing === cursor + 1) {
262
- throw new SyntaxError("Invalid Unicode escape in module specifier");
263
- }
264
- let codePoint = 0;
265
- for (let index = cursor + 1; index < closing; index++) {
266
- const digit = readHexDigit(value[index]);
267
- if (digit === -1) {
268
- throw new SyntaxError("Invalid Unicode escape in module specifier");
269
- }
270
- codePoint = codePoint * 16 + digit;
271
- if (codePoint > 0x10ffff) {
272
- throw new SyntaxError("Module specifier Unicode escape is out of range");
273
- }
274
- }
275
- decoded += String.fromCodePoint(codePoint);
276
- cursor = closing + 1;
277
- continue;
278
- }
279
- const parsed = readFixedHex(value, cursor, 4);
280
- decoded += String.fromCharCode(parsed.value);
281
- cursor = parsed.end;
282
- continue;
283
- }
284
- if (escaped >= "1" && escaped <= "9") {
285
- throw new SyntaxError("Legacy numeric escapes are not valid in module specifiers");
286
- }
287
- decoded += escaped;
288
- }
289
- return decoded;
290
- }
291
182
  function validateImportSpecifier(value) {
292
- const decoded = decodeModuleSpecifier(value);
293
- if (decoded.length === 0 ||
294
- decoded.length > MAX_IMPORT_SPECIFIER_CHARS ||
295
- hasControlCharacter(decoded)) {
183
+ if (value.length === 0 ||
184
+ value.length > MAX_IMPORT_SPECIFIER_CHARS ||
185
+ hasControlCharacter(value)) {
296
186
  throw new TypeError(`Chunk analysis import specifiers must contain between 1 and ${MAX_IMPORT_SPECIFIER_CHARS} characters without control characters`);
297
187
  }
298
- return decoded;
188
+ return value;
299
189
  }
300
190
  /**
301
191
  * Run a span scanner one match past the per-page bound and fail closed there.
@@ -15,6 +15,16 @@
15
15
  */
16
16
  /** Tag `error` as a build failure and return it. */
17
17
  export declare function markBuildFailure(error: unknown): unknown;
18
+ /**
19
+ * Tag `error` as a build failure the tenant's own source caused, and return it.
20
+ *
21
+ * For seams that know the provenance from control flow rather than from a
22
+ * registry slug — an import specifier that still does not resolve after a full
23
+ * rebuild, for instance, is a path the project authored.
24
+ */
25
+ export declare function markTenantBuildFailure(error: unknown): unknown;
18
26
  /** True when `error` was raised while compiling or resolving project source. */
19
27
  export declare function isBuildFailure(error: unknown): boolean;
28
+ /** True only for a build failure explicitly classified as tenant source. */
29
+ export declare function isTenantBuildFailure(error: unknown): boolean;
20
30
  //# sourceMappingURL=build-failure.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"build-failure.d.ts","sourceRoot":"","sources":["../../../../../src/src/rendering/orchestrator/module-loader/build-failure.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,oDAAoD;AACpD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAGxD;AAED,gFAAgF;AAChF,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAEtD"}
1
+ {"version":3,"file":"build-failure.d.ts","sourceRoot":"","sources":["../../../../../src/src/rendering/orchestrator/module-loader/build-failure.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAiCH,oDAAoD;AACpD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAMxD;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAM9D;AAED,gFAAgF;AAChF,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAEtD;AAED,4EAA4E;AAC5E,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAE5D"}
@@ -13,14 +13,61 @@
13
13
  * Only the loader is in a position to know which happened, so it tags the
14
14
  * error at the point of failure instead of leaving later layers to infer it.
15
15
  */
16
+ import { isTenantSourceBuildError } from "../../../errors/tenant-classification.js";
17
+ const ObjectDefineProperty = Object.defineProperty;
18
+ const ObjectPrototypeHasOwnProperty = Object.prototype.hasOwnProperty;
19
+ const ReflectApply = Reflect.apply;
20
+ const ReflectGetOwnPropertyDescriptor = Reflect.getOwnPropertyDescriptor;
16
21
  const BUILD_FAILURE = Symbol.for("veryfront.module-loader.build-failure");
22
+ const TENANT_BUILD_FAILURE = Symbol.for("veryfront.module-loader.tenant-build-failure");
23
+ /**
24
+ * Modules are strict mode, so a plain assignment onto a frozen error throws.
25
+ * These taggers run inside `catch` blocks, where a throw would replace the
26
+ * original error with a `TypeError` and lose the failure entirely.
27
+ */
28
+ function defineTag(error, tag) {
29
+ try {
30
+ ObjectDefineProperty(error, tag, { value: true, configurable: true });
31
+ }
32
+ catch {
33
+ // Sealed or non-configurable: the error stays untagged, which degrades to
34
+ // the pre-classification behavior rather than destroying the error.
35
+ }
36
+ }
37
+ function hasOwnTrueTag(error, tag) {
38
+ const descriptor = ReflectGetOwnPropertyDescriptor(error, tag);
39
+ return descriptor !== undefined &&
40
+ ReflectApply(ObjectPrototypeHasOwnProperty, descriptor, ["value"]) === true &&
41
+ descriptor.value === true;
42
+ }
17
43
  /** Tag `error` as a build failure and return it. */
18
44
  export function markBuildFailure(error) {
19
- if (error instanceof Error)
20
- error[BUILD_FAILURE] = true;
45
+ if (error instanceof Error) {
46
+ defineTag(error, BUILD_FAILURE);
47
+ if (isTenantSourceBuildError(error))
48
+ defineTag(error, TENANT_BUILD_FAILURE);
49
+ }
50
+ return error;
51
+ }
52
+ /**
53
+ * Tag `error` as a build failure the tenant's own source caused, and return it.
54
+ *
55
+ * For seams that know the provenance from control flow rather than from a
56
+ * registry slug — an import specifier that still does not resolve after a full
57
+ * rebuild, for instance, is a path the project authored.
58
+ */
59
+ export function markTenantBuildFailure(error) {
60
+ if (error instanceof Error) {
61
+ defineTag(error, BUILD_FAILURE);
62
+ defineTag(error, TENANT_BUILD_FAILURE);
63
+ }
21
64
  return error;
22
65
  }
23
66
  /** True when `error` was raised while compiling or resolving project source. */
24
67
  export function isBuildFailure(error) {
25
- return error instanceof Error && error[BUILD_FAILURE] === true;
68
+ return error instanceof Error && hasOwnTrueTag(error, BUILD_FAILURE);
69
+ }
70
+ /** True only for a build failure explicitly classified as tenant source. */
71
+ export function isTenantBuildFailure(error) {
72
+ return error instanceof Error && hasOwnTrueTag(error, TENANT_BUILD_FAILURE);
26
73
  }
@@ -10,6 +10,8 @@ export type ResolvedModuleDependency = {
10
10
  isLocalLib: boolean;
11
11
  /** True when discovered inside `import("…")` rather than a static import. */
12
12
  isDynamic: boolean;
13
+ /** True when discovered in a bare `import "…"` statement. */
14
+ isSideEffect?: boolean;
13
15
  };
14
16
  /** Resolved dependency after its source module has been transformed to a temp file. */
15
17
  export type TransformedModuleDependency = ResolvedModuleDependency & {
@@ -1 +1 @@
1
- {"version":3,"file":"dependency-resolver.d.ts","sourceRoot":"","sources":["../../../../../src/src/rendering/orchestrator/module-loader/dependency-resolver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAmDzE,sEAAsE;AACtE,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,OAAO,CAAC;IACpB,6EAA6E;IAC7E,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,uFAAuF;AACvF,MAAM,MAAM,2BAA2B,GAAG,wBAAwB,GAAG;IACnE,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,sEAAsE;AACtE,MAAM,WAAW,8BAA8B;IAC7C,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,cAAc,CAAC;CACzB;AAwHD,yEAAyE;AACzE,wBAAsB,yBAAyB,CAC7C,KAAK,EAAE,8BAA8B,GACpC,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAuBrC;AAED,2EAA2E;AAC3E,wBAAgB,gCAAgC,CAC9C,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,2BAA2B,EAAE,GAC7C,MAAM,CAaR"}
1
+ {"version":3,"file":"dependency-resolver.d.ts","sourceRoot":"","sources":["../../../../../src/src/rendering/orchestrator/module-loader/dependency-resolver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAsDzE,sEAAsE;AACtE,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,OAAO,CAAC;IACpB,6EAA6E;IAC7E,SAAS,EAAE,OAAO,CAAC;IACnB,6DAA6D;IAC7D,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,uFAAuF;AACvF,MAAM,MAAM,2BAA2B,GAAG,wBAAwB,GAAG;IACnE,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,sEAAsE;AACtE,MAAM,WAAW,8BAA8B;IAC7C,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,cAAc,CAAC;CACzB;AAyID,yEAAyE;AACzE,wBAAsB,yBAAyB,CAC7C,KAAK,EAAE,8BAA8B,GACpC,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAuBrC;AAED,2EAA2E;AAC3E,wBAAgB,gCAAgC,CAC9C,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,2BAA2B,EAAE,GAC7C,MAAM,CAiBR"}
@@ -1,6 +1,6 @@
1
1
  import { dirname, join, normalize, toFileUrl } from "../../../platform/compat/path/index.js";
2
2
  import { parallelMap, rendererLogger } from "../../../utils/index.js";
3
- import { findDynamicImportSpans, findStaticImportFromSpans, replaceSourceSpans, } from "../../../transforms/mdx/esm-module-loader/utils/source-spans.js";
3
+ import { findDynamicImportSpans, findStaticImportFromSpans, findStaticSideEffectImportSpans, replaceSourceSpans, } from "../../../transforms/mdx/esm-module-loader/utils/source-spans.js";
4
4
  import { findSourceFile } from "../file-resolver/index.js";
5
5
  const logger = rendererLogger.component("module-loader");
6
6
  const MAX_IMPORTS_PER_KIND = 500;
@@ -22,16 +22,26 @@ function collectBoundedSpans(scan, kind) {
22
22
  const matchAlias = (specifier) => specifier.startsWith("@/") ? specifier : null;
23
23
  const matchRelative = (specifier) => specifier.match(/^(\.\.?\/[^?]+)(?:\?.*)?$/)?.[1];
24
24
  function collectAliasImports(fileContent) {
25
- const toAlias = (isDynamic) => ({ original, path, start, end }) => ({ full: original, path, start, end, isDynamic });
25
+ const toAlias = (isDynamic, isSideEffect = false) => ({ original, path, start, end }) => ({ full: original, path, start, end, isDynamic, isSideEffect });
26
26
  return [
27
27
  ...collectBoundedSpans((maxMatches) => findStaticImportFromSpans(fileContent, matchAlias, maxMatches), "static alias").map(toAlias(false)),
28
+ ...collectBoundedSpans((maxMatches) => findStaticSideEffectImportSpans(fileContent, matchAlias, maxMatches), "side-effect alias").map(toAlias(false, true)),
28
29
  ...collectBoundedSpans((maxMatches) => findDynamicImportSpans(fileContent, matchAlias, maxMatches), "dynamic alias").map(toAlias(true)),
29
30
  ];
30
31
  }
31
32
  function collectRelativeImports(fileContent, fileDir) {
32
- const toRelative = (isDynamic) => ({ original, path, start, end }) => ({ full: original, path, fromDir: fileDir, start, end, isDynamic });
33
+ const toRelative = (isDynamic, isSideEffect = false) => ({ original, path, start, end }) => ({
34
+ full: original,
35
+ path,
36
+ fromDir: fileDir,
37
+ start,
38
+ end,
39
+ isDynamic,
40
+ isSideEffect,
41
+ });
33
42
  return [
34
43
  ...collectBoundedSpans((maxMatches) => findStaticImportFromSpans(fileContent, matchRelative, maxMatches), "static relative").map(toRelative(false)),
44
+ ...collectBoundedSpans((maxMatches) => findStaticSideEffectImportSpans(fileContent, matchRelative, maxMatches), "side-effect relative").map(toRelative(false, true)),
35
45
  ...collectBoundedSpans((maxMatches) => findDynamicImportSpans(fileContent, matchRelative, maxMatches), "dynamic relative").map(toRelative(true)),
36
46
  ]
37
47
  // Ignore already-transformed file:// imports.
@@ -85,6 +95,7 @@ async function resolveRelativeImport(imp, adapter) {
85
95
  depFilePath,
86
96
  isLocalLib: false,
87
97
  isDynamic: imp.isDynamic,
98
+ isSideEffect: imp.isSideEffect,
88
99
  };
89
100
  }
90
101
  /** Resolves @/ alias and relative local imports from a source module. */
@@ -111,9 +122,13 @@ export function rewriteResolvedDependencyImports(fileContent, transformedDeps) {
111
122
  start: dep.start,
112
123
  end: dep.end,
113
124
  expected: dep.full,
114
- // A dynamic span covers only the quoted specifier; a static one covers the
115
- // whole `from "…"` clause.
116
- replacement: dep.isDynamic ? `"${moduleUrl}"` : `from "${moduleUrl}"`,
125
+ // A dynamic span covers only the quoted specifier, a side-effect span
126
+ // covers the bare import, and a static binding span covers `from "…"`.
127
+ replacement: dep.isSideEffect
128
+ ? `import "${moduleUrl}"`
129
+ : dep.isDynamic
130
+ ? `"${moduleUrl}"`
131
+ : `from "${moduleUrl}"`,
117
132
  };
118
133
  });
119
134
  return replaceSourceSpans(fileContent, replacements);
@@ -22,7 +22,7 @@ export { fetchEsmModule, rewriteEsmPaths } from "./esm-rewriter.js";
22
22
  * @param useLocalAdapter - Whether to use local adapter for reading
23
23
  * @returns Path to the transformed module file
24
24
  */
25
- export declare function transformModuleWithDeps(filePath: string, tmpDir: string, localAdapter: RuntimeAdapter, config: ModuleLoaderConfig, useLocalAdapter?: boolean, lineage?: ReadonlySet<string>, cycleTargets?: Set<string>): Promise<string>;
25
+ export declare function transformModuleWithDeps(filePath: string, tmpDir: string, localAdapter: RuntimeAdapter, config: ModuleLoaderConfig, useLocalAdapter?: boolean, lineage?: ReadonlySet<string>, cycleTargets?: Set<string>, unresolvedSpecifiers?: Set<string>): Promise<string>;
26
26
  export interface ModuleLoaderConfig {
27
27
  projectDir: string;
28
28
  projectId?: string;
@@ -53,6 +53,7 @@ export interface ModuleLoaderConfig {
53
53
  * message variants the runtimes surface for a missing `import()` target.
54
54
  */
55
55
  export declare function isMissingModuleError(error: unknown): boolean;
56
+ export declare function isUnresolvedTenantImport(error: unknown, unresolvedSpecifiers: ReadonlySet<string>, rebuiltArtifactPath?: string): boolean;
56
57
  /**
57
58
  * Load a module by path, transforming it and its dependencies.
58
59
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/src/rendering/orchestrator/module-loader/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAmBzE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAEhG,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAsBpD,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAOpE;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,cAAc,EAC5B,MAAM,EAAE,kBAAkB,EAC1B,eAAe,UAAQ,EACvB,OAAO,GAAE,WAAW,CAAC,MAAM,CAAa,EAKxC,YAAY,GAAE,GAAG,CAAC,MAAM,CAAa,GACpC,OAAO,CAAC,MAAM,CAAC,CA6JjB;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE,aAAa,GAAG,YAAY,CAAC;IACnC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,yDAAyD;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,0EAA0E;IAC1E,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,mEAAmE;IACnE,6BAA6B,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACjE,yEAAyE;IACzE,uBAAuB,CAAC,EAAE,4BAA4B,CAAC;IACvD,0DAA0D;IAC1D,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,yEAAyE;IACzE,UAAU,CAAC,EAAE,yBAAyB,CAAC;CACxC;AAyBD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAI5D;AAED;;;;;;GAMG;AACH,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAuGlC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/src/rendering/orchestrator/module-loader/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAsBzE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAKhG,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AA6CpD,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAOpE;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,cAAc,EAC5B,MAAM,EAAE,kBAAkB,EAC1B,eAAe,UAAQ,EACvB,OAAO,GAAE,WAAW,CAAC,MAAM,CAAa,EAKxC,YAAY,GAAE,GAAG,CAAC,MAAM,CAAa,EAarC,oBAAoB,GAAE,GAAG,CAAC,MAAM,CAAa,GAC5C,OAAO,CAAC,MAAM,CAAC,CAyLjB;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE,aAAa,GAAG,YAAY,CAAC;IACnC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,yDAAyD;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,0EAA0E;IAC1E,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,mEAAmE;IACnE,6BAA6B,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACjE,yEAAyE;IACzE,uBAAuB,CAAC,EAAE,4BAA4B,CAAC;IACvD,0DAA0D;IAC1D,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,yEAAyE;IACzE,UAAU,CAAC,EAAE,yBAAyB,CAAC;CACxC;AAyBD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAI5D;AAkED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,OAAO,EACd,oBAAoB,EAAE,WAAW,CAAC,MAAM,CAAC,EACzC,mBAAmB,CAAC,EAAE,MAAM,GAC3B,OAAO,CAwBT;AAED;;;;;;GAMG;AACH,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CA0JlC"}