experimental-ash 0.28.0 → 0.29.0

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 (345) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/README.md +1 -0
  3. package/dist/docs/internals/hooks.md +1 -1
  4. package/dist/docs/public/cli-build-and-debugging.md +2 -0
  5. package/dist/docs/public/getting-started.md +1 -0
  6. package/dist/src/channel/adapter.js +1 -1
  7. package/dist/src/channel/compiled-channel.js +1 -1
  8. package/dist/src/channel/http.js +1 -1
  9. package/dist/src/channel/schedule.js +1 -1
  10. package/dist/src/channel/send.js +1 -1
  11. package/dist/src/channel/session-callback.js +1 -1
  12. package/dist/src/channel/session.js +1 -1
  13. package/dist/src/cli/commands/channels.js +1 -1
  14. package/dist/src/cli/dev/environment.js +1 -1
  15. package/dist/src/cli/dev/input-requests.js +1 -1
  16. package/dist/src/cli/dev/repl.js +1 -1
  17. package/dist/src/cli/dev/terminal.js +1 -1
  18. package/dist/src/cli/dev/url.js +1 -1
  19. package/dist/src/cli/run.d.ts +9 -0
  20. package/dist/src/cli/run.js +1 -1
  21. package/dist/src/compiler/artifacts.js +1 -1
  22. package/dist/src/compiler/manifest.js +1 -1
  23. package/dist/src/compiler/model-catalog.js +1 -1
  24. package/dist/src/compiler/module-map.js +1 -1
  25. package/dist/src/compiler/normalize-subagent.js +1 -1
  26. package/dist/src/compiler/remote-agent-node.js +1 -1
  27. package/dist/src/compiler/workspace-resources.js +1 -1
  28. package/dist/src/context/accessors.js +1 -1
  29. package/dist/src/context/container.js +1 -1
  30. package/dist/src/context/hook-lifecycle.d.ts +3 -3
  31. package/dist/src/context/hook-lifecycle.js +1 -1
  32. package/dist/src/context/key.js +1 -1
  33. package/dist/src/context/keys.d.ts +31 -10
  34. package/dist/src/context/keys.js +1 -1
  35. package/dist/src/context/node.js +1 -1
  36. package/dist/src/context/providers/connection.js +1 -1
  37. package/dist/src/context/providers/sandbox.js +1 -1
  38. package/dist/src/context/providers/session.js +1 -1
  39. package/dist/src/context/run-step.js +1 -1
  40. package/dist/src/context/serialize.js +1 -1
  41. package/dist/src/discover/connections.js +1 -1
  42. package/dist/src/discover/diagnostics.js +1 -1
  43. package/dist/src/discover/discover-subagent.js +1 -1
  44. package/dist/src/discover/filesystem.js +1 -1
  45. package/dist/src/discover/grammar.js +1 -1
  46. package/dist/src/discover/lib.js +1 -1
  47. package/dist/src/discover/manifest.js +1 -1
  48. package/dist/src/discover/sandbox.js +1 -1
  49. package/dist/src/discover/schedules.js +1 -1
  50. package/dist/src/discover/skills.js +1 -1
  51. package/dist/src/evals/runner/discover.js +1 -1
  52. package/dist/src/evals/runner/execute-suite.js +1 -1
  53. package/dist/src/evals/runner/reporters/braintrust.js +1 -1
  54. package/dist/src/evals/scores/index.js +1 -1
  55. package/dist/src/execution/await-authorization-orchestrator.js +1 -1
  56. package/dist/src/execution/connection-auth-steps.js +1 -1
  57. package/dist/src/execution/runtime-context.d.ts +1 -1
  58. package/dist/src/execution/runtime-context.js +1 -1
  59. package/dist/src/execution/sandbox/bindings/local.js +1 -1
  60. package/dist/src/execution/sandbox/bindings/vercel.js +1 -1
  61. package/dist/src/execution/sandbox/glob-tool.js +1 -1
  62. package/dist/src/execution/sandbox/grep-tool.js +1 -1
  63. package/dist/src/execution/sandbox/prewarm.d.ts +12 -2
  64. package/dist/src/execution/sandbox/prewarm.js +1 -1
  65. package/dist/src/execution/sandbox/read-file-tool.js +1 -1
  66. package/dist/src/execution/sandbox/require-sandbox.js +1 -1
  67. package/dist/src/execution/sandbox/ripgrep-probe.js +1 -1
  68. package/dist/src/execution/sandbox/truncate-output.js +1 -1
  69. package/dist/src/execution/session-callback-step.js +1 -1
  70. package/dist/src/execution/session.js +1 -1
  71. package/dist/src/execution/subagent-adapter.js +1 -1
  72. package/dist/src/execution/tool-compaction.js +1 -1
  73. package/dist/src/execution/turn-workflow.js +1 -1
  74. package/dist/src/execution/web-fetch/html.js +1 -1
  75. package/dist/src/execution/web-fetch/tool.js +1 -1
  76. package/dist/src/execution/workflow-entry.js +1 -1
  77. package/dist/src/execution/workflow-runtime.js +1 -1
  78. package/dist/src/execution/workflow-steps.js +1 -1
  79. package/dist/src/harness/attachment-staging.js +1 -1
  80. package/dist/src/harness/compaction.js +2 -2
  81. package/dist/src/harness/emission.js +1 -1
  82. package/dist/src/harness/input-requests.js +1 -1
  83. package/dist/src/harness/instrumentation-config.js +1 -1
  84. package/dist/src/harness/model-call-error.js +1 -1
  85. package/dist/src/harness/otel-integration.js +1 -1
  86. package/dist/src/harness/prompt-cache.js +1 -1
  87. package/dist/src/harness/provider-tools.js +1 -1
  88. package/dist/src/harness/proxy-input-requests.js +1 -1
  89. package/dist/src/harness/runtime-actions.js +1 -1
  90. package/dist/src/harness/step-hooks.js +1 -1
  91. package/dist/src/harness/tool-loop.js +1 -1
  92. package/dist/src/harness/tool-result-pruning.js +1 -1
  93. package/dist/src/internal/application/cache-metadata.js +1 -1
  94. package/dist/src/internal/application/compiled-artifacts.js +1 -1
  95. package/dist/src/internal/application/import-specifier.js +1 -1
  96. package/dist/src/internal/application/package.js +1 -1
  97. package/dist/src/internal/attachments/refs.js +1 -1
  98. package/dist/src/internal/attachments/sandbox-refs.js +1 -1
  99. package/dist/src/internal/attachments/url-refs.js +1 -1
  100. package/dist/src/internal/authored-asset-import-plugin.js +1 -1
  101. package/dist/src/internal/authored-definition/connection.js +1 -1
  102. package/dist/src/internal/authored-module-loader.js +1 -1
  103. package/dist/src/internal/authored-package-tsconfig-paths.js +1 -1
  104. package/dist/src/internal/bundler/nitro-rolldown.js +1 -1
  105. package/dist/src/internal/helpers/markdown.js +2 -2
  106. package/dist/src/internal/json-schema.js +1 -1
  107. package/dist/src/internal/logging.js +1 -1
  108. package/dist/src/internal/nitro/host/channel-routes.js +1 -1
  109. package/dist/src/internal/nitro/host/compiled-sandbox-backend-prune-plugin.js +1 -1
  110. package/dist/src/internal/nitro/host/create-application-nitro.js +1 -1
  111. package/dist/src/internal/nitro/host/dev-authored-source-watcher.js +1 -1
  112. package/dist/src/internal/nitro/host/schedule-task-routes.js +1 -1
  113. package/dist/src/internal/nitro/host/server-external-packages.js +1 -1
  114. package/dist/src/internal/nitro/host/start-development-server.js +1 -1
  115. package/dist/src/internal/nitro/host/start-production-server.d.ts +8 -0
  116. package/dist/src/internal/nitro/host/start-production-server.js +3 -0
  117. package/dist/src/internal/nitro/host/types.d.ts +8 -0
  118. package/dist/src/internal/nitro/host.d.ts +2 -1
  119. package/dist/src/internal/nitro/host.js +1 -1
  120. package/dist/src/internal/nitro/routes/agent-info/load-agent-info-data.js +1 -1
  121. package/dist/src/internal/nitro/routes/index.js +3 -3
  122. package/dist/src/internal/nitro/routes/workflow-route-helpers.js +1 -1
  123. package/dist/src/internal/node-esm-compat-banner.js +1 -1
  124. package/dist/src/internal/package-name.js +1 -1
  125. package/dist/src/internal/vercel-agent-summary.js +1 -1
  126. package/dist/src/internal/workflow-bundle/ash-service-route-output.js +1 -1
  127. package/dist/src/internal/workflow-bundle/builder-support.js +1 -1
  128. package/dist/src/internal/workflow-bundle/builder.js +2 -2
  129. package/dist/src/internal/workflow-bundle/vercel-workflow-output.js +1 -1
  130. package/dist/src/internal/workflow-bundle/workflow-builders.js +1 -1
  131. package/dist/src/internal/workflow-bundle/workflow-core-shim.js +1 -1
  132. package/dist/src/internal/workflow-bundle/workflow-transformer.js +1 -1
  133. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/ajv.js +1 -1
  134. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/code.js +1 -1
  135. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/index.js +2 -2
  136. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/scope.js +1 -1
  137. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/errors.js +1 -1
  138. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/index.js +1 -1
  139. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/names.js +1 -1
  140. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/ref_error.js +1 -1
  141. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/resolve.js +1 -1
  142. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/rules.js +1 -1
  143. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/util.js +1 -1
  144. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/boolSchema.js +1 -1
  145. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/dataType.js +2 -2
  146. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/defaults.js +1 -1
  147. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/index.js +1 -1
  148. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/keyword.js +1 -1
  149. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/subschema.js +1 -1
  150. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/core.js +1 -1
  151. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/equal.js +1 -1
  152. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/uri.js +1 -1
  153. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +1 -1
  154. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +1 -1
  155. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/allOf.js +1 -1
  156. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/contains.js +1 -1
  157. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +2 -2
  158. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/if.js +1 -1
  159. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/index.js +1 -1
  160. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/items.js +1 -1
  161. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/items2020.js +1 -1
  162. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/not.js +1 -1
  163. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +1 -1
  164. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +1 -1
  165. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +1 -1
  166. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/properties.js +1 -1
  167. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +1 -1
  168. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +1 -1
  169. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/code.js +1 -1
  170. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/index.js +1 -1
  171. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/ref.js +1 -1
  172. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/discriminator/index.js +1 -1
  173. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/draft7.js +1 -1
  174. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/format/format.js +1 -1
  175. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/const.js +1 -1
  176. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/enum.js +1 -1
  177. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/index.js +1 -1
  178. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitItems.js +1 -1
  179. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitLength.js +1 -1
  180. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +1 -1
  181. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +1 -1
  182. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +1 -1
  183. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/pattern.js +1 -1
  184. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/required.js +1 -1
  185. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +1 -1
  186. package/dist/src/node_modules/.pnpm/fast-uri@3.1.2/node_modules/fast-uri/index.js +1 -1
  187. package/dist/src/node_modules/.pnpm/fast-uri@3.1.2/node_modules/fast-uri/lib/schemes.js +1 -1
  188. package/dist/src/node_modules/.pnpm/fast-uri@3.1.2/node_modules/fast-uri/lib/utils.js +1 -1
  189. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/_vendor/partial-json-parser/parser.js +2 -2
  190. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/auth/workload-identity-auth.js +1 -1
  191. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/azure.js +1 -1
  192. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/client.js +2 -2
  193. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/detect-platform.js +1 -1
  194. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/errors.js +1 -1
  195. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/headers.js +1 -1
  196. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/qs/formats.js +1 -1
  197. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/qs/stringify.js +1 -1
  198. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/qs/utils.js +1 -1
  199. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/request-options.js +1 -1
  200. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/to-file.js +1 -1
  201. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/uploads.js +1 -1
  202. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/base64.js +1 -1
  203. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/bytes.js +1 -1
  204. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/env.js +1 -1
  205. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/log.js +1 -1
  206. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/path.js +1 -1
  207. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/sleep.js +1 -1
  208. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/uuid.js +1 -1
  209. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/values.js +1 -1
  210. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/AbstractChatCompletionRunner.js +1 -1
  211. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/Util.js +1 -1
  212. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/chatCompletionUtils.js +1 -1
  213. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/version.js +1 -1
  214. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Options.js +1 -1
  215. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Refs.js +1 -1
  216. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/getRelativePath.js +1 -1
  217. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parseDef.js +1 -1
  218. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/catch.js +1 -1
  219. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/date.js +1 -1
  220. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js +1 -1
  221. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/optional.js +1 -1
  222. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js +1 -1
  223. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js +1 -1
  224. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/string.js +1 -1
  225. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/union.js +1 -1
  226. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/selectParser.js +1 -1
  227. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js +1 -1
  228. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/ZodError.js +1 -1
  229. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/errors.js +1 -1
  230. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/parseUtil.js +1 -1
  231. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/util.js +1 -1
  232. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/locales/en.js +1 -1
  233. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.js +1 -1
  234. package/dist/src/packages/ash-scaffold/src/channels.js +2 -2
  235. package/dist/src/packages/ash-scaffold/src/module-files.js +1 -1
  236. package/dist/src/protocol/message.js +1 -1
  237. package/dist/src/protocol/routes.js +1 -1
  238. package/dist/src/public/channels/ash.js +2 -2
  239. package/dist/src/public/channels/auth.js +1 -1
  240. package/dist/src/public/channels/discord/api.js +1 -1
  241. package/dist/src/public/channels/discord/defaults.js +1 -1
  242. package/dist/src/public/channels/discord/discordChannel.js +1 -1
  243. package/dist/src/public/channels/discord/hitl.js +1 -1
  244. package/dist/src/public/channels/discord/inbound.js +1 -1
  245. package/dist/src/public/channels/discord/verify.js +1 -1
  246. package/dist/src/public/channels/discord/verifyInbound.js +1 -1
  247. package/dist/src/public/channels/slack/api.js +1 -1
  248. package/dist/src/public/channels/slack/attachments.js +1 -1
  249. package/dist/src/public/channels/slack/constants.js +1 -1
  250. package/dist/src/public/channels/slack/defaults.js +2 -2
  251. package/dist/src/public/channels/slack/hitl.js +1 -1
  252. package/dist/src/public/channels/slack/interactions.js +1 -1
  253. package/dist/src/public/channels/slack/limits.js +1 -1
  254. package/dist/src/public/channels/slack/mrkdwn.js +1 -1
  255. package/dist/src/public/channels/slack/slackChannel.js +1 -1
  256. package/dist/src/public/channels/slack/verify.js +1 -1
  257. package/dist/src/public/channels/teams/api.js +1 -1
  258. package/dist/src/public/channels/teams/attachments.js +1 -1
  259. package/dist/src/public/channels/teams/defaults.js +1 -1
  260. package/dist/src/public/channels/teams/hitl.js +1 -1
  261. package/dist/src/public/channels/teams/inbound.js +1 -1
  262. package/dist/src/public/channels/teams/limits.js +1 -1
  263. package/dist/src/public/channels/teams/teamsChannel.js +1 -1
  264. package/dist/src/public/channels/teams/verify.js +1 -1
  265. package/dist/src/public/channels/telegram/api.js +1 -1
  266. package/dist/src/public/channels/telegram/attachments.js +1 -1
  267. package/dist/src/public/channels/telegram/defaults.js +1 -1
  268. package/dist/src/public/channels/telegram/hitl.js +1 -1
  269. package/dist/src/public/channels/telegram/inbound.js +1 -1
  270. package/dist/src/public/channels/telegram/telegramChannel.js +1 -1
  271. package/dist/src/public/channels/telegram/verify.js +1 -1
  272. package/dist/src/public/channels/twilio/defaults.js +1 -1
  273. package/dist/src/public/channels/twilio/inbound.js +1 -1
  274. package/dist/src/public/channels/twilio/twilioChannel.js +1 -1
  275. package/dist/src/public/channels/twilio/verify.js +1 -1
  276. package/dist/src/public/channels/upload-policy.js +1 -1
  277. package/dist/src/public/definitions/channel.js +1 -1
  278. package/dist/src/public/definitions/tool.js +1 -1
  279. package/dist/src/public/next/index.js +1 -1
  280. package/dist/src/public/next/server.js +1 -1
  281. package/dist/src/public/next/vercel-json.js +1 -1
  282. package/dist/src/public/tool-result-narrowing.js +1 -1
  283. package/dist/src/public/tools/defaults.js +1 -1
  284. package/dist/src/react/use-ash-agent.js +1 -1
  285. package/dist/src/runtime/actions/types.js +1 -1
  286. package/dist/src/runtime/agent/bootstrap-model-utils.js +1 -1
  287. package/dist/src/runtime/agent/bootstrap-model.js +1 -1
  288. package/dist/src/runtime/agent/bootstrap.js +1 -1
  289. package/dist/src/runtime/agent/mock-model-adapter.js +1 -1
  290. package/dist/src/runtime/cache-key.js +1 -1
  291. package/dist/src/runtime/channels/registry.js +1 -1
  292. package/dist/src/runtime/connections/authorization-tokens.js +1 -1
  293. package/dist/src/runtime/connections/callback-route.js +1 -1
  294. package/dist/src/runtime/connections/principal-context.js +1 -1
  295. package/dist/src/runtime/connections/principal.js +1 -1
  296. package/dist/src/runtime/framework-channels/index.js +1 -1
  297. package/dist/src/runtime/framework-tools/ask-question.js +1 -1
  298. package/dist/src/runtime/framework-tools/bash.js +1 -1
  299. package/dist/src/runtime/framework-tools/connection-search.js +1 -1
  300. package/dist/src/runtime/framework-tools/file-state.js +1 -1
  301. package/dist/src/runtime/framework-tools/glob.js +1 -1
  302. package/dist/src/runtime/framework-tools/grep.js +1 -1
  303. package/dist/src/runtime/framework-tools/index.js +1 -1
  304. package/dist/src/runtime/framework-tools/pending-connection-tool-calls.js +1 -1
  305. package/dist/src/runtime/framework-tools/read-file.js +1 -1
  306. package/dist/src/runtime/framework-tools/skill.js +1 -1
  307. package/dist/src/runtime/framework-tools/todo.js +2 -2
  308. package/dist/src/runtime/framework-tools/web-fetch.js +1 -1
  309. package/dist/src/runtime/framework-tools/web-search.js +1 -1
  310. package/dist/src/runtime/framework-tools/write-file.js +1 -1
  311. package/dist/src/runtime/governance/auth/jwt-ecdsa.js +1 -1
  312. package/dist/src/runtime/governance/auth/oidc.js +1 -1
  313. package/dist/src/runtime/governance/auth/token-claims.js +1 -1
  314. package/dist/src/runtime/graph.js +1 -1
  315. package/dist/src/runtime/input/types.js +1 -1
  316. package/dist/src/runtime/loaders/bundled-artifacts.d.ts +12 -0
  317. package/dist/src/runtime/loaders/bundled-artifacts.js +1 -1
  318. package/dist/src/runtime/loaders/compile-metadata.js +1 -1
  319. package/dist/src/runtime/loaders/manifest.js +1 -1
  320. package/dist/src/runtime/loaders/module-map.js +1 -1
  321. package/dist/src/runtime/prompt/compose.js +2 -2
  322. package/dist/src/runtime/prompt/connections.js +1 -1
  323. package/dist/src/runtime/resolve-agent-graph.js +1 -1
  324. package/dist/src/runtime/resolve-hook.js +1 -1
  325. package/dist/src/runtime/sandbox/keys.js +1 -1
  326. package/dist/src/runtime/sandbox/registry.js +1 -1
  327. package/dist/src/runtime/schedules/register.js +1 -1
  328. package/dist/src/runtime/session-callback-route.js +1 -1
  329. package/dist/src/runtime/sessions/auth.js +1 -1
  330. package/dist/src/runtime/sessions/compiled-agent-cache.js +1 -1
  331. package/dist/src/runtime/sessions/runtime-context-keys.d.ts +11 -0
  332. package/dist/src/runtime/sessions/runtime-context-keys.js +1 -0
  333. package/dist/src/runtime/sessions/runtime-session.js +1 -1
  334. package/dist/src/runtime/skills/fragment-context.js +1 -1
  335. package/dist/src/runtime/skills/sandbox-access.js +1 -1
  336. package/dist/src/runtime/subagents/registry.js +1 -1
  337. package/dist/src/runtime/workspace/types.js +1 -1
  338. package/dist/src/services/dev-client/request-headers.js +1 -1
  339. package/dist/src/services/dev-client/vercel-auth-error.js +1 -1
  340. package/dist/src/shared/json-schemas.js +1 -1
  341. package/dist/src/shared/json.js +1 -1
  342. package/dist/src/shared/skill-package.js +1 -1
  343. package/package.json +1 -1
  344. package/dist/src/context/seed-keys.d.ts +0 -39
  345. package/dist/src/context/seed-keys.js +0 -1
