@nocobase/plugin-flow-engine 2.1.0-alpha.1 → 2.1.0-alpha.10

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 (770) hide show
  1. package/LICENSE +201 -661
  2. package/README.md +79 -9
  3. package/dist/ai/docs/meta.json +6 -0
  4. package/dist/ai/docs/runjs/context/block-model.md +90 -0
  5. package/dist/ai/docs/runjs/context/collection-field.md +132 -0
  6. package/dist/ai/docs/runjs/context/collection.md +100 -0
  7. package/dist/ai/docs/runjs/context/data-source-manager.md +120 -0
  8. package/dist/ai/docs/runjs/context/data-source.md +136 -0
  9. package/dist/ai/docs/runjs/context/element.md +104 -0
  10. package/dist/ai/docs/runjs/context/exit-all.md +96 -0
  11. package/dist/ai/docs/runjs/context/exit.md +104 -0
  12. package/dist/ai/docs/runjs/context/filter-manager.md +102 -0
  13. package/dist/ai/docs/runjs/context/form.md +169 -0
  14. package/dist/ai/docs/runjs/context/get-model.md +85 -0
  15. package/dist/ai/docs/runjs/context/get-value.md +65 -0
  16. package/dist/ai/docs/runjs/context/get-var.md +157 -0
  17. package/dist/ai/docs/runjs/context/i18n.md +80 -0
  18. package/dist/ai/docs/runjs/context/import-async.md +488 -0
  19. package/dist/ai/docs/runjs/context/init-resource.md +74 -0
  20. package/dist/ai/docs/runjs/context/libs.md +109 -0
  21. package/dist/ai/docs/runjs/context/location.md +88 -0
  22. package/dist/ai/docs/runjs/context/logger.md +85 -0
  23. package/dist/ai/docs/runjs/context/make-resource.md +90 -0
  24. package/dist/ai/docs/runjs/context/message.md +107 -0
  25. package/dist/ai/docs/runjs/context/modal.md +115 -0
  26. package/dist/ai/docs/runjs/context/model.md +85 -0
  27. package/dist/ai/docs/runjs/context/notification.md +106 -0
  28. package/dist/ai/docs/runjs/context/off.md +48 -0
  29. package/dist/ai/docs/runjs/context/on.md +80 -0
  30. package/dist/ai/docs/runjs/context/open-view.md +120 -0
  31. package/dist/ai/docs/runjs/context/render.md +114 -0
  32. package/dist/ai/docs/runjs/context/request.md +163 -0
  33. package/dist/ai/docs/runjs/context/require-async.md +110 -0
  34. package/dist/ai/docs/runjs/context/resource.md +92 -0
  35. package/dist/ai/docs/runjs/context/route.md +76 -0
  36. package/dist/ai/docs/runjs/context/router.md +111 -0
  37. package/dist/ai/docs/runjs/context/set-value.md +73 -0
  38. package/dist/ai/docs/runjs/context/sql.md +200 -0
  39. package/dist/ai/docs/runjs/context/t.md +82 -0
  40. package/dist/ai/docs/runjs/context/view.md +131 -0
  41. package/dist/ai/docs/runjs/document.md +1 -0
  42. package/dist/ai/docs/runjs/import-modules.md +110 -0
  43. package/dist/ai/docs/runjs/index.md +65 -0
  44. package/dist/ai/docs/runjs/jsx.md +84 -0
  45. package/dist/ai/docs/runjs/model/form-block-model.md +1 -0
  46. package/dist/ai/docs/runjs/render.md +64 -0
  47. package/dist/ai/docs/runjs/resource/api-resource.md +155 -0
  48. package/dist/ai/docs/runjs/resource/multi-record-resource.md +188 -0
  49. package/dist/ai/docs/runjs/resource/single-record-resource.md +169 -0
  50. package/dist/ai/docs/runjs/resource/sql-resource.md +170 -0
  51. package/dist/ai/docs/runjs/window.md +20 -0
  52. package/dist/ai/tools/getContextApis.d.ts +10 -0
  53. package/dist/ai/tools/getContextApis.js +62 -0
  54. package/dist/ai/tools/getContextEnvs.d.ts +10 -0
  55. package/dist/ai/tools/getContextEnvs.js +62 -0
  56. package/dist/ai/tools/getContextVars.d.ts +10 -0
  57. package/dist/ai/tools/getContextVars.js +78 -0
  58. package/dist/ai/tools/lintAndTestJS.d.ts +10 -0
  59. package/dist/ai/tools/lintAndTestJS.js +64 -0
  60. package/dist/client/index.js +1 -1
  61. package/dist/externalVersion.js +10 -9
  62. package/dist/locale/en-US.json +9 -2
  63. package/dist/locale/index.d.ts +14 -0
  64. package/dist/locale/zh-CN.json +8 -1
  65. package/dist/node_modules/ses/package.json +1 -1
  66. package/dist/node_modules/zod/LICENSE +21 -0
  67. package/dist/node_modules/zod/index.cjs +1 -0
  68. package/dist/node_modules/zod/index.d.cts +4 -0
  69. package/dist/node_modules/zod/index.d.ts +4 -0
  70. package/dist/node_modules/zod/index.js +4 -0
  71. package/dist/node_modules/zod/locales/index.cjs +17 -0
  72. package/dist/node_modules/zod/locales/index.d.cts +1 -0
  73. package/dist/node_modules/zod/locales/index.d.ts +1 -0
  74. package/dist/node_modules/zod/locales/index.js +1 -0
  75. package/dist/node_modules/zod/locales/package.json +6 -0
  76. package/dist/node_modules/zod/mini/index.cjs +17 -0
  77. package/dist/node_modules/zod/mini/index.d.cts +1 -0
  78. package/dist/node_modules/zod/mini/index.d.ts +1 -0
  79. package/dist/node_modules/zod/mini/index.js +1 -0
  80. package/dist/node_modules/zod/mini/package.json +6 -0
  81. package/dist/node_modules/zod/package.json +1 -0
  82. package/dist/node_modules/zod/src/index.ts +4 -0
  83. package/dist/node_modules/zod/src/locales/index.ts +1 -0
  84. package/dist/node_modules/zod/src/mini/index.ts +1 -0
  85. package/dist/node_modules/zod/src/v3/ZodError.ts +330 -0
  86. package/dist/node_modules/zod/src/v3/benchmarks/datetime.ts +58 -0
  87. package/dist/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +80 -0
  88. package/dist/node_modules/zod/src/v3/benchmarks/index.ts +59 -0
  89. package/dist/node_modules/zod/src/v3/benchmarks/ipv4.ts +57 -0
  90. package/dist/node_modules/zod/src/v3/benchmarks/object.ts +69 -0
  91. package/dist/node_modules/zod/src/v3/benchmarks/primitives.ts +162 -0
  92. package/dist/node_modules/zod/src/v3/benchmarks/realworld.ts +63 -0
  93. package/dist/node_modules/zod/src/v3/benchmarks/string.ts +55 -0
  94. package/dist/node_modules/zod/src/v3/benchmarks/union.ts +80 -0
  95. package/dist/node_modules/zod/src/v3/errors.ts +13 -0
  96. package/dist/node_modules/zod/src/v3/external.ts +6 -0
  97. package/dist/node_modules/zod/src/v3/helpers/enumUtil.ts +17 -0
  98. package/dist/node_modules/zod/src/v3/helpers/errorUtil.ts +8 -0
  99. package/dist/node_modules/zod/src/v3/helpers/parseUtil.ts +176 -0
  100. package/dist/node_modules/zod/src/v3/helpers/partialUtil.ts +34 -0
  101. package/dist/node_modules/zod/src/v3/helpers/typeAliases.ts +2 -0
  102. package/dist/node_modules/zod/src/v3/helpers/util.ts +224 -0
  103. package/dist/node_modules/zod/src/v3/index.ts +4 -0
  104. package/dist/node_modules/zod/src/v3/locales/en.ts +124 -0
  105. package/dist/node_modules/zod/src/v3/standard-schema.ts +113 -0
  106. package/dist/node_modules/zod/src/v3/tests/Mocker.ts +54 -0
  107. package/dist/node_modules/zod/src/v3/tests/all-errors.test.ts +157 -0
  108. package/dist/node_modules/zod/src/v3/tests/anyunknown.test.ts +28 -0
  109. package/dist/node_modules/zod/src/v3/tests/array.test.ts +71 -0
  110. package/dist/node_modules/zod/src/v3/tests/async-parsing.test.ts +388 -0
  111. package/dist/node_modules/zod/src/v3/tests/async-refinements.test.ts +46 -0
  112. package/dist/node_modules/zod/src/v3/tests/base.test.ts +29 -0
  113. package/dist/node_modules/zod/src/v3/tests/bigint.test.ts +55 -0
  114. package/dist/node_modules/zod/src/v3/tests/branded.test.ts +53 -0
  115. package/dist/node_modules/zod/src/v3/tests/catch.test.ts +220 -0
  116. package/dist/node_modules/zod/src/v3/tests/coerce.test.ts +133 -0
  117. package/dist/node_modules/zod/src/v3/tests/complex.test.ts +70 -0
  118. package/dist/node_modules/zod/src/v3/tests/custom.test.ts +31 -0
  119. package/dist/node_modules/zod/src/v3/tests/date.test.ts +32 -0
  120. package/dist/node_modules/zod/src/v3/tests/deepmasking.test.ts +186 -0
  121. package/dist/node_modules/zod/src/v3/tests/default.test.ts +112 -0
  122. package/dist/node_modules/zod/src/v3/tests/description.test.ts +33 -0
  123. package/dist/node_modules/zod/src/v3/tests/discriminated-unions.test.ts +315 -0
  124. package/dist/node_modules/zod/src/v3/tests/enum.test.ts +80 -0
  125. package/dist/node_modules/zod/src/v3/tests/error.test.ts +551 -0
  126. package/dist/node_modules/zod/src/v3/tests/firstparty.test.ts +87 -0
  127. package/dist/node_modules/zod/src/v3/tests/firstpartyschematypes.test.ts +21 -0
  128. package/dist/node_modules/zod/src/v3/tests/function.test.ts +261 -0
  129. package/dist/node_modules/zod/src/v3/tests/generics.test.ts +48 -0
  130. package/dist/node_modules/zod/src/v3/tests/instanceof.test.ts +37 -0
  131. package/dist/node_modules/zod/src/v3/tests/intersection.test.ts +110 -0
  132. package/dist/node_modules/zod/src/v3/tests/language-server.source.ts +76 -0
  133. package/dist/node_modules/zod/src/v3/tests/language-server.test.ts +207 -0
  134. package/dist/node_modules/zod/src/v3/tests/literal.test.ts +36 -0
  135. package/dist/node_modules/zod/src/v3/tests/map.test.ts +110 -0
  136. package/dist/node_modules/zod/src/v3/tests/masking.test.ts +4 -0
  137. package/dist/node_modules/zod/src/v3/tests/mocker.test.ts +19 -0
  138. package/dist/node_modules/zod/src/v3/tests/nan.test.ts +24 -0
  139. package/dist/node_modules/zod/src/v3/tests/nativeEnum.test.ts +87 -0
  140. package/dist/node_modules/zod/src/v3/tests/nullable.test.ts +42 -0
  141. package/dist/node_modules/zod/src/v3/tests/number.test.ts +176 -0
  142. package/dist/node_modules/zod/src/v3/tests/object-augmentation.test.ts +29 -0
  143. package/dist/node_modules/zod/src/v3/tests/object-in-es5-env.test.ts +29 -0
  144. package/dist/node_modules/zod/src/v3/tests/object.test.ts +434 -0
  145. package/dist/node_modules/zod/src/v3/tests/optional.test.ts +42 -0
  146. package/dist/node_modules/zod/src/v3/tests/parseUtil.test.ts +23 -0
  147. package/dist/node_modules/zod/src/v3/tests/parser.test.ts +41 -0
  148. package/dist/node_modules/zod/src/v3/tests/partials.test.ts +243 -0
  149. package/dist/node_modules/zod/src/v3/tests/pickomit.test.ts +111 -0
  150. package/dist/node_modules/zod/src/v3/tests/pipeline.test.ts +29 -0
  151. package/dist/node_modules/zod/src/v3/tests/preprocess.test.ts +186 -0
  152. package/dist/node_modules/zod/src/v3/tests/primitive.test.ts +440 -0
  153. package/dist/node_modules/zod/src/v3/tests/promise.test.ts +90 -0
  154. package/dist/node_modules/zod/src/v3/tests/readonly.test.ts +194 -0
  155. package/dist/node_modules/zod/src/v3/tests/record.test.ts +171 -0
  156. package/dist/node_modules/zod/src/v3/tests/recursive.test.ts +197 -0
  157. package/dist/node_modules/zod/src/v3/tests/refine.test.ts +313 -0
  158. package/dist/node_modules/zod/src/v3/tests/safeparse.test.ts +27 -0
  159. package/dist/node_modules/zod/src/v3/tests/set.test.ts +142 -0
  160. package/dist/node_modules/zod/src/v3/tests/standard-schema.test.ts +83 -0
  161. package/dist/node_modules/zod/src/v3/tests/string.test.ts +916 -0
  162. package/dist/node_modules/zod/src/v3/tests/transformer.test.ts +233 -0
  163. package/dist/node_modules/zod/src/v3/tests/tuple.test.ts +90 -0
  164. package/dist/node_modules/zod/src/v3/tests/unions.test.ts +57 -0
  165. package/dist/node_modules/zod/src/v3/tests/validations.test.ts +133 -0
  166. package/dist/node_modules/zod/src/v3/tests/void.test.ts +15 -0
  167. package/dist/node_modules/zod/src/v3/types.ts +5138 -0
  168. package/dist/node_modules/zod/src/v4/classic/checks.ts +32 -0
  169. package/dist/node_modules/zod/src/v4/classic/coerce.ts +27 -0
  170. package/dist/node_modules/zod/src/v4/classic/compat.ts +70 -0
  171. package/dist/node_modules/zod/src/v4/classic/errors.ts +82 -0
  172. package/dist/node_modules/zod/src/v4/classic/external.ts +51 -0
  173. package/dist/node_modules/zod/src/v4/classic/from-json-schema.ts +643 -0
  174. package/dist/node_modules/zod/src/v4/classic/index.ts +5 -0
  175. package/dist/node_modules/zod/src/v4/classic/iso.ts +90 -0
  176. package/dist/node_modules/zod/src/v4/classic/parse.ts +82 -0
  177. package/dist/node_modules/zod/src/v4/classic/schemas.ts +2409 -0
  178. package/dist/node_modules/zod/src/v4/classic/tests/anyunknown.test.ts +26 -0
  179. package/dist/node_modules/zod/src/v4/classic/tests/apply.test.ts +59 -0
  180. package/dist/node_modules/zod/src/v4/classic/tests/array.test.ts +264 -0
  181. package/dist/node_modules/zod/src/v4/classic/tests/assignability.test.ts +210 -0
  182. package/dist/node_modules/zod/src/v4/classic/tests/async-parsing.test.ts +381 -0
  183. package/dist/node_modules/zod/src/v4/classic/tests/async-refinements.test.ts +68 -0
  184. package/dist/node_modules/zod/src/v4/classic/tests/base.test.ts +7 -0
  185. package/dist/node_modules/zod/src/v4/classic/tests/bigint.test.ts +54 -0
  186. package/dist/node_modules/zod/src/v4/classic/tests/brand.test.ts +106 -0
  187. package/dist/node_modules/zod/src/v4/classic/tests/catch.test.ts +276 -0
  188. package/dist/node_modules/zod/src/v4/classic/tests/coalesce.test.ts +20 -0
  189. package/dist/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +573 -0
  190. package/dist/node_modules/zod/src/v4/classic/tests/codec.test.ts +562 -0
  191. package/dist/node_modules/zod/src/v4/classic/tests/coerce.test.ts +160 -0
  192. package/dist/node_modules/zod/src/v4/classic/tests/continuability.test.ts +374 -0
  193. package/dist/node_modules/zod/src/v4/classic/tests/custom.test.ts +40 -0
  194. package/dist/node_modules/zod/src/v4/classic/tests/date.test.ts +62 -0
  195. package/dist/node_modules/zod/src/v4/classic/tests/datetime.test.ts +302 -0
  196. package/dist/node_modules/zod/src/v4/classic/tests/default.test.ts +365 -0
  197. package/dist/node_modules/zod/src/v4/classic/tests/describe-meta-checks.test.ts +27 -0
  198. package/dist/node_modules/zod/src/v4/classic/tests/description.test.ts +32 -0
  199. package/dist/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +661 -0
  200. package/dist/node_modules/zod/src/v4/classic/tests/enum.test.ts +285 -0
  201. package/dist/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +595 -0
  202. package/dist/node_modules/zod/src/v4/classic/tests/error.test.ts +711 -0
  203. package/dist/node_modules/zod/src/v4/classic/tests/file.test.ts +96 -0
  204. package/dist/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +179 -0
  205. package/dist/node_modules/zod/src/v4/classic/tests/fix-json-issue.test.ts +26 -0
  206. package/dist/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +734 -0
  207. package/dist/node_modules/zod/src/v4/classic/tests/function.test.ts +360 -0
  208. package/dist/node_modules/zod/src/v4/classic/tests/generics.test.ts +72 -0
  209. package/dist/node_modules/zod/src/v4/classic/tests/hash.test.ts +68 -0
  210. package/dist/node_modules/zod/src/v4/classic/tests/index.test.ts +939 -0
  211. package/dist/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +60 -0
  212. package/dist/node_modules/zod/src/v4/classic/tests/intersection.test.ts +198 -0
  213. package/dist/node_modules/zod/src/v4/classic/tests/json.test.ts +109 -0
  214. package/dist/node_modules/zod/src/v4/classic/tests/lazy.test.ts +227 -0
  215. package/dist/node_modules/zod/src/v4/classic/tests/literal.test.ts +117 -0
  216. package/dist/node_modules/zod/src/v4/classic/tests/map.test.ts +330 -0
  217. package/dist/node_modules/zod/src/v4/classic/tests/nan.test.ts +21 -0
  218. package/dist/node_modules/zod/src/v4/classic/tests/nested-refine.test.ts +168 -0
  219. package/dist/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +101 -0
  220. package/dist/node_modules/zod/src/v4/classic/tests/nullable.test.ts +22 -0
  221. package/dist/node_modules/zod/src/v4/classic/tests/number.test.ts +270 -0
  222. package/dist/node_modules/zod/src/v4/classic/tests/object.test.ts +640 -0
  223. package/dist/node_modules/zod/src/v4/classic/tests/optional.test.ts +223 -0
  224. package/dist/node_modules/zod/src/v4/classic/tests/partial.test.ts +427 -0
  225. package/dist/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +211 -0
  226. package/dist/node_modules/zod/src/v4/classic/tests/pipe.test.ts +101 -0
  227. package/dist/node_modules/zod/src/v4/classic/tests/prefault.test.ts +74 -0
  228. package/dist/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +282 -0
  229. package/dist/node_modules/zod/src/v4/classic/tests/primitive.test.ts +175 -0
  230. package/dist/node_modules/zod/src/v4/classic/tests/promise.test.ts +81 -0
  231. package/dist/node_modules/zod/src/v4/classic/tests/prototypes.test.ts +23 -0
  232. package/dist/node_modules/zod/src/v4/classic/tests/readonly.test.ts +252 -0
  233. package/dist/node_modules/zod/src/v4/classic/tests/record.test.ts +600 -0
  234. package/dist/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +582 -0
  235. package/dist/node_modules/zod/src/v4/classic/tests/refine.test.ts +570 -0
  236. package/dist/node_modules/zod/src/v4/classic/tests/registries.test.ts +243 -0
  237. package/dist/node_modules/zod/src/v4/classic/tests/set.test.ts +181 -0
  238. package/dist/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +134 -0
  239. package/dist/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +125 -0
  240. package/dist/node_modules/zod/src/v4/classic/tests/string.test.ts +1175 -0
  241. package/dist/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +106 -0
  242. package/dist/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +771 -0
  243. package/dist/node_modules/zod/src/v4/classic/tests/to-json-schema-methods.test.ts +438 -0
  244. package/dist/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +2975 -0
  245. package/dist/node_modules/zod/src/v4/classic/tests/transform.test.ts +361 -0
  246. package/dist/node_modules/zod/src/v4/classic/tests/tuple.test.ts +183 -0
  247. package/dist/node_modules/zod/src/v4/classic/tests/union.test.ts +219 -0
  248. package/dist/node_modules/zod/src/v4/classic/tests/url.test.ts +13 -0
  249. package/dist/node_modules/zod/src/v4/classic/tests/validations.test.ts +283 -0
  250. package/dist/node_modules/zod/src/v4/classic/tests/void.test.ts +12 -0
  251. package/dist/node_modules/zod/src/v4/core/api.ts +1798 -0
  252. package/dist/node_modules/zod/src/v4/core/checks.ts +1293 -0
  253. package/dist/node_modules/zod/src/v4/core/config.ts +15 -0
  254. package/dist/node_modules/zod/src/v4/core/core.ts +138 -0
  255. package/dist/node_modules/zod/src/v4/core/doc.ts +44 -0
  256. package/dist/node_modules/zod/src/v4/core/errors.ts +448 -0
  257. package/dist/node_modules/zod/src/v4/core/index.ts +16 -0
  258. package/dist/node_modules/zod/src/v4/core/json-schema-generator.ts +126 -0
  259. package/dist/node_modules/zod/src/v4/core/json-schema-processors.ts +667 -0
  260. package/dist/node_modules/zod/src/v4/core/json-schema.ts +147 -0
  261. package/dist/node_modules/zod/src/v4/core/parse.ts +195 -0
  262. package/dist/node_modules/zod/src/v4/core/regexes.ts +183 -0
  263. package/dist/node_modules/zod/src/v4/core/registries.ts +105 -0
  264. package/dist/node_modules/zod/src/v4/core/schemas.ts +4543 -0
  265. package/dist/node_modules/zod/src/v4/core/standard-schema.ts +159 -0
  266. package/dist/node_modules/zod/src/v4/core/tests/extend.test.ts +59 -0
  267. package/dist/node_modules/zod/src/v4/core/tests/index.test.ts +46 -0
  268. package/dist/node_modules/zod/src/v4/core/tests/locales/be.test.ts +124 -0
  269. package/dist/node_modules/zod/src/v4/core/tests/locales/en.test.ts +22 -0
  270. package/dist/node_modules/zod/src/v4/core/tests/locales/es.test.ts +181 -0
  271. package/dist/node_modules/zod/src/v4/core/tests/locales/he.test.ts +379 -0
  272. package/dist/node_modules/zod/src/v4/core/tests/locales/nl.test.ts +46 -0
  273. package/dist/node_modules/zod/src/v4/core/tests/locales/ru.test.ts +128 -0
  274. package/dist/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +69 -0
  275. package/dist/node_modules/zod/src/v4/core/tests/locales/uz.test.ts +83 -0
  276. package/dist/node_modules/zod/src/v4/core/tests/record-constructor.test.ts +67 -0
  277. package/dist/node_modules/zod/src/v4/core/tests/recursive-tuples.test.ts +45 -0
  278. package/dist/node_modules/zod/src/v4/core/to-json-schema.ts +613 -0
  279. package/dist/node_modules/zod/src/v4/core/util.ts +966 -0
  280. package/dist/node_modules/zod/src/v4/core/versions.ts +5 -0
  281. package/dist/node_modules/zod/src/v4/core/zsf.ts +323 -0
  282. package/dist/node_modules/zod/src/v4/index.ts +4 -0
  283. package/dist/node_modules/zod/src/v4/locales/ar.ts +115 -0
  284. package/dist/node_modules/zod/src/v4/locales/az.ts +111 -0
  285. package/dist/node_modules/zod/src/v4/locales/be.ts +176 -0
  286. package/dist/node_modules/zod/src/v4/locales/bg.ts +128 -0
  287. package/dist/node_modules/zod/src/v4/locales/ca.ts +116 -0
  288. package/dist/node_modules/zod/src/v4/locales/cs.ts +118 -0
  289. package/dist/node_modules/zod/src/v4/locales/da.ts +123 -0
  290. package/dist/node_modules/zod/src/v4/locales/de.ts +116 -0
  291. package/dist/node_modules/zod/src/v4/locales/en.ts +119 -0
  292. package/dist/node_modules/zod/src/v4/locales/eo.ts +118 -0
  293. package/dist/node_modules/zod/src/v4/locales/es.ts +141 -0
  294. package/dist/node_modules/zod/src/v4/locales/fa.ts +126 -0
  295. package/dist/node_modules/zod/src/v4/locales/fi.ts +121 -0
  296. package/dist/node_modules/zod/src/v4/locales/fr-CA.ts +116 -0
  297. package/dist/node_modules/zod/src/v4/locales/fr.ts +116 -0
  298. package/dist/node_modules/zod/src/v4/locales/he.ts +246 -0
  299. package/dist/node_modules/zod/src/v4/locales/hu.ts +117 -0
  300. package/dist/node_modules/zod/src/v4/locales/hy.ts +164 -0
  301. package/dist/node_modules/zod/src/v4/locales/id.ts +115 -0
  302. package/dist/node_modules/zod/src/v4/locales/index.ts +49 -0
  303. package/dist/node_modules/zod/src/v4/locales/is.ts +119 -0
  304. package/dist/node_modules/zod/src/v4/locales/it.ts +116 -0
  305. package/dist/node_modules/zod/src/v4/locales/ja.ts +114 -0
  306. package/dist/node_modules/zod/src/v4/locales/ka.ts +123 -0
  307. package/dist/node_modules/zod/src/v4/locales/kh.ts +7 -0
  308. package/dist/node_modules/zod/src/v4/locales/km.ts +119 -0
  309. package/dist/node_modules/zod/src/v4/locales/ko.ts +121 -0
  310. package/dist/node_modules/zod/src/v4/locales/lt.ts +239 -0
  311. package/dist/node_modules/zod/src/v4/locales/mk.ts +118 -0
  312. package/dist/node_modules/zod/src/v4/locales/ms.ts +115 -0
  313. package/dist/node_modules/zod/src/v4/locales/nl.ts +121 -0
  314. package/dist/node_modules/zod/src/v4/locales/no.ts +116 -0
  315. package/dist/node_modules/zod/src/v4/locales/ota.ts +117 -0
  316. package/dist/node_modules/zod/src/v4/locales/pl.ts +118 -0
  317. package/dist/node_modules/zod/src/v4/locales/ps.ts +126 -0
  318. package/dist/node_modules/zod/src/v4/locales/pt.ts +116 -0
  319. package/dist/node_modules/zod/src/v4/locales/ru.ts +176 -0
  320. package/dist/node_modules/zod/src/v4/locales/sl.ts +118 -0
  321. package/dist/node_modules/zod/src/v4/locales/sv.ts +119 -0
  322. package/dist/node_modules/zod/src/v4/locales/ta.ts +118 -0
  323. package/dist/node_modules/zod/src/v4/locales/th.ts +119 -0
  324. package/dist/node_modules/zod/src/v4/locales/tr.ts +111 -0
  325. package/dist/node_modules/zod/src/v4/locales/ua.ts +7 -0
  326. package/dist/node_modules/zod/src/v4/locales/uk.ts +117 -0
  327. package/dist/node_modules/zod/src/v4/locales/ur.ts +119 -0
  328. package/dist/node_modules/zod/src/v4/locales/uz.ts +116 -0
  329. package/dist/node_modules/zod/src/v4/locales/vi.ts +117 -0
  330. package/dist/node_modules/zod/src/v4/locales/yo.ts +124 -0
  331. package/dist/node_modules/zod/src/v4/locales/zh-CN.ts +116 -0
  332. package/dist/node_modules/zod/src/v4/locales/zh-TW.ts +115 -0
  333. package/dist/node_modules/zod/src/v4/mini/checks.ts +32 -0
  334. package/dist/node_modules/zod/src/v4/mini/coerce.ts +27 -0
  335. package/dist/node_modules/zod/src/v4/mini/external.ts +40 -0
  336. package/dist/node_modules/zod/src/v4/mini/index.ts +3 -0
  337. package/dist/node_modules/zod/src/v4/mini/iso.ts +66 -0
  338. package/dist/node_modules/zod/src/v4/mini/parse.ts +14 -0
  339. package/dist/node_modules/zod/src/v4/mini/schemas.ts +1916 -0
  340. package/dist/node_modules/zod/src/v4/mini/tests/apply.test.ts +24 -0
  341. package/dist/node_modules/zod/src/v4/mini/tests/assignability.test.ts +129 -0
  342. package/dist/node_modules/zod/src/v4/mini/tests/brand.test.ts +94 -0
  343. package/dist/node_modules/zod/src/v4/mini/tests/checks.test.ts +144 -0
  344. package/dist/node_modules/zod/src/v4/mini/tests/codec.test.ts +529 -0
  345. package/dist/node_modules/zod/src/v4/mini/tests/computed.test.ts +36 -0
  346. package/dist/node_modules/zod/src/v4/mini/tests/error.test.ts +22 -0
  347. package/dist/node_modules/zod/src/v4/mini/tests/functions.test.ts +5 -0
  348. package/dist/node_modules/zod/src/v4/mini/tests/index.test.ts +963 -0
  349. package/dist/node_modules/zod/src/v4/mini/tests/number.test.ts +95 -0
  350. package/dist/node_modules/zod/src/v4/mini/tests/object.test.ts +227 -0
  351. package/dist/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +43 -0
  352. package/dist/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +275 -0
  353. package/dist/node_modules/zod/src/v4/mini/tests/standard-schema.test.ts +50 -0
  354. package/dist/node_modules/zod/src/v4/mini/tests/string.test.ts +347 -0
  355. package/dist/node_modules/zod/src/v4-mini/index.ts +1 -0
  356. package/dist/node_modules/zod/v3/ZodError.cjs +138 -0
  357. package/dist/node_modules/zod/v3/ZodError.d.cts +164 -0
  358. package/dist/node_modules/zod/v3/ZodError.d.ts +164 -0
  359. package/dist/node_modules/zod/v3/ZodError.js +133 -0
  360. package/dist/node_modules/zod/v3/errors.cjs +17 -0
  361. package/dist/node_modules/zod/v3/errors.d.cts +5 -0
  362. package/dist/node_modules/zod/v3/errors.d.ts +5 -0
  363. package/dist/node_modules/zod/v3/errors.js +9 -0
  364. package/dist/node_modules/zod/v3/external.cjs +22 -0
  365. package/dist/node_modules/zod/v3/external.d.cts +6 -0
  366. package/dist/node_modules/zod/v3/external.d.ts +6 -0
  367. package/dist/node_modules/zod/v3/external.js +6 -0
  368. package/dist/node_modules/zod/v3/helpers/enumUtil.cjs +2 -0
  369. package/dist/node_modules/zod/v3/helpers/enumUtil.d.cts +8 -0
  370. package/dist/node_modules/zod/v3/helpers/enumUtil.d.ts +8 -0
  371. package/dist/node_modules/zod/v3/helpers/enumUtil.js +1 -0
  372. package/dist/node_modules/zod/v3/helpers/errorUtil.cjs +9 -0
  373. package/dist/node_modules/zod/v3/helpers/errorUtil.d.cts +9 -0
  374. package/dist/node_modules/zod/v3/helpers/errorUtil.d.ts +9 -0
  375. package/dist/node_modules/zod/v3/helpers/errorUtil.js +6 -0
  376. package/dist/node_modules/zod/v3/helpers/parseUtil.cjs +124 -0
  377. package/dist/node_modules/zod/v3/helpers/parseUtil.d.cts +78 -0
  378. package/dist/node_modules/zod/v3/helpers/parseUtil.d.ts +78 -0
  379. package/dist/node_modules/zod/v3/helpers/parseUtil.js +109 -0
  380. package/dist/node_modules/zod/v3/helpers/partialUtil.cjs +2 -0
  381. package/dist/node_modules/zod/v3/helpers/partialUtil.d.cts +8 -0
  382. package/dist/node_modules/zod/v3/helpers/partialUtil.d.ts +8 -0
  383. package/dist/node_modules/zod/v3/helpers/partialUtil.js +1 -0
  384. package/dist/node_modules/zod/v3/helpers/typeAliases.cjs +2 -0
  385. package/dist/node_modules/zod/v3/helpers/typeAliases.d.cts +2 -0
  386. package/dist/node_modules/zod/v3/helpers/typeAliases.d.ts +2 -0
  387. package/dist/node_modules/zod/v3/helpers/typeAliases.js +1 -0
  388. package/dist/node_modules/zod/v3/helpers/util.cjs +137 -0
  389. package/dist/node_modules/zod/v3/helpers/util.d.cts +85 -0
  390. package/dist/node_modules/zod/v3/helpers/util.d.ts +85 -0
  391. package/dist/node_modules/zod/v3/helpers/util.js +133 -0
  392. package/dist/node_modules/zod/v3/index.cjs +33 -0
  393. package/dist/node_modules/zod/v3/index.d.cts +4 -0
  394. package/dist/node_modules/zod/v3/index.d.ts +4 -0
  395. package/dist/node_modules/zod/v3/index.js +4 -0
  396. package/dist/node_modules/zod/v3/locales/en.cjs +112 -0
  397. package/dist/node_modules/zod/v3/locales/en.d.cts +3 -0
  398. package/dist/node_modules/zod/v3/locales/en.d.ts +3 -0
  399. package/dist/node_modules/zod/v3/locales/en.js +109 -0
  400. package/dist/node_modules/zod/v3/package.json +6 -0
  401. package/dist/node_modules/zod/v3/standard-schema.cjs +2 -0
  402. package/dist/node_modules/zod/v3/standard-schema.d.cts +102 -0
  403. package/dist/node_modules/zod/v3/standard-schema.d.ts +102 -0
  404. package/dist/node_modules/zod/v3/standard-schema.js +1 -0
  405. package/dist/node_modules/zod/v3/types.cjs +3777 -0
  406. package/dist/node_modules/zod/v3/types.d.cts +1034 -0
  407. package/dist/node_modules/zod/v3/types.d.ts +1034 -0
  408. package/dist/node_modules/zod/v3/types.js +3695 -0
  409. package/dist/node_modules/zod/v4/classic/checks.cjs +33 -0
  410. package/dist/node_modules/zod/v4/classic/checks.d.cts +1 -0
  411. package/dist/node_modules/zod/v4/classic/checks.d.ts +1 -0
  412. package/dist/node_modules/zod/v4/classic/checks.js +1 -0
  413. package/dist/node_modules/zod/v4/classic/coerce.cjs +47 -0
  414. package/dist/node_modules/zod/v4/classic/coerce.d.cts +17 -0
  415. package/dist/node_modules/zod/v4/classic/coerce.d.ts +17 -0
  416. package/dist/node_modules/zod/v4/classic/coerce.js +17 -0
  417. package/dist/node_modules/zod/v4/classic/compat.cjs +61 -0
  418. package/dist/node_modules/zod/v4/classic/compat.d.cts +50 -0
  419. package/dist/node_modules/zod/v4/classic/compat.d.ts +50 -0
  420. package/dist/node_modules/zod/v4/classic/compat.js +31 -0
  421. package/dist/node_modules/zod/v4/classic/errors.cjs +74 -0
  422. package/dist/node_modules/zod/v4/classic/errors.d.cts +30 -0
  423. package/dist/node_modules/zod/v4/classic/errors.d.ts +30 -0
  424. package/dist/node_modules/zod/v4/classic/errors.js +48 -0
  425. package/dist/node_modules/zod/v4/classic/external.cjs +73 -0
  426. package/dist/node_modules/zod/v4/classic/external.d.cts +15 -0
  427. package/dist/node_modules/zod/v4/classic/external.d.ts +15 -0
  428. package/dist/node_modules/zod/v4/classic/external.js +20 -0
  429. package/dist/node_modules/zod/v4/classic/from-json-schema.cjs +610 -0
  430. package/dist/node_modules/zod/v4/classic/from-json-schema.d.cts +12 -0
  431. package/dist/node_modules/zod/v4/classic/from-json-schema.d.ts +12 -0
  432. package/dist/node_modules/zod/v4/classic/from-json-schema.js +584 -0
  433. package/dist/node_modules/zod/v4/classic/index.cjs +33 -0
  434. package/dist/node_modules/zod/v4/classic/index.d.cts +4 -0
  435. package/dist/node_modules/zod/v4/classic/index.d.ts +4 -0
  436. package/dist/node_modules/zod/v4/classic/index.js +4 -0
  437. package/dist/node_modules/zod/v4/classic/iso.cjs +60 -0
  438. package/dist/node_modules/zod/v4/classic/iso.d.cts +22 -0
  439. package/dist/node_modules/zod/v4/classic/iso.d.ts +22 -0
  440. package/dist/node_modules/zod/v4/classic/iso.js +30 -0
  441. package/dist/node_modules/zod/v4/classic/package.json +6 -0
  442. package/dist/node_modules/zod/v4/classic/parse.cjs +41 -0
  443. package/dist/node_modules/zod/v4/classic/parse.d.cts +31 -0
  444. package/dist/node_modules/zod/v4/classic/parse.d.ts +31 -0
  445. package/dist/node_modules/zod/v4/classic/parse.js +15 -0
  446. package/dist/node_modules/zod/v4/classic/schemas.cjs +1272 -0
  447. package/dist/node_modules/zod/v4/classic/schemas.d.cts +739 -0
  448. package/dist/node_modules/zod/v4/classic/schemas.d.ts +739 -0
  449. package/dist/node_modules/zod/v4/classic/schemas.js +1157 -0
  450. package/dist/node_modules/zod/v4/core/api.cjs +1222 -0
  451. package/dist/node_modules/zod/v4/core/api.d.cts +304 -0
  452. package/dist/node_modules/zod/v4/core/api.d.ts +304 -0
  453. package/dist/node_modules/zod/v4/core/api.js +1082 -0
  454. package/dist/node_modules/zod/v4/core/checks.cjs +601 -0
  455. package/dist/node_modules/zod/v4/core/checks.d.cts +278 -0
  456. package/dist/node_modules/zod/v4/core/checks.d.ts +278 -0
  457. package/dist/node_modules/zod/v4/core/checks.js +575 -0
  458. package/dist/node_modules/zod/v4/core/core.cjs +83 -0
  459. package/dist/node_modules/zod/v4/core/core.d.cts +70 -0
  460. package/dist/node_modules/zod/v4/core/core.d.ts +70 -0
  461. package/dist/node_modules/zod/v4/core/core.js +76 -0
  462. package/dist/node_modules/zod/v4/core/doc.cjs +39 -0
  463. package/dist/node_modules/zod/v4/core/doc.d.cts +14 -0
  464. package/dist/node_modules/zod/v4/core/doc.d.ts +14 -0
  465. package/dist/node_modules/zod/v4/core/doc.js +35 -0
  466. package/dist/node_modules/zod/v4/core/errors.cjs +213 -0
  467. package/dist/node_modules/zod/v4/core/errors.d.cts +220 -0
  468. package/dist/node_modules/zod/v4/core/errors.d.ts +220 -0
  469. package/dist/node_modules/zod/v4/core/errors.js +182 -0
  470. package/dist/node_modules/zod/v4/core/index.cjs +47 -0
  471. package/dist/node_modules/zod/v4/core/index.d.cts +16 -0
  472. package/dist/node_modules/zod/v4/core/index.d.ts +16 -0
  473. package/dist/node_modules/zod/v4/core/index.js +16 -0
  474. package/dist/node_modules/zod/v4/core/json-schema-generator.cjs +99 -0
  475. package/dist/node_modules/zod/v4/core/json-schema-generator.d.cts +65 -0
  476. package/dist/node_modules/zod/v4/core/json-schema-generator.d.ts +65 -0
  477. package/dist/node_modules/zod/v4/core/json-schema-generator.js +95 -0
  478. package/dist/node_modules/zod/v4/core/json-schema-processors.cjs +648 -0
  479. package/dist/node_modules/zod/v4/core/json-schema-processors.d.cts +49 -0
  480. package/dist/node_modules/zod/v4/core/json-schema-processors.d.ts +49 -0
  481. package/dist/node_modules/zod/v4/core/json-schema-processors.js +605 -0
  482. package/dist/node_modules/zod/v4/core/json-schema.cjs +2 -0
  483. package/dist/node_modules/zod/v4/core/json-schema.d.cts +88 -0
  484. package/dist/node_modules/zod/v4/core/json-schema.d.ts +88 -0
  485. package/dist/node_modules/zod/v4/core/json-schema.js +1 -0
  486. package/dist/node_modules/zod/v4/core/package.json +6 -0
  487. package/dist/node_modules/zod/v4/core/parse.cjs +131 -0
  488. package/dist/node_modules/zod/v4/core/parse.d.cts +49 -0
  489. package/dist/node_modules/zod/v4/core/parse.d.ts +49 -0
  490. package/dist/node_modules/zod/v4/core/parse.js +93 -0
  491. package/dist/node_modules/zod/v4/core/regexes.cjs +166 -0
  492. package/dist/node_modules/zod/v4/core/regexes.d.cts +79 -0
  493. package/dist/node_modules/zod/v4/core/regexes.d.ts +79 -0
  494. package/dist/node_modules/zod/v4/core/regexes.js +133 -0
  495. package/dist/node_modules/zod/v4/core/registries.cjs +56 -0
  496. package/dist/node_modules/zod/v4/core/registries.d.cts +35 -0
  497. package/dist/node_modules/zod/v4/core/registries.d.ts +35 -0
  498. package/dist/node_modules/zod/v4/core/registries.js +51 -0
  499. package/dist/node_modules/zod/v4/core/schemas.cjs +2126 -0
  500. package/dist/node_modules/zod/v4/core/schemas.d.cts +1146 -0
  501. package/dist/node_modules/zod/v4/core/schemas.d.ts +1146 -0
  502. package/dist/node_modules/zod/v4/core/schemas.js +2095 -0
  503. package/dist/node_modules/zod/v4/core/standard-schema.cjs +2 -0
  504. package/dist/node_modules/zod/v4/core/standard-schema.d.cts +126 -0
  505. package/dist/node_modules/zod/v4/core/standard-schema.d.ts +126 -0
  506. package/dist/node_modules/zod/v4/core/standard-schema.js +1 -0
  507. package/dist/node_modules/zod/v4/core/to-json-schema.cjs +446 -0
  508. package/dist/node_modules/zod/v4/core/to-json-schema.d.cts +114 -0
  509. package/dist/node_modules/zod/v4/core/to-json-schema.d.ts +114 -0
  510. package/dist/node_modules/zod/v4/core/to-json-schema.js +437 -0
  511. package/dist/node_modules/zod/v4/core/util.cjs +710 -0
  512. package/dist/node_modules/zod/v4/core/util.d.cts +199 -0
  513. package/dist/node_modules/zod/v4/core/util.d.ts +199 -0
  514. package/dist/node_modules/zod/v4/core/util.js +651 -0
  515. package/dist/node_modules/zod/v4/core/versions.cjs +8 -0
  516. package/dist/node_modules/zod/v4/core/versions.d.cts +5 -0
  517. package/dist/node_modules/zod/v4/core/versions.d.ts +5 -0
  518. package/dist/node_modules/zod/v4/core/versions.js +5 -0
  519. package/dist/node_modules/zod/v4/index.cjs +22 -0
  520. package/dist/node_modules/zod/v4/index.d.cts +3 -0
  521. package/dist/node_modules/zod/v4/index.d.ts +3 -0
  522. package/dist/node_modules/zod/v4/index.js +3 -0
  523. package/dist/node_modules/zod/v4/locales/ar.cjs +133 -0
  524. package/dist/node_modules/zod/v4/locales/ar.d.cts +5 -0
  525. package/dist/node_modules/zod/v4/locales/ar.d.ts +4 -0
  526. package/dist/node_modules/zod/v4/locales/ar.js +106 -0
  527. package/dist/node_modules/zod/v4/locales/az.cjs +132 -0
  528. package/dist/node_modules/zod/v4/locales/az.d.cts +5 -0
  529. package/dist/node_modules/zod/v4/locales/az.d.ts +4 -0
  530. package/dist/node_modules/zod/v4/locales/az.js +105 -0
  531. package/dist/node_modules/zod/v4/locales/be.cjs +183 -0
  532. package/dist/node_modules/zod/v4/locales/be.d.cts +5 -0
  533. package/dist/node_modules/zod/v4/locales/be.d.ts +4 -0
  534. package/dist/node_modules/zod/v4/locales/be.js +156 -0
  535. package/dist/node_modules/zod/v4/locales/bg.cjs +147 -0
  536. package/dist/node_modules/zod/v4/locales/bg.d.cts +5 -0
  537. package/dist/node_modules/zod/v4/locales/bg.d.ts +4 -0
  538. package/dist/node_modules/zod/v4/locales/bg.js +120 -0
  539. package/dist/node_modules/zod/v4/locales/ca.cjs +134 -0
  540. package/dist/node_modules/zod/v4/locales/ca.d.cts +5 -0
  541. package/dist/node_modules/zod/v4/locales/ca.d.ts +4 -0
  542. package/dist/node_modules/zod/v4/locales/ca.js +107 -0
  543. package/dist/node_modules/zod/v4/locales/cs.cjs +138 -0
  544. package/dist/node_modules/zod/v4/locales/cs.d.cts +5 -0
  545. package/dist/node_modules/zod/v4/locales/cs.d.ts +4 -0
  546. package/dist/node_modules/zod/v4/locales/cs.js +111 -0
  547. package/dist/node_modules/zod/v4/locales/da.cjs +142 -0
  548. package/dist/node_modules/zod/v4/locales/da.d.cts +5 -0
  549. package/dist/node_modules/zod/v4/locales/da.d.ts +4 -0
  550. package/dist/node_modules/zod/v4/locales/da.js +115 -0
  551. package/dist/node_modules/zod/v4/locales/de.cjs +135 -0
  552. package/dist/node_modules/zod/v4/locales/de.d.cts +5 -0
  553. package/dist/node_modules/zod/v4/locales/de.d.ts +4 -0
  554. package/dist/node_modules/zod/v4/locales/de.js +108 -0
  555. package/dist/node_modules/zod/v4/locales/en.cjs +136 -0
  556. package/dist/node_modules/zod/v4/locales/en.d.cts +5 -0
  557. package/dist/node_modules/zod/v4/locales/en.d.ts +4 -0
  558. package/dist/node_modules/zod/v4/locales/en.js +109 -0
  559. package/dist/node_modules/zod/v4/locales/eo.cjs +136 -0
  560. package/dist/node_modules/zod/v4/locales/eo.d.cts +5 -0
  561. package/dist/node_modules/zod/v4/locales/eo.d.ts +4 -0
  562. package/dist/node_modules/zod/v4/locales/eo.js +109 -0
  563. package/dist/node_modules/zod/v4/locales/es.cjs +159 -0
  564. package/dist/node_modules/zod/v4/locales/es.d.cts +5 -0
  565. package/dist/node_modules/zod/v4/locales/es.d.ts +4 -0
  566. package/dist/node_modules/zod/v4/locales/es.js +132 -0
  567. package/dist/node_modules/zod/v4/locales/fa.cjs +141 -0
  568. package/dist/node_modules/zod/v4/locales/fa.d.cts +5 -0
  569. package/dist/node_modules/zod/v4/locales/fa.d.ts +4 -0
  570. package/dist/node_modules/zod/v4/locales/fa.js +114 -0
  571. package/dist/node_modules/zod/v4/locales/fi.cjs +139 -0
  572. package/dist/node_modules/zod/v4/locales/fi.d.cts +5 -0
  573. package/dist/node_modules/zod/v4/locales/fi.d.ts +4 -0
  574. package/dist/node_modules/zod/v4/locales/fi.js +112 -0
  575. package/dist/node_modules/zod/v4/locales/fr-CA.cjs +134 -0
  576. package/dist/node_modules/zod/v4/locales/fr-CA.d.cts +5 -0
  577. package/dist/node_modules/zod/v4/locales/fr-CA.d.ts +4 -0
  578. package/dist/node_modules/zod/v4/locales/fr-CA.js +107 -0
  579. package/dist/node_modules/zod/v4/locales/fr.cjs +135 -0
  580. package/dist/node_modules/zod/v4/locales/fr.d.cts +5 -0
  581. package/dist/node_modules/zod/v4/locales/fr.d.ts +4 -0
  582. package/dist/node_modules/zod/v4/locales/fr.js +108 -0
  583. package/dist/node_modules/zod/v4/locales/he.cjs +241 -0
  584. package/dist/node_modules/zod/v4/locales/he.d.cts +5 -0
  585. package/dist/node_modules/zod/v4/locales/he.d.ts +4 -0
  586. package/dist/node_modules/zod/v4/locales/he.js +214 -0
  587. package/dist/node_modules/zod/v4/locales/hu.cjs +135 -0
  588. package/dist/node_modules/zod/v4/locales/hu.d.cts +5 -0
  589. package/dist/node_modules/zod/v4/locales/hu.d.ts +4 -0
  590. package/dist/node_modules/zod/v4/locales/hu.js +108 -0
  591. package/dist/node_modules/zod/v4/locales/hy.cjs +174 -0
  592. package/dist/node_modules/zod/v4/locales/hy.d.cts +5 -0
  593. package/dist/node_modules/zod/v4/locales/hy.d.ts +4 -0
  594. package/dist/node_modules/zod/v4/locales/hy.js +147 -0
  595. package/dist/node_modules/zod/v4/locales/id.cjs +133 -0
  596. package/dist/node_modules/zod/v4/locales/id.d.cts +5 -0
  597. package/dist/node_modules/zod/v4/locales/id.d.ts +4 -0
  598. package/dist/node_modules/zod/v4/locales/id.js +106 -0
  599. package/dist/node_modules/zod/v4/locales/index.cjs +104 -0
  600. package/dist/node_modules/zod/v4/locales/index.d.cts +49 -0
  601. package/dist/node_modules/zod/v4/locales/index.d.ts +49 -0
  602. package/dist/node_modules/zod/v4/locales/index.js +49 -0
  603. package/dist/node_modules/zod/v4/locales/is.cjs +136 -0
  604. package/dist/node_modules/zod/v4/locales/is.d.cts +5 -0
  605. package/dist/node_modules/zod/v4/locales/is.d.ts +4 -0
  606. package/dist/node_modules/zod/v4/locales/is.js +109 -0
  607. package/dist/node_modules/zod/v4/locales/it.cjs +135 -0
  608. package/dist/node_modules/zod/v4/locales/it.d.cts +5 -0
  609. package/dist/node_modules/zod/v4/locales/it.d.ts +4 -0
  610. package/dist/node_modules/zod/v4/locales/it.js +108 -0
  611. package/dist/node_modules/zod/v4/locales/ja.cjs +134 -0
  612. package/dist/node_modules/zod/v4/locales/ja.d.cts +5 -0
  613. package/dist/node_modules/zod/v4/locales/ja.d.ts +4 -0
  614. package/dist/node_modules/zod/v4/locales/ja.js +107 -0
  615. package/dist/node_modules/zod/v4/locales/ka.cjs +139 -0
  616. package/dist/node_modules/zod/v4/locales/ka.d.cts +5 -0
  617. package/dist/node_modules/zod/v4/locales/ka.d.ts +4 -0
  618. package/dist/node_modules/zod/v4/locales/ka.js +112 -0
  619. package/dist/node_modules/zod/v4/locales/kh.cjs +12 -0
  620. package/dist/node_modules/zod/v4/locales/kh.d.cts +5 -0
  621. package/dist/node_modules/zod/v4/locales/kh.d.ts +5 -0
  622. package/dist/node_modules/zod/v4/locales/kh.js +5 -0
  623. package/dist/node_modules/zod/v4/locales/km.cjs +137 -0
  624. package/dist/node_modules/zod/v4/locales/km.d.cts +5 -0
  625. package/dist/node_modules/zod/v4/locales/km.d.ts +4 -0
  626. package/dist/node_modules/zod/v4/locales/km.js +110 -0
  627. package/dist/node_modules/zod/v4/locales/ko.cjs +138 -0
  628. package/dist/node_modules/zod/v4/locales/ko.d.cts +5 -0
  629. package/dist/node_modules/zod/v4/locales/ko.d.ts +4 -0
  630. package/dist/node_modules/zod/v4/locales/ko.js +111 -0
  631. package/dist/node_modules/zod/v4/locales/lt.cjs +230 -0
  632. package/dist/node_modules/zod/v4/locales/lt.d.cts +5 -0
  633. package/dist/node_modules/zod/v4/locales/lt.d.ts +4 -0
  634. package/dist/node_modules/zod/v4/locales/lt.js +203 -0
  635. package/dist/node_modules/zod/v4/locales/mk.cjs +136 -0
  636. package/dist/node_modules/zod/v4/locales/mk.d.cts +5 -0
  637. package/dist/node_modules/zod/v4/locales/mk.d.ts +4 -0
  638. package/dist/node_modules/zod/v4/locales/mk.js +109 -0
  639. package/dist/node_modules/zod/v4/locales/ms.cjs +134 -0
  640. package/dist/node_modules/zod/v4/locales/ms.d.cts +5 -0
  641. package/dist/node_modules/zod/v4/locales/ms.d.ts +4 -0
  642. package/dist/node_modules/zod/v4/locales/ms.js +107 -0
  643. package/dist/node_modules/zod/v4/locales/nl.cjs +137 -0
  644. package/dist/node_modules/zod/v4/locales/nl.d.cts +5 -0
  645. package/dist/node_modules/zod/v4/locales/nl.d.ts +4 -0
  646. package/dist/node_modules/zod/v4/locales/nl.js +110 -0
  647. package/dist/node_modules/zod/v4/locales/no.cjs +135 -0
  648. package/dist/node_modules/zod/v4/locales/no.d.cts +5 -0
  649. package/dist/node_modules/zod/v4/locales/no.d.ts +4 -0
  650. package/dist/node_modules/zod/v4/locales/no.js +108 -0
  651. package/dist/node_modules/zod/v4/locales/ota.cjs +136 -0
  652. package/dist/node_modules/zod/v4/locales/ota.d.cts +5 -0
  653. package/dist/node_modules/zod/v4/locales/ota.d.ts +4 -0
  654. package/dist/node_modules/zod/v4/locales/ota.js +109 -0
  655. package/dist/node_modules/zod/v4/locales/package.json +6 -0
  656. package/dist/node_modules/zod/v4/locales/pl.cjs +136 -0
  657. package/dist/node_modules/zod/v4/locales/pl.d.cts +5 -0
  658. package/dist/node_modules/zod/v4/locales/pl.d.ts +4 -0
  659. package/dist/node_modules/zod/v4/locales/pl.js +109 -0
  660. package/dist/node_modules/zod/v4/locales/ps.cjs +141 -0
  661. package/dist/node_modules/zod/v4/locales/ps.d.cts +5 -0
  662. package/dist/node_modules/zod/v4/locales/ps.d.ts +4 -0
  663. package/dist/node_modules/zod/v4/locales/ps.js +114 -0
  664. package/dist/node_modules/zod/v4/locales/pt.cjs +135 -0
  665. package/dist/node_modules/zod/v4/locales/pt.d.cts +5 -0
  666. package/dist/node_modules/zod/v4/locales/pt.d.ts +4 -0
  667. package/dist/node_modules/zod/v4/locales/pt.js +108 -0
  668. package/dist/node_modules/zod/v4/locales/ru.cjs +183 -0
  669. package/dist/node_modules/zod/v4/locales/ru.d.cts +5 -0
  670. package/dist/node_modules/zod/v4/locales/ru.d.ts +4 -0
  671. package/dist/node_modules/zod/v4/locales/ru.js +156 -0
  672. package/dist/node_modules/zod/v4/locales/sl.cjs +136 -0
  673. package/dist/node_modules/zod/v4/locales/sl.d.cts +5 -0
  674. package/dist/node_modules/zod/v4/locales/sl.d.ts +4 -0
  675. package/dist/node_modules/zod/v4/locales/sl.js +109 -0
  676. package/dist/node_modules/zod/v4/locales/sv.cjs +137 -0
  677. package/dist/node_modules/zod/v4/locales/sv.d.cts +5 -0
  678. package/dist/node_modules/zod/v4/locales/sv.d.ts +4 -0
  679. package/dist/node_modules/zod/v4/locales/sv.js +110 -0
  680. package/dist/node_modules/zod/v4/locales/ta.cjs +137 -0
  681. package/dist/node_modules/zod/v4/locales/ta.d.cts +5 -0
  682. package/dist/node_modules/zod/v4/locales/ta.d.ts +4 -0
  683. package/dist/node_modules/zod/v4/locales/ta.js +110 -0
  684. package/dist/node_modules/zod/v4/locales/th.cjs +137 -0
  685. package/dist/node_modules/zod/v4/locales/th.d.cts +5 -0
  686. package/dist/node_modules/zod/v4/locales/th.d.ts +4 -0
  687. package/dist/node_modules/zod/v4/locales/th.js +110 -0
  688. package/dist/node_modules/zod/v4/locales/tr.cjs +132 -0
  689. package/dist/node_modules/zod/v4/locales/tr.d.cts +5 -0
  690. package/dist/node_modules/zod/v4/locales/tr.d.ts +4 -0
  691. package/dist/node_modules/zod/v4/locales/tr.js +105 -0
  692. package/dist/node_modules/zod/v4/locales/ua.cjs +12 -0
  693. package/dist/node_modules/zod/v4/locales/ua.d.cts +5 -0
  694. package/dist/node_modules/zod/v4/locales/ua.d.ts +5 -0
  695. package/dist/node_modules/zod/v4/locales/ua.js +5 -0
  696. package/dist/node_modules/zod/v4/locales/uk.cjs +135 -0
  697. package/dist/node_modules/zod/v4/locales/uk.d.cts +5 -0
  698. package/dist/node_modules/zod/v4/locales/uk.d.ts +4 -0
  699. package/dist/node_modules/zod/v4/locales/uk.js +108 -0
  700. package/dist/node_modules/zod/v4/locales/ur.cjs +137 -0
  701. package/dist/node_modules/zod/v4/locales/ur.d.cts +5 -0
  702. package/dist/node_modules/zod/v4/locales/ur.d.ts +4 -0
  703. package/dist/node_modules/zod/v4/locales/ur.js +110 -0
  704. package/dist/node_modules/zod/v4/locales/uz.cjs +136 -0
  705. package/dist/node_modules/zod/v4/locales/uz.d.cts +5 -0
  706. package/dist/node_modules/zod/v4/locales/uz.d.ts +4 -0
  707. package/dist/node_modules/zod/v4/locales/uz.js +109 -0
  708. package/dist/node_modules/zod/v4/locales/vi.cjs +135 -0
  709. package/dist/node_modules/zod/v4/locales/vi.d.cts +5 -0
  710. package/dist/node_modules/zod/v4/locales/vi.d.ts +4 -0
  711. package/dist/node_modules/zod/v4/locales/vi.js +108 -0
  712. package/dist/node_modules/zod/v4/locales/yo.cjs +134 -0
  713. package/dist/node_modules/zod/v4/locales/yo.d.cts +5 -0
  714. package/dist/node_modules/zod/v4/locales/yo.d.ts +4 -0
  715. package/dist/node_modules/zod/v4/locales/yo.js +107 -0
  716. package/dist/node_modules/zod/v4/locales/zh-CN.cjs +136 -0
  717. package/dist/node_modules/zod/v4/locales/zh-CN.d.cts +5 -0
  718. package/dist/node_modules/zod/v4/locales/zh-CN.d.ts +4 -0
  719. package/dist/node_modules/zod/v4/locales/zh-CN.js +109 -0
  720. package/dist/node_modules/zod/v4/locales/zh-TW.cjs +134 -0
  721. package/dist/node_modules/zod/v4/locales/zh-TW.d.cts +5 -0
  722. package/dist/node_modules/zod/v4/locales/zh-TW.d.ts +4 -0
  723. package/dist/node_modules/zod/v4/locales/zh-TW.js +107 -0
  724. package/dist/node_modules/zod/v4/mini/checks.cjs +34 -0
  725. package/dist/node_modules/zod/v4/mini/checks.d.cts +1 -0
  726. package/dist/node_modules/zod/v4/mini/checks.d.ts +1 -0
  727. package/dist/node_modules/zod/v4/mini/checks.js +1 -0
  728. package/dist/node_modules/zod/v4/mini/coerce.cjs +52 -0
  729. package/dist/node_modules/zod/v4/mini/coerce.d.cts +7 -0
  730. package/dist/node_modules/zod/v4/mini/coerce.d.ts +7 -0
  731. package/dist/node_modules/zod/v4/mini/coerce.js +22 -0
  732. package/dist/node_modules/zod/v4/mini/external.cjs +63 -0
  733. package/dist/node_modules/zod/v4/mini/external.d.cts +12 -0
  734. package/dist/node_modules/zod/v4/mini/external.d.ts +12 -0
  735. package/dist/node_modules/zod/v4/mini/external.js +14 -0
  736. package/dist/node_modules/zod/v4/mini/index.cjs +32 -0
  737. package/dist/node_modules/zod/v4/mini/index.d.cts +3 -0
  738. package/dist/node_modules/zod/v4/mini/index.d.ts +3 -0
  739. package/dist/node_modules/zod/v4/mini/index.js +3 -0
  740. package/dist/node_modules/zod/v4/mini/iso.cjs +64 -0
  741. package/dist/node_modules/zod/v4/mini/iso.d.cts +22 -0
  742. package/dist/node_modules/zod/v4/mini/iso.d.ts +22 -0
  743. package/dist/node_modules/zod/v4/mini/iso.js +34 -0
  744. package/dist/node_modules/zod/v4/mini/package.json +6 -0
  745. package/dist/node_modules/zod/v4/mini/parse.cjs +16 -0
  746. package/dist/node_modules/zod/v4/mini/parse.d.cts +1 -0
  747. package/dist/node_modules/zod/v4/mini/parse.d.ts +1 -0
  748. package/dist/node_modules/zod/v4/mini/parse.js +1 -0
  749. package/dist/node_modules/zod/v4/mini/schemas.cjs +1046 -0
  750. package/dist/node_modules/zod/v4/mini/schemas.d.cts +427 -0
  751. package/dist/node_modules/zod/v4/mini/schemas.d.ts +427 -0
  752. package/dist/node_modules/zod/v4/mini/schemas.js +925 -0
  753. package/dist/node_modules/zod/v4/package.json +6 -0
  754. package/dist/node_modules/zod/v4-mini/index.cjs +17 -0
  755. package/dist/node_modules/zod/v4-mini/index.d.cts +1 -0
  756. package/dist/node_modules/zod/v4-mini/index.d.ts +1 -0
  757. package/dist/node_modules/zod/v4-mini/index.js +1 -0
  758. package/dist/node_modules/zod/v4-mini/package.json +6 -0
  759. package/dist/server/collections/flowsql.js +1 -0
  760. package/dist/server/repository.d.ts +9 -1
  761. package/dist/server/repository.js +138 -0
  762. package/dist/server/server.js +12 -0
  763. package/dist/server/template/contexts.d.ts +0 -1
  764. package/dist/server/template/contexts.js +0 -39
  765. package/dist/server/template/resolver.js +10 -6
  766. package/dist/server/variables/records.d.ts +38 -0
  767. package/dist/server/variables/records.js +120 -0
  768. package/dist/server/variables/registry.js +130 -51
  769. package/dist/server/variables/utils.js +56 -16
  770. package/package.json +3 -3
@@ -0,0 +1,488 @@
1
+ # ctx.importAsync()
2
+
3
+ Dynamically load **ESM modules** or **CSS** via URL, applicable to various RunJS scenarios. Use `ctx.importAsync()` when third-party ESM libraries are required, and `ctx.requireAsync()` for UMD/AMD libraries. Passing a `.css` address will load and inject the styles into the page.
4
+
5
+ ## Use Cases
6
+
7
+ | Scenario | Description |
8
+ |------|------|
9
+ | **JSBlock** | Dynamically load ESM libraries such as Vue, ECharts, or Tabulator to implement custom charts, tables, dashboards, etc. |
10
+ | **JSField / JSItem / JSColumn** | Load lightweight ESM utility libraries (e.g., dayjs plugins) to assist in rendering. |
11
+ | **Workflow / Action Events** | Load dependencies on demand before executing business logic. |
12
+
13
+ ## Type Definition
14
+
15
+ ```ts
16
+ importAsync<T = any>(url: string): Promise<T>;
17
+ ```
18
+
19
+ ## Parameters
20
+
21
+ | Parameter | Type | Description |
22
+ |------|------|------|
23
+ | `url` | `string` | The address of the ESM module or CSS. Supports shorthand `<package>@<version>` or subpaths `<package>@<version>/<file-path>` (e.g., `vue@3.4.0`, `dayjs@1/plugin/relativeTime.js`), which will be concatenated with the CDN prefix according to the configuration. Full URLs are also supported. When a `.css` file is passed, it will be loaded and injected as a style. For libraries depending on React, you can append `?deps=react@18.2.0,react-dom@18.2.0` to ensure they share the same React instance with the page. |
24
+
25
+ ## Return Value
26
+
27
+ - A Promise that resolves to the module's namespace object.
28
+
29
+ ## URL Format Description
30
+
31
+ - **ESM and CSS**: In addition to ESM modules, loading CSS is also supported (pass a `.css` URL to load and inject it into the page).
32
+ - **Shorthand Format**: Defaults to **https://esm.sh** as the CDN prefix if not configured. For example, `vue@3.4.0` actually requests `https://esm.sh/vue@3.4.0`.
33
+ - **?deps**: Libraries that depend on React (such as `@dnd-kit/core`, `react-big-calendar`) should append `?deps=react@18.2.0,react-dom@18.2.0` to avoid conflicts with the page's React instance, which could lead to "Invalid hook call" errors.
34
+ - **Self-hosted CDN**: You can specify an internal network or self-hosted service via environment variables:
35
+ - **ESM_CDN_BASE_URL**: The base URL for the ESM CDN (default is `https://esm.sh`).
36
+ - **ESM_CDN_SUFFIX**: Optional suffix (e.g., `/+esm` for jsDelivr).
37
+ - For self-hosted services, refer to: [nocobase/esm-server](https://github.com/nocobase/esm-server)
38
+
39
+ ## Difference from ctx.requireAsync()
40
+
41
+ - **ctx.importAsync()**: Loads **ESM modules** and returns the module namespace. Suitable for modern libraries (ESM builds like Vue, dayjs, etc.).
42
+ - **ctx.requireAsync()**: Loads **UMD/AMD** modules or scripts that attach to the global scope. Often used for UMD libraries like ECharts or FullCalendar. If a library provides both ESM and UMD, `ctx.importAsync()` is preferred.
43
+
44
+ ## Examples
45
+
46
+ ### Basic Usage
47
+
48
+ Demonstrates the most basic usage of dynamically loading ESM modules and CSS by package name or full URL.
49
+
50
+ ```javascript
51
+ const Vue = await ctx.importAsync('vue@3.4.0');
52
+ // Equivalent to loading from https://esm.sh/vue@3.4.0
53
+
54
+ const relativeTime = await ctx.importAsync('dayjs@1/plugin/relativeTime.js');
55
+ // With subpath (e.g., dayjs plugin)
56
+
57
+ const pkg = await ctx.importAsync('https://cdn.example.com/my-module.js');
58
+ // Full URL
59
+
60
+ await ctx.importAsync('https://cdn.example.com/theme.css');
61
+ // Load CSS and inject into the page
62
+ ```
63
+
64
+ ### ECharts Example
65
+
66
+ Use ECharts to draw a sales overview chart with bar and line graphs.
67
+
68
+ ```ts
69
+ // 1. Dynamically load ECharts module
70
+ const echarts = await ctx.importAsync('echarts@5.4.3');
71
+
72
+ // 2. Create chart container and render
73
+ const chartEl = document.createElement('div');
74
+ chartEl.style.width = '100%';
75
+ chartEl.style.height = '400px';
76
+ ctx.render(chartEl);
77
+
78
+ // 3. Initialize ECharts instance
79
+ const chart = echarts.init(chartEl);
80
+
81
+ // 4. Configure chart
82
+ const option = {
83
+ title: {
84
+ text: 'Sales Overview',
85
+ left: 'center',
86
+ },
87
+ tooltip: {
88
+ trigger: 'axis',
89
+ },
90
+ legend: {
91
+ data: ['Sales', 'Profit'],
92
+ top: '10%',
93
+ },
94
+ xAxis: {
95
+ type: 'category',
96
+ data: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun'],
97
+ },
98
+ yAxis: {
99
+ type: 'value',
100
+ },
101
+ series: [
102
+ {
103
+ name: 'Sales',
104
+ type: 'bar',
105
+ data: [120, 200, 150, 80, 70, 110],
106
+ },
107
+ {
108
+ name: 'Profit',
109
+ type: 'line',
110
+ data: [20, 40, 30, 15, 12, 25],
111
+ },
112
+ ],
113
+ };
114
+
115
+ // 5. Set option and render chart
116
+ chart.setOption(option);
117
+
118
+ // 6. Optional: Responsive sizing
119
+ window.addEventListener('resize', () => {
120
+ chart.resize();
121
+ });
122
+
123
+ // 7. Optional: Event listener
124
+ chart.on('click', (params) => {
125
+ ctx.message.info(`Clicked ${params.seriesName} on ${params.name}, value: ${params.value}`);
126
+ });
127
+ ```
128
+
129
+ ### Tabulator Example
130
+
131
+ Demonstrates rendering a data table with pagination and row click events in a block using Tabulator.
132
+
133
+ ```ts
134
+ // 1. Load Tabulator styles
135
+ await ctx.importAsync('tabulator-tables@6.2.5/dist/css/tabulator.min.css');
136
+
137
+ // 2. Dynamically load Tabulator module
138
+ const { TabulatorFull } = await ctx.importAsync('tabulator-tables@6.2.5');
139
+
140
+ // 3. Create table container and render
141
+ const tableEl = document.createElement('div');
142
+ ctx.render(tableEl);
143
+
144
+ // 4. Initialize Tabulator table
145
+ const table = new TabulatorFull(tableEl, {
146
+ data: [
147
+ { id: 1, name: 'Alice', age: 25, city: 'New York' },
148
+ { id: 2, name: 'Bob', age: 30, city: 'London' },
149
+ { id: 3, name: 'Charlie', age: 28, city: 'Paris' },
150
+ ],
151
+ columns: [
152
+ { title: 'ID', field: 'id', width: 80 },
153
+ { title: 'Name', field: 'name', width: 150 },
154
+ { title: 'Age', field: 'age', width: 100 },
155
+ { title: 'City', field: 'city', width: 150 },
156
+ ],
157
+ layout: 'fitColumns',
158
+ pagination: true,
159
+ paginationSize: 10,
160
+ });
161
+
162
+ // 5. Optional: Event listener
163
+ table.on('rowClick', (e, row) => {
164
+ const rowData = row.getData();
165
+ ctx.message.info(`Row clicked: ${rowData.name}`);
166
+ });
167
+ ```
168
+
169
+ ### FullCalendar (ESM) Example
170
+
171
+ Shows how to load FullCalendar and its plugins via ESM and render a basic monthly view calendar.
172
+
173
+ ```ts
174
+ // 1. Dynamically load FullCalendar core module
175
+ const { Calendar } = await ctx.importAsync('@fullcalendar/core@6.1.20');
176
+
177
+ // 2. Dynamically load dayGrid plugin
178
+ const dayGridPlugin = await ctx.importAsync('@fullcalendar/daygrid@6.1.20');
179
+
180
+ // 3. Create calendar container and render
181
+ const calendarEl = document.createElement('div');
182
+ calendarEl.id = 'calendar';
183
+ ctx.render(calendarEl);
184
+
185
+ // 4. Initialize and render calendar
186
+ const calendar = new Calendar(calendarEl, {
187
+ plugins: [dayGridPlugin.default || dayGridPlugin],
188
+ headerToolbar: {
189
+ left: 'prev,next today',
190
+ center: 'title',
191
+ right: 'dayGridMonth',
192
+ },
193
+ });
194
+
195
+ calendar.render();
196
+ ```
197
+
198
+ ### dnd-kit Simple Drag-and-Drop Example
199
+
200
+ Uses `@dnd-kit/core` to implement a minimal example of dragging a Box to a target area within a block.
201
+
202
+ ```ts
203
+ // 1. Load React, react-dom, @dnd-kit/core (?deps ensures same React instance to avoid Invalid hook call)
204
+ const React = await ctx.importAsync('react@18.2.0');
205
+ const { createRoot } = await ctx.importAsync('react-dom@18.2.0/client');
206
+ const core = await ctx.importAsync('@dnd-kit/core@6.3.1?deps=react@18.2.0,react-dom@18.2.0');
207
+ const { DndContext, closestCenter, PointerSensor, useSensor, useSensors, useDraggable, useDroppable } = core;
208
+
209
+ function DraggableBox() {
210
+ const { attributes, listeners, setNodeRef, transform } = useDraggable({ id: 'box' });
211
+ const style = {
212
+ padding: 12,
213
+ marginBottom: 8,
214
+ background: '#e6f7ff',
215
+ cursor: 'grab',
216
+ transform: transform ? 'translate3d(' + transform.x + 'px,' + transform.y + 'px,0)' : undefined,
217
+ };
218
+ return React.createElement('div', { ref: setNodeRef, style, ...attributes, ...listeners }, 'Drag me');
219
+ }
220
+
221
+ function DropZone() {
222
+ const { setNodeRef, isOver } = useDroppable({ id: 'zone' });
223
+ return React.createElement(
224
+ 'div',
225
+ {
226
+ ref: setNodeRef,
227
+ style: { padding: 24, background: isOver ? '#b7eb8f' : '#f5f5f5', borderRadius: 8, minHeight: 80 },
228
+ },
229
+ 'Drop here',
230
+ );
231
+ }
232
+
233
+ function App() {
234
+ const sensors = useSensors(useSensor(PointerSensor));
235
+ function onDragEnd(e) {
236
+ if (e.over && e.over.id === 'zone') ctx.message.success('Dropped in zone');
237
+ }
238
+ return React.createElement(
239
+ DndContext,
240
+ { sensors, collisionDetection: closestCenter, onDragEnd },
241
+ React.createElement(
242
+ 'div',
243
+ { style: { maxWidth: 280 } },
244
+ React.createElement(DraggableBox),
245
+ React.createElement(DropZone),
246
+ ),
247
+ );
248
+ }
249
+
250
+ // 2. Render
251
+ ctx.render(<App />);
252
+ ```
253
+
254
+ This example relies only on `@dnd-kit/core` to trigger a notification when a Box is dropped into a specific area, demonstrating the simplest drag-and-drop interaction combining `ctx.importAsync` and React in RunJS.
255
+
256
+ ### dnd-kit Sortable List Example
257
+
258
+ Implements a vertical sortable list using dnd-kit's core, sortable, and utilities.
259
+
260
+ ```ts
261
+ // 1. Load React and dnd-kit related packages (?deps ensures same React instance)
262
+ const React = await ctx.importAsync('react@18.2.0');
263
+ const { createRoot } = await ctx.importAsync('react-dom@18.2.0/client');
264
+ const dndCore = await ctx.importAsync('@dnd-kit/core@6.3.1?deps=react@18.2.0,react-dom@18.2.0');
265
+ const dndSortable = await ctx.importAsync('@dnd-kit/sortable@10.0.0?deps=react@18.2.0,react-dom@18.2.0');
266
+ const dndUtils = await ctx.importAsync('@dnd-kit/utilities@3.2.2');
267
+
268
+ const { useState } = React;
269
+ const { DndContext, closestCenter, KeyboardSensor, PointerSensor, useSensor, useSensors } = dndCore;
270
+ const {
271
+ arrayMove,
272
+ SortableContext,
273
+ sortableKeyboardCoordinates,
274
+ verticalListSortingStrategy,
275
+ useSortable,
276
+ } = dndSortable;
277
+ const { CSS } = dndUtils;
278
+
279
+ // 2. SortableItem component (must be inside SortableContext)
280
+ function SortableItem(props) {
281
+ const { id, label } = props;
282
+ const { attributes, listeners, setNodeRef, transform, transition } = useSortable({ id });
283
+ const style = {
284
+ transform: CSS.Transform.toString(transform),
285
+ transition,
286
+ padding: '12px 16px',
287
+ marginBottom: 8,
288
+ background: '#f5f5f5',
289
+ borderRadius: 6,
290
+ cursor: 'grab',
291
+ };
292
+ return React.createElement('div', { ref: setNodeRef, style, ...attributes, ...listeners }, label);
293
+ }
294
+
295
+ // 3. App: DndContext + SortableContext + Drag end handler
296
+ const labels = { 1: 'First', 2: 'Second', 3: 'Third', 4: 'Fourth' };
297
+ function App() {
298
+ const [items, setItems] = useState([1, 2, 3, 4]);
299
+ const sensors = useSensors(
300
+ useSensor(PointerSensor),
301
+ useSensor(KeyboardSensor, { coordinateGetter: sortableKeyboardCoordinates }),
302
+ );
303
+
304
+ function handleDragEnd(event) {
305
+ const { active, over } = event;
306
+ if (over && active.id !== over.id) {
307
+ setItems((prev) => {
308
+ const oldIndex = prev.indexOf(active.id);
309
+ const newIndex = prev.indexOf(over.id);
310
+ return arrayMove(prev, oldIndex, newIndex);
311
+ });
312
+ ctx.message.success('List reordered');
313
+ }
314
+ }
315
+
316
+ return React.createElement(
317
+ DndContext,
318
+ {
319
+ sensors,
320
+ collisionDetection: closestCenter,
321
+ onDragEnd: handleDragEnd,
322
+ },
323
+ React.createElement(
324
+ SortableContext,
325
+ { items, strategy: verticalListSortingStrategy },
326
+ React.createElement(
327
+ 'div',
328
+ { style: { maxWidth: 320 } },
329
+ items.map((id) => React.createElement(SortableItem, { key: id, id, label: labels[id] })),
330
+ ),
331
+ ),
332
+ );
333
+ }
334
+
335
+ // 4. Create container and mount React
336
+ const rootEl = document.createElement('div');
337
+ ctx.render(rootEl);
338
+ createRoot(rootEl).render(React.createElement(App));
339
+ ```
340
+
341
+ This example uses `@dnd-kit/core`, `@dnd-kit/sortable`, and `@dnd-kit/utilities` to implement a sortable list that updates its order and displays a "List reordered" message after dragging.
342
+
343
+ ### react-big-calendar Example
344
+
345
+ Renders a calendar component supporting event display in the current block using `react-big-calendar` and `date-fns` for localization.
346
+
347
+ ```tsx
348
+ // 1. Load styles (ctx.importAsync uses ctx.loadCSS for .css files)
349
+ await ctx.importAsync('react-big-calendar@1.11.4/lib/css/react-big-calendar.css');
350
+
351
+ // 2. Load React, react-dom, react-big-calendar, date-fns, and locale (ensuring same React instance)
352
+ const React = await ctx.importAsync('react@18.2.0');
353
+ const { Calendar, dateFnsLocalizer } = await ctx.importAsync('react-big-calendar@1.11.4?deps=react@18.2.0,react-dom@18.2.0');
354
+ const { format, parse, startOfWeek, getDay } = await ctx.importAsync('date-fns@2.30.0');
355
+ const enUS = await ctx.importAsync('date-fns@2.30.0/locale/en-US.js');
356
+
357
+ const localizer = dateFnsLocalizer({
358
+ format,
359
+ parse,
360
+ startOfWeek,
361
+ getDay,
362
+ locales: { 'en-US': enUS },
363
+ });
364
+
365
+ const events = [
366
+ { title: 'All Day Event', start: new Date(2026, 0, 28), end: new Date(2026, 0, 28), allDay: true },
367
+ { title: 'Meeting', start: new Date(2026, 0, 29, 10, 0), end: new Date(2026, 0, 29, 11, 0) },
368
+ ];
369
+
370
+ // 3. Render React Calendar
371
+ ctx.render(
372
+ <Calendar
373
+ localizer={localizer}
374
+ events={events}
375
+ startAccessor="start"
376
+ endAccessor="end"
377
+ style={{ height: '80vh' }}
378
+ />
379
+ );
380
+ ```
381
+
382
+ ### frappe-gantt Example
383
+
384
+ Uses `frappe-gantt` to render a Gantt chart view showing task start/end times and progress.
385
+
386
+ ```ts
387
+ // 1. Dynamically load Gantt styles and constructor
388
+ // Depends on ESM_CDN_BASE_URL (default https://esm.sh), shorthand paths can be used
389
+ await ctx.importAsync('frappe-gantt@1.0.4/dist/frappe-gantt.css');
390
+ const Gantt = await ctx.importAsync('frappe-gantt@1.0.4');
391
+
392
+ // 2. Prepare task data
393
+ let tasks = [
394
+ {
395
+ id: '1',
396
+ name: 'Redesign website',
397
+ start: '2016-12-28',
398
+ end: '2016-12-31',
399
+ progress: 20,
400
+ },
401
+ {
402
+ id: '2',
403
+ name: 'Develop new feature',
404
+ start: '2017-01-01',
405
+ end: '2017-01-05',
406
+ progress: 40,
407
+ dependencies: '1',
408
+ },
409
+ {
410
+ id: '3',
411
+ name: 'QA & testing',
412
+ start: '2017-01-06',
413
+ end: '2017-01-10',
414
+ progress: 10,
415
+ dependencies: '2',
416
+ },
417
+ ];
418
+
419
+ // 3. Create container and render
420
+ const ganttEl = document.createElement('div');
421
+ ganttEl.id = 'gantt';
422
+ ganttEl.style.height = '400px';
423
+ ctx.render(ganttEl);
424
+
425
+ // 4. Initialize Gantt chart
426
+ let gantt = new Gantt('#gantt', tasks, {
427
+ view_mode: 'Day', // View granularity: 'Quarter Day' | 'Half Day' | 'Day' | 'Week' | 'Month'
428
+ language: 'en',
429
+ bar_height: 24,
430
+ padding: 18,
431
+ custom_popup_html(task) {
432
+ return `
433
+ <div class="details-container">
434
+ <h5>${task.name}</h5>
435
+ <p>Start: ${task._start.toISOString().slice(0, 10)}</p>
436
+ <p>End: ${task._end.toISOString().slice(0, 10)}</p>
437
+ <p>Progress: ${task.progress}%</p>
438
+ </div>
439
+ `;
440
+ },
441
+ });
442
+ ```
443
+
444
+ ### @asseinfo/react-kanban Example
445
+
446
+ Utilizes `@asseinfo/react-kanban` to render a basic Kanban board with columns like Backlog and Doing within a block.
447
+
448
+ ```ts
449
+ // 1. Load styles (ctx.importAsync directly loads .css)
450
+ await ctx.importAsync('@asseinfo/react-kanban@2.2.0/dist/styles.css');
451
+
452
+ // 2. Load React, react-dom, @asseinfo/react-kanban (?deps ensures same React instance)
453
+ const React = await ctx.importAsync('react@18.2.0');
454
+ const { default: Board } = await ctx.importAsync('@asseinfo/react-kanban@2.2.0?deps=react@18.2.0,react-dom@18.2.0');
455
+
456
+ const board = {
457
+ columns: [
458
+ {
459
+ id: 1,
460
+ title: 'Backlog',
461
+ cards: [
462
+ { id: 1, title: 'Add card', description: 'Add capability to add a card in a column' },
463
+ ],
464
+ },
465
+ {
466
+ id: 2,
467
+ title: 'Doing',
468
+ cards: [
469
+ { id: 2, title: 'Drag-n-drop support', description: 'Move a card between the columns' },
470
+ ],
471
+ },
472
+ ],
473
+ };
474
+
475
+ // 4. Mount the board
476
+ ctx.render(<Board initialBoard={board} />);
477
+ ```
478
+
479
+ ## Notes
480
+
481
+ - This feature depends on an external network or CDN. In internal network environments, **ESM_CDN_BASE_URL** must be configured to point to a self-hosted service.
482
+ - When a library provides both ESM and UMD, prefer `ctx.importAsync()` for better module semantics.
483
+ - For libraries depending on React, ensure you append `?deps=react@18.2.0,react-dom@18.2.0`. The version must match the React version used by the page, otherwise, an "Invalid hook call" error may occur.
484
+
485
+ ## Related
486
+
487
+ - [ctx.requireAsync()](./require-async.md): Load UMD/AMD or globally attached scripts, suitable for UMD libraries like ECharts and FullCalendar.
488
+ - [ctx.render()](./render.md): Render content into a container.
@@ -0,0 +1,74 @@
1
+ # ctx.initResource()
2
+
3
+ **Initializes** the resource for the current context. If `ctx.resource` does not already exist, it creates one of the specified type and binds it to the context; if it already exists, it is used directly. Afterward, it can be accessed via `ctx.resource`.
4
+
5
+ ## Use Cases
6
+
7
+ Generally used in **JSBlock** (independent block) scenarios. Most blocks, popups, and other components have `ctx.resource` pre-bound and do not require manual calls. JSBlock has no resource by default, so you must call `ctx.initResource(type)` before loading data via `ctx.resource`.
8
+
9
+ ## Type Definition
10
+
11
+ ```ts
12
+ initResource(
13
+ type: 'APIResource' | 'SingleRecordResource' | 'MultiRecordResource' | 'SQLResource'
14
+ ): FlowResource;
15
+ ```
16
+
17
+ | Parameter | Type | Description |
18
+ |-----------|------|-------------|
19
+ | `type` | `string` | Resource type: `'APIResource'`, `'SingleRecordResource'`, `'MultiRecordResource'`, `'SQLResource'` |
20
+
21
+ **Returns**: The resource instance in the current context (i.e., `ctx.resource`).
22
+
23
+ ## Difference from ctx.makeResource()
24
+
25
+ | Method | Behavior |
26
+ |--------|----------|
27
+ | `ctx.initResource(type)` | Creates and binds if `ctx.resource` does not exist; returns the existing one if it does. Ensures `ctx.resource` is available. |
28
+ | `ctx.makeResource(type)` | Only creates and returns a new instance, does **not** write to `ctx.resource`. Suitable for scenarios requiring multiple independent resources or temporary use. |
29
+
30
+ ## Examples
31
+
32
+ ### List Data (MultiRecordResource)
33
+
34
+ ```ts
35
+ ctx.initResource('MultiRecordResource');
36
+ ctx.resource.setResourceName('users');
37
+ await ctx.resource.refresh();
38
+ const rows = ctx.resource.getData();
39
+ ctx.render(<pre>{JSON.stringify(rows, null, 2)}</pre>);
40
+ ```
41
+
42
+ ### Single Record (SingleRecordResource)
43
+
44
+ ```ts
45
+ ctx.initResource('SingleRecordResource');
46
+ ctx.resource.setResourceName('users');
47
+ ctx.resource.setFilterByTk(1); // Specify primary key
48
+ await ctx.resource.refresh();
49
+ const record = ctx.resource.getData();
50
+ ```
51
+
52
+ ### Specify Data Source
53
+
54
+ ```ts
55
+ ctx.initResource('MultiRecordResource');
56
+ ctx.resource.setDataSourceKey('main');
57
+ ctx.resource.setResourceName('orders');
58
+ await ctx.resource.refresh();
59
+ ```
60
+
61
+ ## Notes
62
+
63
+ - In most block scenarios (Forms, Tables, Details, etc.) and popups, `ctx.resource` is already pre-bound by the runtime environment, so calling `ctx.initResource` is unnecessary.
64
+ - Manual initialization is only required in contexts like JSBlock where there is no default resource.
65
+ - After initialization, you must call `setResourceName(name)` to specify the collection, and then call `refresh()` to load the data.
66
+
67
+ ## Related
68
+
69
+ - [ctx.resource](./resource.md) — The resource instance in the current context
70
+ - [ctx.makeResource()](./make-resource.md) — Creates a new resource instance without binding it to `ctx.resource`
71
+ - [MultiRecordResource](../resource/multi-record-resource.md) — Multiple records/List
72
+ - [SingleRecordResource](../resource/single-record-resource.md) — Single record
73
+ - [APIResource](../resource/api-resource.md) — General API resource
74
+ - [SQLResource](../resource/sql-resource.md) — SQL query resource
@@ -0,0 +1,109 @@
1
+ # ctx.libs
2
+
3
+ `ctx.libs` is the unified namespace for built-in libraries in RunJS, containing commonly used libraries such as React, Ant Design, dayjs, and lodash. **No `import` or asynchronous loading is required**; they can be used directly via `ctx.libs.xxx`.
4
+
5
+ ## Use Cases
6
+
7
+ | Scenario | Description |
8
+ |------|------|
9
+ | **JSBlock / JSField / JSItem / JSColumn** | Use React + Ant Design to render UI, dayjs for date handling, and lodash for data processing. |
10
+ | **Formula / Calculation** | Use formula or math for Excel-like formulas and mathematical expression operations. |
11
+ | **Workflow / Linkage Rules** | Call utility libraries like lodash, dayjs, and formula in pure logic scenarios. |
12
+
13
+ ## Built-in Libraries Overview
14
+
15
+ | Property | Description | Documentation |
16
+ |------|------|------|
17
+ | `ctx.libs.React` | React core, used for JSX and Hooks | [React](https://react.dev/) |
18
+ | `ctx.libs.ReactDOM` | ReactDOM client API (including `createRoot`), used with React for rendering | [React DOM](https://react.dev/reference/react-dom) |
19
+ | `ctx.libs.antd` | Ant Design component library (Button, Card, Table, Form, Input, Modal, etc.) | [Ant Design](https://ant.design/components/overview/) |
20
+ | `ctx.libs.antdIcons` | Ant Design icon library (e.g., PlusOutlined, UserOutlined) | [@ant-design/icons](https://ant.design/components/icon/) |
21
+ | `ctx.libs.dayjs` | Date and time utility library | [dayjs](https://day.js.org/) |
22
+ | `ctx.libs.lodash` | Utility library (get, set, debounce, etc.) | [Lodash](https://lodash.com/docs/) |
23
+ | `ctx.libs.formula` | Excel-like formula function library (SUM, AVERAGE, IF, etc.) | [Formula.js](https://formulajs.info/functions/) |
24
+ | `ctx.libs.math` | Mathematical expression and calculation library | [Math.js](https://mathjs.org/docs/) |
25
+
26
+ ## Top-level Aliases
27
+
28
+ For compatibility with legacy code, some libraries are also exposed at the top level: `ctx.React`, `ctx.ReactDOM`, `ctx.antd`, and `ctx.dayjs`. **It is recommended to consistently use `ctx.libs.xxx`** for easier maintenance and documentation searching.
29
+
30
+ ## Lazy Loading
31
+
32
+ `lodash`, `formula`, and `math` use **lazy loading**: a dynamic import is triggered only when `ctx.libs.lodash` is accessed for the first time, and the cache is reused thereafter. `React`, `antd`, `dayjs`, and `antdIcons` are pre-configured by the context and are available immediately.
33
+
34
+ ## Examples
35
+
36
+ ### Rendering with React and Ant Design
37
+
38
+ ```tsx
39
+ const { Button, Card } = ctx.libs.antd;
40
+
41
+ ctx.render(
42
+ <Card title="Title">
43
+ <Button type="primary">Click</Button>
44
+ </Card>
45
+ );
46
+ ```
47
+
48
+ ### Using Hooks
49
+
50
+ ```tsx
51
+ const { React } = ctx.libs;
52
+ const { useState } = React;
53
+ const { Button } = ctx.libs.antd;
54
+
55
+ const App = () => {
56
+ const [count, setCount] = useState(0);
57
+ return <Button onClick={() => setCount((c) => c + 1)}>{count}</Button>;
58
+ };
59
+ ctx.render(<App />);
60
+ ```
61
+
62
+ ### Using Icons
63
+
64
+ ```tsx
65
+ const { Button } = ctx.libs.antd;
66
+ const { UserOutlined, HeartOutlined } = ctx.libs.antdIcons;
67
+
68
+ ctx.render(<Button icon={<UserOutlined />}>User</Button>);
69
+ ```
70
+
71
+ ### Date Processing with dayjs
72
+
73
+ ```ts
74
+ const now = ctx.libs.dayjs();
75
+ const formatted = now.format('YYYY-MM-DD HH:mm:ss');
76
+ ctx.message.info(formatted);
77
+ ```
78
+
79
+ ### Utility Functions with lodash
80
+
81
+ ```ts
82
+ const user = { profile: { name: 'Alice' } };
83
+ const name = ctx.libs.lodash.get(user, 'profile.name', 'Unknown');
84
+ ```
85
+
86
+ ### Formula Calculations
87
+
88
+ ```ts
89
+ const values = [1, 2, 3, 4];
90
+ const sum = ctx.libs.formula.SUM(values);
91
+ const avg = ctx.libs.formula.AVERAGE(values);
92
+ ```
93
+
94
+ ### Mathematical Expressions with math.js
95
+
96
+ ```ts
97
+ const result = ctx.libs.math.evaluate('2 + 3 * 4');
98
+ // result === 14
99
+ ```
100
+
101
+ ## Notes
102
+
103
+ - **Mixing with ctx.importAsync**: If an external React is loaded via `ctx.importAsync('react@19')`, JSX will use that instance. In this case, **do not** mix it with `ctx.libs.antd`. Ant Design must be loaded to match that React version (e.g., `ctx.importAsync('antd@5.x')`, `ctx.importAsync('@ant-design/icons@5.x')`).
104
+ - **Multiple React Instances**: If "Invalid hook call" occurs or the hook dispatcher is null, it is usually caused by multiple React instances. Before reading `ctx.libs.React` or calling Hooks, execute `await ctx.importAsync('react@version')` first to ensure the same React instance is shared with the page.
105
+
106
+ ## Related
107
+
108
+ - [ctx.importAsync()](./import-async.md) - Load external ESM modules on demand (e.g., specific versions of React, Vue)
109
+ - [ctx.render()](./render.md) - Render content to a container