@@ -1,5 +1,5 @@
1
- import{dirname,join,relative,resolve}from"node:path";import{cp,mkdir,readFile,rm,writeFile}from"node:fs/promises";import{resolvePackageSourceDirectoryPath,resolveWorkflowModulePath}from"#internal/application/package.js";import{normalizeEsmImportSpecifier}from"#internal/application/import-specifier.js";import{Buffer}from"node:buffer";import{buildWithNitroRolldown,getSingleRolldownChunk}from"#internal/bundler/nitro-rolldown.js";import{prepareAshVersionedCacheDirectory,writeAshVersionedCacheMetadata}from"#internal/application/cache-metadata.js";import{WORKFLOW_BUILDER_DEFERRED_PACKAGES,WORKFLOW_STEP_EXTERNAL_PACKAGES,copyNitroFunctionDirectory,createWorkflowFunctionEnvironment,retargetNitroFunctionDirectoryToWorkflowRoute}from"#internal/workflow-bundle/vercel-workflow-output.js";import{WORKFLOW_QUEUE_TRIGGER,detectWorkflowPatterns}from"#internal/workflow-bundle/workflow-builders.js";import{WORKFLOW_VIRTUAL_ENTRY_ID,atomicWriteFile,bundleFinalWorkflowOutput,collectWorkflowInputFiles,convertClassesManifest,convertStepsManifest,convertWorkflowsManifest,createAshPackageImportsPlugin,createWorkflowImport,createWorkflowPseudoPackagePlugin,createWorkflowTransformPlugin,createWorkflowVirtualEntryPlugin}from"#internal/workflow-bundle/builder-support.js";import{writeNitroStepEntrypoint}from"#internal/workflow-bundle/nitro-step-entry.js";var workflowBundleBuildLocks=new Map,WorkflowBundleBuilder=class{#e;#t;config;#n=new WeakMap;constructor(e){this.config={buildTarget:`standalone`,dirs:[resolvePackageSourceDirectoryPath(`src/execution`)],externalPackages:[...WORKFLOW_STEP_EXTERNAL_PACKAGES,...WORKFLOW_BUILDER_DEFERRED_PACKAGES],projectRoot:e.appRoot,watch:e.watch,workingDir:e.rootDir},this.#e=e.compiledArtifactsBootstrapPath,this.#t=e.outDir}async build(e={}){let t=(workflowBundleBuildLocks.get(this.#t)??Promise.resolve()).then(()=>this.#r(e));workflowBundleBuildLocks.set(this.#t,t.catch(()=>{})),await t}async#r(n){await prepareAshVersionedCacheDirectory(this.#t);let r=await this.#i();if(r.length===0)throw Error(`Expected the execution workflow source file under "${resolvePackageSourceDirectoryPath(`src/execution`)}".`);let i=await this.findTsConfigPath();await mkdir(this.#t,{recursive:!0});let o=await this.discoverEntries(r,this.#t,i),s=join(this.#t,`workflows.mjs`),{manifest:c}=await this.createWorkflowsBundle({discoveredEntries:o,keepInterimBundleContext:!1,outfile:s,bundleFinalOutput:!1,format:`esm`,inputFiles:r,tsconfigPath:i}),d=join(this.#t,`steps.mjs`),f=await writeNitroStepEntrypoint({builtinsPath:resolveWorkflowModulePath(`workflow/internal/builtins`),discoveredEntries:o,outfile:d,preferAbsoluteFileImports:!0,projectRoot:this.config.projectRoot??this.config.workingDir,workingDir:this.config.workingDir}),p=n.nitroStepOutfile;p!==void 0&&p!==d&&await writeNitroStepEntrypoint({builtinsPath:resolveWorkflowModulePath(`workflow/internal/builtins`),discoveredEntries:o,outfile:p,preferAbsoluteFileImports:!0,projectRoot:this.config.projectRoot??this.config.workingDir,workingDir:this.config.workingDir}),await addStepRegistrationsImport(s,d),await rewriteWorkflowRuntimeImports(s),await rewriteWorkflowCodeLiteral(s);let m=n.nitroWorkflowOutfile;m!==void 0&&m!==s&&(await mkdir(dirname(m),{recursive:!0}),await mirrorFileBypassingUnlink(s,m),p!==void 0&&(await addStepRegistrationsImport(m,p),await rewriteWorkflowRuntimeImports(m),await rewriteWorkflowCodeLiteral(m))),await this.createManifest({workflowBundlePath:join(this.#t,`workflows.mjs`),manifestDir:this.#t,manifest:{steps:{...f.steps,...c.steps},workflows:{...f.workflows,...c.workflows},classes:{...f.classes,...c.classes}}}),await writeAshVersionedCacheMetadata(this.#t)}get transformProjectRoot(){return this.config.projectRoot??this.config.workingDir}async findTsConfigPath(){let n=this.config.workingDir;for(;;){for(let e of[`tsconfig.json`,`jsconfig.json`]){let r=join(n,e);try{return await readFile(r),r}catch(e){if(!(e instanceof Error&&`code`in e&&e.code===`ENOENT`))throw e}}let r=dirname(n);if(r===n)return;n=r}}async getInputFiles(){let e=this.config.dirs.map(e=>resolve(this.config.workingDir,e));return(await Promise.all(e.map(e=>collectWorkflowInputFiles(e)))).flat()}async discoverEntries(e,t,n){let r=this.#n.get(e);if(r!==void 0)return r;let i={discoveredSerdeFiles:[],discoveredSteps:[],discoveredWorkflows:[]};for(let t of e){let e=detectWorkflowPatterns(await readFile(t,`utf8`));e.hasUseStep&&i.discoveredSteps.push(t),e.hasUseWorkflow&&i.discoveredWorkflows.push(t),e.hasSerde&&i.discoveredSerdeFiles.push(t)}return this.#n.set(e,i),i}async createWorkflowsBundle({bundleFinalOutput:t=!0,discoveredEntries:n,format:r=`cjs`,inputFiles:i,keepInterimBundleContext:a=this.config.watch,outfile:o,tsconfigPath:s}){let c=n??await this.discoverEntries(i,dirname(o),s),l=[...c.discoveredWorkflows].sort(),u=new Set(l),d=[...c.discoveredSerdeFiles].sort().filter(e=>!u.has(e)),f={},h=[...l.map(e=>createWorkflowImport(e,this.config.workingDir)),...d.map(e=>createWorkflowImport(e,this.config.workingDir))].join(`
2
- `);return await bundleFinalWorkflowOutput({bundleFinalOutput:t,code:getSingleRolldownChunk(await buildWithNitroRolldown({cwd:this.config.workingDir,input:WORKFLOW_VIRTUAL_ENTRY_ID,platform:`neutral`,plugins:[createWorkflowVirtualEntryPlugin(h),createWorkflowPseudoPackagePlugin(),createAshPackageImportsPlugin(this.config.workingDir,{workflowCondition:!0}),createWorkflowTransformPlugin({manifest:f,projectRoot:this.transformProjectRoot,sideEffectFiles:[...l,...d],workingDir:this.config.workingDir})],resolve:{conditionNames:[`ash-source`,`workflow`,`node`,`import`,`default`],extensions:[`.ts`,`.tsx`,`.mts`,`.cts`,`.js`,`.jsx`,`.mjs`,`.cjs`],mainFields:[`module`,`main`]},tsconfig:s??!1,write:!1,output:{banner:`globalThis.__private_workflows = new Map();`,codeSplitting:!1,comments:!1,format:`cjs`,sourcemap:`inline`}}),`intermediate workflow bundle for "${o}"`).code,format:r,outfile:o,workingDir:this.config.workingDir}),a?{bundleFinal:async e=>{await bundleFinalWorkflowOutput({bundleFinalOutput:t,code:e,format:r,outfile:o,workingDir:this.config.workingDir})},interimBundleCtx:void 0,manifest:f}:{manifest:f}}async createManifest({manifest:e,manifestDir:n}){let r={version:`1.0.0`,steps:convertStepsManifest(e.steps),workflows:convertWorkflowsManifest(e.workflows),classes:convertClassesManifest(e.classes)},i=JSON.stringify(r,null,2);return await mkdir(n,{recursive:!0}),await writeFile(join(n,`manifest.json`),i),i}async buildVercelOutput(e){await this.build();let n=join(this.#t,`vercel-build-output`,`functions`,`.well-known`,`workflow`,`v1`),r=join(n,`flow.func`),o=join(e.outputDir,`functions`,`.well-known`,`workflow`,`v1`),c=join(e.flowNitroOutputDir,`functions`,`__server.func`),l=join(e.flowNitroOutputDir,`functions`,`.well-known`,`workflow`,`v1`,`flow.func`),u=join(o,`flow.func`),d=join(o,`step.func`),f=join(o,`webhook`,`[token].func`);await copyNitroFunctionDirectory({fallbackPath:c,sourcePath:l,targetPath:r}),await Promise.all([this.#a(r,{experimentalTriggers:Array.from([WORKFLOW_QUEUE_TRIGGER]),maxDuration:`max`,runtime:e.runtime??null,shouldAddHelpers:!1}),cp(join(this.#t,`manifest.json`),join(n,`manifest.json`))]),await retargetNitroFunctionDirectoryToWorkflowRoute({functionDirectoryPath:r,workflowRoutePath:`/.well-known/workflow/v1/flow`}),await Promise.all([rm(u,{force:!0,recursive:!0}),rm(d,{force:!0,recursive:!0}),rm(f,{force:!0,recursive:!0})]),await mkdir(o,{recursive:!0}),await Promise.all([cp(r,u,{recursive:!0}),cp(join(n,`manifest.json`),join(o,`manifest.json`))])}async#i(){return[...await this.getInputFiles(),this.#e]}async#a(e,n){let r=join(e,`.vc-config.json`),i=await this.#o(r),a={...i};a.environment=createWorkflowFunctionEnvironment(i.environment),n.runtime!==null&&(a.runtime=n.runtime),n.maxDuration!==void 0&&(a.maxDuration=n.maxDuration),n.shouldAddHelpers!==void 0&&(a.shouldAddHelpers=n.shouldAddHelpers),n.shouldAddSourcemapSupport!==void 0&&(a.shouldAddSourcemapSupport=n.shouldAddSourcemapSupport),n.experimentalTriggers!==void 0&&(a.experimentalTriggers=[...n.experimentalTriggers]),await writeFile(r,`${JSON.stringify(a,null,2)}\n`)}async#o(e){try{let t=JSON.parse(await readFile(e,`utf8`));if(typeof t==`object`&&t)return t}catch{}return{}}};async function addStepRegistrationsImport(t,n){let r=await readTextFileIfPresent(t);if(r===null||r.includes(`__ashWorkflowStepsRegistered`))return;let i=createRelativeImportSpecifier(dirname(t),n),a=[`import { __steps_registered as __ashWorkflowStepsRegistered } from ${JSON.stringify(i)};`,`void __ashWorkflowStepsRegistered;`,``].join(`
1
+ import{dirname,join,relative,resolve}from"node:path";import{cp,mkdir,readFile,rm,writeFile}from"node:fs/promises";import{resolvePackageSourceDirectoryPath,resolveWorkflowModulePath}from"#internal/application/package.js";import{normalizeEsmImportSpecifier}from"#internal/application/import-specifier.js";import{buildWithNitroRolldown,getSingleRolldownChunk}from"#internal/bundler/nitro-rolldown.js";import{prepareAshVersionedCacheDirectory,writeAshVersionedCacheMetadata}from"#internal/application/cache-metadata.js";import{WORKFLOW_BUILDER_DEFERRED_PACKAGES,WORKFLOW_STEP_EXTERNAL_PACKAGES,copyNitroFunctionDirectory,createWorkflowFunctionEnvironment,retargetNitroFunctionDirectoryToWorkflowRoute}from"#internal/workflow-bundle/vercel-workflow-output.js";import{WORKFLOW_QUEUE_TRIGGER,detectWorkflowPatterns}from"#internal/workflow-bundle/workflow-builders.js";import{Buffer}from"node:buffer";import{WORKFLOW_VIRTUAL_ENTRY_ID,atomicWriteFile,bundleFinalWorkflowOutput,collectWorkflowInputFiles,convertClassesManifest,convertStepsManifest,convertWorkflowsManifest,createAshPackageImportsPlugin,createWorkflowImport,createWorkflowPseudoPackagePlugin,createWorkflowTransformPlugin,createWorkflowVirtualEntryPlugin}from"#internal/workflow-bundle/builder-support.js";import{writeNitroStepEntrypoint}from"#internal/workflow-bundle/nitro-step-entry.js";const workflowBundleBuildLocks=new Map;var WorkflowBundleBuilder=class{#e;#t;config;#n=new WeakMap;constructor(e){this.config={buildTarget:`standalone`,dirs:[resolvePackageSourceDirectoryPath(`src/execution`)],externalPackages:[...WORKFLOW_STEP_EXTERNAL_PACKAGES,...WORKFLOW_BUILDER_DEFERRED_PACKAGES],projectRoot:e.appRoot,watch:e.watch,workingDir:e.rootDir},this.#e=e.compiledArtifactsBootstrapPath,this.#t=e.outDir}async build(e={}){let t=(workflowBundleBuildLocks.get(this.#t)??Promise.resolve()).then(()=>this.#r(e));workflowBundleBuildLocks.set(this.#t,t.catch(()=>{})),await t}async#r(n){await prepareAshVersionedCacheDirectory(this.#t);let r=await this.#i();if(r.length===0)throw Error(`Expected the execution workflow source file under "${resolvePackageSourceDirectoryPath(`src/execution`)}".`);let i=await this.findTsConfigPath();await mkdir(this.#t,{recursive:!0});let o=await this.discoverEntries(r,this.#t,i),s=join(this.#t,`workflows.mjs`),{manifest:c}=await this.createWorkflowsBundle({discoveredEntries:o,keepInterimBundleContext:!1,outfile:s,bundleFinalOutput:!1,format:`esm`,inputFiles:r,tsconfigPath:i}),d=join(this.#t,`steps.mjs`),f=await writeNitroStepEntrypoint({builtinsPath:resolveWorkflowModulePath(`workflow/internal/builtins`),discoveredEntries:o,outfile:d,preferAbsoluteFileImports:!0,projectRoot:this.config.projectRoot??this.config.workingDir,workingDir:this.config.workingDir}),p=n.nitroStepOutfile;p!==void 0&&p!==d&&await writeNitroStepEntrypoint({builtinsPath:resolveWorkflowModulePath(`workflow/internal/builtins`),discoveredEntries:o,outfile:p,preferAbsoluteFileImports:!0,projectRoot:this.config.projectRoot??this.config.workingDir,workingDir:this.config.workingDir}),await addStepRegistrationsImport(s,d),await rewriteWorkflowRuntimeImports(s),await rewriteWorkflowCodeLiteral(s);let g=n.nitroWorkflowOutfile;g!==void 0&&g!==s&&(await mkdir(dirname(g),{recursive:!0}),await mirrorFileBypassingUnlink(s,g),p!==void 0&&(await addStepRegistrationsImport(g,p),await rewriteWorkflowRuntimeImports(g),await rewriteWorkflowCodeLiteral(g))),await this.createManifest({workflowBundlePath:join(this.#t,`workflows.mjs`),manifestDir:this.#t,manifest:{steps:{...f.steps,...c.steps},workflows:{...f.workflows,...c.workflows},classes:{...f.classes,...c.classes}}}),await writeAshVersionedCacheMetadata(this.#t)}get transformProjectRoot(){return this.config.projectRoot??this.config.workingDir}async findTsConfigPath(){let n=this.config.workingDir;for(;;){for(let e of[`tsconfig.json`,`jsconfig.json`]){let r=join(n,e);try{return await readFile(r),r}catch(e){if(!(e instanceof Error&&`code`in e&&e.code===`ENOENT`))throw e}}let r=dirname(n);if(r===n)return;n=r}}async getInputFiles(){let e=this.config.dirs.map(e=>resolve(this.config.workingDir,e));return(await Promise.all(e.map(e=>collectWorkflowInputFiles(e)))).flat()}async discoverEntries(e,t,n){let r=this.#n.get(e);if(r!==void 0)return r;let i={discoveredSerdeFiles:[],discoveredSteps:[],discoveredWorkflows:[]};for(let t of e){let e=detectWorkflowPatterns(await readFile(t,`utf8`));e.hasUseStep&&i.discoveredSteps.push(t),e.hasUseWorkflow&&i.discoveredWorkflows.push(t),e.hasSerde&&i.discoveredSerdeFiles.push(t)}return this.#n.set(e,i),i}async createWorkflowsBundle({bundleFinalOutput:t=!0,discoveredEntries:n,format:r=`cjs`,inputFiles:i,keepInterimBundleContext:a=this.config.watch,outfile:o,tsconfigPath:s}){let c=n??await this.discoverEntries(i,dirname(o),s),l=[...c.discoveredWorkflows].sort(),u=new Set(l),d=[...c.discoveredSerdeFiles].sort().filter(e=>!u.has(e)),m={},h=[...l.map(e=>createWorkflowImport(e,this.config.workingDir)),...d.map(e=>createWorkflowImport(e,this.config.workingDir))].join(`
2
+ `);return await bundleFinalWorkflowOutput({bundleFinalOutput:t,code:getSingleRolldownChunk(await buildWithNitroRolldown({cwd:this.config.workingDir,input:WORKFLOW_VIRTUAL_ENTRY_ID,platform:`neutral`,plugins:[createWorkflowVirtualEntryPlugin(h),createWorkflowPseudoPackagePlugin(),createAshPackageImportsPlugin(this.config.workingDir,{workflowCondition:!0}),createWorkflowTransformPlugin({manifest:m,projectRoot:this.transformProjectRoot,sideEffectFiles:[...l,...d],workingDir:this.config.workingDir})],resolve:{conditionNames:[`ash-source`,`workflow`,`node`,`import`,`default`],extensions:[`.ts`,`.tsx`,`.mts`,`.cts`,`.js`,`.jsx`,`.mjs`,`.cjs`],mainFields:[`module`,`main`]},tsconfig:s??!1,write:!1,output:{banner:`globalThis.__private_workflows = new Map();`,codeSplitting:!1,comments:!1,format:`cjs`,sourcemap:`inline`}}),`intermediate workflow bundle for "${o}"`).code,format:r,outfile:o,workingDir:this.config.workingDir}),a?{bundleFinal:async e=>{await bundleFinalWorkflowOutput({bundleFinalOutput:t,code:e,format:r,outfile:o,workingDir:this.config.workingDir})},interimBundleCtx:void 0,manifest:m}:{manifest:m}}async createManifest({manifest:e,manifestDir:n}){let r={version:`1.0.0`,steps:convertStepsManifest(e.steps),workflows:convertWorkflowsManifest(e.workflows),classes:convertClassesManifest(e.classes)},i=JSON.stringify(r,null,2);return await mkdir(n,{recursive:!0}),await writeFile(join(n,`manifest.json`),i),i}async buildVercelOutput(e){await this.build();let n=join(this.#t,`vercel-build-output`,`functions`,`.well-known`,`workflow`,`v1`),r=join(n,`flow.func`),o=join(e.outputDir,`functions`,`.well-known`,`workflow`,`v1`),c=join(e.flowNitroOutputDir,`functions`,`__server.func`),l=join(e.flowNitroOutputDir,`functions`,`.well-known`,`workflow`,`v1`,`flow.func`),u=join(o,`flow.func`),d=join(o,`step.func`),f=join(o,`webhook`,`[token].func`);await copyNitroFunctionDirectory({fallbackPath:c,sourcePath:l,targetPath:r}),await Promise.all([this.#a(r,{experimentalTriggers:Array.from([WORKFLOW_QUEUE_TRIGGER]),maxDuration:`max`,runtime:e.runtime??null,shouldAddHelpers:!1}),cp(join(this.#t,`manifest.json`),join(n,`manifest.json`))]),await retargetNitroFunctionDirectoryToWorkflowRoute({functionDirectoryPath:r,workflowRoutePath:`/.well-known/workflow/v1/flow`}),await Promise.all([rm(u,{force:!0,recursive:!0}),rm(d,{force:!0,recursive:!0}),rm(f,{force:!0,recursive:!0})]),await mkdir(o,{recursive:!0}),await Promise.all([cp(r,u,{recursive:!0}),cp(join(n,`manifest.json`),join(o,`manifest.json`))])}async#i(){return[...await this.getInputFiles(),this.#e]}async#a(e,n){let r=join(e,`.vc-config.json`),i=await this.#o(r),a={...i};a.environment=createWorkflowFunctionEnvironment(i.environment),n.runtime!==null&&(a.runtime=n.runtime),n.maxDuration!==void 0&&(a.maxDuration=n.maxDuration),n.shouldAddHelpers!==void 0&&(a.shouldAddHelpers=n.shouldAddHelpers),n.shouldAddSourcemapSupport!==void 0&&(a.shouldAddSourcemapSupport=n.shouldAddSourcemapSupport),n.experimentalTriggers!==void 0&&(a.experimentalTriggers=[...n.experimentalTriggers]),await writeFile(r,`${JSON.stringify(a,null,2)}\n`)}async#o(e){try{let t=JSON.parse(await readFile(e,`utf8`));if(typeof t==`object`&&t)return t}catch{}return{}}};async function addStepRegistrationsImport(t,n){let r=await readTextFileIfPresent(t);if(r===null||r.includes(`__ashWorkflowStepsRegistered`))return;let i=createRelativeImportSpecifier(dirname(t),n),a=[`import { __steps_registered as __ashWorkflowStepsRegistered } from ${JSON.stringify(i)};`,`void __ashWorkflowStepsRegistered;`,``].join(`
3
3
  `),o=r.match(/^import\s.+?;\n/m);if(o===null||o.index===void 0){await atomicWriteFile(t,`${a}${r}`);return}let s=o.index+o[0].length;await atomicWriteFile(t,`${r.slice(0,s)}${a}${r.slice(s)}`)}async function rewriteWorkflowRuntimeImports(e){let t=await readTextFileIfPresent(e);if(t===null)return;let n=t;for(let e of[`workflow`,`workflow/api`,`workflow/internal/builtins`,`workflow/internal/private`,`workflow/runtime`]){let t=normalizeImportSpecifierPath(resolveWorkflowModulePath(e));n=replaceStringLiteralSpecifier(n,e,t)}n!==t&&await atomicWriteFile(e,n)}async function rewriteWorkflowCodeLiteral(e){let t=await readTextFileIfPresent(e);if(t===null)return;let n=t.indexOf(`const workflowCode = `),r=t.lastIndexOf(`;
4
4
 
5
5
  export const POST = workflowEntrypoint(workflowCode);`);if(n===-1||r===-1||r<=n)return;let i=n+21,a=t.slice(i,r);if(!a.trimStart().startsWith("`"))return;let o=decodeWorkflowCodeTemplateLiteral(a,e),s=`${t.slice(0,i)}${encodeWorkflowCodeLiteral(o)}${t.slice(r)}`;s!==t&&await atomicWriteFile(e,s)}function encodeWorkflowCodeLiteral(e){let t=Buffer.from(e,`utf8`).toString(`base64`).match(/.{1,16384}/g)??[``];return`Buffer.from(${JSON.stringify(t)}.join(""), "base64").toString("utf8")`}function decodeWorkflowCodeTemplateLiteral(e,t){let n=e.trim();if(!n.startsWith("`")||!n.endsWith("`"))throw Error(`Expected generated workflow code literal in "${t}" to be a template.`);let r=n.slice(1,-1),i=``;for(let e=0;e<r.length;e+=1){let t=r[e];if(t!==`\\`){i+=t;continue}let n=r[e+1];if(n===`\\`||n==="`"||n===`$`){i+=n,e+=1;continue}i+=t}return i}function replaceStringLiteralSpecifier(e,t,n){return e.replaceAll(JSON.stringify(t),JSON.stringify(n)).replaceAll(`'${t}'`,JSON.stringify(n))}function normalizeImportSpecifierPath(e){return normalizeEsmImportSpecifier(e)}function createRelativeImportSpecifier(e,t){let r=relative(e,t).replaceAll(`\\`,`/`);return r.startsWith(`.`)?r:`./${r}`}async function readTextFileIfPresent(e){try{return await readFile(e,`utf8`)}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return null;throw e}}async function readBinaryFileIfPresent(e){try{return await readFile(e)}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return null;throw e}}async function mirrorFileBypassingUnlink(e,t){let n=await readFile(e),r=await readBinaryFileIfPresent(t);r!==null&&r.equals(n)||await atomicWriteFile(t,n)}export{WorkflowBundleBuilder};
@@ -1,3 +1,3 @@
1
- import{basename,dirname,extname,join,relative}from"node:path";import{cp,mkdir,readFile,readdir,realpath,rename,rm,symlink,writeFile}from"node:fs/promises";import{buildWithNitroRolldown,getSingleRolldownChunk}from"#internal/bundler/nitro-rolldown.js";import{ASH_SHARED_SERVER_FUNCTION_PATH,applyAshServiceRoutePrefixWrapper,isAshVercelFunctionPath,normalizeAshVercelRoutes}from"#internal/workflow-bundle/ash-service-route-output.js";var WORKFLOW_STEP_EXTERNAL_PACKAGES=[`@mongodb-js/zstd`,`node-liblzma`],WORKFLOW_BUILDER_DEFERRED_PACKAGES=[`@chat-adapter/slack`,`chat`],WORKFLOW_FUNCTION_NODE_OPTIONS=`--experimental-require-module`;function createWorkflowFunctionEnvironment(e){let t={};return isRecord(e)&&Object.assign(t,e),t.NODE_OPTIONS=WORKFLOW_FUNCTION_NODE_OPTIONS,t}function isRecord(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}async function prepareVercelFunctionDirectory(e){await rm(e,{force:!0,recursive:!0}),await mkdir(e,{recursive:!0})}async function resolveNitroFunctionDirectory(e){try{return await realpath(e.sourcePath)}catch{return await realpath(e.fallbackPath)}}async function copyNitroFunctionDirectory(e){let t=await resolveNitroFunctionDirectory({fallbackPath:e.fallbackPath,sourcePath:e.sourcePath});await prepareVercelFunctionDirectory(e.targetPath),await cp(t,e.targetPath,{dereference:!0,recursive:!0})}async function normalizeAshVercelFunctionOutput(e,t={}){let n=join(e,`functions`),i=await prepareSharedAshServerFunction(n);i!==null&&(t.servicePrefix!==void 0&&await applyAshServiceRoutePrefixWrapper(i,t.servicePrefix),await repointAshFunctionSymlinksInDirectory(n,i)),await pruneNonAshFunctionEntries(n,n),await pruneNonAshVercelRoutes(e,t.servicePrefix)}async function prepareSharedAshServerFunction(e){let n=join(e,`__server.func`),i=join(e,ASH_SHARED_SERVER_FUNCTION_PATH),s;try{s=await realpath(n)}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return null;throw e}let c=`${i}.ash-staging`;return await mkdir(dirname(i),{recursive:!0}),await rm(c,{force:!0,recursive:!0}),await cp(s,c,{dereference:!0,recursive:!0}),await rm(i,{force:!0,recursive:!0}),await rename(c,i),i}async function repointAshFunctionSymlinksInDirectory(e,t,n=e){let a;try{a=await readdir(e,{withFileTypes:!0})}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return;throw e}await Promise.all(a.map(async a=>{let o=join(e,a.name),s=normalizeVercelOutputPath(relative(n,o));if(a.isSymbolicLink()){a.name.endsWith(`.func`)&&isAshVercelFunctionPath(s)&&await repointFunctionSymlink(o,t);return}a.isDirectory()&&!a.name.endsWith(`.func`)&&await repointAshFunctionSymlinksInDirectory(o,t,n)}))}async function repointFunctionSymlink(e,n){await rm(e,{force:!0,recursive:!0}),await symlink(normalizeVercelOutputPath(relative(dirname(e),n)),e,`dir`)}async function pruneNonAshFunctionEntries(e,t){let n;try{n=await readdir(t,{withFileTypes:!0})}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return;throw e}await Promise.all(n.map(async n=>{let a=join(t,n.name),o=normalizeVercelOutputPath(relative(e,a));if(n.name.endsWith(`.func`)){isAshVercelFunctionPath(o)||await rm(a,{force:!0,recursive:!0});return}n.isDirectory()&&await pruneNonAshFunctionEntries(e,a)}))}async function pruneNonAshVercelRoutes(e,t){let n=join(e,`config.json`),i;try{i=JSON.parse(await readFile(n,`utf8`))}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return;throw e}!isRecord(i)||!Array.isArray(i.routes)||(i.routes=normalizeAshVercelRoutes(i.routes,t),await writeFile(n,`${JSON.stringify(i,null,2)}\n`))}function normalizeVercelOutputPath(e){return e.replaceAll(`\\`,`/`)}async function emitBundledWorkflowFunctionDirectory(e){await prepareVercelFunctionDirectory(e.targetPath);let n=await emitBundledWorkflowPluginModules({build:buildWithNitroRolldown,pluginPaths:e.pluginPaths??[],targetPath:e.targetPath}),i=join(dirname(e.bundlePath),`__ash_workflow_function_entry.js`),a=getSingleRolldownChunk(await buildWithNitroRolldown({cwd:dirname(e.bundlePath),input:i,platform:`node`,plugins:[createVirtualModulePlugin({id:i,moduleType:`js`,source:createWorkflowFunctionEntrypointSource({bundlePath:e.bundlePath,pluginModulePaths:n})})],write:!1,output:{codeSplitting:!1,comments:!1,format:`cjs`,sourcemap:!1}}),`Vercel workflow function for "${e.bundlePath}"`);await Promise.all([writeFile(join(e.targetPath,`index.js`),a.code),writeFile(join(e.targetPath,`package.json`),`${JSON.stringify({type:`commonjs`},null,2)}\n`),writeFile(join(e.targetPath,`.vc-config.json`),`${JSON.stringify({environment:createWorkflowFunctionEnvironment(),handler:`index.js`,launcherType:`Nodejs`,supportsResponseStreaming:!0},null,2)}\n`)])}async function emitBundledWorkflowPluginModules(e){return await Promise.all(e.pluginPaths.map(async(t,n)=>{let i=getSingleRolldownChunk(await e.build({input:t,platform:`node`,write:!1,output:{codeSplitting:!1,comments:!1,format:`esm`,sourcemap:!1}}),`workflow plugin for "${t}"`),a=`__ash_workflow_plugin_${n}.mjs`;return await writeFile(join(e.targetPath,a),i.code),`./${a}`}))}function createVirtualModulePlugin(e){return{name:`ash-virtual-module`,resolveId(t){return t===e.id?e.id:void 0},load(t){return t===e.id?{code:e.source,moduleType:e.moduleType}:void 0}}}function toRelativeImportPath(e){let t=relative(e.fromDirectoryPath,e.toFilePath).replaceAll(`\\`,`/`);return t.startsWith(`.`)?t:`./${t}`}function normalizeImportSpecifierPath(e){return e.replaceAll(`\\`,`/`)}function createWorkflowFunctionEntrypointSource(t){let n=t.pluginModulePaths.map(e=>normalizeImportSpecifierPath(e)),r=n.length>0;return[`const { POST } = require(${JSON.stringify(`./${basename(t.bundlePath)}`)});`,...r?[`const workflowPluginModulePaths = ${JSON.stringify(n)};`,``,`let workflowPluginPromise;`,``,`async function loadWorkflowPlugins() {`,` if (workflowPluginPromise == null) {`,` workflowPluginPromise = (async () => {`,` for (const pluginPath of workflowPluginModulePaths) {`,` await import(pluginPath);`,` }`,` })();`,` }`,` return await workflowPluginPromise;`,`}`]:[],``,`const DEFAULT_WORKFLOW_REQUEST_ORIGIN = "https://workflow.invalid";`,``,`function getHeader(headers, name) {`,` if (headers === null || headers === undefined) {`,` return undefined;`,` }`,` if (typeof headers.get === "function") {`,` const value = headers.get(name);`,` return typeof value === "string" && value.length > 0 ? value : undefined;`,` }`,` if (typeof headers !== "object") {`,` return undefined;`,` }`,` const record = headers;`,` const lowerName = name.toLowerCase();`,` for (const [key, value] of Object.entries(record)) {`,` if (key.toLowerCase() !== lowerName || value === undefined) {`,` continue;`,` }`,` if (Array.isArray(value)) {`,` return value.find((item) => typeof item === "string" && item.length > 0);`,` }`,` return typeof value === "string" && value.length > 0 ? value : undefined;`,` }`,` return undefined;`,`}`,``,`function createHeaders(headers) {`,` const normalized = new Headers();`,` if (headers === null || headers === undefined) {`,` return normalized;`,` }`,` if (headers instanceof Headers) {`,` return headers;`,` }`,` if (typeof headers.forEach === "function" && typeof headers.entries === "function") {`,` for (const [key, value] of headers.entries()) {`,` normalized.append(key, value);`,` }`,` return normalized;`,` }`,` for (const [key, value] of Object.entries(headers)) {`,` if (value === undefined) {`,` continue;`,` }`,` if (Array.isArray(value)) {`,` for (const item of value) {`,` normalized.append(key, String(item));`,` }`,` continue;`,` }`,` normalized.set(key, String(value));`,` }`,` return normalized;`,`}`,``,`function toAbsoluteWorkflowUrl(request) {`,` const url = typeof request?.url === "string" ? request.url : "/";`,` if (/^https?:\\/\\//.test(url)) {`,` return url;`,` }`,` const host = getHeader(request?.headers, "x-forwarded-host") ?? getHeader(request?.headers, "host");`,` const protocolHeader = getHeader(request?.headers, "x-forwarded-proto");`,` const protocol = protocolHeader === "http" || protocolHeader === "https" ? protocolHeader : "https";`,` const origin = typeof host === "string" && host.length > 0 ? protocol + "://" + host : DEFAULT_WORKFLOW_REQUEST_ORIGIN;`,` return new URL(url, origin).toString();`,`}`,``,`function normalizeWorkflowRequest(request) {`,` if (request instanceof Request) {`,` if (/^https?:\\/\\//.test(request.url)) {`,` return request;`,` }`,` return new Request(toAbsoluteWorkflowUrl(request), request);`,` }`,` const method = typeof request?.method === "string" ? request.method : "GET";`,` const headers = createHeaders(request?.headers);`,` const init = {`,` headers,`,` method,`,` };`,` if (method !== "GET" && method !== "HEAD") {`,` const body = request?.body ?? (request !== null && typeof request === "object" && typeof request.pipe === "function" ? request : undefined);`,` if (body !== undefined) {`,` init.body = body;`,` init.duplex = "half";`,` }`,` }`,` return new Request(toAbsoluteWorkflowUrl(request), init);`,`}`,``,`module.exports = async function handleWorkflowFunctionRequest(requestContext) {`,` const request =`,` requestContext !== null && typeof requestContext === "object" && "req" in requestContext`,` ? requestContext.req`,` : requestContext;`,...r?[` await loadWorkflowPlugins();`]:[],` return await POST(normalizeWorkflowRequest(request));`,`};`,``].join(`
1
+ import{basename,dirname,extname,join,relative}from"node:path";import{cp,mkdir,readFile,readdir,realpath,rename,rm,symlink,writeFile}from"node:fs/promises";import{buildWithNitroRolldown,getSingleRolldownChunk}from"#internal/bundler/nitro-rolldown.js";import{ASH_SHARED_SERVER_FUNCTION_PATH,applyAshServiceRoutePrefixWrapper,isAshVercelFunctionPath,normalizeAshVercelRoutes}from"#internal/workflow-bundle/ash-service-route-output.js";const WORKFLOW_STEP_EXTERNAL_PACKAGES=[`@mongodb-js/zstd`,`node-liblzma`],WORKFLOW_BUILDER_DEFERRED_PACKAGES=[`@chat-adapter/slack`,`chat`];function createWorkflowFunctionEnvironment(e){let t={};return isRecord(e)&&Object.assign(t,e),t.NODE_OPTIONS=`--experimental-require-module`,t}function isRecord(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}async function prepareVercelFunctionDirectory(e){await rm(e,{force:!0,recursive:!0}),await mkdir(e,{recursive:!0})}async function resolveNitroFunctionDirectory(e){try{return await realpath(e.sourcePath)}catch{return await realpath(e.fallbackPath)}}async function copyNitroFunctionDirectory(e){let t=await resolveNitroFunctionDirectory({fallbackPath:e.fallbackPath,sourcePath:e.sourcePath});await prepareVercelFunctionDirectory(e.targetPath),await cp(t,e.targetPath,{dereference:!0,recursive:!0})}async function normalizeAshVercelFunctionOutput(e,t={}){let n=join(e,`functions`),i=await prepareSharedAshServerFunction(n);i!==null&&(t.servicePrefix!==void 0&&await applyAshServiceRoutePrefixWrapper(i,t.servicePrefix),await repointAshFunctionSymlinksInDirectory(n,i)),await pruneNonAshFunctionEntries(n,n),await pruneNonAshVercelRoutes(e,t.servicePrefix)}async function prepareSharedAshServerFunction(e){let n=join(e,`__server.func`),i=join(e,ASH_SHARED_SERVER_FUNCTION_PATH),s;try{s=await realpath(n)}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return null;throw e}let c=`${i}.ash-staging`;return await mkdir(dirname(i),{recursive:!0}),await rm(c,{force:!0,recursive:!0}),await cp(s,c,{dereference:!0,recursive:!0}),await rm(i,{force:!0,recursive:!0}),await rename(c,i),i}async function repointAshFunctionSymlinksInDirectory(e,t,n=e){let a;try{a=await readdir(e,{withFileTypes:!0})}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return;throw e}await Promise.all(a.map(async a=>{let o=join(e,a.name),s=normalizeVercelOutputPath(relative(n,o));if(a.isSymbolicLink()){a.name.endsWith(`.func`)&&isAshVercelFunctionPath(s)&&await repointFunctionSymlink(o,t);return}a.isDirectory()&&!a.name.endsWith(`.func`)&&await repointAshFunctionSymlinksInDirectory(o,t,n)}))}async function repointFunctionSymlink(e,n){await rm(e,{force:!0,recursive:!0}),await symlink(normalizeVercelOutputPath(relative(dirname(e),n)),e,`dir`)}async function pruneNonAshFunctionEntries(e,t){let n;try{n=await readdir(t,{withFileTypes:!0})}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return;throw e}await Promise.all(n.map(async n=>{let a=join(t,n.name),o=normalizeVercelOutputPath(relative(e,a));if(n.name.endsWith(`.func`)){isAshVercelFunctionPath(o)||await rm(a,{force:!0,recursive:!0});return}n.isDirectory()&&await pruneNonAshFunctionEntries(e,a)}))}async function pruneNonAshVercelRoutes(e,t){let n=join(e,`config.json`),i;try{i=JSON.parse(await readFile(n,`utf8`))}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return;throw e}!isRecord(i)||!Array.isArray(i.routes)||(i.routes=normalizeAshVercelRoutes(i.routes,t),await writeFile(n,`${JSON.stringify(i,null,2)}\n`))}function normalizeVercelOutputPath(e){return e.replaceAll(`\\`,`/`)}async function emitBundledWorkflowFunctionDirectory(e){await prepareVercelFunctionDirectory(e.targetPath);let n=await emitBundledWorkflowPluginModules({build:buildWithNitroRolldown,pluginPaths:e.pluginPaths??[],targetPath:e.targetPath}),i=join(dirname(e.bundlePath),`__ash_workflow_function_entry.js`),a=getSingleRolldownChunk(await buildWithNitroRolldown({cwd:dirname(e.bundlePath),input:i,platform:`node`,plugins:[createVirtualModulePlugin({id:i,moduleType:`js`,source:createWorkflowFunctionEntrypointSource({bundlePath:e.bundlePath,pluginModulePaths:n})})],write:!1,output:{codeSplitting:!1,comments:!1,format:`cjs`,sourcemap:!1}}),`Vercel workflow function for "${e.bundlePath}"`);await Promise.all([writeFile(join(e.targetPath,`index.js`),a.code),writeFile(join(e.targetPath,`package.json`),`${JSON.stringify({type:`commonjs`},null,2)}\n`),writeFile(join(e.targetPath,`.vc-config.json`),`${JSON.stringify({environment:createWorkflowFunctionEnvironment(),handler:`index.js`,launcherType:`Nodejs`,supportsResponseStreaming:!0},null,2)}\n`)])}async function emitBundledWorkflowPluginModules(e){return await Promise.all(e.pluginPaths.map(async(t,n)=>{let i=getSingleRolldownChunk(await e.build({input:t,platform:`node`,write:!1,output:{codeSplitting:!1,comments:!1,format:`esm`,sourcemap:!1}}),`workflow plugin for "${t}"`),a=`__ash_workflow_plugin_${n}.mjs`;return await writeFile(join(e.targetPath,a),i.code),`./${a}`}))}function createVirtualModulePlugin(e){return{name:`ash-virtual-module`,resolveId(t){return t===e.id?e.id:void 0},load(t){return t===e.id?{code:e.source,moduleType:e.moduleType}:void 0}}}function toRelativeImportPath(e){let t=relative(e.fromDirectoryPath,e.toFilePath).replaceAll(`\\`,`/`);return t.startsWith(`.`)?t:`./${t}`}function normalizeImportSpecifierPath(e){return e.replaceAll(`\\`,`/`)}function createWorkflowFunctionEntrypointSource(t){let n=t.pluginModulePaths.map(e=>normalizeImportSpecifierPath(e)),r=n.length>0;return[`const { POST } = require(${JSON.stringify(`./${basename(t.bundlePath)}`)});`,...r?[`const workflowPluginModulePaths = ${JSON.stringify(n)};`,``,`let workflowPluginPromise;`,``,`async function loadWorkflowPlugins() {`,` if (workflowPluginPromise == null) {`,` workflowPluginPromise = (async () => {`,` for (const pluginPath of workflowPluginModulePaths) {`,` await import(pluginPath);`,` }`,` })();`,` }`,` return await workflowPluginPromise;`,`}`]:[],``,`const DEFAULT_WORKFLOW_REQUEST_ORIGIN = "https://workflow.invalid";`,``,`function getHeader(headers, name) {`,` if (headers === null || headers === undefined) {`,` return undefined;`,` }`,` if (typeof headers.get === "function") {`,` const value = headers.get(name);`,` return typeof value === "string" && value.length > 0 ? value : undefined;`,` }`,` if (typeof headers !== "object") {`,` return undefined;`,` }`,` const record = headers;`,` const lowerName = name.toLowerCase();`,` for (const [key, value] of Object.entries(record)) {`,` if (key.toLowerCase() !== lowerName || value === undefined) {`,` continue;`,` }`,` if (Array.isArray(value)) {`,` return value.find((item) => typeof item === "string" && item.length > 0);`,` }`,` return typeof value === "string" && value.length > 0 ? value : undefined;`,` }`,` return undefined;`,`}`,``,`function createHeaders(headers) {`,` const normalized = new Headers();`,` if (headers === null || headers === undefined) {`,` return normalized;`,` }`,` if (headers instanceof Headers) {`,` return headers;`,` }`,` if (typeof headers.forEach === "function" && typeof headers.entries === "function") {`,` for (const [key, value] of headers.entries()) {`,` normalized.append(key, value);`,` }`,` return normalized;`,` }`,` for (const [key, value] of Object.entries(headers)) {`,` if (value === undefined) {`,` continue;`,` }`,` if (Array.isArray(value)) {`,` for (const item of value) {`,` normalized.append(key, String(item));`,` }`,` continue;`,` }`,` normalized.set(key, String(value));`,` }`,` return normalized;`,`}`,``,`function toAbsoluteWorkflowUrl(request) {`,` const url = typeof request?.url === "string" ? request.url : "/";`,` if (/^https?:\\/\\//.test(url)) {`,` return url;`,` }`,` const host = getHeader(request?.headers, "x-forwarded-host") ?? getHeader(request?.headers, "host");`,` const protocolHeader = getHeader(request?.headers, "x-forwarded-proto");`,` const protocol = protocolHeader === "http" || protocolHeader === "https" ? protocolHeader : "https";`,` const origin = typeof host === "string" && host.length > 0 ? protocol + "://" + host : DEFAULT_WORKFLOW_REQUEST_ORIGIN;`,` return new URL(url, origin).toString();`,`}`,``,`function normalizeWorkflowRequest(request) {`,` if (request instanceof Request) {`,` if (/^https?:\\/\\//.test(request.url)) {`,` return request;`,` }`,` return new Request(toAbsoluteWorkflowUrl(request), request);`,` }`,` const method = typeof request?.method === "string" ? request.method : "GET";`,` const headers = createHeaders(request?.headers);`,` const init = {`,` headers,`,` method,`,` };`,` if (method !== "GET" && method !== "HEAD") {`,` const body = request?.body ?? (request !== null && typeof request === "object" && typeof request.pipe === "function" ? request : undefined);`,` if (body !== undefined) {`,` init.body = body;`,` init.duplex = "half";`,` }`,` }`,` return new Request(toAbsoluteWorkflowUrl(request), init);`,`}`,``,`module.exports = async function handleWorkflowFunctionRequest(requestContext) {`,` const request =`,` requestContext !== null && typeof requestContext === "object" && "req" in requestContext`,` ? requestContext.req`,` : requestContext;`,...r?[` await loadWorkflowPlugins();`]:[],` return await POST(normalizeWorkflowRequest(request));`,`};`,``].join(`
2
2
  `)}function createRoutedNitroEntrypoint(e){return[`import nitroHandler from ${JSON.stringify(e.delegateImportPath)};`,``,`function invokeNitroHandler(request, context) {`,` if (typeof nitroHandler === "function") {`,` return nitroHandler(request, context);`,` }`,``,` if (nitroHandler !== null && typeof nitroHandler === "object" && "fetch" in nitroHandler) {`,` const fetch = nitroHandler.fetch;`,` if (typeof fetch === "function") {`,` return fetch.call(nitroHandler, request, context);`,` }`,` }`,``,` throw new TypeError("Expected Nitro handler to export a function or an object with fetch(request, context).");`,`}`,``,`const workflowRoutePath = ${JSON.stringify(e.workflowRoutePath)};`,``,`function rewriteRequestToWorkflowRoute(request) {`,` const sourceUrl = new URL(request.url);`,` const routedUrl = new URL(workflowRoutePath, sourceUrl);`,` routedUrl.search = sourceUrl.search;`,` return new Request(routedUrl, request);`,`}`,``,`export default {`,` fetch(request, context) {`,` return invokeNitroHandler(rewriteRequestToWorkflowRoute(request), context);`,` },`,`};`,``].join(`
3
3
  `)}async function readVercelHandlerPath(e){try{let t=JSON.parse(await readFile(join(e,`.vc-config.json`),`utf8`));if(typeof t.handler==`string`&&t.handler.length>0)return t.handler}catch{}return`index.mjs`}async function retargetNitroFunctionDirectoryToWorkflowRoute(e){let i=await readVercelHandlerPath(e.functionDirectoryPath),a=join(e.functionDirectoryPath,i),o=dirname(a),s=extname(i),c=join(o,`__ash_nitro_handler__${s.length>0?s:`.mjs`}`),l=toRelativeImportPath({fromDirectoryPath:o,toFilePath:c});await rename(a,c),await writeFile(a,createRoutedNitroEntrypoint({delegateImportPath:l,workflowRoutePath:e.workflowRoutePath}))}export{WORKFLOW_BUILDER_DEFERRED_PACKAGES,WORKFLOW_STEP_EXTERNAL_PACKAGES,copyNitroFunctionDirectory,createWorkflowFunctionEnvironment,emitBundledWorkflowFunctionDirectory,normalizeAshVercelFunctionOutput,prepareVercelFunctionDirectory,retargetNitroFunctionDirectoryToWorkflowRoute};
@@ -1 +1 @@
1
- import{transformWorkflowDirectives}from"./workflow-transformer.js";import{dirname,isAbsolute,join,relative,resolve,sep}from"node:path";import{readFile}from"node:fs/promises";import{existsSync,readFileSync}from"node:fs";import{STABLE_WORKFLOW_NAMES}from"#execution/workflow-runtime.js";var WORKFLOW_QUEUE_TRIGGER={type:`queue/v2beta`,topic:`__wkf_workflow_*`,consumer:`default`,retryAfterSeconds:5,initialDelaySeconds:0},packageJsonCache=new Map,projectDepsCache=new Map;async function applyWorkflowTransform(t,i,a,o,s,c=STABLE_WORKFLOW_NAMES){let l=s??process.cwd(),{moduleSpecifier:u,stableModuleSpecifier:d}=resolveModuleSpecifier(o===void 0?isAbsolute(t)?t:join(l,t):o,l);return transformWorkflowDirectives({filename:t,mode:a,moduleSpecifier:u,source:i,stableModuleSpecifier:d,stableWorkflowNames:c})}function detectWorkflowPatterns(e){return{hasSerde:e.includes(`workflow.serde`)||e.includes(`@serde`)||e.includes(`workflowSerde`)||e.includes(`__workflow_serde`),hasUseStep:/["']use step["']/.test(e),hasUseWorkflow:/["']use workflow["']/.test(e)}}function getImportPath(e,t){let n=isInNodeModules(e),r=!n&&isWorkspacePackage(e,t);if(n||r){let n=findPackageJson(e);if(n!==null){let i=getProjectDependencies(t).has(n.name);if(!(r||i))return{importPath:toRelativeImportPath(e,t),isPackage:!1};let a=resolveExportSubpath(e,n);return a?{importPath:`${n.name}${a}`,isPackage:!0}:isRootEntrypointFile(e,n)?{importPath:n.name,isPackage:!0}:{importPath:toRelativeImportPath(e,t),isPackage:!1}}}return{importPath:toRelativeImportPath(e,t),isPackage:!1}}function resolveModuleSpecifier(e,t){let n=isInNodeModules(e),r=!n&&isWorkspacePackage(e,t);if(!n&&!r)return{moduleSpecifier:void 0,stableModuleSpecifier:void 0};let i=findPackageJson(e);if(i===null)return{moduleSpecifier:void 0,stableModuleSpecifier:void 0};let a=resolveExportSubpath(e,i),o=a?`${i.name}${a}`:i.name;return{moduleSpecifier:`${o}@${i.version}`,stableModuleSpecifier:o}}function findPackageJson(e){let n=dirname(e),i=[];for(;n!==dirname(n);){let e=packageJsonCache.get(n);if(e!==void 0){for(let t of i)packageJsonCache.set(t,e);return e}i.push(n);let a=join(n,`package.json`);if(existsSync(a))try{let e=JSON.parse(readFileSync(a,`utf8`));if(typeof e.name==`string`&&typeof e.version==`string`){let t={dir:n,exports:e.exports,main:e.main,module:e.module,name:e.name,version:e.version};packageJsonCache.set(n,t);for(let e of i)packageJsonCache.set(e,t);return t}}catch{}n=dirname(n)}for(let e of i)packageJsonCache.set(e,null);return null}function resolveExportSubpath(e,t){if(t.exports===null||typeof t.exports!=`object`||Array.isArray(t.exports))return``;let n=e.replace(/\\/g,`/`),r=t.dir.replace(/\\/g,`/`),i=n.startsWith(`${r}/`)?`./${n.substring(r.length+1)}`:null;if(i===null)return``;for(let[e,n]of Object.entries(t.exports)){let t=resolveExportTarget(n);if(t!==null&&normalizeExportPath(t)===i)return e===`.`?``:e.substring(1)}return``}function resolveExportTarget(e){if(typeof e==`string`)return e;if(Array.isArray(e)){for(let t of e){let e=resolveExportTarget(t);if(e!==null)return e}return null}if(typeof e==`object`&&e)for(let t of[`workflow`,`default`,`require`,`import`,`node`]){let n=e[t],r=resolveExportTarget(n);if(r!==null)return r}return null}function normalizeExportPath(e){return e.startsWith(`./`)?e:`./${e}`}function isInNodeModules(e){return e.split(sep).join(`/`).includes(`/node_modules/`)}function getProjectDependencies(e){let t=projectDepsCache.get(e);if(t!==void 0)return t;let n=new Set,i=join(e,`package.json`);if(existsSync(i))try{let e=JSON.parse(readFileSync(i,`utf8`));for(let t of[`dependencies`,`devDependencies`,`peerDependencies`,`optionalDependencies`]){let r=e[t];if(typeof r==`object`&&r&&!Array.isArray(r))for(let e of Object.keys(r))n.add(e)}}catch{}return projectDepsCache.set(e,n),n}function isWorkspacePackage(e,t){if(isInNodeModules(e))return!1;let n=findPackageJson(e);return n===null||resolve(n.dir)===resolve(t)?!1:getProjectDependencies(t).has(n.name)}function toRelativeImportPath(e,t){let n=t.replace(/\\/g,`/`),r=e.replace(/\\/g,`/`),a=r.startsWith(`${n}/`)?r.substring(n.length+1):relative(t,e).replace(/\\/g,`/`);return a.startsWith(`.`)||(a=`./${a}`),a}function hasRootExport(e){if(typeof e==`string`||Array.isArray(e))return!0;if(typeof e!=`object`||!e)return!1;let t=Object.keys(e);return t.length>0&&t.every(e=>!e.startsWith(`.`))?!0:`.`in e}function normalizePackageTargetPath(e){let t=e.replace(/\\/g,`/`);return t.startsWith(`./`)?t.substring(2):t.startsWith(`/`)?t.substring(1):t}function isRootEntrypointFile(e,t){let n=e.replace(/\\/g,`/`),r=t.dir.replace(/\\/g,`/`);if(!n.startsWith(`${r}/`))return!1;let i=n.substring(r.length+1);if(t.exports!==void 0){let e;if(t.exports!==null&&typeof t.exports==`object`&&`.`in t.exports)e=t.exports[`.`];else if(hasRootExport(t.exports))e=t.exports;else return!1;let n=resolveExportTarget(e);return n!==null&&normalizePackageTargetPath(n)===i}return[t.module,t.main,`index.js`,`index.mjs`,`index.cjs`,`index.ts`,`index.mts`,`index.cts`].flatMap(e=>typeof e==`string`?[normalizePackageTargetPath(e)]:[]).includes(i)}async function readSourceFile(e){return await readFile(e,`utf8`)}export{WORKFLOW_QUEUE_TRIGGER,applyWorkflowTransform,detectWorkflowPatterns,getImportPath,readSourceFile};
1
+ import{transformWorkflowDirectives}from"./workflow-transformer.js";import{dirname,isAbsolute,join,relative,resolve,sep}from"node:path";import{readFile}from"node:fs/promises";import{existsSync,readFileSync}from"node:fs";import{STABLE_WORKFLOW_NAMES}from"#execution/workflow-runtime.js";const WORKFLOW_QUEUE_TRIGGER={type:`queue/v2beta`,topic:`__wkf_workflow_*`,consumer:`default`,retryAfterSeconds:5,initialDelaySeconds:0},packageJsonCache=new Map,projectDepsCache=new Map;async function applyWorkflowTransform(t,i,a,o,s,c=STABLE_WORKFLOW_NAMES){let l=s??process.cwd(),{moduleSpecifier:u,stableModuleSpecifier:d}=resolveModuleSpecifier(o===void 0?isAbsolute(t)?t:join(l,t):o,l);return transformWorkflowDirectives({filename:t,mode:a,moduleSpecifier:u,source:i,stableModuleSpecifier:d,stableWorkflowNames:c})}function detectWorkflowPatterns(e){return{hasSerde:e.includes(`workflow.serde`)||e.includes(`@serde`)||e.includes(`workflowSerde`)||e.includes(`__workflow_serde`),hasUseStep:/["']use step["']/.test(e),hasUseWorkflow:/["']use workflow["']/.test(e)}}function getImportPath(e,t){let n=isInNodeModules(e),r=!n&&isWorkspacePackage(e,t);if(n||r){let n=findPackageJson(e);if(n!==null){let i=getProjectDependencies(t).has(n.name);if(!(r||i))return{importPath:toRelativeImportPath(e,t),isPackage:!1};let a=resolveExportSubpath(e,n);return a?{importPath:`${n.name}${a}`,isPackage:!0}:isRootEntrypointFile(e,n)?{importPath:n.name,isPackage:!0}:{importPath:toRelativeImportPath(e,t),isPackage:!1}}}return{importPath:toRelativeImportPath(e,t),isPackage:!1}}function resolveModuleSpecifier(e,t){let n=isInNodeModules(e),r=!n&&isWorkspacePackage(e,t);if(!n&&!r)return{moduleSpecifier:void 0,stableModuleSpecifier:void 0};let i=findPackageJson(e);if(i===null)return{moduleSpecifier:void 0,stableModuleSpecifier:void 0};let a=resolveExportSubpath(e,i),o=a?`${i.name}${a}`:i.name;return{moduleSpecifier:`${o}@${i.version}`,stableModuleSpecifier:o}}function findPackageJson(e){let n=dirname(e),i=[];for(;n!==dirname(n);){let e=packageJsonCache.get(n);if(e!==void 0){for(let t of i)packageJsonCache.set(t,e);return e}i.push(n);let a=join(n,`package.json`);if(existsSync(a))try{let e=JSON.parse(readFileSync(a,`utf8`));if(typeof e.name==`string`&&typeof e.version==`string`){let t={dir:n,exports:e.exports,main:e.main,module:e.module,name:e.name,version:e.version};packageJsonCache.set(n,t);for(let e of i)packageJsonCache.set(e,t);return t}}catch{}n=dirname(n)}for(let e of i)packageJsonCache.set(e,null);return null}function resolveExportSubpath(e,t){if(t.exports===null||typeof t.exports!=`object`||Array.isArray(t.exports))return``;let n=e.replace(/\\/g,`/`),r=t.dir.replace(/\\/g,`/`),i=n.startsWith(`${r}/`)?`./${n.substring(r.length+1)}`:null;if(i===null)return``;for(let[e,n]of Object.entries(t.exports)){let t=resolveExportTarget(n);if(t!==null&&normalizeExportPath(t)===i)return e===`.`?``:e.substring(1)}return``}function resolveExportTarget(e){if(typeof e==`string`)return e;if(Array.isArray(e)){for(let t of e){let e=resolveExportTarget(t);if(e!==null)return e}return null}if(typeof e==`object`&&e)for(let t of[`workflow`,`default`,`require`,`import`,`node`]){let n=e[t],r=resolveExportTarget(n);if(r!==null)return r}return null}function normalizeExportPath(e){return e.startsWith(`./`)?e:`./${e}`}function isInNodeModules(e){return e.split(sep).join(`/`).includes(`/node_modules/`)}function getProjectDependencies(e){let t=projectDepsCache.get(e);if(t!==void 0)return t;let n=new Set,i=join(e,`package.json`);if(existsSync(i))try{let e=JSON.parse(readFileSync(i,`utf8`));for(let t of[`dependencies`,`devDependencies`,`peerDependencies`,`optionalDependencies`]){let r=e[t];if(typeof r==`object`&&r&&!Array.isArray(r))for(let e of Object.keys(r))n.add(e)}}catch{}return projectDepsCache.set(e,n),n}function isWorkspacePackage(e,t){if(isInNodeModules(e))return!1;let n=findPackageJson(e);return n===null||resolve(n.dir)===resolve(t)?!1:getProjectDependencies(t).has(n.name)}function toRelativeImportPath(e,t){let n=t.replace(/\\/g,`/`),r=e.replace(/\\/g,`/`),a=r.startsWith(`${n}/`)?r.substring(n.length+1):relative(t,e).replace(/\\/g,`/`);return a.startsWith(`.`)||(a=`./${a}`),a}function hasRootExport(e){if(typeof e==`string`||Array.isArray(e))return!0;if(typeof e!=`object`||!e)return!1;let t=Object.keys(e);return t.length>0&&t.every(e=>!e.startsWith(`.`))?!0:`.`in e}function normalizePackageTargetPath(e){let t=e.replace(/\\/g,`/`);return t.startsWith(`./`)?t.substring(2):t.startsWith(`/`)?t.substring(1):t}function isRootEntrypointFile(e,t){let n=e.replace(/\\/g,`/`),r=t.dir.replace(/\\/g,`/`);if(!n.startsWith(`${r}/`))return!1;let i=n.substring(r.length+1);if(t.exports!==void 0){let e;if(t.exports!==null&&typeof t.exports==`object`&&`.`in t.exports)e=t.exports[`.`];else if(hasRootExport(t.exports))e=t.exports;else return!1;let n=resolveExportTarget(e);return n!==null&&normalizePackageTargetPath(n)===i}return[t.module,t.main,`index.js`,`index.mjs`,`index.cjs`,`index.ts`,`index.mts`,`index.cts`].flatMap(e=>typeof e==`string`?[normalizePackageTargetPath(e)]:[]).includes(i)}async function readSourceFile(e){return await readFile(e,`utf8`)}export{WORKFLOW_QUEUE_TRIGGER,applyWorkflowTransform,detectWorkflowPatterns,getImportPath,readSourceFile};
@@ -1 +1 @@
1
- var WORKFLOW_CONTEXT_SYMBOL=Symbol.for(`WORKFLOW_CONTEXT`),WORKFLOW_CREATE_HOOK=Symbol.for(`WORKFLOW_CREATE_HOOK`),WORKFLOW_GET_STREAM_ID=Symbol.for(`WORKFLOW_GET_STREAM_ID`),STREAM_NAME_SYMBOL=Symbol.for(`WORKFLOW_STREAM_NAME`),workflowGlobal=globalThis,RetryableError=class extends Error{},FatalError=class extends Error{};function createHook(e){let n=workflowGlobal[WORKFLOW_CREATE_HOOK];if(n===void 0)throw Error("`createHook()` can only be called inside a workflow function");return n(e)}function getWorkflowMetadata(){let t=workflowGlobal[WORKFLOW_CONTEXT_SYMBOL];if(t===void 0)throw Error("`getWorkflowMetadata()` can only be called inside a workflow or step function");return t}function getWritable(e={}){let t=workflowGlobal[WORKFLOW_GET_STREAM_ID];if(t===void 0)throw Error("`getWritable()` can only be called inside a workflow function");let r=t(e.namespace);return Object.create(globalThis.WritableStream.prototype,{[STREAM_NAME_SYMBOL]:{value:r,writable:!1}})}function createWebhook(e){let t=createHook(e),n=getWorkflowMetadata();return t.url=`${typeof n.url==`string`?n.url:``}/.well-known/workflow/v1/webhook/${encodeURIComponent(t.token)}`,t}function defineHook(){return{create:createHook,resume(){throw Error("`defineHook().resume()` can only be called from external contexts.")}}}function sleep(){throw Error("`sleep()` is not available in Ash workflow body bundles")}function resumeHook(){throw Error("`resumeHook()` can only be called from outside a workflow function")}function getStepMetadata(){throw Error("`getStepMetadata()` can only be called inside a step function")}export{FatalError,RetryableError,createHook,createWebhook,defineHook,getStepMetadata,getWorkflowMetadata,getWritable,resumeHook,sleep};
1
+ const WORKFLOW_CONTEXT_SYMBOL=Symbol.for(`WORKFLOW_CONTEXT`),WORKFLOW_CREATE_HOOK=Symbol.for(`WORKFLOW_CREATE_HOOK`),WORKFLOW_GET_STREAM_ID=Symbol.for(`WORKFLOW_GET_STREAM_ID`),STREAM_NAME_SYMBOL=Symbol.for(`WORKFLOW_STREAM_NAME`),workflowGlobal=globalThis;var RetryableError=class extends Error{},FatalError=class extends Error{};function createHook(e){let n=workflowGlobal[WORKFLOW_CREATE_HOOK];if(n===void 0)throw Error("`createHook()` can only be called inside a workflow function");return n(e)}function getWorkflowMetadata(){let t=workflowGlobal[WORKFLOW_CONTEXT_SYMBOL];if(t===void 0)throw Error("`getWorkflowMetadata()` can only be called inside a workflow or step function");return t}function getWritable(e={}){let t=workflowGlobal[WORKFLOW_GET_STREAM_ID];if(t===void 0)throw Error("`getWritable()` can only be called inside a workflow function");let r=t(e.namespace);return Object.create(globalThis.WritableStream.prototype,{[STREAM_NAME_SYMBOL]:{value:r,writable:!1}})}function createWebhook(e){let t=createHook(e),n=getWorkflowMetadata();return t.url=`${typeof n.url==`string`?n.url:``}/.well-known/workflow/v1/webhook/${encodeURIComponent(t.token)}`,t}function defineHook(){return{create:createHook,resume(){throw Error("`defineHook().resume()` can only be called from external contexts.")}}}function sleep(){throw Error("`sleep()` is not available in Ash workflow body bundles")}function resumeHook(){throw Error("`resumeHook()` can only be called from outside a workflow function")}function getStepMetadata(){throw Error("`getStepMetadata()` can only be called inside a step function")}export{FatalError,RetryableError,createHook,createWebhook,defineHook,getStepMetadata,getWorkflowMetadata,getWritable,resumeHook,sleep};
@@ -1,4 +1,4 @@
1
- import{loadNitroRolldownParseAst}from"#internal/bundler/nitro-rolldown.js";var BUILTIN_STEP_NAMES=new Set([`__builtin_response_array_buffer`,`__builtin_response_json`,`__builtin_response_text`]);async function transformWorkflowDirectives(e){if(e.mode===!1)return{code:e.source,workflowManifest:{}};let t=await parseWorkflowSource(e.filename,e.source),n=findDirectiveFunctions(t);if(n.length===0)return{code:e.source,workflowManifest:{}};let r=e.moduleSpecifier??`./${stripJavaScriptExtension(e.filename)}`,i=e.stableModuleSpecifier??r,a={},o=[],s=[],c=!1;for(let t of n){if(t.directive===`use step`){let n=createStepId(r,t.name);a.steps??={};let i=a.steps[e.filename]??={};if(i[t.name]={stepId:n},e.mode===`workflow`){let e=t.exportPrefix.length>0?`export `:``;o.push({end:t.rangeEnd,start:t.rangeStart,text:`${e}var ${t.name} = globalThis[Symbol.for("WORKFLOW_USE_STEP")](${JSON.stringify(n)});`})}else o.push({end:t.directiveEnd,start:t.directiveStart,text:``}),e.mode===`step`?(c=!0,s.push(`registerStepFunction(${JSON.stringify(n)}, ${t.name});`)):s.push(`${t.name}.stepId = ${JSON.stringify(n)};`);continue}let n=`workflow//${e.stableWorkflowNames?.has(t.name)===!0?i:r}//${t.name}`;a.workflows??={};let l=a.workflows[e.filename]??={};l[t.name]={workflowId:n},e.mode===`workflow`?(o.push({end:t.directiveEnd,start:t.directiveStart,text:``}),s.push(`${t.name}.workflowId = ${JSON.stringify(n)};`),s.push(`globalThis.__private_workflows.set(${JSON.stringify(n)}, ${t.name});`)):(o.push({end:t.directiveEnd,start:t.directiveStart,text:`throw new Error(${JSON.stringify(`You attempted to execute workflow ${t.name} function directly. To start a workflow, use start(${t.name}) from workflow/api`)});`}),s.push(`${t.name}.workflowId = ${JSON.stringify(n)};`))}let l=`/**__internal_workflows${JSON.stringify(a)}*/;`,u=n.some(e=>e.directive===`use workflow`);if(e.mode===`workflow`&&!u)return{code:`${l}\n${createWorkflowStepProxySource(e.source,t,n,r)}`,workflowManifest:a};let d=applySourceReplacements(e.source,o),f=e.mode===`workflow`?await stripUnusedValueImports(e.filename,d):d;return{code:`${c?`import { registerStepFunction } from "workflow/internal/private";\n${l}\n`:`${l}\n`}${f}${s.length>0?`\n${s.join(`
1
+ import{loadNitroRolldownParseAst}from"#internal/bundler/nitro-rolldown.js";const BUILTIN_STEP_NAMES=new Set([`__builtin_response_array_buffer`,`__builtin_response_json`,`__builtin_response_text`]);async function transformWorkflowDirectives(e){if(e.mode===!1)return{code:e.source,workflowManifest:{}};let t=await parseWorkflowSource(e.filename,e.source),n=findDirectiveFunctions(t);if(n.length===0)return{code:e.source,workflowManifest:{}};let r=e.moduleSpecifier??`./${stripJavaScriptExtension(e.filename)}`,i=e.stableModuleSpecifier??r,a={},o=[],s=[],c=!1;for(let t of n){if(t.directive===`use step`){let n=createStepId(r,t.name);a.steps??={};let i=a.steps[e.filename]??={};if(i[t.name]={stepId:n},e.mode===`workflow`){let e=t.exportPrefix.length>0?`export `:``;o.push({end:t.rangeEnd,start:t.rangeStart,text:`${e}var ${t.name} = globalThis[Symbol.for("WORKFLOW_USE_STEP")](${JSON.stringify(n)});`})}else o.push({end:t.directiveEnd,start:t.directiveStart,text:``}),e.mode===`step`?(c=!0,s.push(`registerStepFunction(${JSON.stringify(n)}, ${t.name});`)):s.push(`${t.name}.stepId = ${JSON.stringify(n)};`);continue}let n=`workflow//${e.stableWorkflowNames?.has(t.name)===!0?i:r}//${t.name}`;a.workflows??={};let l=a.workflows[e.filename]??={};l[t.name]={workflowId:n},e.mode===`workflow`?(o.push({end:t.directiveEnd,start:t.directiveStart,text:``}),s.push(`${t.name}.workflowId = ${JSON.stringify(n)};`),s.push(`globalThis.__private_workflows.set(${JSON.stringify(n)}, ${t.name});`)):(o.push({end:t.directiveEnd,start:t.directiveStart,text:`throw new Error(${JSON.stringify(`You attempted to execute workflow ${t.name} function directly. To start a workflow, use start(${t.name}) from workflow/api`)});`}),s.push(`${t.name}.workflowId = ${JSON.stringify(n)};`))}let l=`/**__internal_workflows${JSON.stringify(a)}*/;`,u=n.some(e=>e.directive===`use workflow`);if(e.mode===`workflow`&&!u)return{code:`${l}\n${createWorkflowStepProxySource(e.source,t,n,r)}`,workflowManifest:a};let d=applySourceReplacements(e.source,o),f=e.mode===`workflow`?await stripUnusedValueImports(e.filename,d):d;return{code:`${c?`import { registerStepFunction } from "workflow/internal/private";\n${l}\n`:`${l}\n`}${f}${s.length>0?`\n${s.join(`
2
2
  `)}\n`:``}`,workflowManifest:a}}async function parseWorkflowSource(t,n){let{parseAst:r}=await loadNitroRolldownParseAst();return r(n,{astType:`ts`,lang:inferParserLanguage(t),range:!0,sourceType:`module`},t)}function createWorkflowStepProxySource(e,t,n,r){let i=findExportedLiteralValueDeclarations(e,t),a=n.filter(e=>e.directive===`use step`).map(e=>{let t=e.exported?`export `:``,n=createStepId(r,e.name);return`${t}var ${e.name} = globalThis[Symbol.for("WORKFLOW_USE_STEP")](${JSON.stringify(n)});`}),o=[...i,...a];return o.length>0?`${o.join(`
3
3
  `)}\n`:``}function findDirectiveFunctions(e){let t=[],n=collectLocalNamesReExportedAtModuleLevel(e);for(let r of e.body??[]){let e=readTopLevelFunctionDeclaration(r);if(e===null)continue;let i=e.fn,a=i.id?.name,o=readBlockStatements(i.body);if(i.async!==!0||a===void 0||o===void 0)continue;let s=readFunctionDirective(o[0]);s!==null&&t.push({directive:s.value,directiveEnd:s.end,directiveStart:s.start,exportPrefix:e.exported?`export `:``,exported:e.exported||n.has(a),name:a,rangeEnd:e.end,rangeStart:e.start})}return t}function collectLocalNamesReExportedAtModuleLevel(e){let t=new Set;for(let n of e.body??[])if(n.type===`ExportNamedDeclaration`&&!(n.source!==void 0&&n.source!==null)&&!(n.declaration!==void 0&&n.declaration!==null))for(let e of n.specifiers??[]){let n=e.local?.name;n!==void 0&&t.add(n)}return t}function readTopLevelFunctionDeclaration(e){return e.type===`FunctionDeclaration`?readFunctionDeclarationRange(e,!1,e):e.type!==`ExportNamedDeclaration`||e.declaration?.type!==`FunctionDeclaration`?null:readFunctionDeclarationRange(e.declaration,!0,e)}function readFunctionDeclarationRange(e,t,n){return e.start===void 0||e.end===void 0||n.start===void 0||n.end===void 0?null:{end:n.end,exported:t,fn:e,start:n.start}}function readBlockStatements(e){return e===void 0||Array.isArray(e)?e:e.body}function readFunctionDirective(e){let t=e?.directive??(e?.type===`ExpressionStatement`&&e.expression?.type===`Literal`?e.expression.value:void 0);return t!==`use workflow`&&t!==`use step`||e?.start===void 0||e.end===void 0?null:{end:e.end,start:e.start,value:t}}function applySourceReplacements(e,t){let n=``,r=0;for(let i of[...t].sort((e,t)=>e.start-t.start))n+=e.slice(r,i.start),n+=i.text,r=i.end;return n+e.slice(r)}async function stripUnusedValueImports(e,t){let n=await parseWorkflowSource(e,t),r=collectReferencedIdentifiers(n),i=[];for(let e of n.body??[]){if(e.type!==`ImportDeclaration`||e.start===void 0||e.end===void 0)continue;let n=readValueImportBindings(e);n.length>0&&n.every(e=>!r.has(e))&&i.push({end:extendRemovalEnd(t,e.end),start:e.start,text:``})}return i.length>0?applySourceReplacements(t,i):t}function findExportedLiteralValueDeclarations(e,t){let n=[],r=collectLocalReExportAliases(t);for(let i of t.body??[]){if(i.type===`ExportNamedDeclaration`&&i.declaration?.type===`VariableDeclaration`&&i.declaration.kind===`const`&&i.start!==void 0&&i.end!==void 0&&(i.declaration.declarations??[]).every(isLiteralValueDeclarator)){n.push(e.slice(i.start,i.end).trim());continue}if(i.type===`VariableDeclaration`&&(i.kind===`const`||i.kind===`var`||i.kind===`let`))for(let t of i.declarations??[]){if(!isLiteralValueDeclarator(t)||t.start===void 0||t.end===void 0)continue;let a=t.id?.name;if(a===void 0)continue;let o=r.get(a);if(o===void 0||o.length===0)continue;let s=e.slice(t.start,t.end).trim(),c=o.map(e=>e===a?a:`${a} as ${e}`);n.push(`${i.kind} ${s};\nexport { ${c.join(`, `)} };`)}}return n}function collectLocalReExportAliases(e){let t=new Map;for(let n of e.body??[])if(n.type===`ExportNamedDeclaration`&&!(n.source!==void 0&&n.source!==null)&&!(n.declaration!==void 0&&n.declaration!==null))for(let e of n.specifiers??[]){let n=e.local?.name,r=e.exported?.name??n;if(n!==void 0&&r!==void 0){let e=t.get(n)??[];e.push(r),t.set(n,e)}}return t}function isLiteralValueDeclarator(e){return isLiteralValueExpression(e.init)}function isLiteralValueExpression(e){return e==null?!1:e.type===`Literal`?e.value===null||typeof e.value==`boolean`||typeof e.value==`number`||typeof e.value==`string`:e.type===`TemplateLiteral`&&(e.expressions??[]).length===0?!0:e.type===`TSAsExpression`||e.type===`TSSatisfiesExpression`||e.type===`TSNonNullExpression`||e.type===`TSTypeAssertion`?isLiteralValueExpression(e.expression):e.type===`UnaryExpression`&&e.argument?.type===`Literal`?typeof e.argument.value==`number`:!1}function readValueImportBindings(e){return e.importKind===`type`?[]:(e.specifiers??[]).filter(e=>e.importKind!==`type`).map(e=>e.local?.name).filter(e=>e!==void 0)}function collectReferencedIdentifiers(e){let t=new Set;return visitAstNode(e,e=>{e.type===`Identifier`&&typeof e.name==`string`&&t.add(e.name)}),t}function visitAstNode(e,t){if(!(e.type===`ImportDeclaration`||e.type?.startsWith(`TS`))){t(e);for(let n of Object.values(e))if(Array.isArray(n))for(let e of n)isAstNode(e)&&visitAstNode(e,t);else isAstNode(n)&&visitAstNode(n,t)}}function isAstNode(e){return typeof e==`object`&&!!e&&typeof e.type==`string`}function extendRemovalEnd(e,t){let n=t;for(;n<e.length&&(e[n]===` `||e[n]===` `);)n+=1;return e[n]===`\r`&&e[n+1]===`
4
4
  `?n+2:e[n]===`
@@ -1 +1 @@
1
- import{__commonJSMin}from"../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"./compile/codegen/index.js";import{require_validate}from"./compile/validate/index.js";import{require_validation_error}from"./runtime/validation_error.js";import{require_ref_error}from"./compile/ref_error.js";import{require_core}from"./core.js";import{require_draft7}from"./vocabularies/draft7.js";import{require_discriminator}from"./vocabularies/discriminator/index.js";import{require_json_schema_draft_07}from"./refs/json-schema-draft-07.js";var require_ajv=__commonJSMin(((e,t)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.MissingRefError=e.ValidationError=e.CodeGen=e.Name=e.nil=e.stringify=e.str=e._=e.KeywordCxt=e.Ajv=void 0;var n=require_core(),r=require_draft7(),i=require_discriminator(),a=require_json_schema_draft_07(),o=[`/properties`],s=`http://json-schema.org/draft-07/schema`,Ajv=class extends n.default{_addVocabularies(){super._addVocabularies(),r.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(i.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(a,o):a;this.addMetaSchema(e,s,!1),this.refs[`http://json-schema.org/schema`]=s}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(s)?s:void 0)}};e.Ajv=Ajv,t.exports=e=Ajv,t.exports.Ajv=Ajv,Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ajv;var c=require_validate();Object.defineProperty(e,"KeywordCxt",{enumerable:!0,get:function(){return c.KeywordCxt}});var l=require_codegen();Object.defineProperty(e,"_",{enumerable:!0,get:function(){return l._}}),Object.defineProperty(e,"str",{enumerable:!0,get:function(){return l.str}}),Object.defineProperty(e,"stringify",{enumerable:!0,get:function(){return l.stringify}}),Object.defineProperty(e,"nil",{enumerable:!0,get:function(){return l.nil}}),Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return l.Name}}),Object.defineProperty(e,"CodeGen",{enumerable:!0,get:function(){return l.CodeGen}});var u=require_validation_error();Object.defineProperty(e,"ValidationError",{enumerable:!0,get:function(){return u.default}});var d=require_ref_error();Object.defineProperty(e,"MissingRefError",{enumerable:!0,get:function(){return d.default}})}));export default require_ajv();export{require_ajv};
1
+ import{__commonJSMin}from"../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"./compile/codegen/index.js";import{require_validate}from"./compile/validate/index.js";import{require_validation_error}from"./runtime/validation_error.js";import{require_ref_error}from"./compile/ref_error.js";import{require_core}from"./core.js";import{require_draft7}from"./vocabularies/draft7.js";import{require_discriminator}from"./vocabularies/discriminator/index.js";import{require_json_schema_draft_07}from"./refs/json-schema-draft-07.js";var require_ajv=__commonJSMin(((e,t)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.MissingRefError=e.ValidationError=e.CodeGen=e.Name=e.nil=e.stringify=e.str=e._=e.KeywordCxt=e.Ajv=void 0;let n=require_core(),r=require_draft7(),i=require_discriminator(),a=require_json_schema_draft_07(),o=[`/properties`],s=`http://json-schema.org/draft-07/schema`;var Ajv=class extends n.default{_addVocabularies(){super._addVocabularies(),r.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(i.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(a,o):a;this.addMetaSchema(e,s,!1),this.refs[`http://json-schema.org/schema`]=s}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(s)?s:void 0)}};e.Ajv=Ajv,t.exports=e=Ajv,t.exports.Ajv=Ajv,Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ajv;var c=require_validate();Object.defineProperty(e,"KeywordCxt",{enumerable:!0,get:function(){return c.KeywordCxt}});var l=require_codegen();Object.defineProperty(e,"_",{enumerable:!0,get:function(){return l._}}),Object.defineProperty(e,"str",{enumerable:!0,get:function(){return l.str}}),Object.defineProperty(e,"stringify",{enumerable:!0,get:function(){return l.stringify}}),Object.defineProperty(e,"nil",{enumerable:!0,get:function(){return l.nil}}),Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return l.Name}}),Object.defineProperty(e,"CodeGen",{enumerable:!0,get:function(){return l.CodeGen}});var u=require_validation_error();Object.defineProperty(e,"ValidationError",{enumerable:!0,get:function(){return u.default}});var d=require_ref_error();Object.defineProperty(e,"MissingRefError",{enumerable:!0,get:function(){return d.default}})}));export default require_ajv();export{require_ajv};
@@ -1 +1 @@
1
- import{__commonJSMin}from"../../../../../../../../_virtual/_rolldown/runtime.js";var require_code=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.regexpCode=e.getEsmExportName=e.getProperty=e.safeStringify=e.stringify=e.strConcat=e.addCodeArg=e.str=e._=e.nil=e._Code=e.Name=e.IDENTIFIER=e._CodeOrName=void 0;var _CodeOrName=class{};e._CodeOrName=_CodeOrName,e.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Name=class extends _CodeOrName{constructor(t){if(super(),!e.IDENTIFIER.test(t))throw Error(`CodeGen: name must be a valid identifier`);this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};e.Name=Name;var _Code=class extends _CodeOrName{constructor(e){super(),this._items=typeof e==`string`?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===``||e===`""`}get str(){return this._str??=this._items.reduce((e,t)=>`${e}${t}`,``)}get names(){return this._names??=this._items.reduce((e,t)=>(t instanceof Name&&(e[t.str]=(e[t.str]||0)+1),e),{})}};e._Code=_Code,e.nil=new _Code(``);function _(e,...t){let n=[e[0]],r=0;for(;r<t.length;)addCodeArg(n,t[r]),n.push(e[++r]);return new _Code(n)}e._=_;var t=new _Code(`+`);function str(e,...n){let r=[safeStringify(e[0])],i=0;for(;i<n.length;)r.push(t),addCodeArg(r,n[i]),r.push(t,safeStringify(e[++i]));return optimize(r),new _Code(r)}e.str=str;function addCodeArg(e,t){t instanceof _Code?e.push(...t._items):t instanceof Name?e.push(t):e.push(interpolate(t))}e.addCodeArg=addCodeArg;function optimize(e){let n=1;for(;n<e.length-1;){if(e[n]===t){let t=mergeExprItems(e[n-1],e[n+1]);if(t!==void 0){e.splice(n-1,3,t);continue}e[n++]=`+`}n++}}function mergeExprItems(e,t){if(t===`""`)return e;if(e===`""`)return t;if(typeof e==`string`)return t instanceof Name||e[e.length-1]!==`"`?void 0:typeof t==`string`?t[0]===`"`?e.slice(0,-1)+t.slice(1):void 0:`${e.slice(0,-1)}${t}"`;if(typeof t==`string`&&t[0]===`"`&&!(e instanceof Name))return`"${e}${t.slice(1)}`}function strConcat(e,t){return t.emptyStr()?e:e.emptyStr()?t:str`${e}${t}`}e.strConcat=strConcat;function interpolate(e){return typeof e==`number`||typeof e==`boolean`||e===null?e:safeStringify(Array.isArray(e)?e.join(`,`):e)}function stringify(e){return new _Code(safeStringify(e))}e.stringify=stringify;function safeStringify(e){return JSON.stringify(e).replace(/\u2028/g,`\\u2028`).replace(/\u2029/g,`\\u2029`)}e.safeStringify=safeStringify;function getProperty(t){return typeof t==`string`&&e.IDENTIFIER.test(t)?new _Code(`.${t}`):_`[${t}]`}e.getProperty=getProperty;function getEsmExportName(t){if(typeof t==`string`&&e.IDENTIFIER.test(t))return new _Code(`${t}`);throw Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}e.getEsmExportName=getEsmExportName;function regexpCode(e){return new _Code(e.toString())}e.regexpCode=regexpCode}));export default require_code();export{require_code};
1
+ import{__commonJSMin}from"../../../../../../../../_virtual/_rolldown/runtime.js";var require_code=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.regexpCode=e.getEsmExportName=e.getProperty=e.safeStringify=e.stringify=e.strConcat=e.addCodeArg=e.str=e._=e.nil=e._Code=e.Name=e.IDENTIFIER=e._CodeOrName=void 0;var _CodeOrName=class{};e._CodeOrName=_CodeOrName,e.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Name=class extends _CodeOrName{constructor(t){if(super(),!e.IDENTIFIER.test(t))throw Error(`CodeGen: name must be a valid identifier`);this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};e.Name=Name;var _Code=class extends _CodeOrName{constructor(e){super(),this._items=typeof e==`string`?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===``||e===`""`}get str(){return this._str??=this._items.reduce((e,t)=>`${e}${t}`,``)}get names(){return this._names??=this._items.reduce((e,t)=>(t instanceof Name&&(e[t.str]=(e[t.str]||0)+1),e),{})}};e._Code=_Code,e.nil=new _Code(``);function _(e,...t){let n=[e[0]],r=0;for(;r<t.length;)addCodeArg(n,t[r]),n.push(e[++r]);return new _Code(n)}e._=_;let t=new _Code(`+`);function str(e,...n){let r=[safeStringify(e[0])],i=0;for(;i<n.length;)r.push(t),addCodeArg(r,n[i]),r.push(t,safeStringify(e[++i]));return optimize(r),new _Code(r)}e.str=str;function addCodeArg(e,t){t instanceof _Code?e.push(...t._items):t instanceof Name?e.push(t):e.push(interpolate(t))}e.addCodeArg=addCodeArg;function optimize(e){let n=1;for(;n<e.length-1;){if(e[n]===t){let t=mergeExprItems(e[n-1],e[n+1]);if(t!==void 0){e.splice(n-1,3,t);continue}e[n++]=`+`}n++}}function mergeExprItems(e,t){if(t===`""`)return e;if(e===`""`)return t;if(typeof e==`string`)return t instanceof Name||e[e.length-1]!==`"`?void 0:typeof t==`string`?t[0]===`"`?e.slice(0,-1)+t.slice(1):void 0:`${e.slice(0,-1)}${t}"`;if(typeof t==`string`&&t[0]===`"`&&!(e instanceof Name))return`"${e}${t.slice(1)}`}function strConcat(e,t){return t.emptyStr()?e:e.emptyStr()?t:str`${e}${t}`}e.strConcat=strConcat;function interpolate(e){return typeof e==`number`||typeof e==`boolean`||e===null?e:safeStringify(Array.isArray(e)?e.join(`,`):e)}function stringify(e){return new _Code(safeStringify(e))}e.stringify=stringify;function safeStringify(e){return JSON.stringify(e).replace(/\u2028/g,`\\u2028`).replace(/\u2029/g,`\\u2029`)}e.safeStringify=safeStringify;function getProperty(t){return typeof t==`string`&&e.IDENTIFIER.test(t)?new _Code(`.${t}`):_`[${t}]`}e.getProperty=getProperty;function getEsmExportName(t){if(typeof t==`string`&&e.IDENTIFIER.test(t))return new _Code(`${t}`);throw Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}e.getEsmExportName=getEsmExportName;function regexpCode(e){return new _Code(e.toString())}e.regexpCode=regexpCode}));export default require_code();export{require_code};
@@ -1,2 +1,2 @@
1
- import{__commonJSMin}from"../../../../../../../../_virtual/_rolldown/runtime.js";import{require_code}from"./code.js";import{require_scope}from"./scope.js";var require_codegen=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.or=e.and=e.not=e.CodeGen=e.operators=e.varKinds=e.ValueScopeName=e.ValueScope=e.Scope=e.Name=e.regexpCode=e.stringify=e.getProperty=e.nil=e.strConcat=e.str=e._=void 0;var r=require_code(),i=require_scope(),a=require_code();Object.defineProperty(e,"_",{enumerable:!0,get:function(){return a._}}),Object.defineProperty(e,"str",{enumerable:!0,get:function(){return a.str}}),Object.defineProperty(e,"strConcat",{enumerable:!0,get:function(){return a.strConcat}}),Object.defineProperty(e,"nil",{enumerable:!0,get:function(){return a.nil}}),Object.defineProperty(e,"getProperty",{enumerable:!0,get:function(){return a.getProperty}}),Object.defineProperty(e,"stringify",{enumerable:!0,get:function(){return a.stringify}}),Object.defineProperty(e,"regexpCode",{enumerable:!0,get:function(){return a.regexpCode}}),Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return a.Name}});var o=require_scope();Object.defineProperty(e,"Scope",{enumerable:!0,get:function(){return o.Scope}}),Object.defineProperty(e,"ValueScope",{enumerable:!0,get:function(){return o.ValueScope}}),Object.defineProperty(e,"ValueScopeName",{enumerable:!0,get:function(){return o.ValueScopeName}}),Object.defineProperty(e,"varKinds",{enumerable:!0,get:function(){return o.varKinds}}),e.operators={GT:new r._Code(`>`),GTE:new r._Code(`>=`),LT:new r._Code(`<`),LTE:new r._Code(`<=`),EQ:new r._Code(`===`),NEQ:new r._Code(`!==`),NOT:new r._Code(`!`),OR:new r._Code(`||`),AND:new r._Code(`&&`),ADD:new r._Code(`+`)};var Node=class{optimizeNodes(){return this}optimizeNames(e,t){return this}},Def=class extends Node{constructor(e,t,n){super(),this.varKind=e,this.name=t,this.rhs=n}render({es5:e,_n:t}){let n=e?i.varKinds.var:this.varKind,r=this.rhs===void 0?``:` = ${this.rhs}`;return`${n} ${this.name}${r};`+t}optimizeNames(e,t){if(e[this.name.str])return this.rhs&&=optimizeExpr(this.rhs,e,t),this}get names(){return this.rhs instanceof r._CodeOrName?this.rhs.names:{}}},Assign=class extends Node{constructor(e,t,n){super(),this.lhs=e,this.rhs=t,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,t){if(!(this.lhs instanceof r.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=optimizeExpr(this.rhs,e,t),this}get names(){return addExprNames(this.lhs instanceof r.Name?{}:{...this.lhs.names},this.rhs)}},AssignOp=class extends Assign{constructor(e,t,n,r){super(e,n,r),this.op=t}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Label=class extends Node{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Break=class extends Node{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:``};`+e}},Throw=class extends Node{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},AnyCode=class extends Node{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,t){return this.code=optimizeExpr(this.code,e,t),this}get names(){return this.code instanceof r._CodeOrName?this.code.names:{}}},ParentNode=class extends Node{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((t,n)=>t+n.render(e),``)}optimizeNodes(){let{nodes:e}=this,t=e.length;for(;t--;){let n=e[t].optimizeNodes();Array.isArray(n)?e.splice(t,1,...n):n?e[t]=n:e.splice(t,1)}return e.length>0?this:void 0}optimizeNames(e,t){let{nodes:n}=this,r=n.length;for(;r--;){let i=n[r];i.optimizeNames(e,t)||(subtractNames(e,i.names),n.splice(r,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,t)=>addNames(e,t.names),{})}},BlockNode=class extends ParentNode{render(e){return`{`+e._n+super.render(e)+`}`+e._n}},Root=class extends ParentNode{},Else=class extends BlockNode{};Else.kind=`else`;var s=class If extends BlockNode{constructor(e,t){super(t),this.condition=e}render(e){let t=`if(${this.condition})`+super.render(e);return this.else&&(t+=`else `+this.else.render(e)),t}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let t=this.else;if(t){let e=t.optimizeNodes();t=this.else=Array.isArray(e)?new Else(e):e}if(t)return e===!1?t instanceof If?t:t.nodes:this.nodes.length?this:new If(not(e),t instanceof If?[t]:t.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,t){if(this.else=this.else?.optimizeNames(e,t),super.optimizeNames(e,t)||this.else)return this.condition=optimizeExpr(this.condition,e,t),this}get names(){let e=super.names;return addExprNames(e,this.condition),this.else&&addNames(e,this.else.names),e}};s.kind=`if`;var For=class extends BlockNode{};For.kind=`for`;var ForLoop=class extends For{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,t){if(super.optimizeNames(e,t))return this.iteration=optimizeExpr(this.iteration,e,t),this}get names(){return addNames(super.names,this.iteration.names)}},ForRange=class extends For{constructor(e,t,n,r){super(),this.varKind=e,this.name=t,this.from=n,this.to=r}render(e){let t=e.es5?i.varKinds.var:this.varKind,{name:n,from:r,to:a}=this;return`for(${t} ${n}=${r}; ${n}<${a}; ${n}++)`+super.render(e)}get names(){return addExprNames(addExprNames(super.names,this.from),this.to)}},ForIter=class extends For{constructor(e,t,n,r){super(),this.loop=e,this.varKind=t,this.name=n,this.iterable=r}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,t){if(super.optimizeNames(e,t))return this.iterable=optimizeExpr(this.iterable,e,t),this}get names(){return addNames(super.names,this.iterable.names)}},Func=class extends BlockNode{constructor(e,t,n){super(),this.name=e,this.args=t,this.async=n}render(e){return`${this.async?`async `:``}function ${this.name}(${this.args})`+super.render(e)}};Func.kind=`func`;var Return=class extends ParentNode{render(e){return`return `+super.render(e)}};Return.kind=`return`;var Try=class extends BlockNode{render(e){let t=`try`+super.render(e);return this.catch&&(t+=this.catch.render(e)),this.finally&&(t+=this.finally.render(e)),t}optimizeNodes(){return super.optimizeNodes(),this.catch?.optimizeNodes(),this.finally?.optimizeNodes(),this}optimizeNames(e,t){return super.optimizeNames(e,t),this.catch?.optimizeNames(e,t),this.finally?.optimizeNames(e,t),this}get names(){let e=super.names;return this.catch&&addNames(e,this.catch.names),this.finally&&addNames(e,this.finally.names),e}},Catch=class extends BlockNode{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Catch.kind=`catch`;var Finally=class extends BlockNode{render(e){return`finally`+super.render(e)}};Finally.kind=`finally`,e.CodeGen=class{constructor(e,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...t,_n:t.lines?`
2
- `:``},this._extScope=e,this._scope=new i.Scope({parent:e}),this._nodes=[new Root]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,t){let n=this._extScope.value(e,t);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,t){return this._extScope.getValue(e,t)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,t,n,r){let i=this._scope.toName(t);return n!==void 0&&r&&(this._constants[i.str]=n),this._leafNode(new Def(e,i,n)),i}const(e,t,n){return this._def(i.varKinds.const,e,t,n)}let(e,t,n){return this._def(i.varKinds.let,e,t,n)}var(e,t,n){return this._def(i.varKinds.var,e,t,n)}assign(e,t,n){return this._leafNode(new Assign(e,t,n))}add(t,n){return this._leafNode(new AssignOp(t,e.operators.ADD,n))}code(e){return typeof e==`function`?e():e!==r.nil&&this._leafNode(new AnyCode(e)),this}object(...e){let t=[`{`];for(let[n,i]of e)t.length>1&&t.push(`,`),t.push(n),(n!==i||this.opts.es5)&&(t.push(`:`),(0,r.addCodeArg)(t,i));return t.push(`}`),new r._Code(t)}if(e,t,n){if(this._blockNode(new s(e)),t&&n)this.code(t).else().code(n).endIf();else if(t)this.code(t).endIf();else if(n)throw Error(`CodeGen: "else" body without "then" body`);return this}elseIf(e){return this._elseNode(new s(e))}else(){return this._elseNode(new Else)}endIf(){return this._endBlockNode(s,Else)}_for(e,t){return this._blockNode(e),t&&this.code(t).endFor(),this}for(e,t){return this._for(new ForLoop(e),t)}forRange(e,t,n,r,a=this.opts.es5?i.varKinds.var:i.varKinds.let){let o=this._scope.toName(e);return this._for(new ForRange(a,o,t,n),()=>r(o))}forOf(e,t,n,a=i.varKinds.const){let o=this._scope.toName(e);if(this.opts.es5){let e=t instanceof r.Name?t:this.var(`_arr`,t);return this.forRange(`_i`,0,(0,r._)`${e}.length`,t=>{this.var(o,(0,r._)`${e}[${t}]`),n(o)})}return this._for(new ForIter(`of`,a,o,t),()=>n(o))}forIn(e,t,n,a=this.opts.es5?i.varKinds.var:i.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,r._)`Object.keys(${t})`,n);let o=this._scope.toName(e);return this._for(new ForIter(`in`,a,o,t),()=>n(o))}endFor(){return this._endBlockNode(For)}label(e){return this._leafNode(new Label(e))}break(e){return this._leafNode(new Break(e))}return(e){let t=new Return;if(this._blockNode(t),this.code(e),t.nodes.length!==1)throw Error(`CodeGen: "return" should have one node`);return this._endBlockNode(Return)}try(e,t,n){if(!t&&!n)throw Error(`CodeGen: "try" without "catch" and "finally"`);let r=new Try;if(this._blockNode(r),this.code(e),t){let e=this.name(`e`);this._currNode=r.catch=new Catch(e),t(e)}return n&&(this._currNode=r.finally=new Finally,this.code(n)),this._endBlockNode(Catch,Finally)}throw(e){return this._leafNode(new Throw(e))}block(e,t){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(t),this}endBlock(e){let t=this._blockStarts.pop();if(t===void 0)throw Error(`CodeGen: not in self-balancing block`);let n=this._nodes.length-t;if(n<0||e!==void 0&&n!==e)throw Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=t,this}func(e,t=r.nil,n,i){return this._blockNode(new Func(e,t,n)),i&&this.code(i).endFunc(),this}endFunc(){return this._endBlockNode(Func)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,t){let n=this._currNode;if(n instanceof e||t&&n instanceof t)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${t?`${e.kind}/${t.kind}`:e.kind}"`)}_elseNode(e){let t=this._currNode;if(!(t instanceof s))throw Error(`CodeGen: "else" without "if"`);return this._currNode=t.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let t=this._nodes;t[t.length-1]=e}};function addNames(e,t){for(let n in t)e[n]=(e[n]||0)+(t[n]||0);return e}function addExprNames(e,t){return t instanceof r._CodeOrName?addNames(e,t.names):e}function optimizeExpr(e,t,n){if(e instanceof r.Name)return replaceName(e);if(!canOptimize(e))return e;return new r._Code(e._items.reduce((e,t)=>(t instanceof r.Name&&(t=replaceName(t)),t instanceof r._Code?e.push(...t._items):e.push(t),e),[]));function replaceName(e){let r=n[e.str];return r===void 0||t[e.str]!==1?e:(delete t[e.str],r)}function canOptimize(e){return e instanceof r._Code&&e._items.some(e=>e instanceof r.Name&&t[e.str]===1&&n[e.str]!==void 0)}}function subtractNames(e,t){for(let n in t)e[n]=(e[n]||0)-(t[n]||0)}function not(e){return typeof e==`boolean`||typeof e==`number`||e===null?!e:(0,r._)`!${par(e)}`}e.not=not;var c=mappend(e.operators.AND);function and(...e){return e.reduce(c)}e.and=and;var l=mappend(e.operators.OR);function or(...e){return e.reduce(l)}e.or=or;function mappend(e){return(t,n)=>t===r.nil?n:n===r.nil?t:(0,r._)`${par(t)} ${e} ${par(n)}`}function par(e){return e instanceof r.Name?e:(0,r._)`(${e})`}}));export default require_codegen();export{require_codegen};
1
+ import{__commonJSMin}from"../../../../../../../../_virtual/_rolldown/runtime.js";import{require_code}from"./code.js";import{require_scope}from"./scope.js";var require_codegen=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.or=e.and=e.not=e.CodeGen=e.operators=e.varKinds=e.ValueScopeName=e.ValueScope=e.Scope=e.Name=e.regexpCode=e.stringify=e.getProperty=e.nil=e.strConcat=e.str=e._=void 0;let r=require_code(),i=require_scope();var a=require_code();Object.defineProperty(e,"_",{enumerable:!0,get:function(){return a._}}),Object.defineProperty(e,"str",{enumerable:!0,get:function(){return a.str}}),Object.defineProperty(e,"strConcat",{enumerable:!0,get:function(){return a.strConcat}}),Object.defineProperty(e,"nil",{enumerable:!0,get:function(){return a.nil}}),Object.defineProperty(e,"getProperty",{enumerable:!0,get:function(){return a.getProperty}}),Object.defineProperty(e,"stringify",{enumerable:!0,get:function(){return a.stringify}}),Object.defineProperty(e,"regexpCode",{enumerable:!0,get:function(){return a.regexpCode}}),Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return a.Name}});var o=require_scope();Object.defineProperty(e,"Scope",{enumerable:!0,get:function(){return o.Scope}}),Object.defineProperty(e,"ValueScope",{enumerable:!0,get:function(){return o.ValueScope}}),Object.defineProperty(e,"ValueScopeName",{enumerable:!0,get:function(){return o.ValueScopeName}}),Object.defineProperty(e,"varKinds",{enumerable:!0,get:function(){return o.varKinds}}),e.operators={GT:new r._Code(`>`),GTE:new r._Code(`>=`),LT:new r._Code(`<`),LTE:new r._Code(`<=`),EQ:new r._Code(`===`),NEQ:new r._Code(`!==`),NOT:new r._Code(`!`),OR:new r._Code(`||`),AND:new r._Code(`&&`),ADD:new r._Code(`+`)};var Node=class{optimizeNodes(){return this}optimizeNames(e,t){return this}},Def=class extends Node{constructor(e,t,n){super(),this.varKind=e,this.name=t,this.rhs=n}render({es5:e,_n:t}){let n=e?i.varKinds.var:this.varKind,r=this.rhs===void 0?``:` = ${this.rhs}`;return`${n} ${this.name}${r};`+t}optimizeNames(e,t){if(e[this.name.str])return this.rhs&&=optimizeExpr(this.rhs,e,t),this}get names(){return this.rhs instanceof r._CodeOrName?this.rhs.names:{}}},Assign=class extends Node{constructor(e,t,n){super(),this.lhs=e,this.rhs=t,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,t){if(!(this.lhs instanceof r.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=optimizeExpr(this.rhs,e,t),this}get names(){return addExprNames(this.lhs instanceof r.Name?{}:{...this.lhs.names},this.rhs)}},AssignOp=class extends Assign{constructor(e,t,n,r){super(e,n,r),this.op=t}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Label=class extends Node{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Break=class extends Node{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:``};`+e}},Throw=class extends Node{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},AnyCode=class extends Node{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,t){return this.code=optimizeExpr(this.code,e,t),this}get names(){return this.code instanceof r._CodeOrName?this.code.names:{}}},ParentNode=class extends Node{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((t,n)=>t+n.render(e),``)}optimizeNodes(){let{nodes:e}=this,t=e.length;for(;t--;){let n=e[t].optimizeNodes();Array.isArray(n)?e.splice(t,1,...n):n?e[t]=n:e.splice(t,1)}return e.length>0?this:void 0}optimizeNames(e,t){let{nodes:n}=this,r=n.length;for(;r--;){let i=n[r];i.optimizeNames(e,t)||(subtractNames(e,i.names),n.splice(r,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,t)=>addNames(e,t.names),{})}},BlockNode=class extends ParentNode{render(e){return`{`+e._n+super.render(e)+`}`+e._n}},Root=class extends ParentNode{},Else=class extends BlockNode{};Else.kind=`else`;var s=class If extends BlockNode{constructor(e,t){super(t),this.condition=e}render(e){let t=`if(${this.condition})`+super.render(e);return this.else&&(t+=`else `+this.else.render(e)),t}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let t=this.else;if(t){let e=t.optimizeNodes();t=this.else=Array.isArray(e)?new Else(e):e}if(t)return e===!1?t instanceof If?t:t.nodes:this.nodes.length?this:new If(not(e),t instanceof If?[t]:t.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,t){if(this.else=this.else?.optimizeNames(e,t),super.optimizeNames(e,t)||this.else)return this.condition=optimizeExpr(this.condition,e,t),this}get names(){let e=super.names;return addExprNames(e,this.condition),this.else&&addNames(e,this.else.names),e}};s.kind=`if`;var For=class extends BlockNode{};For.kind=`for`;var ForLoop=class extends For{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,t){if(super.optimizeNames(e,t))return this.iteration=optimizeExpr(this.iteration,e,t),this}get names(){return addNames(super.names,this.iteration.names)}},ForRange=class extends For{constructor(e,t,n,r){super(),this.varKind=e,this.name=t,this.from=n,this.to=r}render(e){let t=e.es5?i.varKinds.var:this.varKind,{name:n,from:r,to:a}=this;return`for(${t} ${n}=${r}; ${n}<${a}; ${n}++)`+super.render(e)}get names(){return addExprNames(addExprNames(super.names,this.from),this.to)}},ForIter=class extends For{constructor(e,t,n,r){super(),this.loop=e,this.varKind=t,this.name=n,this.iterable=r}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,t){if(super.optimizeNames(e,t))return this.iterable=optimizeExpr(this.iterable,e,t),this}get names(){return addNames(super.names,this.iterable.names)}},Func=class extends BlockNode{constructor(e,t,n){super(),this.name=e,this.args=t,this.async=n}render(e){return`${this.async?`async `:``}function ${this.name}(${this.args})`+super.render(e)}};Func.kind=`func`;var Return=class extends ParentNode{render(e){return`return `+super.render(e)}};Return.kind=`return`;var Try=class extends BlockNode{render(e){let t=`try`+super.render(e);return this.catch&&(t+=this.catch.render(e)),this.finally&&(t+=this.finally.render(e)),t}optimizeNodes(){return super.optimizeNodes(),this.catch?.optimizeNodes(),this.finally?.optimizeNodes(),this}optimizeNames(e,t){return super.optimizeNames(e,t),this.catch?.optimizeNames(e,t),this.finally?.optimizeNames(e,t),this}get names(){let e=super.names;return this.catch&&addNames(e,this.catch.names),this.finally&&addNames(e,this.finally.names),e}},Catch=class extends BlockNode{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Catch.kind=`catch`;var Finally=class extends BlockNode{render(e){return`finally`+super.render(e)}};Finally.kind=`finally`,e.CodeGen=class{constructor(e,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...t,_n:t.lines?`
2
+ `:``},this._extScope=e,this._scope=new i.Scope({parent:e}),this._nodes=[new Root]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,t){let n=this._extScope.value(e,t);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,t){return this._extScope.getValue(e,t)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,t,n,r){let i=this._scope.toName(t);return n!==void 0&&r&&(this._constants[i.str]=n),this._leafNode(new Def(e,i,n)),i}const(e,t,n){return this._def(i.varKinds.const,e,t,n)}let(e,t,n){return this._def(i.varKinds.let,e,t,n)}var(e,t,n){return this._def(i.varKinds.var,e,t,n)}assign(e,t,n){return this._leafNode(new Assign(e,t,n))}add(t,n){return this._leafNode(new AssignOp(t,e.operators.ADD,n))}code(e){return typeof e==`function`?e():e!==r.nil&&this._leafNode(new AnyCode(e)),this}object(...e){let t=[`{`];for(let[n,i]of e)t.length>1&&t.push(`,`),t.push(n),(n!==i||this.opts.es5)&&(t.push(`:`),(0,r.addCodeArg)(t,i));return t.push(`}`),new r._Code(t)}if(e,t,n){if(this._blockNode(new s(e)),t&&n)this.code(t).else().code(n).endIf();else if(t)this.code(t).endIf();else if(n)throw Error(`CodeGen: "else" body without "then" body`);return this}elseIf(e){return this._elseNode(new s(e))}else(){return this._elseNode(new Else)}endIf(){return this._endBlockNode(s,Else)}_for(e,t){return this._blockNode(e),t&&this.code(t).endFor(),this}for(e,t){return this._for(new ForLoop(e),t)}forRange(e,t,n,r,a=this.opts.es5?i.varKinds.var:i.varKinds.let){let o=this._scope.toName(e);return this._for(new ForRange(a,o,t,n),()=>r(o))}forOf(e,t,n,a=i.varKinds.const){let o=this._scope.toName(e);if(this.opts.es5){let e=t instanceof r.Name?t:this.var(`_arr`,t);return this.forRange(`_i`,0,(0,r._)`${e}.length`,t=>{this.var(o,(0,r._)`${e}[${t}]`),n(o)})}return this._for(new ForIter(`of`,a,o,t),()=>n(o))}forIn(e,t,n,a=this.opts.es5?i.varKinds.var:i.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,r._)`Object.keys(${t})`,n);let o=this._scope.toName(e);return this._for(new ForIter(`in`,a,o,t),()=>n(o))}endFor(){return this._endBlockNode(For)}label(e){return this._leafNode(new Label(e))}break(e){return this._leafNode(new Break(e))}return(e){let t=new Return;if(this._blockNode(t),this.code(e),t.nodes.length!==1)throw Error(`CodeGen: "return" should have one node`);return this._endBlockNode(Return)}try(e,t,n){if(!t&&!n)throw Error(`CodeGen: "try" without "catch" and "finally"`);let r=new Try;if(this._blockNode(r),this.code(e),t){let e=this.name(`e`);this._currNode=r.catch=new Catch(e),t(e)}return n&&(this._currNode=r.finally=new Finally,this.code(n)),this._endBlockNode(Catch,Finally)}throw(e){return this._leafNode(new Throw(e))}block(e,t){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(t),this}endBlock(e){let t=this._blockStarts.pop();if(t===void 0)throw Error(`CodeGen: not in self-balancing block`);let n=this._nodes.length-t;if(n<0||e!==void 0&&n!==e)throw Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=t,this}func(e,t=r.nil,n,i){return this._blockNode(new Func(e,t,n)),i&&this.code(i).endFunc(),this}endFunc(){return this._endBlockNode(Func)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,t){let n=this._currNode;if(n instanceof e||t&&n instanceof t)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${t?`${e.kind}/${t.kind}`:e.kind}"`)}_elseNode(e){let t=this._currNode;if(!(t instanceof s))throw Error(`CodeGen: "else" without "if"`);return this._currNode=t.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let t=this._nodes;t[t.length-1]=e}};function addNames(e,t){for(let n in t)e[n]=(e[n]||0)+(t[n]||0);return e}function addExprNames(e,t){return t instanceof r._CodeOrName?addNames(e,t.names):e}function optimizeExpr(e,t,n){if(e instanceof r.Name)return replaceName(e);if(!canOptimize(e))return e;return new r._Code(e._items.reduce((e,t)=>(t instanceof r.Name&&(t=replaceName(t)),t instanceof r._Code?e.push(...t._items):e.push(t),e),[]));function replaceName(e){let r=n[e.str];return r===void 0||t[e.str]!==1?e:(delete t[e.str],r)}function canOptimize(e){return e instanceof r._Code&&e._items.some(e=>e instanceof r.Name&&t[e.str]===1&&n[e.str]!==void 0)}}function subtractNames(e,t){for(let n in t)e[n]=(e[n]||0)-(t[n]||0)}function not(e){return typeof e==`boolean`||typeof e==`number`||e===null?!e:(0,r._)`!${par(e)}`}e.not=not;let c=mappend(e.operators.AND);function and(...e){return e.reduce(c)}e.and=and;let l=mappend(e.operators.OR);function or(...e){return e.reduce(l)}e.or=or;function mappend(e){return(t,n)=>t===r.nil?n:n===r.nil?t:(0,r._)`${par(t)} ${e} ${par(n)}`}function par(e){return e instanceof r.Name?e:(0,r._)`(${e})`}}));export default require_codegen();export{require_codegen};
@@ -1 +1 @@
1
- import{__commonJSMin}from"../../../../../../../../_virtual/_rolldown/runtime.js";import{require_code}from"./code.js";var require_scope=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.ValueScope=e.ValueScopeName=e.Scope=e.varKinds=e.UsedValueState=void 0;var n=require_code(),ValueError=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},r;(function(e){e[e.Started=0]=`Started`,e[e.Completed=1]=`Completed`})(r||(e.UsedValueState=r={})),e.varKinds={const:new n.Name(`const`),let:new n.Name(`let`),var:new n.Name(`var`)};var Scope=class{constructor({prefixes:e,parent:t}={}){this._names={},this._prefixes=e,this._parent=t}toName(e){return e instanceof n.Name?e:this.name(e)}name(e){return new n.Name(this._newName(e))}_newName(e){let t=this._names[e]||this._nameGroup(e);return`${e}${t.index++}`}_nameGroup(e){if((this._parent?._prefixes)?.has(e)||this._prefixes&&!this._prefixes.has(e))throw Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};e.Scope=Scope;var ValueScopeName=class extends n.Name{constructor(e,t){super(t),this.prefix=e}setValue(e,{property:t,itemIndex:r}){this.value=e,this.scopePath=(0,n._)`.${new n.Name(t)}[${r}]`}};e.ValueScopeName=ValueScopeName;var i=(0,n._)`\n`;e.ValueScope=class extends Scope{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?i:n.nil}}get(){return this._scope}name(e){return new ValueScopeName(e,this._newName(e))}value(e,t){if(t.ref===void 0)throw Error(`CodeGen: ref must be passed in value`);let n=this.toName(e),{prefix:r}=n,i=t.key??t.ref,a=this._values[r];if(a){let e=a.get(i);if(e)return e}else a=this._values[r]=new Map;a.set(i,n);let o=this._scope[r]||(this._scope[r]=[]),s=o.length;return o[s]=t.ref,n.setValue(t,{property:r,itemIndex:s}),n}getValue(e,t){let n=this._values[e];if(n)return n.get(t)}scopeRefs(e,t=this._values){return this._reduceValues(t,t=>{if(t.scopePath===void 0)throw Error(`CodeGen: name "${t}" has no value`);return(0,n._)`${e}${t.scopePath}`})}scopeCode(e=this._values,t,n){return this._reduceValues(e,e=>{if(e.value===void 0)throw Error(`CodeGen: name "${e}" has no value`);return e.value.code},t,n)}_reduceValues(t,i,a={},o){let s=n.nil;for(let c in t){let l=t[c];if(!l)continue;let u=a[c]=a[c]||new Map;l.forEach(t=>{if(u.has(t))return;u.set(t,r.Started);let a=i(t);if(a){let r=this.opts.es5?e.varKinds.var:e.varKinds.const;s=(0,n._)`${s}${r} ${t} = ${a};${this.opts._n}`}else if(a=o?.(t))s=(0,n._)`${s}${a}${this.opts._n}`;else throw new ValueError(t);u.set(t,r.Completed)})}return s}}}));export default require_scope();export{require_scope};
1
+ import{__commonJSMin}from"../../../../../../../../_virtual/_rolldown/runtime.js";import{require_code}from"./code.js";var require_scope=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.ValueScope=e.ValueScopeName=e.Scope=e.varKinds=e.UsedValueState=void 0;let n=require_code();var ValueError=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},r;(function(e){e[e.Started=0]=`Started`,e[e.Completed=1]=`Completed`})(r||(e.UsedValueState=r={})),e.varKinds={const:new n.Name(`const`),let:new n.Name(`let`),var:new n.Name(`var`)};var Scope=class{constructor({prefixes:e,parent:t}={}){this._names={},this._prefixes=e,this._parent=t}toName(e){return e instanceof n.Name?e:this.name(e)}name(e){return new n.Name(this._newName(e))}_newName(e){let t=this._names[e]||this._nameGroup(e);return`${e}${t.index++}`}_nameGroup(e){if((this._parent?._prefixes)?.has(e)||this._prefixes&&!this._prefixes.has(e))throw Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};e.Scope=Scope;var ValueScopeName=class extends n.Name{constructor(e,t){super(t),this.prefix=e}setValue(e,{property:t,itemIndex:r}){this.value=e,this.scopePath=(0,n._)`.${new n.Name(t)}[${r}]`}};e.ValueScopeName=ValueScopeName;let i=(0,n._)`\n`;e.ValueScope=class extends Scope{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?i:n.nil}}get(){return this._scope}name(e){return new ValueScopeName(e,this._newName(e))}value(e,t){if(t.ref===void 0)throw Error(`CodeGen: ref must be passed in value`);let n=this.toName(e),{prefix:r}=n,i=t.key??t.ref,a=this._values[r];if(a){let e=a.get(i);if(e)return e}else a=this._values[r]=new Map;a.set(i,n);let o=this._scope[r]||(this._scope[r]=[]),s=o.length;return o[s]=t.ref,n.setValue(t,{property:r,itemIndex:s}),n}getValue(e,t){let n=this._values[e];if(n)return n.get(t)}scopeRefs(e,t=this._values){return this._reduceValues(t,t=>{if(t.scopePath===void 0)throw Error(`CodeGen: name "${t}" has no value`);return(0,n._)`${e}${t.scopePath}`})}scopeCode(e=this._values,t,n){return this._reduceValues(e,e=>{if(e.value===void 0)throw Error(`CodeGen: name "${e}" has no value`);return e.value.code},t,n)}_reduceValues(t,i,a={},o){let s=n.nil;for(let c in t){let l=t[c];if(!l)continue;let u=a[c]=a[c]||new Map;l.forEach(t=>{if(u.has(t))return;u.set(t,r.Started);let a=i(t);if(a){let r=this.opts.es5?e.varKinds.var:e.varKinds.const;s=(0,n._)`${s}${r} ${t} = ${a};${this.opts._n}`}else if(a=o?.(t))s=(0,n._)`${s}${a}${this.opts._n}`;else throw new ValueError(t);u.set(t,r.Completed)})}return s}}}));export default require_scope();export{require_scope};
@@ -1 +1 @@
1
- import{__commonJSMin}from"../../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"./codegen/index.js";import{require_util}from"./util.js";import{require_names}from"./names.js";var require_errors=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.extendErrors=e.resetErrorsCount=e.reportExtraError=e.reportError=e.keyword$DataError=e.keywordError=void 0;var i=require_codegen(),a=require_util(),o=require_names();e.keywordError={message:({keyword:e})=>(0,i.str)`must pass "${e}" keyword validation`},e.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,i.str)`"${e}" keyword must be ${t} ($data)`:(0,i.str)`"${e}" keyword is invalid ($data)`};function reportError(t,n=e.keywordError,r,a){let{it:o}=t,{gen:s,compositeRule:c,allErrors:l}=o,u=errorObjectCode(t,n,r);a??(c||l)?addError(s,u):returnErrors(o,(0,i._)`[${u}]`)}e.reportError=reportError;function reportExtraError(t,n=e.keywordError,r){let{it:i}=t,{gen:a,compositeRule:s,allErrors:c}=i;addError(a,errorObjectCode(t,n,r)),s||c||returnErrors(i,o.default.vErrors)}e.reportExtraError=reportExtraError;function resetErrorsCount(e,t){e.assign(o.default.errors,t),e.if((0,i._)`${o.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,i._)`${o.default.vErrors}.length`,t),()=>e.assign(o.default.vErrors,null)))}e.resetErrorsCount=resetErrorsCount;function extendErrors({gen:e,keyword:t,schemaValue:n,data:r,errsCount:a,it:s}){if(a===void 0)throw Error(`ajv implementation error`);let c=e.name(`err`);e.forRange(`i`,a,o.default.errors,a=>{e.const(c,(0,i._)`${o.default.vErrors}[${a}]`),e.if((0,i._)`${c}.instancePath === undefined`,()=>e.assign((0,i._)`${c}.instancePath`,(0,i.strConcat)(o.default.instancePath,s.errorPath))),e.assign((0,i._)`${c}.schemaPath`,(0,i.str)`${s.errSchemaPath}/${t}`),s.opts.verbose&&(e.assign((0,i._)`${c}.schema`,n),e.assign((0,i._)`${c}.data`,r))})}e.extendErrors=extendErrors;function addError(e,t){let n=e.const(`err`,t);e.if((0,i._)`${o.default.vErrors} === null`,()=>e.assign(o.default.vErrors,(0,i._)`[${n}]`),(0,i._)`${o.default.vErrors}.push(${n})`),e.code((0,i._)`${o.default.errors}++`)}function returnErrors(e,t){let{gen:n,validateName:r,schemaEnv:a}=e;a.$async?n.throw((0,i._)`new ${e.ValidationError}(${t})`):(n.assign((0,i._)`${r}.errors`,t),n.return(!1))}var s={keyword:new i.Name(`keyword`),schemaPath:new i.Name(`schemaPath`),params:new i.Name(`params`),propertyName:new i.Name(`propertyName`),message:new i.Name(`message`),schema:new i.Name(`schema`),parentSchema:new i.Name(`parentSchema`)};function errorObjectCode(e,t,n){let{createErrors:r}=e.it;return r===!1?(0,i._)`{}`:errorObject(e,t,n)}function errorObject(e,t,n={}){let{gen:r,it:i}=e,a=[errorInstancePath(i,n),errorSchemaPath(e,n)];return extraErrorProps(e,t,a),r.object(...a)}function errorInstancePath({errorPath:e},{instancePath:t}){let n=t?(0,i.str)`${e}${(0,a.getErrorPath)(t,a.Type.Str)}`:e;return[o.default.instancePath,(0,i.strConcat)(o.default.instancePath,n)]}function errorSchemaPath({keyword:e,it:{errSchemaPath:t}},{schemaPath:n,parentSchema:r}){let o=r?t:(0,i.str)`${t}/${e}`;return n&&(o=(0,i.str)`${o}${(0,a.getErrorPath)(n,a.Type.Str)}`),[s.schemaPath,o]}function extraErrorProps(e,{params:t,message:n},r){let{keyword:a,data:c,schemaValue:l,it:u}=e,{opts:d,propertyName:f,topSchemaRef:p,schemaPath:m}=u;r.push([s.keyword,a],[s.params,typeof t==`function`?t(e):t||(0,i._)`{}`]),d.messages&&r.push([s.message,typeof n==`function`?n(e):n]),d.verbose&&r.push([s.schema,l],[s.parentSchema,(0,i._)`${p}${m}`],[o.default.data,c]),f&&r.push([s.propertyName,f])}}));export default require_errors();export{require_errors};
1
+ import{__commonJSMin}from"../../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"./codegen/index.js";import{require_util}from"./util.js";import{require_names}from"./names.js";var require_errors=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.extendErrors=e.resetErrorsCount=e.reportExtraError=e.reportError=e.keyword$DataError=e.keywordError=void 0;let i=require_codegen(),a=require_util(),o=require_names();e.keywordError={message:({keyword:e})=>(0,i.str)`must pass "${e}" keyword validation`},e.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,i.str)`"${e}" keyword must be ${t} ($data)`:(0,i.str)`"${e}" keyword is invalid ($data)`};function reportError(t,n=e.keywordError,r,a){let{it:o}=t,{gen:s,compositeRule:c,allErrors:l}=o,u=errorObjectCode(t,n,r);a??(c||l)?addError(s,u):returnErrors(o,(0,i._)`[${u}]`)}e.reportError=reportError;function reportExtraError(t,n=e.keywordError,r){let{it:i}=t,{gen:a,compositeRule:s,allErrors:c}=i;addError(a,errorObjectCode(t,n,r)),s||c||returnErrors(i,o.default.vErrors)}e.reportExtraError=reportExtraError;function resetErrorsCount(e,t){e.assign(o.default.errors,t),e.if((0,i._)`${o.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,i._)`${o.default.vErrors}.length`,t),()=>e.assign(o.default.vErrors,null)))}e.resetErrorsCount=resetErrorsCount;function extendErrors({gen:e,keyword:t,schemaValue:n,data:r,errsCount:a,it:s}){if(a===void 0)throw Error(`ajv implementation error`);let c=e.name(`err`);e.forRange(`i`,a,o.default.errors,a=>{e.const(c,(0,i._)`${o.default.vErrors}[${a}]`),e.if((0,i._)`${c}.instancePath === undefined`,()=>e.assign((0,i._)`${c}.instancePath`,(0,i.strConcat)(o.default.instancePath,s.errorPath))),e.assign((0,i._)`${c}.schemaPath`,(0,i.str)`${s.errSchemaPath}/${t}`),s.opts.verbose&&(e.assign((0,i._)`${c}.schema`,n),e.assign((0,i._)`${c}.data`,r))})}e.extendErrors=extendErrors;function addError(e,t){let n=e.const(`err`,t);e.if((0,i._)`${o.default.vErrors} === null`,()=>e.assign(o.default.vErrors,(0,i._)`[${n}]`),(0,i._)`${o.default.vErrors}.push(${n})`),e.code((0,i._)`${o.default.errors}++`)}function returnErrors(e,t){let{gen:n,validateName:r,schemaEnv:a}=e;a.$async?n.throw((0,i._)`new ${e.ValidationError}(${t})`):(n.assign((0,i._)`${r}.errors`,t),n.return(!1))}let s={keyword:new i.Name(`keyword`),schemaPath:new i.Name(`schemaPath`),params:new i.Name(`params`),propertyName:new i.Name(`propertyName`),message:new i.Name(`message`),schema:new i.Name(`schema`),parentSchema:new i.Name(`parentSchema`)};function errorObjectCode(e,t,n){let{createErrors:r}=e.it;return r===!1?(0,i._)`{}`:errorObject(e,t,n)}function errorObject(e,t,n={}){let{gen:r,it:i}=e,a=[errorInstancePath(i,n),errorSchemaPath(e,n)];return extraErrorProps(e,t,a),r.object(...a)}function errorInstancePath({errorPath:e},{instancePath:t}){let n=t?(0,i.str)`${e}${(0,a.getErrorPath)(t,a.Type.Str)}`:e;return[o.default.instancePath,(0,i.strConcat)(o.default.instancePath,n)]}function errorSchemaPath({keyword:e,it:{errSchemaPath:t}},{schemaPath:n,parentSchema:r}){let o=r?t:(0,i.str)`${t}/${e}`;return n&&(o=(0,i.str)`${o}${(0,a.getErrorPath)(n,a.Type.Str)}`),[s.schemaPath,o]}function extraErrorProps(e,{params:t,message:n},r){let{keyword:a,data:c,schemaValue:l,it:u}=e,{opts:d,propertyName:f,topSchemaRef:p,schemaPath:m}=u;r.push([s.keyword,a],[s.params,typeof t==`function`?t(e):t||(0,i._)`{}`]),d.messages&&r.push([s.message,typeof n==`function`?n(e):n]),d.verbose&&r.push([s.schema,l],[s.parentSchema,(0,i._)`${p}${m}`],[o.default.data,c]),f&&r.push([s.propertyName,f])}}));export default require_errors();export{require_errors};
@@ -1 +1 @@
1
- import{__commonJSMin}from"../../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"./codegen/index.js";import{require_util}from"./util.js";import{require_names}from"./names.js";import{require_resolve}from"./resolve.js";import{require_validate}from"./validate/index.js";import{require_validation_error}from"../runtime/validation_error.js";var require_compile=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.resolveSchema=e.getCompilingSchema=e.resolveRef=e.compileSchema=e.SchemaEnv=void 0;var s=require_codegen(),c=require_validation_error(),l=require_names(),u=require_resolve(),d=require_util(),f=require_validate(),SchemaEnv=class{constructor(e){this.refs={},this.dynamicAnchors={};let t;typeof e.schema==`object`&&(t=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=e.baseId??(0,u.normalizeId)(t?.[e.schemaId||`$id`]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=t?.$async,this.refs={}}};e.SchemaEnv=SchemaEnv;function compileSchema(e){let t=getCompilingSchema.call(this,e);if(t)return t;let n=(0,u.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:r,lines:i}=this.opts.code,{ownProperties:a}=this.opts,o=new s.CodeGen(this.scope,{es5:r,lines:i,ownProperties:a}),d;e.$async&&(d=o.scopeValue(`Error`,{ref:c.default,code:(0,s._)`require("ajv/dist/runtime/validation_error").default`}));let p=o.scopeName(`validate`);e.validateName=p;let m={gen:o,allErrors:this.opts.allErrors,data:l.default.data,parentData:l.default.parentData,parentDataProperty:l.default.parentDataProperty,dataNames:[l.default.data],dataPathArr:[s.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:o.scopeValue(`schema`,this.opts.code.source===!0?{ref:e.schema,code:(0,s.stringify)(e.schema)}:{ref:e.schema}),validateName:p,ValidationError:d,schema:e.schema,schemaEnv:e,rootId:n,baseId:e.baseId||n,schemaPath:s.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?``:`#`),errorPath:(0,s._)`""`,opts:this.opts,self:this},h;try{this._compilations.add(e),(0,f.validateFunctionCode)(m),o.optimize(this.opts.code.optimize);let t=o.toString();h=`${o.scopeRefs(l.default.scope)}return ${t}`,this.opts.code.process&&(h=this.opts.code.process(h,e));let n=Function(`${l.default.self}`,`${l.default.scope}`,h)(this,this.scope.get());if(this.scope.value(p,{ref:n}),n.errors=null,n.schema=e.schema,n.schemaEnv=e,e.$async&&(n.$async=!0),this.opts.code.source===!0&&(n.source={validateName:p,validateCode:t,scopeValues:o._values}),this.opts.unevaluated){let{props:e,items:t}=m;n.evaluated={props:e instanceof s.Name?void 0:e,items:t instanceof s.Name?void 0:t,dynamicProps:e instanceof s.Name,dynamicItems:t instanceof s.Name},n.source&&(n.source.evaluated=(0,s.stringify)(n.evaluated))}return e.validate=n,e}catch(t){throw delete e.validate,delete e.validateName,h&&this.logger.error(`Error compiling schema, function code:`,h),t}finally{this._compilations.delete(e)}}e.compileSchema=compileSchema;function resolveRef(e,t,n){n=(0,u.resolveUrl)(this.opts.uriResolver,t,n);let r=e.refs[n];if(r)return r;let i=resolve.call(this,e,n);if(i===void 0){let r=e.localRefs?.[n],{schemaId:a}=this.opts;r&&(i=new SchemaEnv({schema:r,schemaId:a,root:e,baseId:t}))}if(i!==void 0)return e.refs[n]=inlineOrCompile.call(this,i)}e.resolveRef=resolveRef;function inlineOrCompile(e){return(0,u.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:compileSchema.call(this,e)}function getCompilingSchema(e){for(let t of this._compilations)if(sameSchemaEnv(t,e))return t}e.getCompilingSchema=getCompilingSchema;function sameSchemaEnv(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function resolve(e,t){let n;for(;typeof(n=this.refs[t])==`string`;)t=n;return n||this.schemas[t]||resolveSchema.call(this,e,t)}function resolveSchema(e,t){let n=this.opts.uriResolver.parse(t),r=(0,u._getFullPath)(this.opts.uriResolver,n),i=(0,u.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&r===i)return getJsonPointer.call(this,n,e);let a=(0,u.normalizeId)(r),o=this.refs[a]||this.schemas[a];if(typeof o==`string`){let t=resolveSchema.call(this,e,o);return typeof t?.schema==`object`?getJsonPointer.call(this,n,t):void 0}if(typeof o?.schema==`object`){if(o.validate||compileSchema.call(this,o),a===(0,u.normalizeId)(t)){let{schema:t}=o,{schemaId:n}=this.opts,r=t[n];return r&&(i=(0,u.resolveUrl)(this.opts.uriResolver,i,r)),new SchemaEnv({schema:t,schemaId:n,root:e,baseId:i})}return getJsonPointer.call(this,n,o)}}e.resolveSchema=resolveSchema;var p=new Set([`properties`,`patternProperties`,`enum`,`dependencies`,`definitions`]);function getJsonPointer(e,{baseId:t,schema:n,root:r}){if(e.fragment?.[0]!==`/`)return;for(let r of e.fragment.slice(1).split(`/`)){if(typeof n==`boolean`)return;let e=n[(0,d.unescapeFragment)(r)];if(e===void 0)return;n=e;let i=typeof n==`object`&&n[this.opts.schemaId];!p.has(r)&&i&&(t=(0,u.resolveUrl)(this.opts.uriResolver,t,i))}let i;if(typeof n!=`boolean`&&n.$ref&&!(0,d.schemaHasRulesButRef)(n,this.RULES)){let e=(0,u.resolveUrl)(this.opts.uriResolver,t,n.$ref);i=resolveSchema.call(this,r,e)}let{schemaId:a}=this.opts;if(i||=new SchemaEnv({schema:n,schemaId:a,root:r,baseId:t}),i.schema!==i.root.schema)return i}}));export default require_compile();export{require_compile};
1
+ import{__commonJSMin}from"../../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"./codegen/index.js";import{require_util}from"./util.js";import{require_names}from"./names.js";import{require_resolve}from"./resolve.js";import{require_validate}from"./validate/index.js";import{require_validation_error}from"../runtime/validation_error.js";var require_compile=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.resolveSchema=e.getCompilingSchema=e.resolveRef=e.compileSchema=e.SchemaEnv=void 0;let s=require_codegen(),c=require_validation_error(),l=require_names(),u=require_resolve(),d=require_util(),f=require_validate();var SchemaEnv=class{constructor(e){this.refs={},this.dynamicAnchors={};let t;typeof e.schema==`object`&&(t=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=e.baseId??(0,u.normalizeId)(t?.[e.schemaId||`$id`]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=t?.$async,this.refs={}}};e.SchemaEnv=SchemaEnv;function compileSchema(e){let t=getCompilingSchema.call(this,e);if(t)return t;let n=(0,u.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:r,lines:i}=this.opts.code,{ownProperties:a}=this.opts,o=new s.CodeGen(this.scope,{es5:r,lines:i,ownProperties:a}),d;e.$async&&(d=o.scopeValue(`Error`,{ref:c.default,code:(0,s._)`require("ajv/dist/runtime/validation_error").default`}));let p=o.scopeName(`validate`);e.validateName=p;let m={gen:o,allErrors:this.opts.allErrors,data:l.default.data,parentData:l.default.parentData,parentDataProperty:l.default.parentDataProperty,dataNames:[l.default.data],dataPathArr:[s.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:o.scopeValue(`schema`,this.opts.code.source===!0?{ref:e.schema,code:(0,s.stringify)(e.schema)}:{ref:e.schema}),validateName:p,ValidationError:d,schema:e.schema,schemaEnv:e,rootId:n,baseId:e.baseId||n,schemaPath:s.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?``:`#`),errorPath:(0,s._)`""`,opts:this.opts,self:this},h;try{this._compilations.add(e),(0,f.validateFunctionCode)(m),o.optimize(this.opts.code.optimize);let t=o.toString();h=`${o.scopeRefs(l.default.scope)}return ${t}`,this.opts.code.process&&(h=this.opts.code.process(h,e));let n=Function(`${l.default.self}`,`${l.default.scope}`,h)(this,this.scope.get());if(this.scope.value(p,{ref:n}),n.errors=null,n.schema=e.schema,n.schemaEnv=e,e.$async&&(n.$async=!0),this.opts.code.source===!0&&(n.source={validateName:p,validateCode:t,scopeValues:o._values}),this.opts.unevaluated){let{props:e,items:t}=m;n.evaluated={props:e instanceof s.Name?void 0:e,items:t instanceof s.Name?void 0:t,dynamicProps:e instanceof s.Name,dynamicItems:t instanceof s.Name},n.source&&(n.source.evaluated=(0,s.stringify)(n.evaluated))}return e.validate=n,e}catch(t){throw delete e.validate,delete e.validateName,h&&this.logger.error(`Error compiling schema, function code:`,h),t}finally{this._compilations.delete(e)}}e.compileSchema=compileSchema;function resolveRef(e,t,n){n=(0,u.resolveUrl)(this.opts.uriResolver,t,n);let r=e.refs[n];if(r)return r;let i=resolve.call(this,e,n);if(i===void 0){let r=e.localRefs?.[n],{schemaId:a}=this.opts;r&&(i=new SchemaEnv({schema:r,schemaId:a,root:e,baseId:t}))}if(i!==void 0)return e.refs[n]=inlineOrCompile.call(this,i)}e.resolveRef=resolveRef;function inlineOrCompile(e){return(0,u.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:compileSchema.call(this,e)}function getCompilingSchema(e){for(let t of this._compilations)if(sameSchemaEnv(t,e))return t}e.getCompilingSchema=getCompilingSchema;function sameSchemaEnv(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function resolve(e,t){let n;for(;typeof(n=this.refs[t])==`string`;)t=n;return n||this.schemas[t]||resolveSchema.call(this,e,t)}function resolveSchema(e,t){let n=this.opts.uriResolver.parse(t),r=(0,u._getFullPath)(this.opts.uriResolver,n),i=(0,u.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&r===i)return getJsonPointer.call(this,n,e);let a=(0,u.normalizeId)(r),o=this.refs[a]||this.schemas[a];if(typeof o==`string`){let t=resolveSchema.call(this,e,o);return typeof t?.schema==`object`?getJsonPointer.call(this,n,t):void 0}if(typeof o?.schema==`object`){if(o.validate||compileSchema.call(this,o),a===(0,u.normalizeId)(t)){let{schema:t}=o,{schemaId:n}=this.opts,r=t[n];return r&&(i=(0,u.resolveUrl)(this.opts.uriResolver,i,r)),new SchemaEnv({schema:t,schemaId:n,root:e,baseId:i})}return getJsonPointer.call(this,n,o)}}e.resolveSchema=resolveSchema;let p=new Set([`properties`,`patternProperties`,`enum`,`dependencies`,`definitions`]);function getJsonPointer(e,{baseId:t,schema:n,root:r}){if(e.fragment?.[0]!==`/`)return;for(let r of e.fragment.slice(1).split(`/`)){if(typeof n==`boolean`)return;let e=n[(0,d.unescapeFragment)(r)];if(e===void 0)return;n=e;let i=typeof n==`object`&&n[this.opts.schemaId];!p.has(r)&&i&&(t=(0,u.resolveUrl)(this.opts.uriResolver,t,i))}let i;if(typeof n!=`boolean`&&n.$ref&&!(0,d.schemaHasRulesButRef)(n,this.RULES)){let e=(0,u.resolveUrl)(this.opts.uriResolver,t,n.$ref);i=resolveSchema.call(this,r,e)}let{schemaId:a}=this.opts;if(i||=new SchemaEnv({schema:n,schemaId:a,root:r,baseId:t}),i.schema!==i.root.schema)return i}}));export default require_compile();export{require_compile};
@@ -1 +1 @@
1
- import{__commonJSMin}from"../../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"./codegen/index.js";var require_names=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=require_codegen();e.default={data:new t.Name(`data`),valCxt:new t.Name(`valCxt`),instancePath:new t.Name(`instancePath`),parentData:new t.Name(`parentData`),parentDataProperty:new t.Name(`parentDataProperty`),rootData:new t.Name(`rootData`),dynamicAnchors:new t.Name(`dynamicAnchors`),vErrors:new t.Name(`vErrors`),errors:new t.Name(`errors`),this:new t.Name(`this`),self:new t.Name(`self`),scope:new t.Name(`scope`),json:new t.Name(`json`),jsonPos:new t.Name(`jsonPos`),jsonLen:new t.Name(`jsonLen`),jsonPart:new t.Name(`jsonPart`)}}));export default require_names();export{require_names};
1
+ import{__commonJSMin}from"../../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"./codegen/index.js";var require_names=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=require_codegen();e.default={data:new t.Name(`data`),valCxt:new t.Name(`valCxt`),instancePath:new t.Name(`instancePath`),parentData:new t.Name(`parentData`),parentDataProperty:new t.Name(`parentDataProperty`),rootData:new t.Name(`rootData`),dynamicAnchors:new t.Name(`dynamicAnchors`),vErrors:new t.Name(`vErrors`),errors:new t.Name(`errors`),this:new t.Name(`this`),self:new t.Name(`self`),scope:new t.Name(`scope`),json:new t.Name(`json`),jsonPos:new t.Name(`jsonPos`),jsonLen:new t.Name(`jsonLen`),jsonPart:new t.Name(`jsonPart`)}}));export default require_names();export{require_names};
@@ -1 +1 @@
1
- import{__commonJSMin}from"../../../../../../../_virtual/_rolldown/runtime.js";import{require_resolve}from"./resolve.js";var require_ref_error=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0});var n=require_resolve();e.default=class extends Error{constructor(e,t,r,i){super(i||`can't resolve reference ${r} from id ${t}`),this.missingRef=(0,n.resolveUrl)(e,t,r),this.missingSchema=(0,n.normalizeId)((0,n.getFullPath)(e,this.missingRef))}}}));export default require_ref_error();export{require_ref_error};
1
+ import{__commonJSMin}from"../../../../../../../_virtual/_rolldown/runtime.js";import{require_resolve}from"./resolve.js";var require_ref_error=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0});let n=require_resolve();e.default=class extends Error{constructor(e,t,r,i){super(i||`can't resolve reference ${r} from id ${t}`),this.missingRef=(0,n.resolveUrl)(e,t,r),this.missingSchema=(0,n.normalizeId)((0,n.getFullPath)(e,this.missingRef))}}}));export default require_ref_error();export{require_ref_error};
@@ -1 +1 @@
1
- import{__commonJSMin}from"../../../../../../../_virtual/_rolldown/runtime.js";import{require_util}from"./util.js";import{require_fast_deep_equal}from"../../../../../fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js";import{require_json_schema_traverse}from"../../../../../json-schema-traverse@1.0.0/node_modules/json-schema-traverse/index.js";var require_resolve=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.getSchemaRefs=e.resolveUrl=e.normalizeId=e._getFullPath=e.getFullPath=e.inlineRef=void 0;var i=require_util(),a=require_fast_deep_equal(),o=require_json_schema_traverse(),s=new Set([`type`,`format`,`pattern`,`maxLength`,`minLength`,`maxProperties`,`minProperties`,`maxItems`,`minItems`,`maximum`,`minimum`,`uniqueItems`,`multipleOf`,`required`,`enum`,`const`]);function inlineRef(e,t=!0){return typeof e==`boolean`?!0:t===!0?!hasRef(e):t?countKeys(e)<=t:!1}e.inlineRef=inlineRef;var c=new Set([`$ref`,`$recursiveRef`,`$recursiveAnchor`,`$dynamicRef`,`$dynamicAnchor`]);function hasRef(e){for(let t in e){if(c.has(t))return!0;let n=e[t];if(Array.isArray(n)&&n.some(hasRef)||typeof n==`object`&&hasRef(n))return!0}return!1}function countKeys(e){let t=0;for(let n in e)if(n===`$ref`||(t++,!s.has(n)&&(typeof e[n]==`object`&&(0,i.eachItem)(e[n],e=>t+=countKeys(e)),t===1/0)))return 1/0;return t}function getFullPath(e,t=``,n){return n!==!1&&(t=normalizeId(t)),_getFullPath(e,e.parse(t))}e.getFullPath=getFullPath;function _getFullPath(e,t){return e.serialize(t).split(`#`)[0]+`#`}e._getFullPath=_getFullPath;var l=/#\/?$/;function normalizeId(e){return e?e.replace(l,``):``}e.normalizeId=normalizeId;function resolveUrl(e,t,n){return n=normalizeId(n),e.resolve(t,n)}e.resolveUrl=resolveUrl;var u=/^[a-z_][-a-z0-9._]*$/i;function getSchemaRefs(e,t){if(typeof e==`boolean`)return{};let{schemaId:n,uriResolver:r}=this.opts,i=normalizeId(e[n]||t),s={"":i},c=getFullPath(r,i,!1),l={},d=new Set;return o(e,{allKeys:!0},(e,t,r,i)=>{if(i===void 0)return;let a=c+t,o=s[i];typeof e[n]==`string`&&(o=addRef.call(this,e[n])),addAnchor.call(this,e.$anchor),addAnchor.call(this,e.$dynamicAnchor),s[t]=o;function addRef(t){let n=this.opts.uriResolver.resolve;if(t=normalizeId(o?n(o,t):t),d.has(t))throw ambiguos(t);d.add(t);let r=this.refs[t];return typeof r==`string`&&(r=this.refs[r]),typeof r==`object`?checkAmbiguosRef(e,r.schema,t):t!==normalizeId(a)&&(t[0]===`#`?(checkAmbiguosRef(e,l[t],t),l[t]=e):this.refs[t]=a),t}function addAnchor(e){if(typeof e==`string`){if(!u.test(e))throw Error(`invalid anchor "${e}"`);addRef.call(this,`#${e}`)}}}),l;function checkAmbiguosRef(e,t,n){if(t!==void 0&&!a(e,t))throw ambiguos(n)}function ambiguos(e){return Error(`reference "${e}" resolves to more than one schema`)}}e.getSchemaRefs=getSchemaRefs}));export default require_resolve();export{require_resolve};
1
+ import{__commonJSMin}from"../../../../../../../_virtual/_rolldown/runtime.js";import{require_util}from"./util.js";import{require_fast_deep_equal}from"../../../../../fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js";import{require_json_schema_traverse}from"../../../../../json-schema-traverse@1.0.0/node_modules/json-schema-traverse/index.js";var require_resolve=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.getSchemaRefs=e.resolveUrl=e.normalizeId=e._getFullPath=e.getFullPath=e.inlineRef=void 0;let i=require_util(),a=require_fast_deep_equal(),o=require_json_schema_traverse(),s=new Set([`type`,`format`,`pattern`,`maxLength`,`minLength`,`maxProperties`,`minProperties`,`maxItems`,`minItems`,`maximum`,`minimum`,`uniqueItems`,`multipleOf`,`required`,`enum`,`const`]);function inlineRef(e,t=!0){return typeof e==`boolean`?!0:t===!0?!hasRef(e):t?countKeys(e)<=t:!1}e.inlineRef=inlineRef;let c=new Set([`$ref`,`$recursiveRef`,`$recursiveAnchor`,`$dynamicRef`,`$dynamicAnchor`]);function hasRef(e){for(let t in e){if(c.has(t))return!0;let n=e[t];if(Array.isArray(n)&&n.some(hasRef)||typeof n==`object`&&hasRef(n))return!0}return!1}function countKeys(e){let t=0;for(let n in e)if(n===`$ref`||(t++,!s.has(n)&&(typeof e[n]==`object`&&(0,i.eachItem)(e[n],e=>t+=countKeys(e)),t===1/0)))return 1/0;return t}function getFullPath(e,t=``,n){return n!==!1&&(t=normalizeId(t)),_getFullPath(e,e.parse(t))}e.getFullPath=getFullPath;function _getFullPath(e,t){return e.serialize(t).split(`#`)[0]+`#`}e._getFullPath=_getFullPath;let l=/#\/?$/;function normalizeId(e){return e?e.replace(l,``):``}e.normalizeId=normalizeId;function resolveUrl(e,t,n){return n=normalizeId(n),e.resolve(t,n)}e.resolveUrl=resolveUrl;let u=/^[a-z_][-a-z0-9._]*$/i;function getSchemaRefs(e,t){if(typeof e==`boolean`)return{};let{schemaId:n,uriResolver:r}=this.opts,i=normalizeId(e[n]||t),s={"":i},c=getFullPath(r,i,!1),l={},d=new Set;return o(e,{allKeys:!0},(e,t,r,i)=>{if(i===void 0)return;let a=c+t,o=s[i];typeof e[n]==`string`&&(o=addRef.call(this,e[n])),addAnchor.call(this,e.$anchor),addAnchor.call(this,e.$dynamicAnchor),s[t]=o;function addRef(t){let n=this.opts.uriResolver.resolve;if(t=normalizeId(o?n(o,t):t),d.has(t))throw ambiguos(t);d.add(t);let r=this.refs[t];return typeof r==`string`&&(r=this.refs[r]),typeof r==`object`?checkAmbiguosRef(e,r.schema,t):t!==normalizeId(a)&&(t[0]===`#`?(checkAmbiguosRef(e,l[t],t),l[t]=e):this.refs[t]=a),t}function addAnchor(e){if(typeof e==`string`){if(!u.test(e))throw Error(`invalid anchor "${e}"`);addRef.call(this,`#${e}`)}}}),l;function checkAmbiguosRef(e,t,n){if(t!==void 0&&!a(e,t))throw ambiguos(n)}function ambiguos(e){return Error(`reference "${e}" resolves to more than one schema`)}}e.getSchemaRefs=getSchemaRefs}));export default require_resolve();export{require_resolve};
@@ -1 +1 @@
1
- import{__commonJSMin}from"../../../../../../../_virtual/_rolldown/runtime.js";var require_rules=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.getRules=e.isJSONType=void 0;var t=new Set([`string`,`number`,`integer`,`boolean`,`null`,`object`,`array`]);function isJSONType(e){return typeof e==`string`&&t.has(e)}e.isJSONType=isJSONType;function getRules(){let e={number:{type:`number`,rules:[]},string:{type:`string`,rules:[]},array:{type:`array`,rules:[]},object:{type:`object`,rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}e.getRules=getRules}));export default require_rules();export{require_rules};
1
+ import{__commonJSMin}from"../../../../../../../_virtual/_rolldown/runtime.js";var require_rules=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.getRules=e.isJSONType=void 0;let t=new Set([`string`,`number`,`integer`,`boolean`,`null`,`object`,`array`]);function isJSONType(e){return typeof e==`string`&&t.has(e)}e.isJSONType=isJSONType;function getRules(){let e={number:{type:`number`,rules:[]},string:{type:`string`,rules:[]},array:{type:`array`,rules:[]},object:{type:`object`,rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}e.getRules=getRules}));export default require_rules();export{require_rules};
@@ -1 +1 @@
1
- import{__commonJSMin}from"../../../../../../../_virtual/_rolldown/runtime.js";import{require_code}from"./codegen/code.js";import{require_codegen}from"./codegen/index.js";var require_util=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.checkStrictMode=e.getErrorPath=e.Type=e.useFunc=e.setEvaluated=e.evaluatedPropsToName=e.mergeEvaluated=e.eachItem=e.unescapeJsonPointer=e.escapeJsonPointer=e.escapeFragment=e.unescapeFragment=e.schemaRefOrVal=e.schemaHasRulesButRef=e.schemaHasRules=e.checkUnknownRules=e.alwaysValidSchema=e.toHash=void 0;var r=require_codegen(),i=require_code();function toHash(e){let t={};for(let n of e)t[n]=!0;return t}e.toHash=toHash;function alwaysValidSchema(e,t){return typeof t==`boolean`?t:Object.keys(t).length===0?!0:(checkUnknownRules(e,t),!schemaHasRules(t,e.self.RULES.all))}e.alwaysValidSchema=alwaysValidSchema;function checkUnknownRules(e,t=e.schema){let{opts:n,self:r}=e;if(!n.strictSchema||typeof t==`boolean`)return;let i=r.RULES.keywords;for(let n in t)i[n]||checkStrictMode(e,`unknown keyword: "${n}"`)}e.checkUnknownRules=checkUnknownRules;function schemaHasRules(e,t){if(typeof e==`boolean`)return!e;for(let n in e)if(t[n])return!0;return!1}e.schemaHasRules=schemaHasRules;function schemaHasRulesButRef(e,t){if(typeof e==`boolean`)return!e;for(let n in e)if(n!==`$ref`&&t.all[n])return!0;return!1}e.schemaHasRulesButRef=schemaHasRulesButRef;function schemaRefOrVal({topSchemaRef:e,schemaPath:t},n,i,a){if(!a){if(typeof n==`number`||typeof n==`boolean`)return n;if(typeof n==`string`)return(0,r._)`${n}`}return(0,r._)`${e}${t}${(0,r.getProperty)(i)}`}e.schemaRefOrVal=schemaRefOrVal;function unescapeFragment(e){return unescapeJsonPointer(decodeURIComponent(e))}e.unescapeFragment=unescapeFragment;function escapeFragment(e){return encodeURIComponent(escapeJsonPointer(e))}e.escapeFragment=escapeFragment;function escapeJsonPointer(e){return typeof e==`number`?`${e}`:e.replace(/~/g,`~0`).replace(/\//g,`~1`)}e.escapeJsonPointer=escapeJsonPointer;function unescapeJsonPointer(e){return e.replace(/~1/g,`/`).replace(/~0/g,`~`)}e.unescapeJsonPointer=unescapeJsonPointer;function eachItem(e,t){if(Array.isArray(e))for(let n of e)t(n);else t(e)}e.eachItem=eachItem;function makeMergeEvaluated({mergeNames:e,mergeToName:t,mergeValues:n,resultToName:i}){return(a,o,s,c)=>{let l=s===void 0?o:s instanceof r.Name?(o instanceof r.Name?e(a,o,s):t(a,o,s),s):o instanceof r.Name?(t(a,s,o),o):n(o,s);return c===r.Name&&!(l instanceof r.Name)?i(a,l):l}}e.mergeEvaluated={props:makeMergeEvaluated({mergeNames:(e,t,n)=>e.if((0,r._)`${n} !== true && ${t} !== undefined`,()=>{e.if((0,r._)`${t} === true`,()=>e.assign(n,!0),()=>e.assign(n,(0,r._)`${n} || {}`).code((0,r._)`Object.assign(${n}, ${t})`))}),mergeToName:(e,t,n)=>e.if((0,r._)`${n} !== true`,()=>{t===!0?e.assign(n,!0):(e.assign(n,(0,r._)`${n} || {}`),setEvaluated(e,n,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:evaluatedPropsToName}),items:makeMergeEvaluated({mergeNames:(e,t,n)=>e.if((0,r._)`${n} !== true && ${t} !== undefined`,()=>e.assign(n,(0,r._)`${t} === true ? true : ${n} > ${t} ? ${n} : ${t}`)),mergeToName:(e,t,n)=>e.if((0,r._)`${n} !== true`,()=>e.assign(n,t===!0?!0:(0,r._)`${n} > ${t} ? ${n} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var(`items`,t)})};function evaluatedPropsToName(e,t){if(t===!0)return e.var(`props`,!0);let n=e.var(`props`,(0,r._)`{}`);return t!==void 0&&setEvaluated(e,n,t),n}e.evaluatedPropsToName=evaluatedPropsToName;function setEvaluated(e,t,n){Object.keys(n).forEach(n=>e.assign((0,r._)`${t}${(0,r.getProperty)(n)}`,!0))}e.setEvaluated=setEvaluated;var a={};function useFunc(e,t){return e.scopeValue(`func`,{ref:t,code:a[t.code]||(a[t.code]=new i._Code(t.code))})}e.useFunc=useFunc;var o;(function(e){e[e.Num=0]=`Num`,e[e.Str=1]=`Str`})(o||(e.Type=o={}));function getErrorPath(e,t,n){if(e instanceof r.Name){let i=t===o.Num;return n?i?(0,r._)`"[" + ${e} + "]"`:(0,r._)`"['" + ${e} + "']"`:i?(0,r._)`"/" + ${e}`:(0,r._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return n?(0,r.getProperty)(e).toString():`/`+escapeJsonPointer(e)}e.getErrorPath=getErrorPath;function checkStrictMode(e,t,n=e.opts.strictSchema){if(n){if(t=`strict mode: ${t}`,n===!0)throw Error(t);e.self.logger.warn(t)}}e.checkStrictMode=checkStrictMode}));export default require_util();export{require_util};
1
+ import{__commonJSMin}from"../../../../../../../_virtual/_rolldown/runtime.js";import{require_code}from"./codegen/code.js";import{require_codegen}from"./codegen/index.js";var require_util=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.checkStrictMode=e.getErrorPath=e.Type=e.useFunc=e.setEvaluated=e.evaluatedPropsToName=e.mergeEvaluated=e.eachItem=e.unescapeJsonPointer=e.escapeJsonPointer=e.escapeFragment=e.unescapeFragment=e.schemaRefOrVal=e.schemaHasRulesButRef=e.schemaHasRules=e.checkUnknownRules=e.alwaysValidSchema=e.toHash=void 0;let r=require_codegen(),i=require_code();function toHash(e){let t={};for(let n of e)t[n]=!0;return t}e.toHash=toHash;function alwaysValidSchema(e,t){return typeof t==`boolean`?t:Object.keys(t).length===0?!0:(checkUnknownRules(e,t),!schemaHasRules(t,e.self.RULES.all))}e.alwaysValidSchema=alwaysValidSchema;function checkUnknownRules(e,t=e.schema){let{opts:n,self:r}=e;if(!n.strictSchema||typeof t==`boolean`)return;let i=r.RULES.keywords;for(let n in t)i[n]||checkStrictMode(e,`unknown keyword: "${n}"`)}e.checkUnknownRules=checkUnknownRules;function schemaHasRules(e,t){if(typeof e==`boolean`)return!e;for(let n in e)if(t[n])return!0;return!1}e.schemaHasRules=schemaHasRules;function schemaHasRulesButRef(e,t){if(typeof e==`boolean`)return!e;for(let n in e)if(n!==`$ref`&&t.all[n])return!0;return!1}e.schemaHasRulesButRef=schemaHasRulesButRef;function schemaRefOrVal({topSchemaRef:e,schemaPath:t},n,i,a){if(!a){if(typeof n==`number`||typeof n==`boolean`)return n;if(typeof n==`string`)return(0,r._)`${n}`}return(0,r._)`${e}${t}${(0,r.getProperty)(i)}`}e.schemaRefOrVal=schemaRefOrVal;function unescapeFragment(e){return unescapeJsonPointer(decodeURIComponent(e))}e.unescapeFragment=unescapeFragment;function escapeFragment(e){return encodeURIComponent(escapeJsonPointer(e))}e.escapeFragment=escapeFragment;function escapeJsonPointer(e){return typeof e==`number`?`${e}`:e.replace(/~/g,`~0`).replace(/\//g,`~1`)}e.escapeJsonPointer=escapeJsonPointer;function unescapeJsonPointer(e){return e.replace(/~1/g,`/`).replace(/~0/g,`~`)}e.unescapeJsonPointer=unescapeJsonPointer;function eachItem(e,t){if(Array.isArray(e))for(let n of e)t(n);else t(e)}e.eachItem=eachItem;function makeMergeEvaluated({mergeNames:e,mergeToName:t,mergeValues:n,resultToName:i}){return(a,o,s,c)=>{let l=s===void 0?o:s instanceof r.Name?(o instanceof r.Name?e(a,o,s):t(a,o,s),s):o instanceof r.Name?(t(a,s,o),o):n(o,s);return c===r.Name&&!(l instanceof r.Name)?i(a,l):l}}e.mergeEvaluated={props:makeMergeEvaluated({mergeNames:(e,t,n)=>e.if((0,r._)`${n} !== true && ${t} !== undefined`,()=>{e.if((0,r._)`${t} === true`,()=>e.assign(n,!0),()=>e.assign(n,(0,r._)`${n} || {}`).code((0,r._)`Object.assign(${n}, ${t})`))}),mergeToName:(e,t,n)=>e.if((0,r._)`${n} !== true`,()=>{t===!0?e.assign(n,!0):(e.assign(n,(0,r._)`${n} || {}`),setEvaluated(e,n,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:evaluatedPropsToName}),items:makeMergeEvaluated({mergeNames:(e,t,n)=>e.if((0,r._)`${n} !== true && ${t} !== undefined`,()=>e.assign(n,(0,r._)`${t} === true ? true : ${n} > ${t} ? ${n} : ${t}`)),mergeToName:(e,t,n)=>e.if((0,r._)`${n} !== true`,()=>e.assign(n,t===!0?!0:(0,r._)`${n} > ${t} ? ${n} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var(`items`,t)})};function evaluatedPropsToName(e,t){if(t===!0)return e.var(`props`,!0);let n=e.var(`props`,(0,r._)`{}`);return t!==void 0&&setEvaluated(e,n,t),n}e.evaluatedPropsToName=evaluatedPropsToName;function setEvaluated(e,t,n){Object.keys(n).forEach(n=>e.assign((0,r._)`${t}${(0,r.getProperty)(n)}`,!0))}e.setEvaluated=setEvaluated;let a={};function useFunc(e,t){return e.scopeValue(`func`,{ref:t,code:a[t.code]||(a[t.code]=new i._Code(t.code))})}e.useFunc=useFunc;var o;(function(e){e[e.Num=0]=`Num`,e[e.Str=1]=`Str`})(o||(e.Type=o={}));function getErrorPath(e,t,n){if(e instanceof r.Name){let i=t===o.Num;return n?i?(0,r._)`"[" + ${e} + "]"`:(0,r._)`"['" + ${e} + "']"`:i?(0,r._)`"/" + ${e}`:(0,r._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return n?(0,r.getProperty)(e).toString():`/`+escapeJsonPointer(e)}e.getErrorPath=getErrorPath;function checkStrictMode(e,t,n=e.opts.strictSchema){if(n){if(t=`strict mode: ${t}`,n===!0)throw Error(t);e.self.logger.warn(t)}}e.checkStrictMode=checkStrictMode}));export default require_util();export{require_util};
@@ -1 +1 @@
1
- import{__commonJSMin}from"../../../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"../codegen/index.js";import{require_names}from"../names.js";import{require_errors}from"../errors.js";var require_boolSchema=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.boolOrEmptySchema=e.topBoolOrEmptySchema=void 0;var i=require_errors(),a=require_codegen(),o=require_names(),s={message:`boolean schema is false`};function topBoolOrEmptySchema(e){let{gen:t,schema:n,validateName:r}=e;n===!1?falseSchemaError(e,!1):typeof n==`object`&&n.$async===!0?t.return(o.default.data):(t.assign((0,a._)`${r}.errors`,null),t.return(!0))}e.topBoolOrEmptySchema=topBoolOrEmptySchema;function boolOrEmptySchema(e,t){let{gen:n,schema:r}=e;r===!1?(n.var(t,!1),falseSchemaError(e)):n.var(t,!0)}e.boolOrEmptySchema=boolOrEmptySchema;function falseSchemaError(e,t){let{gen:n,data:r}=e,a={gen:n,keyword:`false schema`,data:r,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,i.reportError)(a,s,void 0,t)}}));export default require_boolSchema();export{require_boolSchema};
1
+ import{__commonJSMin}from"../../../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"../codegen/index.js";import{require_names}from"../names.js";import{require_errors}from"../errors.js";var require_boolSchema=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.boolOrEmptySchema=e.topBoolOrEmptySchema=void 0;let i=require_errors(),a=require_codegen(),o=require_names(),s={message:`boolean schema is false`};function topBoolOrEmptySchema(e){let{gen:t,schema:n,validateName:r}=e;n===!1?falseSchemaError(e,!1):typeof n==`object`&&n.$async===!0?t.return(o.default.data):(t.assign((0,a._)`${r}.errors`,null),t.return(!0))}e.topBoolOrEmptySchema=topBoolOrEmptySchema;function boolOrEmptySchema(e,t){let{gen:n,schema:r}=e;r===!1?(n.var(t,!1),falseSchemaError(e)):n.var(t,!0)}e.boolOrEmptySchema=boolOrEmptySchema;function falseSchemaError(e,t){let{gen:n,data:r}=e,a={gen:n,keyword:`false schema`,data:r,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,i.reportError)(a,s,void 0,t)}}));export default require_boolSchema();export{require_boolSchema};
@@ -1,4 +1,4 @@
1
- import{__commonJSMin}from"../../../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"../codegen/index.js";import{require_util}from"../util.js";import{require_errors}from"../errors.js";import{require_rules}from"../rules.js";import{require_applicability}from"./applicability.js";var require_dataType=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.reportTypeError=e.checkDataTypes=e.checkDataType=e.coerceAndCheckDataType=e.getJSONTypes=e.getSchemaTypes=e.DataType=void 0;var o=require_rules(),s=require_applicability(),c=require_errors(),l=require_codegen(),u=require_util(),d;(function(e){e[e.Correct=0]=`Correct`,e[e.Wrong=1]=`Wrong`})(d||(e.DataType=d={}));function getSchemaTypes(e){let t=getJSONTypes(e.type);if(t.includes(`null`)){if(e.nullable===!1)throw Error(`type: null contradicts nullable: false`)}else{if(!t.length&&e.nullable!==void 0)throw Error(`"nullable" cannot be used without "type"`);e.nullable===!0&&t.push(`null`)}return t}e.getSchemaTypes=getSchemaTypes;function getJSONTypes(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(o.isJSONType))return t;throw Error(`type must be JSONType or JSONType[]: `+t.join(`,`))}e.getJSONTypes=getJSONTypes;function coerceAndCheckDataType(e,t){let{gen:n,data:r,opts:i}=e,a=coerceToTypes(t,i.coerceTypes),o=t.length>0&&!(a.length===0&&t.length===1&&(0,s.schemaHasRulesForType)(e,t[0]));if(o){let o=checkDataTypes(t,r,i.strictNumbers,d.Wrong);n.if(o,()=>{a.length?coerceData(e,t,a):reportTypeError(e)})}return o}e.coerceAndCheckDataType=coerceAndCheckDataType;var f=new Set([`string`,`number`,`integer`,`boolean`,`null`]);function coerceToTypes(e,t){return t?e.filter(e=>f.has(e)||t===`array`&&e===`array`):[]}function coerceData(e,t,n){let{gen:r,data:i,opts:a}=e,o=r.let(`dataType`,(0,l._)`typeof ${i}`),s=r.let(`coerced`,(0,l._)`undefined`);a.coerceTypes===`array`&&r.if((0,l._)`${o} == 'object' && Array.isArray(${i}) && ${i}.length == 1`,()=>r.assign(i,(0,l._)`${i}[0]`).assign(o,(0,l._)`typeof ${i}`).if(checkDataTypes(t,i,a.strictNumbers),()=>r.assign(s,i))),r.if((0,l._)`${s} !== undefined`);for(let e of n)(f.has(e)||e===`array`&&a.coerceTypes===`array`)&&coerceSpecificType(e);r.else(),reportTypeError(e),r.endIf(),r.if((0,l._)`${s} !== undefined`,()=>{r.assign(i,s),assignParentData(e,s)});function coerceSpecificType(e){switch(e){case`string`:r.elseIf((0,l._)`${o} == "number" || ${o} == "boolean"`).assign(s,(0,l._)`"" + ${i}`).elseIf((0,l._)`${i} === null`).assign(s,(0,l._)`""`);return;case`number`:r.elseIf((0,l._)`${o} == "boolean" || ${i} === null
1
+ import{__commonJSMin}from"../../../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"../codegen/index.js";import{require_util}from"../util.js";import{require_errors}from"../errors.js";import{require_rules}from"../rules.js";import{require_applicability}from"./applicability.js";var require_dataType=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.reportTypeError=e.checkDataTypes=e.checkDataType=e.coerceAndCheckDataType=e.getJSONTypes=e.getSchemaTypes=e.DataType=void 0;let o=require_rules(),s=require_applicability(),c=require_errors(),l=require_codegen(),u=require_util();var d;(function(e){e[e.Correct=0]=`Correct`,e[e.Wrong=1]=`Wrong`})(d||(e.DataType=d={}));function getSchemaTypes(e){let t=getJSONTypes(e.type);if(t.includes(`null`)){if(e.nullable===!1)throw Error(`type: null contradicts nullable: false`)}else{if(!t.length&&e.nullable!==void 0)throw Error(`"nullable" cannot be used without "type"`);e.nullable===!0&&t.push(`null`)}return t}e.getSchemaTypes=getSchemaTypes;function getJSONTypes(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(o.isJSONType))return t;throw Error(`type must be JSONType or JSONType[]: `+t.join(`,`))}e.getJSONTypes=getJSONTypes;function coerceAndCheckDataType(e,t){let{gen:n,data:r,opts:i}=e,a=coerceToTypes(t,i.coerceTypes),o=t.length>0&&!(a.length===0&&t.length===1&&(0,s.schemaHasRulesForType)(e,t[0]));if(o){let o=checkDataTypes(t,r,i.strictNumbers,d.Wrong);n.if(o,()=>{a.length?coerceData(e,t,a):reportTypeError(e)})}return o}e.coerceAndCheckDataType=coerceAndCheckDataType;let f=new Set([`string`,`number`,`integer`,`boolean`,`null`]);function coerceToTypes(e,t){return t?e.filter(e=>f.has(e)||t===`array`&&e===`array`):[]}function coerceData(e,t,n){let{gen:r,data:i,opts:a}=e,o=r.let(`dataType`,(0,l._)`typeof ${i}`),s=r.let(`coerced`,(0,l._)`undefined`);a.coerceTypes===`array`&&r.if((0,l._)`${o} == 'object' && Array.isArray(${i}) && ${i}.length == 1`,()=>r.assign(i,(0,l._)`${i}[0]`).assign(o,(0,l._)`typeof ${i}`).if(checkDataTypes(t,i,a.strictNumbers),()=>r.assign(s,i))),r.if((0,l._)`${s} !== undefined`);for(let e of n)(f.has(e)||e===`array`&&a.coerceTypes===`array`)&&coerceSpecificType(e);r.else(),reportTypeError(e),r.endIf(),r.if((0,l._)`${s} !== undefined`,()=>{r.assign(i,s),assignParentData(e,s)});function coerceSpecificType(e){switch(e){case`string`:r.elseIf((0,l._)`${o} == "number" || ${o} == "boolean"`).assign(s,(0,l._)`"" + ${i}`).elseIf((0,l._)`${i} === null`).assign(s,(0,l._)`""`);return;case`number`:r.elseIf((0,l._)`${o} == "boolean" || ${i} === null
2
2
  || (${o} == "string" && ${i} && ${i} == +${i})`).assign(s,(0,l._)`+${i}`);return;case`integer`:r.elseIf((0,l._)`${o} === "boolean" || ${i} === null
3
3
  || (${o} === "string" && ${i} && ${i} == +${i} && !(${i} % 1))`).assign(s,(0,l._)`+${i}`);return;case`boolean`:r.elseIf((0,l._)`${i} === "false" || ${i} === 0 || ${i} === null`).assign(s,!1).elseIf((0,l._)`${i} === "true" || ${i} === 1`).assign(s,!0);return;case`null`:r.elseIf((0,l._)`${i} === "" || ${i} === 0 || ${i} === false`),r.assign(s,null);return;case`array`:r.elseIf((0,l._)`${o} === "string" || ${o} === "number"
4
- || ${o} === "boolean" || ${i} === null`).assign(s,(0,l._)`[${i}]`)}}}function assignParentData({gen:e,parentData:t,parentDataProperty:n},r){e.if((0,l._)`${t} !== undefined`,()=>e.assign((0,l._)`${t}[${n}]`,r))}function checkDataType(e,t,n,r=d.Correct){let i=r===d.Correct?l.operators.EQ:l.operators.NEQ,a;switch(e){case`null`:return(0,l._)`${t} ${i} null`;case`array`:a=(0,l._)`Array.isArray(${t})`;break;case`object`:a=(0,l._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case`integer`:a=numCond((0,l._)`!(${t} % 1) && !isNaN(${t})`);break;case`number`:a=numCond();break;default:return(0,l._)`typeof ${t} ${i} ${e}`}return r===d.Correct?a:(0,l.not)(a);function numCond(e=l.nil){return(0,l.and)((0,l._)`typeof ${t} == "number"`,e,n?(0,l._)`isFinite(${t})`:l.nil)}}e.checkDataType=checkDataType;function checkDataTypes(e,t,n,r){if(e.length===1)return checkDataType(e[0],t,n,r);let i,a=(0,u.toHash)(e);if(a.array&&a.object){let e=(0,l._)`typeof ${t} != "object"`;i=a.null?e:(0,l._)`!${t} || ${e}`,delete a.null,delete a.array,delete a.object}else i=l.nil;a.number&&delete a.integer;for(let e in a)i=(0,l.and)(i,checkDataType(e,t,n,r));return i}e.checkDataTypes=checkDataTypes;var p={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e==`string`?(0,l._)`{type: ${e}}`:(0,l._)`{type: ${t}}`};function reportTypeError(e){let t=getTypeErrorContext(e);(0,c.reportError)(t,p)}e.reportTypeError=reportTypeError;function getTypeErrorContext(e){let{gen:t,data:n,schema:r}=e,i=(0,u.schemaRefOrVal)(e,r,`type`);return{gen:t,keyword:`type`,data:n,schema:r.type,schemaCode:i,schemaValue:i,parentSchema:r,params:{},it:e}}}));export default require_dataType();export{require_dataType};
4
+ || ${o} === "boolean" || ${i} === null`).assign(s,(0,l._)`[${i}]`)}}}function assignParentData({gen:e,parentData:t,parentDataProperty:n},r){e.if((0,l._)`${t} !== undefined`,()=>e.assign((0,l._)`${t}[${n}]`,r))}function checkDataType(e,t,n,r=d.Correct){let i=r===d.Correct?l.operators.EQ:l.operators.NEQ,a;switch(e){case`null`:return(0,l._)`${t} ${i} null`;case`array`:a=(0,l._)`Array.isArray(${t})`;break;case`object`:a=(0,l._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case`integer`:a=numCond((0,l._)`!(${t} % 1) && !isNaN(${t})`);break;case`number`:a=numCond();break;default:return(0,l._)`typeof ${t} ${i} ${e}`}return r===d.Correct?a:(0,l.not)(a);function numCond(e=l.nil){return(0,l.and)((0,l._)`typeof ${t} == "number"`,e,n?(0,l._)`isFinite(${t})`:l.nil)}}e.checkDataType=checkDataType;function checkDataTypes(e,t,n,r){if(e.length===1)return checkDataType(e[0],t,n,r);let i,a=(0,u.toHash)(e);if(a.array&&a.object){let e=(0,l._)`typeof ${t} != "object"`;i=a.null?e:(0,l._)`!${t} || ${e}`,delete a.null,delete a.array,delete a.object}else i=l.nil;a.number&&delete a.integer;for(let e in a)i=(0,l.and)(i,checkDataType(e,t,n,r));return i}e.checkDataTypes=checkDataTypes;let p={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e==`string`?(0,l._)`{type: ${e}}`:(0,l._)`{type: ${t}}`};function reportTypeError(e){let t=getTypeErrorContext(e);(0,c.reportError)(t,p)}e.reportTypeError=reportTypeError;function getTypeErrorContext(e){let{gen:t,data:n,schema:r}=e,i=(0,u.schemaRefOrVal)(e,r,`type`);return{gen:t,keyword:`type`,data:n,schema:r.type,schemaCode:i,schemaValue:i,parentSchema:r,params:{},it:e}}}));export default require_dataType();export{require_dataType};
@@ -1 +1 @@
1
- import{__commonJSMin}from"../../../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"../codegen/index.js";import{require_util}from"../util.js";var require_defaults=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.assignDefaults=void 0;var r=require_codegen(),i=require_util();function assignDefaults(e,t){let{properties:n,items:r}=e.schema;if(t===`object`&&n)for(let t in n)assignDefault(e,t,n[t].default);else t===`array`&&Array.isArray(r)&&r.forEach((t,n)=>assignDefault(e,n,t.default))}e.assignDefaults=assignDefaults;function assignDefault(e,t,n){let{gen:a,compositeRule:o,data:s,opts:c}=e;if(n===void 0)return;let l=(0,r._)`${s}${(0,r.getProperty)(t)}`;if(o){(0,i.checkStrictMode)(e,`default is ignored for: ${l}`);return}let u=(0,r._)`${l} === undefined`;c.useDefaults===`empty`&&(u=(0,r._)`${u} || ${l} === null || ${l} === ""`),a.if(u,(0,r._)`${l} = ${(0,r.stringify)(n)}`)}}));export default require_defaults();export{require_defaults};
1
+ import{__commonJSMin}from"../../../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"../codegen/index.js";import{require_util}from"../util.js";var require_defaults=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.assignDefaults=void 0;let r=require_codegen(),i=require_util();function assignDefaults(e,t){let{properties:n,items:r}=e.schema;if(t===`object`&&n)for(let t in n)assignDefault(e,t,n[t].default);else t===`array`&&Array.isArray(r)&&r.forEach((t,n)=>assignDefault(e,n,t.default))}e.assignDefaults=assignDefaults;function assignDefault(e,t,n){let{gen:a,compositeRule:o,data:s,opts:c}=e;if(n===void 0)return;let l=(0,r._)`${s}${(0,r.getProperty)(t)}`;if(o){(0,i.checkStrictMode)(e,`default is ignored for: ${l}`);return}let u=(0,r._)`${l} === undefined`;c.useDefaults===`empty`&&(u=(0,r._)`${u} || ${l} === null || ${l} === ""`),a.if(u,(0,r._)`${l} = ${(0,r.stringify)(n)}`)}}));export default require_defaults();export{require_defaults};
@@ -1 +1 @@
1
- import{__commonJSMin}from"../../../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"../codegen/index.js";import{require_util}from"../util.js";import{require_names}from"../names.js";import{require_errors}from"../errors.js";import{require_boolSchema}from"./boolSchema.js";import{require_applicability}from"./applicability.js";import{require_dataType}from"./dataType.js";import{require_defaults}from"./defaults.js";import{require_keyword}from"./keyword.js";import{require_subschema}from"./subschema.js";import{require_resolve}from"../resolve.js";var require_validate=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.getData=e.KeywordCxt=e.validateFunctionCode=void 0;var d=require_boolSchema(),f=require_dataType(),p=require_applicability(),m=require_dataType(),h=require_defaults(),g=require_keyword(),_=require_subschema(),v=require_codegen(),y=require_names(),b=require_resolve(),x=require_util(),S=require_errors();function validateFunctionCode(e){if(isSchemaObj(e)&&(checkKeywords(e),schemaCxtHasRules(e))){topSchemaObjCode(e);return}validateFunction(e,()=>(0,d.topBoolOrEmptySchema)(e))}e.validateFunctionCode=validateFunctionCode;function validateFunction({gen:e,validateName:t,schema:n,schemaEnv:r,opts:i},a){i.code.es5?e.func(t,(0,v._)`${y.default.data}, ${y.default.valCxt}`,r.$async,()=>{e.code((0,v._)`"use strict"; ${funcSourceUrl(n,i)}`),destructureValCxtES5(e,i),e.code(a)}):e.func(t,(0,v._)`${y.default.data}, ${destructureValCxt(i)}`,r.$async,()=>e.code(funcSourceUrl(n,i)).code(a))}function destructureValCxt(e){return(0,v._)`{${y.default.instancePath}="", ${y.default.parentData}, ${y.default.parentDataProperty}, ${y.default.rootData}=${y.default.data}${e.dynamicRef?(0,v._)`, ${y.default.dynamicAnchors}={}`:v.nil}}={}`}function destructureValCxtES5(e,t){e.if(y.default.valCxt,()=>{e.var(y.default.instancePath,(0,v._)`${y.default.valCxt}.${y.default.instancePath}`),e.var(y.default.parentData,(0,v._)`${y.default.valCxt}.${y.default.parentData}`),e.var(y.default.parentDataProperty,(0,v._)`${y.default.valCxt}.${y.default.parentDataProperty}`),e.var(y.default.rootData,(0,v._)`${y.default.valCxt}.${y.default.rootData}`),t.dynamicRef&&e.var(y.default.dynamicAnchors,(0,v._)`${y.default.valCxt}.${y.default.dynamicAnchors}`)},()=>{e.var(y.default.instancePath,(0,v._)`""`),e.var(y.default.parentData,(0,v._)`undefined`),e.var(y.default.parentDataProperty,(0,v._)`undefined`),e.var(y.default.rootData,y.default.data),t.dynamicRef&&e.var(y.default.dynamicAnchors,(0,v._)`{}`)})}function topSchemaObjCode(e){let{schema:t,opts:n,gen:r}=e;validateFunction(e,()=>{n.$comment&&t.$comment&&commentKeyword(e),checkNoDefault(e),r.let(y.default.vErrors,null),r.let(y.default.errors,0),n.unevaluated&&resetEvaluated(e),typeAndKeywords(e),returnResults(e)})}function resetEvaluated(e){let{gen:t,validateName:n}=e;e.evaluated=t.const(`evaluated`,(0,v._)`${n}.evaluated`),t.if((0,v._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,v._)`${e.evaluated}.props`,(0,v._)`undefined`)),t.if((0,v._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,v._)`${e.evaluated}.items`,(0,v._)`undefined`))}function funcSourceUrl(e,t){let n=typeof e==`object`&&e[t.schemaId];return n&&(t.code.source||t.code.process)?(0,v._)`/*# sourceURL=${n} */`:v.nil}function subschemaCode(e,t){if(isSchemaObj(e)&&(checkKeywords(e),schemaCxtHasRules(e))){subSchemaObjCode(e,t);return}(0,d.boolOrEmptySchema)(e,t)}function schemaCxtHasRules({schema:e,self:t}){if(typeof e==`boolean`)return!e;for(let n in e)if(t.RULES.all[n])return!0;return!1}function isSchemaObj(e){return typeof e.schema!=`boolean`}function subSchemaObjCode(e,t){let{schema:n,gen:r,opts:i}=e;i.$comment&&n.$comment&&commentKeyword(e),updateContext(e),checkAsyncSchema(e);let a=r.const(`_errs`,y.default.errors);typeAndKeywords(e,a),r.var(t,(0,v._)`${a} === ${y.default.errors}`)}function checkKeywords(e){(0,x.checkUnknownRules)(e),checkRefsAndKeywords(e)}function typeAndKeywords(e,t){if(e.opts.jtd)return schemaKeywords(e,[],!1,t);let n=(0,f.getSchemaTypes)(e.schema);schemaKeywords(e,n,!(0,f.coerceAndCheckDataType)(e,n),t)}function checkRefsAndKeywords(e){let{schema:t,errSchemaPath:n,opts:r,self:i}=e;t.$ref&&r.ignoreKeywordsWithRef&&(0,x.schemaHasRulesButRef)(t,i.RULES)&&i.logger.warn(`$ref: keywords ignored in schema at path "${n}"`)}function checkNoDefault(e){let{schema:t,opts:n}=e;t.default!==void 0&&n.useDefaults&&n.strictSchema&&(0,x.checkStrictMode)(e,`default is ignored in the schema root`)}function updateContext(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,b.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function checkAsyncSchema(e){if(e.schema.$async&&!e.schemaEnv.$async)throw Error(`async schema in sync schema`)}function commentKeyword({gen:e,schemaEnv:t,schema:n,errSchemaPath:r,opts:i}){let a=n.$comment;if(i.$comment===!0)e.code((0,v._)`${y.default.self}.logger.log(${a})`);else if(typeof i.$comment==`function`){let n=(0,v.str)`${r}/$comment`,i=e.scopeValue(`root`,{ref:t.root});e.code((0,v._)`${y.default.self}.opts.$comment(${a}, ${n}, ${i}.schema)`)}}function returnResults(e){let{gen:t,schemaEnv:n,validateName:r,ValidationError:i,opts:a}=e;n.$async?t.if((0,v._)`${y.default.errors} === 0`,()=>t.return(y.default.data),()=>t.throw((0,v._)`new ${i}(${y.default.vErrors})`)):(t.assign((0,v._)`${r}.errors`,y.default.vErrors),a.unevaluated&&assignEvaluated(e),t.return((0,v._)`${y.default.errors} === 0`))}function assignEvaluated({gen:e,evaluated:t,props:n,items:r}){n instanceof v.Name&&e.assign((0,v._)`${t}.props`,n),r instanceof v.Name&&e.assign((0,v._)`${t}.items`,r)}function schemaKeywords(e,t,n,r){let{gen:i,schema:a,data:o,allErrors:s,opts:c,self:l}=e,{RULES:u}=l;if(a.$ref&&(c.ignoreKeywordsWithRef||!(0,x.schemaHasRulesButRef)(a,u))){i.block(()=>keywordCode(e,`$ref`,u.all.$ref.definition));return}c.jtd||checkStrictTypes(e,t),i.block(()=>{for(let e of u.rules)groupKeywords(e);groupKeywords(u.post)});function groupKeywords(l){(0,p.shouldUseGroup)(a,l)&&(l.type?(i.if((0,m.checkDataType)(l.type,o,c.strictNumbers)),iterateKeywords(e,l),t.length===1&&t[0]===l.type&&n&&(i.else(),(0,m.reportTypeError)(e)),i.endIf()):iterateKeywords(e,l),s||i.if((0,v._)`${y.default.errors} === ${r||0}`))}}function iterateKeywords(e,t){let{gen:n,schema:r,opts:{useDefaults:i}}=e;i&&(0,h.assignDefaults)(e,t.type),n.block(()=>{for(let n of t.rules)(0,p.shouldUseRule)(r,n)&&keywordCode(e,n.keyword,n.definition,t.type)})}function checkStrictTypes(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(checkContextTypes(e,t),e.opts.allowUnionTypes||checkMultipleTypes(e,t),checkKeywordTypes(e,e.dataTypes))}function checkContextTypes(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(t=>{includesType(e.dataTypes,t)||strictTypesError(e,`type "${t}" not allowed by context "${e.dataTypes.join(`,`)}"`)}),narrowSchemaTypes(e,t)}}function checkMultipleTypes(e,t){t.length>1&&!(t.length===2&&t.includes(`null`))&&strictTypesError(e,`use allowUnionTypes to allow union type keyword`)}function checkKeywordTypes(e,t){let n=e.self.RULES.all;for(let r in n){let i=n[r];if(typeof i==`object`&&(0,p.shouldUseRule)(e.schema,i)){let{type:n}=i.definition;n.length&&!n.some(e=>hasApplicableType(t,e))&&strictTypesError(e,`missing type "${n.join(`,`)}" for keyword "${r}"`)}}}function hasApplicableType(e,t){return e.includes(t)||t===`number`&&e.includes(`integer`)}function includesType(e,t){return e.includes(t)||t===`integer`&&e.includes(`number`)}function narrowSchemaTypes(e,t){let n=[];for(let r of e.dataTypes)includesType(t,r)?n.push(r):t.includes(`integer`)&&r===`number`&&n.push(`integer`);e.dataTypes=n}function strictTypesError(e,t){let n=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${n}" (strictTypes)`,(0,x.checkStrictMode)(e,t,e.opts.strictTypes)}var KeywordCxt=class{constructor(e,t,n){if((0,g.validateKeywordUsage)(e,t,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=t.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,x.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=t.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=t,this.$data)this.schemaCode=e.gen.const(`vSchema`,getData(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,g.validSchemaType)(this.schema,t.schemaType,t.allowUndefined))throw Error(`${n} value must be ${JSON.stringify(t.schemaType)}`);(`code`in t?t.trackErrors:t.errors!==!1)&&(this.errsCount=e.gen.const(`_errs`,y.default.errors))}result(e,t,n){this.failResult((0,v.not)(e),t,n)}failResult(e,t,n){this.gen.if(e),n?n():this.error(),t?(this.gen.else(),t(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,t){this.failResult((0,v.not)(e),void 0,t)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:t}=this;this.fail((0,v._)`${t} !== undefined && (${(0,v.or)(this.invalid$data(),e)})`)}error(e,t,n){if(t){this.setParams(t),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,t){(e?S.reportExtraError:S.reportError)(this,this.def.error,t)}$dataError(){(0,S.reportError)(this,this.def.$dataError||S.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error(`add "trackErrors" to keyword definition`);(0,S.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,t){t?Object.assign(this.params,e):this.params=e}block$data(e,t,n=v.nil){this.gen.block(()=>{this.check$data(e,n),t()})}check$data(e=v.nil,t=v.nil){if(!this.$data)return;let{gen:n,schemaCode:r,schemaType:i,def:a}=this;n.if((0,v.or)((0,v._)`${r} === undefined`,t)),e!==v.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==v.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:t,schemaType:n,def:r,it:i}=this;return(0,v.or)(wrong$DataType(),invalid$DataSchema());function wrong$DataType(){if(n.length){if(!(t instanceof v.Name))throw Error(`ajv implementation error`);let e=Array.isArray(n)?n:[n];return(0,v._)`${(0,m.checkDataTypes)(e,t,i.opts.strictNumbers,m.DataType.Wrong)}`}return v.nil}function invalid$DataSchema(){if(r.validateSchema){let n=e.scopeValue(`validate$data`,{ref:r.validateSchema});return(0,v._)`!${n}(${t})`}return v.nil}}subschema(e,t){let n=(0,_.getSubschema)(this.it,e);(0,_.extendSubschemaData)(n,this.it,e),(0,_.extendSubschemaMode)(n,e);let r={...this.it,...n,items:void 0,props:void 0};return subschemaCode(r,t),r}mergeEvaluated(e,t){let{it:n,gen:r}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=x.mergeEvaluated.props(r,e.props,n.props,t)),n.items!==!0&&e.items!==void 0&&(n.items=x.mergeEvaluated.items(r,e.items,n.items,t)))}mergeValidEvaluated(e,t){let{it:n,gen:r}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return r.if(t,()=>this.mergeEvaluated(e,v.Name)),!0}};e.KeywordCxt=KeywordCxt;function keywordCode(e,t,n,r){let i=new KeywordCxt(e,n,t);`code`in n?n.code(i,r):i.$data&&n.validate?(0,g.funcKeywordCode)(i,n):`macro`in n?(0,g.macroKeywordCode)(i,n):(n.compile||n.validate)&&(0,g.funcKeywordCode)(i,n)}var C=/^\/(?:[^~]|~0|~1)*$/,w=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function getData(e,{dataLevel:t,dataNames:n,dataPathArr:r}){let i,a;if(e===``)return y.default.rootData;if(e[0]===`/`){if(!C.test(e))throw Error(`Invalid JSON-pointer: ${e}`);i=e,a=y.default.rootData}else{let o=w.exec(e);if(!o)throw Error(`Invalid JSON-pointer: ${e}`);let s=+o[1];if(i=o[2],i===`#`){if(s>=t)throw Error(errorMsg(`property/index`,s));return r[t-s]}if(s>t)throw Error(errorMsg(`data`,s));if(a=n[t-s],!i)return a}let o=a,s=i.split(`/`);for(let e of s)e&&(a=(0,v._)`${a}${(0,v.getProperty)((0,x.unescapeJsonPointer)(e))}`,o=(0,v._)`${o} && ${a}`);return o;function errorMsg(e,n){return`Cannot access ${e} ${n} levels up, current level is ${t}`}}e.getData=getData}));export default require_validate();export{require_validate};
1
+ import{__commonJSMin}from"../../../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"../codegen/index.js";import{require_util}from"../util.js";import{require_names}from"../names.js";import{require_errors}from"../errors.js";import{require_boolSchema}from"./boolSchema.js";import{require_applicability}from"./applicability.js";import{require_dataType}from"./dataType.js";import{require_defaults}from"./defaults.js";import{require_keyword}from"./keyword.js";import{require_subschema}from"./subschema.js";import{require_resolve}from"../resolve.js";var require_validate=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.getData=e.KeywordCxt=e.validateFunctionCode=void 0;let d=require_boolSchema(),f=require_dataType(),p=require_applicability(),m=require_dataType(),h=require_defaults(),g=require_keyword(),_=require_subschema(),v=require_codegen(),y=require_names(),b=require_resolve(),x=require_util(),S=require_errors();function validateFunctionCode(e){if(isSchemaObj(e)&&(checkKeywords(e),schemaCxtHasRules(e))){topSchemaObjCode(e);return}validateFunction(e,()=>(0,d.topBoolOrEmptySchema)(e))}e.validateFunctionCode=validateFunctionCode;function validateFunction({gen:e,validateName:t,schema:n,schemaEnv:r,opts:i},a){i.code.es5?e.func(t,(0,v._)`${y.default.data}, ${y.default.valCxt}`,r.$async,()=>{e.code((0,v._)`"use strict"; ${funcSourceUrl(n,i)}`),destructureValCxtES5(e,i),e.code(a)}):e.func(t,(0,v._)`${y.default.data}, ${destructureValCxt(i)}`,r.$async,()=>e.code(funcSourceUrl(n,i)).code(a))}function destructureValCxt(e){return(0,v._)`{${y.default.instancePath}="", ${y.default.parentData}, ${y.default.parentDataProperty}, ${y.default.rootData}=${y.default.data}${e.dynamicRef?(0,v._)`, ${y.default.dynamicAnchors}={}`:v.nil}}={}`}function destructureValCxtES5(e,t){e.if(y.default.valCxt,()=>{e.var(y.default.instancePath,(0,v._)`${y.default.valCxt}.${y.default.instancePath}`),e.var(y.default.parentData,(0,v._)`${y.default.valCxt}.${y.default.parentData}`),e.var(y.default.parentDataProperty,(0,v._)`${y.default.valCxt}.${y.default.parentDataProperty}`),e.var(y.default.rootData,(0,v._)`${y.default.valCxt}.${y.default.rootData}`),t.dynamicRef&&e.var(y.default.dynamicAnchors,(0,v._)`${y.default.valCxt}.${y.default.dynamicAnchors}`)},()=>{e.var(y.default.instancePath,(0,v._)`""`),e.var(y.default.parentData,(0,v._)`undefined`),e.var(y.default.parentDataProperty,(0,v._)`undefined`),e.var(y.default.rootData,y.default.data),t.dynamicRef&&e.var(y.default.dynamicAnchors,(0,v._)`{}`)})}function topSchemaObjCode(e){let{schema:t,opts:n,gen:r}=e;validateFunction(e,()=>{n.$comment&&t.$comment&&commentKeyword(e),checkNoDefault(e),r.let(y.default.vErrors,null),r.let(y.default.errors,0),n.unevaluated&&resetEvaluated(e),typeAndKeywords(e),returnResults(e)})}function resetEvaluated(e){let{gen:t,validateName:n}=e;e.evaluated=t.const(`evaluated`,(0,v._)`${n}.evaluated`),t.if((0,v._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,v._)`${e.evaluated}.props`,(0,v._)`undefined`)),t.if((0,v._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,v._)`${e.evaluated}.items`,(0,v._)`undefined`))}function funcSourceUrl(e,t){let n=typeof e==`object`&&e[t.schemaId];return n&&(t.code.source||t.code.process)?(0,v._)`/*# sourceURL=${n} */`:v.nil}function subschemaCode(e,t){if(isSchemaObj(e)&&(checkKeywords(e),schemaCxtHasRules(e))){subSchemaObjCode(e,t);return}(0,d.boolOrEmptySchema)(e,t)}function schemaCxtHasRules({schema:e,self:t}){if(typeof e==`boolean`)return!e;for(let n in e)if(t.RULES.all[n])return!0;return!1}function isSchemaObj(e){return typeof e.schema!=`boolean`}function subSchemaObjCode(e,t){let{schema:n,gen:r,opts:i}=e;i.$comment&&n.$comment&&commentKeyword(e),updateContext(e),checkAsyncSchema(e);let a=r.const(`_errs`,y.default.errors);typeAndKeywords(e,a),r.var(t,(0,v._)`${a} === ${y.default.errors}`)}function checkKeywords(e){(0,x.checkUnknownRules)(e),checkRefsAndKeywords(e)}function typeAndKeywords(e,t){if(e.opts.jtd)return schemaKeywords(e,[],!1,t);let n=(0,f.getSchemaTypes)(e.schema);schemaKeywords(e,n,!(0,f.coerceAndCheckDataType)(e,n),t)}function checkRefsAndKeywords(e){let{schema:t,errSchemaPath:n,opts:r,self:i}=e;t.$ref&&r.ignoreKeywordsWithRef&&(0,x.schemaHasRulesButRef)(t,i.RULES)&&i.logger.warn(`$ref: keywords ignored in schema at path "${n}"`)}function checkNoDefault(e){let{schema:t,opts:n}=e;t.default!==void 0&&n.useDefaults&&n.strictSchema&&(0,x.checkStrictMode)(e,`default is ignored in the schema root`)}function updateContext(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,b.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function checkAsyncSchema(e){if(e.schema.$async&&!e.schemaEnv.$async)throw Error(`async schema in sync schema`)}function commentKeyword({gen:e,schemaEnv:t,schema:n,errSchemaPath:r,opts:i}){let a=n.$comment;if(i.$comment===!0)e.code((0,v._)`${y.default.self}.logger.log(${a})`);else if(typeof i.$comment==`function`){let n=(0,v.str)`${r}/$comment`,i=e.scopeValue(`root`,{ref:t.root});e.code((0,v._)`${y.default.self}.opts.$comment(${a}, ${n}, ${i}.schema)`)}}function returnResults(e){let{gen:t,schemaEnv:n,validateName:r,ValidationError:i,opts:a}=e;n.$async?t.if((0,v._)`${y.default.errors} === 0`,()=>t.return(y.default.data),()=>t.throw((0,v._)`new ${i}(${y.default.vErrors})`)):(t.assign((0,v._)`${r}.errors`,y.default.vErrors),a.unevaluated&&assignEvaluated(e),t.return((0,v._)`${y.default.errors} === 0`))}function assignEvaluated({gen:e,evaluated:t,props:n,items:r}){n instanceof v.Name&&e.assign((0,v._)`${t}.props`,n),r instanceof v.Name&&e.assign((0,v._)`${t}.items`,r)}function schemaKeywords(e,t,n,r){let{gen:i,schema:a,data:o,allErrors:s,opts:c,self:l}=e,{RULES:u}=l;if(a.$ref&&(c.ignoreKeywordsWithRef||!(0,x.schemaHasRulesButRef)(a,u))){i.block(()=>keywordCode(e,`$ref`,u.all.$ref.definition));return}c.jtd||checkStrictTypes(e,t),i.block(()=>{for(let e of u.rules)groupKeywords(e);groupKeywords(u.post)});function groupKeywords(l){(0,p.shouldUseGroup)(a,l)&&(l.type?(i.if((0,m.checkDataType)(l.type,o,c.strictNumbers)),iterateKeywords(e,l),t.length===1&&t[0]===l.type&&n&&(i.else(),(0,m.reportTypeError)(e)),i.endIf()):iterateKeywords(e,l),s||i.if((0,v._)`${y.default.errors} === ${r||0}`))}}function iterateKeywords(e,t){let{gen:n,schema:r,opts:{useDefaults:i}}=e;i&&(0,h.assignDefaults)(e,t.type),n.block(()=>{for(let n of t.rules)(0,p.shouldUseRule)(r,n)&&keywordCode(e,n.keyword,n.definition,t.type)})}function checkStrictTypes(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(checkContextTypes(e,t),e.opts.allowUnionTypes||checkMultipleTypes(e,t),checkKeywordTypes(e,e.dataTypes))}function checkContextTypes(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(t=>{includesType(e.dataTypes,t)||strictTypesError(e,`type "${t}" not allowed by context "${e.dataTypes.join(`,`)}"`)}),narrowSchemaTypes(e,t)}}function checkMultipleTypes(e,t){t.length>1&&!(t.length===2&&t.includes(`null`))&&strictTypesError(e,`use allowUnionTypes to allow union type keyword`)}function checkKeywordTypes(e,t){let n=e.self.RULES.all;for(let r in n){let i=n[r];if(typeof i==`object`&&(0,p.shouldUseRule)(e.schema,i)){let{type:n}=i.definition;n.length&&!n.some(e=>hasApplicableType(t,e))&&strictTypesError(e,`missing type "${n.join(`,`)}" for keyword "${r}"`)}}}function hasApplicableType(e,t){return e.includes(t)||t===`number`&&e.includes(`integer`)}function includesType(e,t){return e.includes(t)||t===`integer`&&e.includes(`number`)}function narrowSchemaTypes(e,t){let n=[];for(let r of e.dataTypes)includesType(t,r)?n.push(r):t.includes(`integer`)&&r===`number`&&n.push(`integer`);e.dataTypes=n}function strictTypesError(e,t){let n=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${n}" (strictTypes)`,(0,x.checkStrictMode)(e,t,e.opts.strictTypes)}var KeywordCxt=class{constructor(e,t,n){if((0,g.validateKeywordUsage)(e,t,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=t.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,x.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=t.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=t,this.$data)this.schemaCode=e.gen.const(`vSchema`,getData(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,g.validSchemaType)(this.schema,t.schemaType,t.allowUndefined))throw Error(`${n} value must be ${JSON.stringify(t.schemaType)}`);(`code`in t?t.trackErrors:t.errors!==!1)&&(this.errsCount=e.gen.const(`_errs`,y.default.errors))}result(e,t,n){this.failResult((0,v.not)(e),t,n)}failResult(e,t,n){this.gen.if(e),n?n():this.error(),t?(this.gen.else(),t(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,t){this.failResult((0,v.not)(e),void 0,t)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:t}=this;this.fail((0,v._)`${t} !== undefined && (${(0,v.or)(this.invalid$data(),e)})`)}error(e,t,n){if(t){this.setParams(t),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,t){(e?S.reportExtraError:S.reportError)(this,this.def.error,t)}$dataError(){(0,S.reportError)(this,this.def.$dataError||S.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error(`add "trackErrors" to keyword definition`);(0,S.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,t){t?Object.assign(this.params,e):this.params=e}block$data(e,t,n=v.nil){this.gen.block(()=>{this.check$data(e,n),t()})}check$data(e=v.nil,t=v.nil){if(!this.$data)return;let{gen:n,schemaCode:r,schemaType:i,def:a}=this;n.if((0,v.or)((0,v._)`${r} === undefined`,t)),e!==v.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==v.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:t,schemaType:n,def:r,it:i}=this;return(0,v.or)(wrong$DataType(),invalid$DataSchema());function wrong$DataType(){if(n.length){if(!(t instanceof v.Name))throw Error(`ajv implementation error`);let e=Array.isArray(n)?n:[n];return(0,v._)`${(0,m.checkDataTypes)(e,t,i.opts.strictNumbers,m.DataType.Wrong)}`}return v.nil}function invalid$DataSchema(){if(r.validateSchema){let n=e.scopeValue(`validate$data`,{ref:r.validateSchema});return(0,v._)`!${n}(${t})`}return v.nil}}subschema(e,t){let n=(0,_.getSubschema)(this.it,e);(0,_.extendSubschemaData)(n,this.it,e),(0,_.extendSubschemaMode)(n,e);let r={...this.it,...n,items:void 0,props:void 0};return subschemaCode(r,t),r}mergeEvaluated(e,t){let{it:n,gen:r}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=x.mergeEvaluated.props(r,e.props,n.props,t)),n.items!==!0&&e.items!==void 0&&(n.items=x.mergeEvaluated.items(r,e.items,n.items,t)))}mergeValidEvaluated(e,t){let{it:n,gen:r}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return r.if(t,()=>this.mergeEvaluated(e,v.Name)),!0}};e.KeywordCxt=KeywordCxt;function keywordCode(e,t,n,r){let i=new KeywordCxt(e,n,t);`code`in n?n.code(i,r):i.$data&&n.validate?(0,g.funcKeywordCode)(i,n):`macro`in n?(0,g.macroKeywordCode)(i,n):(n.compile||n.validate)&&(0,g.funcKeywordCode)(i,n)}let C=/^\/(?:[^~]|~0|~1)*$/,w=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function getData(e,{dataLevel:t,dataNames:n,dataPathArr:r}){let i,a;if(e===``)return y.default.rootData;if(e[0]===`/`){if(!C.test(e))throw Error(`Invalid JSON-pointer: ${e}`);i=e,a=y.default.rootData}else{let o=w.exec(e);if(!o)throw Error(`Invalid JSON-pointer: ${e}`);let s=+o[1];if(i=o[2],i===`#`){if(s>=t)throw Error(errorMsg(`property/index`,s));return r[t-s]}if(s>t)throw Error(errorMsg(`data`,s));if(a=n[t-s],!i)return a}let o=a,s=i.split(`/`);for(let e of s)e&&(a=(0,v._)`${a}${(0,v.getProperty)((0,x.unescapeJsonPointer)(e))}`,o=(0,v._)`${o} && ${a}`);return o;function errorMsg(e,n){return`Cannot access ${e} ${n} levels up, current level is ${t}`}}e.getData=getData}));export default require_validate();export{require_validate};
@@ -1 +1 @@
1
- import{__commonJSMin}from"../../../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"../codegen/index.js";import{require_names}from"../names.js";import{require_errors}from"../errors.js";import{require_code}from"../../vocabularies/code.js";var require_keyword=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.validateKeywordUsage=e.validSchemaType=e.funcKeywordCode=e.macroKeywordCode=void 0;var a=require_codegen(),o=require_names(),s=require_code(),c=require_errors();function macroKeywordCode(e,t){let{gen:n,keyword:r,schema:i,parentSchema:o,it:s}=e,c=t.macro.call(s.self,i,o,s),l=useKeyword(n,r,c);s.opts.validateSchema!==!1&&s.self.validateSchema(c,!0);let u=n.name(`valid`);e.subschema({schema:c,schemaPath:a.nil,errSchemaPath:`${s.errSchemaPath}/${r}`,topSchemaRef:l,compositeRule:!0},u),e.pass(u,()=>e.error(!0))}e.macroKeywordCode=macroKeywordCode;function funcKeywordCode(e,t){let{gen:n,keyword:r,schema:i,parentSchema:c,$data:l,it:u}=e;checkAsyncKeyword(u,t);let d=useKeyword(n,r,!l&&t.compile?t.compile.call(u.self,i,c,u):t.validate),f=n.let(`valid`);e.block$data(f,validateKeyword),e.ok(t.valid??f);function validateKeyword(){if(t.errors===!1)assignValid(),t.modifying&&modifyData(e),reportErrs(()=>e.error());else{let n=t.async?validateAsync():validateSync();t.modifying&&modifyData(e),reportErrs(()=>addErrs(e,n))}}function validateAsync(){let e=n.let(`ruleErrs`,null);return n.try(()=>assignValid((0,a._)`await `),t=>n.assign(f,!1).if((0,a._)`${t} instanceof ${u.ValidationError}`,()=>n.assign(e,(0,a._)`${t}.errors`),()=>n.throw(t))),e}function validateSync(){let e=(0,a._)`${d}.errors`;return n.assign(e,null),assignValid(a.nil),e}function assignValid(r=t.async?(0,a._)`await `:a.nil){let i=u.opts.passContext?o.default.this:o.default.self,c=!(`compile`in t&&!l||t.schema===!1);n.assign(f,(0,a._)`${r}${(0,s.callValidateCode)(e,d,i,c)}`,t.modifying)}function reportErrs(e){n.if((0,a.not)(t.valid??f),e)}}e.funcKeywordCode=funcKeywordCode;function modifyData(e){let{gen:t,data:n,it:r}=e;t.if(r.parentData,()=>t.assign(n,(0,a._)`${r.parentData}[${r.parentDataProperty}]`))}function addErrs(e,t){let{gen:n}=e;n.if((0,a._)`Array.isArray(${t})`,()=>{n.assign(o.default.vErrors,(0,a._)`${o.default.vErrors} === null ? ${t} : ${o.default.vErrors}.concat(${t})`).assign(o.default.errors,(0,a._)`${o.default.vErrors}.length`),(0,c.extendErrors)(e)},()=>e.error())}function checkAsyncKeyword({schemaEnv:e},t){if(t.async&&!e.$async)throw Error(`async keyword in sync schema`)}function useKeyword(e,t,n){if(n===void 0)throw Error(`keyword "${t}" failed to compile`);return e.scopeValue(`keyword`,typeof n==`function`?{ref:n}:{ref:n,code:(0,a.stringify)(n)})}function validSchemaType(e,t,n=!1){return!t.length||t.some(t=>t===`array`?Array.isArray(e):t===`object`?e&&typeof e==`object`&&!Array.isArray(e):typeof e==t||n&&e===void 0)}e.validSchemaType=validSchemaType;function validateKeywordUsage({schema:e,opts:t,self:n,errSchemaPath:r},i,a){if(Array.isArray(i.keyword)?!i.keyword.includes(a):i.keyword!==a)throw Error(`ajv implementation error`);let o=i.dependencies;if(o?.some(t=>!Object.prototype.hasOwnProperty.call(e,t)))throw Error(`parent schema must have dependencies of ${a}: ${o.join(`,`)}`);if(i.validateSchema&&!i.validateSchema(e[a])){let e=`keyword "${a}" value is invalid at path "${r}": `+n.errorsText(i.validateSchema.errors);if(t.validateSchema===`log`)n.logger.error(e);else throw Error(e)}}e.validateKeywordUsage=validateKeywordUsage}));export default require_keyword();export{require_keyword};
1
+ import{__commonJSMin}from"../../../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"../codegen/index.js";import{require_names}from"../names.js";import{require_errors}from"../errors.js";import{require_code}from"../../vocabularies/code.js";var require_keyword=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.validateKeywordUsage=e.validSchemaType=e.funcKeywordCode=e.macroKeywordCode=void 0;let a=require_codegen(),o=require_names(),s=require_code(),c=require_errors();function macroKeywordCode(e,t){let{gen:n,keyword:r,schema:i,parentSchema:o,it:s}=e,c=t.macro.call(s.self,i,o,s),l=useKeyword(n,r,c);s.opts.validateSchema!==!1&&s.self.validateSchema(c,!0);let u=n.name(`valid`);e.subschema({schema:c,schemaPath:a.nil,errSchemaPath:`${s.errSchemaPath}/${r}`,topSchemaRef:l,compositeRule:!0},u),e.pass(u,()=>e.error(!0))}e.macroKeywordCode=macroKeywordCode;function funcKeywordCode(e,t){let{gen:n,keyword:r,schema:i,parentSchema:c,$data:l,it:u}=e;checkAsyncKeyword(u,t);let d=useKeyword(n,r,!l&&t.compile?t.compile.call(u.self,i,c,u):t.validate),f=n.let(`valid`);e.block$data(f,validateKeyword),e.ok(t.valid??f);function validateKeyword(){if(t.errors===!1)assignValid(),t.modifying&&modifyData(e),reportErrs(()=>e.error());else{let n=t.async?validateAsync():validateSync();t.modifying&&modifyData(e),reportErrs(()=>addErrs(e,n))}}function validateAsync(){let e=n.let(`ruleErrs`,null);return n.try(()=>assignValid((0,a._)`await `),t=>n.assign(f,!1).if((0,a._)`${t} instanceof ${u.ValidationError}`,()=>n.assign(e,(0,a._)`${t}.errors`),()=>n.throw(t))),e}function validateSync(){let e=(0,a._)`${d}.errors`;return n.assign(e,null),assignValid(a.nil),e}function assignValid(r=t.async?(0,a._)`await `:a.nil){let i=u.opts.passContext?o.default.this:o.default.self,c=!(`compile`in t&&!l||t.schema===!1);n.assign(f,(0,a._)`${r}${(0,s.callValidateCode)(e,d,i,c)}`,t.modifying)}function reportErrs(e){n.if((0,a.not)(t.valid??f),e)}}e.funcKeywordCode=funcKeywordCode;function modifyData(e){let{gen:t,data:n,it:r}=e;t.if(r.parentData,()=>t.assign(n,(0,a._)`${r.parentData}[${r.parentDataProperty}]`))}function addErrs(e,t){let{gen:n}=e;n.if((0,a._)`Array.isArray(${t})`,()=>{n.assign(o.default.vErrors,(0,a._)`${o.default.vErrors} === null ? ${t} : ${o.default.vErrors}.concat(${t})`).assign(o.default.errors,(0,a._)`${o.default.vErrors}.length`),(0,c.extendErrors)(e)},()=>e.error())}function checkAsyncKeyword({schemaEnv:e},t){if(t.async&&!e.$async)throw Error(`async keyword in sync schema`)}function useKeyword(e,t,n){if(n===void 0)throw Error(`keyword "${t}" failed to compile`);return e.scopeValue(`keyword`,typeof n==`function`?{ref:n}:{ref:n,code:(0,a.stringify)(n)})}function validSchemaType(e,t,n=!1){return!t.length||t.some(t=>t===`array`?Array.isArray(e):t===`object`?e&&typeof e==`object`&&!Array.isArray(e):typeof e==t||n&&e===void 0)}e.validSchemaType=validSchemaType;function validateKeywordUsage({schema:e,opts:t,self:n,errSchemaPath:r},i,a){if(Array.isArray(i.keyword)?!i.keyword.includes(a):i.keyword!==a)throw Error(`ajv implementation error`);let o=i.dependencies;if(o?.some(t=>!Object.prototype.hasOwnProperty.call(e,t)))throw Error(`parent schema must have dependencies of ${a}: ${o.join(`,`)}`);if(i.validateSchema&&!i.validateSchema(e[a])){let e=`keyword "${a}" value is invalid at path "${r}": `+n.errorsText(i.validateSchema.errors);if(t.validateSchema===`log`)n.logger.error(e);else throw Error(e)}}e.validateKeywordUsage=validateKeywordUsage}));export default require_keyword();export{require_keyword};
@@ -1 +1 @@
1
- import{__commonJSMin}from"../../../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"../codegen/index.js";import{require_util}from"../util.js";var require_subschema=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.extendSubschemaMode=e.extendSubschemaData=e.getSubschema=void 0;var r=require_codegen(),i=require_util();function getSubschema(e,{keyword:t,schemaProp:n,schema:a,schemaPath:o,errSchemaPath:s,topSchemaRef:c}){if(t!==void 0&&a!==void 0)throw Error(`both "keyword" and "schema" passed, only one allowed`);if(t!==void 0){let a=e.schema[t];return n===void 0?{schema:a,schemaPath:(0,r._)`${e.schemaPath}${(0,r.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:a[n],schemaPath:(0,r._)`${e.schemaPath}${(0,r.getProperty)(t)}${(0,r.getProperty)(n)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,i.escapeFragment)(n)}`}}if(a!==void 0){if(o===void 0||s===void 0||c===void 0)throw Error(`"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"`);return{schema:a,schemaPath:o,topSchemaRef:c,errSchemaPath:s}}throw Error(`either "keyword" or "schema" must be passed`)}e.getSubschema=getSubschema;function extendSubschemaData(e,t,{dataProp:n,dataPropType:a,data:o,dataTypes:s,propertyName:c}){if(o!==void 0&&n!==void 0)throw Error(`both "data" and "dataProp" passed, only one allowed`);let{gen:l}=t;if(n!==void 0){let{errorPath:o,dataPathArr:s,opts:c}=t;dataContextProps(l.let(`data`,(0,r._)`${t.data}${(0,r.getProperty)(n)}`,!0)),e.errorPath=(0,r.str)`${o}${(0,i.getErrorPath)(n,a,c.jsPropertySyntax)}`,e.parentDataProperty=(0,r._)`${n}`,e.dataPathArr=[...s,e.parentDataProperty]}o!==void 0&&(dataContextProps(o instanceof r.Name?o:l.let(`data`,o,!0)),c!==void 0&&(e.propertyName=c)),s&&(e.dataTypes=s);function dataContextProps(n){e.data=n,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,n]}}e.extendSubschemaData=extendSubschemaData;function extendSubschemaMode(e,{jtdDiscriminator:t,jtdMetadata:n,compositeRule:r,createErrors:i,allErrors:a}){r!==void 0&&(e.compositeRule=r),i!==void 0&&(e.createErrors=i),a!==void 0&&(e.allErrors=a),e.jtdDiscriminator=t,e.jtdMetadata=n}e.extendSubschemaMode=extendSubschemaMode}));export default require_subschema();export{require_subschema};
1
+ import{__commonJSMin}from"../../../../../../../../_virtual/_rolldown/runtime.js";import{require_codegen}from"../codegen/index.js";import{require_util}from"../util.js";var require_subschema=__commonJSMin((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.extendSubschemaMode=e.extendSubschemaData=e.getSubschema=void 0;let r=require_codegen(),i=require_util();function getSubschema(e,{keyword:t,schemaProp:n,schema:a,schemaPath:o,errSchemaPath:s,topSchemaRef:c}){if(t!==void 0&&a!==void 0)throw Error(`both "keyword" and "schema" passed, only one allowed`);if(t!==void 0){let a=e.schema[t];return n===void 0?{schema:a,schemaPath:(0,r._)`${e.schemaPath}${(0,r.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:a[n],schemaPath:(0,r._)`${e.schemaPath}${(0,r.getProperty)(t)}${(0,r.getProperty)(n)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,i.escapeFragment)(n)}`}}if(a!==void 0){if(o===void 0||s===void 0||c===void 0)throw Error(`"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"`);return{schema:a,schemaPath:o,topSchemaRef:c,errSchemaPath:s}}throw Error(`either "keyword" or "schema" must be passed`)}e.getSubschema=getSubschema;function extendSubschemaData(e,t,{dataProp:n,dataPropType:a,data:o,dataTypes:s,propertyName:c}){if(o!==void 0&&n!==void 0)throw Error(`both "data" and "dataProp" passed, only one allowed`);let{gen:l}=t;if(n!==void 0){let{errorPath:o,dataPathArr:s,opts:c}=t;dataContextProps(l.let(`data`,(0,r._)`${t.data}${(0,r.getProperty)(n)}`,!0)),e.errorPath=(0,r.str)`${o}${(0,i.getErrorPath)(n,a,c.jsPropertySyntax)}`,e.parentDataProperty=(0,r._)`${n}`,e.dataPathArr=[...s,e.parentDataProperty]}o!==void 0&&(dataContextProps(o instanceof r.Name?o:l.let(`data`,o,!0)),c!==void 0&&(e.propertyName=c)),s&&(e.dataTypes=s);function dataContextProps(n){e.data=n,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,n]}}e.extendSubschemaData=extendSubschemaData;function extendSubschemaMode(e,{jtdDiscriminator:t,jtdMetadata:n,compositeRule:r,createErrors:i,allErrors:a}){r!==void 0&&(e.compositeRule=r),i!==void 0&&(e.createErrors=i),a!==void 0&&(e.allErrors=a),e.jtdDiscriminator=t,e.jtdMetadata=n}e.extendSubschemaMode=extendSubschemaMode}));export default require_subschema();export{require_subschema};