@tailor-platform/sdk 2.0.0-next.1 → 2.0.0-next.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 (471) hide show
  1. package/CHANGELOG.md +869 -2
  2. package/README.md +9 -9
  3. package/agent-skills/{tailor-sdk → tailor}/SKILL.md +3 -1
  4. package/dist/aigateway-DR4Kwuik.mjs +9 -0
  5. package/dist/aigateway-DR4Kwuik.mjs.map +1 -0
  6. package/dist/application-DArFTTJ9.mjs +3 -0
  7. package/dist/{application-DqS1yBg3.mjs → application-miwiXtB4.mjs} +1892 -1968
  8. package/dist/application-miwiXtB4.mjs.map +1 -0
  9. package/dist/authconnection-CZvi9ANm.mjs +9 -0
  10. package/dist/authconnection-CZvi9ANm.mjs.map +1 -0
  11. package/dist/brand-Eo4pLXPJ.mjs.map +1 -1
  12. package/dist/cli/cache/bundle-cache.d.mts +2 -0
  13. package/dist/cli/cache/store.d.mts +1 -0
  14. package/dist/cli/cache/types.d.mts +1 -0
  15. package/dist/cli/commands/api/api-call.d.mts +19 -0
  16. package/dist/cli/commands/api/index.d.mts +4 -0
  17. package/dist/cli/commands/deploy/aigateway.d.mts +5 -0
  18. package/dist/cli/commands/deploy/application.d.mts +7 -0
  19. package/dist/cli/commands/deploy/apply-phases.d.mts +14 -0
  20. package/dist/cli/commands/deploy/auth.d.mts +5 -0
  21. package/dist/cli/commands/deploy/deploy.d.mts +34 -0
  22. package/dist/cli/commands/deploy/executor.d.mts +7 -0
  23. package/dist/cli/commands/deploy/function-registry-types.d.mts +12 -0
  24. package/dist/cli/commands/deploy/function-registry.d.mts +7 -0
  25. package/dist/cli/commands/deploy/idp.d.mts +5 -0
  26. package/dist/cli/commands/deploy/resolver.d.mts +5 -0
  27. package/dist/cli/commands/deploy/secret-manager.d.mts +5 -0
  28. package/dist/cli/commands/deploy/staticwebsite.d.mts +5 -0
  29. package/dist/cli/commands/deploy/tailordb/index.d.mts +9 -0
  30. package/dist/cli/commands/deploy/types.d.mts +3 -0
  31. package/dist/cli/commands/deploy/workflow-execution-policy.d.mts +3 -0
  32. package/dist/cli/commands/deploy/workflow.d.mts +4 -0
  33. package/dist/cli/commands/executor/get.d.mts +28 -0
  34. package/dist/cli/commands/executor/jobs.d.mts +122 -0
  35. package/dist/cli/commands/executor/list.d.mts +18 -0
  36. package/dist/cli/commands/executor/transform.d.mts +42 -0
  37. package/dist/cli/commands/executor/trigger.d.mts +40 -0
  38. package/dist/cli/commands/executor/webhook.d.mts +21 -0
  39. package/dist/cli/commands/function/get.d.mts +17 -0
  40. package/dist/cli/commands/function/list.d.mts +21 -0
  41. package/dist/cli/commands/function/transform.d.mts +12 -0
  42. package/dist/cli/commands/generate/options.d.mts +6 -0
  43. package/dist/cli/commands/generate/seed/bundler.d.mts +26 -0
  44. package/dist/cli/commands/generate/service.d.mts +15 -0
  45. package/dist/cli/commands/machineuser/list.d.mts +26 -0
  46. package/dist/cli/commands/machineuser/token.d.mts +21 -0
  47. package/dist/cli/commands/oauth2client/get.d.mts +17 -0
  48. package/dist/cli/commands/oauth2client/list.d.mts +19 -0
  49. package/dist/cli/commands/oauth2client/transform.d.mts +21 -0
  50. package/dist/cli/commands/organization/folder/create.d.mts +17 -0
  51. package/dist/cli/commands/organization/folder/delete.d.mts +15 -0
  52. package/dist/cli/commands/organization/folder/get.d.mts +16 -0
  53. package/dist/cli/commands/organization/folder/list.d.mts +21 -0
  54. package/dist/cli/commands/organization/folder/update.d.mts +17 -0
  55. package/dist/cli/commands/organization/get.d.mts +15 -0
  56. package/dist/cli/commands/organization/list.d.mts +14 -0
  57. package/dist/cli/commands/organization/transform.d.mts +29 -0
  58. package/dist/cli/commands/organization/tree.d.mts +24 -0
  59. package/dist/cli/commands/organization/update.d.mts +16 -0
  60. package/dist/cli/commands/remove.d.mts +15 -0
  61. package/dist/cli/commands/show.d.mts +39 -0
  62. package/dist/cli/commands/staticwebsite/deploy.d.mts +19 -0
  63. package/dist/cli/commands/tailordb/migrate/bundler.d.mts +29 -0
  64. package/dist/cli/commands/tailordb/migrate/config.d.mts +18 -0
  65. package/dist/cli/commands/tailordb/migrate/diff-calculator.d.mts +246 -0
  66. package/dist/cli/commands/tailordb/migrate/generate.d.mts +16 -0
  67. package/dist/cli/commands/tailordb/migrate/snapshot-types.d.mts +208 -0
  68. package/dist/cli/commands/tailordb/migrate/snapshot.d.mts +98 -0
  69. package/dist/cli/commands/tailordb/migrate/types.d.mts +7 -0
  70. package/dist/cli/commands/tailordb/truncate.d.mts +18 -0
  71. package/dist/cli/commands/workflow/executions.d.mts +74 -0
  72. package/dist/cli/commands/workflow/get.d.mts +30 -0
  73. package/dist/cli/commands/workflow/list.d.mts +18 -0
  74. package/dist/cli/commands/workflow/resume.d.mts +22 -0
  75. package/dist/cli/commands/workflow/start.d.mts +60 -0
  76. package/dist/cli/commands/workflow/status.d.mts +6 -0
  77. package/dist/cli/commands/workflow/transform.d.mts +34 -0
  78. package/dist/cli/commands/workflow/wait.d.mts +15 -0
  79. package/dist/cli/commands/workflow/waiter.d.mts +23 -0
  80. package/dist/cli/commands/workspace/app/health.d.mts +17 -0
  81. package/dist/cli/commands/workspace/app/list.d.mts +21 -0
  82. package/dist/cli/commands/workspace/app/transform.d.mts +20 -0
  83. package/dist/cli/commands/workspace/create.d.mts +27 -0
  84. package/dist/cli/commands/workspace/delete.d.mts +14 -0
  85. package/dist/cli/commands/workspace/get.d.mts +16 -0
  86. package/dist/cli/commands/workspace/list.d.mts +17 -0
  87. package/dist/cli/commands/workspace/restore.d.mts +14 -0
  88. package/dist/cli/commands/workspace/transform.d.mts +20 -0
  89. package/dist/cli/commands/workspace/user/invite.d.mts +21 -0
  90. package/dist/cli/commands/workspace/user/list.d.mts +21 -0
  91. package/dist/cli/commands/workspace/user/remove.d.mts +16 -0
  92. package/dist/cli/commands/workspace/user/transform.d.mts +9 -0
  93. package/dist/cli/commands/workspace/user/update.d.mts +21 -0
  94. package/dist/cli/index.mjs +12 -5481
  95. package/dist/cli/lib.d.mts +90 -21048
  96. package/dist/cli/lib.mjs +154 -12
  97. package/dist/cli/lib.mjs.map +1 -1
  98. package/dist/cli/main.d.mts +23 -0
  99. package/dist/cli/main.mjs +6583 -0
  100. package/dist/cli/main.mjs.map +1 -0
  101. package/dist/cli/query/index.d.mts +38 -0
  102. package/dist/cli/services/application.d.mts +12 -0
  103. package/dist/cli/services/auth/service.d.mts +3 -0
  104. package/dist/cli/services/executor/service.d.mts +1 -0
  105. package/dist/cli/services/http-adapter/bundler.d.mts +3 -0
  106. package/dist/cli/services/http-adapter/service.d.mts +2 -0
  107. package/dist/cli/services/resolver/service.d.mts +1 -0
  108. package/dist/cli/services/tailordb/service.d.mts +3 -0
  109. package/dist/cli/services/workflow/bundler.d.mts +2 -0
  110. package/dist/cli/services/workflow/service.d.mts +1 -0
  111. package/dist/cli/shared/args.d.mts +13 -0
  112. package/dist/cli/shared/client.d.mts +1273 -0
  113. package/dist/cli/shared/config-loader.d.mts +25 -0
  114. package/dist/cli/shared/context.d.mts +29 -0
  115. package/dist/cli/shared/error-json.d.mts +23 -0
  116. package/dist/cli/shared/readonly-guard.d.mts +25 -0
  117. package/dist/cli/shared/script-executor.d.mts +77 -0
  118. package/dist/cli/shared/seed-chunker.d.mts +45 -0
  119. package/dist/cli/shared/seed-context.d.mts +49 -0
  120. package/dist/cli/shared/tailordb-namespaces.d.mts +40 -0
  121. package/dist/cli/shared/type-generator.d.mts +19 -0
  122. package/dist/cli/shared/workspace-name.d.mts +1 -0
  123. package/dist/cli/ts-hook.d.mts +4 -0
  124. package/dist/cli/ts-hook.mjs +333 -0
  125. package/dist/completion/zsh-worker.zsh +1433 -1239
  126. package/dist/configure/config/index.d.mts +20 -0
  127. package/dist/configure/config/types.d.mts +111 -0
  128. package/dist/configure/index.d.mts +135 -8
  129. package/dist/configure/index.mjs +390 -36
  130. package/dist/configure/index.mjs.map +1 -1
  131. package/dist/configure/services/aigateway/index.d.mts +16 -0
  132. package/dist/configure/services/aigateway/types.d.mts +10 -0
  133. package/dist/configure/services/auth/index.d.mts +33 -0
  134. package/dist/configure/services/auth/types.d.mts +168 -0
  135. package/dist/configure/services/executor/executor.d.mts +70 -0
  136. package/dist/configure/services/executor/index.d.mts +9 -0
  137. package/dist/configure/services/executor/operation.d.mts +50 -0
  138. package/dist/configure/services/executor/trigger/event.d.mts +271 -0
  139. package/dist/configure/services/executor/trigger/index.d.mts +7 -0
  140. package/dist/configure/services/executor/trigger/schedule.d.mts +24 -0
  141. package/dist/configure/services/executor/trigger/webhook.d.mts +43 -0
  142. package/dist/configure/services/executor/types.d.mts +2 -0
  143. package/dist/configure/services/http-adapter/http-adapter.d.mts +124 -0
  144. package/dist/configure/services/http-adapter/index.d.mts +2 -0
  145. package/dist/configure/services/idp/index.d.mts +60 -0
  146. package/dist/configure/services/idp/permission.d.mts +64 -0
  147. package/dist/configure/services/idp/types.d.mts +23 -0
  148. package/dist/configure/services/index.d.mts +40 -0
  149. package/dist/configure/services/resolver/index.d.mts +6 -0
  150. package/dist/configure/services/resolver/permission.d.mts +64 -0
  151. package/dist/configure/services/resolver/resolver.d.mts +88 -0
  152. package/dist/configure/services/resolver/types.d.mts +5 -0
  153. package/dist/configure/services/secrets/index.d.mts +37 -0
  154. package/dist/configure/services/secrets/types.d.mts +10 -0
  155. package/dist/configure/services/staticwebsite/index.d.mts +18 -0
  156. package/dist/configure/services/staticwebsite/types.d.mts +10 -0
  157. package/dist/configure/services/tailordb/index.d.mts +4 -0
  158. package/dist/configure/services/tailordb/permission.d.mts +103 -0
  159. package/dist/configure/services/tailordb/schema.d.mts +486 -0
  160. package/dist/configure/services/tailordb/types.d.mts +198 -0
  161. package/dist/configure/services/workflow/execution-policy.d.mts +70 -0
  162. package/dist/configure/services/workflow/execution-policy.types.d.mts +103 -0
  163. package/dist/configure/services/workflow/index.d.mts +9 -0
  164. package/dist/configure/services/workflow/job.d.mts +83 -0
  165. package/dist/configure/services/workflow/types.d.mts +2 -0
  166. package/dist/configure/services/workflow/wait-point.d.mts +72 -0
  167. package/dist/configure/services/workflow/workflow.d.mts +56 -0
  168. package/dist/configure/types/aigateway-name.d.mts +12 -0
  169. package/dist/configure/types/connection-name.d.mts +12 -0
  170. package/dist/configure/types/field.d.mts +8 -0
  171. package/dist/configure/types/field.types.d.mts +70 -0
  172. package/dist/configure/types/idp-name.d.mts +12 -0
  173. package/dist/configure/types/index.d.mts +5 -0
  174. package/dist/configure/types/machine-user.d.mts +2 -0
  175. package/dist/configure/types/permission-operand.types.d.mts +20 -0
  176. package/dist/configure/types/type.d.mts +73 -0
  177. package/dist/{context-Bd266-ru.mjs → context-DYQVYWqZ.mjs} +4 -5
  178. package/dist/context-DYQVYWqZ.mjs.map +1 -0
  179. package/dist/{crashreport-BsjAkFWw.mjs → crashreport-B5LqCTfF.mjs} +10 -11
  180. package/dist/{crashreport-BsjAkFWw.mjs.map → crashreport-B5LqCTfF.mjs.map} +1 -1
  181. package/dist/{crashreport-pr6Rhvza.mjs → crashreport-eI7ty7ok.mjs} +1 -1
  182. package/dist/enum-constants-j9QBF0cB.mjs.map +1 -1
  183. package/dist/{errors-Dtf2WPaW.mjs → errors-D7583Zz7.mjs} +18 -2
  184. package/dist/errors-D7583Zz7.mjs.map +1 -0
  185. package/dist/{file-_oUZo76X.mjs → file-BUcmVIH2.mjs} +12 -22
  186. package/dist/file-BUcmVIH2.mjs.map +1 -0
  187. package/dist/{file-utils-DcyIPFQh.mjs → file-utils-yEiIS4nJ.mjs} +6 -6
  188. package/dist/file-utils-yEiIS4nJ.mjs.map +1 -0
  189. package/dist/{globals-Crz8o65k.mjs → globals-DQotNuwK.mjs} +33 -55
  190. package/dist/globals-DQotNuwK.mjs.map +1 -0
  191. package/dist/iconv-QWaZh0TT.mjs +38 -0
  192. package/dist/iconv-QWaZh0TT.mjs.map +1 -0
  193. package/dist/{idp-BDbK5gjm.mjs → idp-RA_swu-h.mjs} +12 -5
  194. package/dist/idp-RA_swu-h.mjs.map +1 -0
  195. package/dist/{interceptor-D-q1rvRl.mjs → interceptor-e33JtsC-.mjs} +2 -2
  196. package/dist/interceptor-e33JtsC-.mjs.map +1 -0
  197. package/dist/kysely/index.d.mts +5 -7
  198. package/dist/{kysely-type-DR8uzZTA.mjs → kysely-type-DqIRgDYR.mjs} +5 -4
  199. package/dist/kysely-type-DqIRgDYR.mjs.map +1 -0
  200. package/dist/logger-BtX0suGY.mjs +48 -0
  201. package/dist/logger-BtX0suGY.mjs.map +1 -0
  202. package/dist/logger-CXQq9YIp.mjs +317 -0
  203. package/dist/logger-CXQq9YIp.mjs.map +1 -0
  204. package/dist/parser/service/auth/index.d.mts +1 -0
  205. package/dist/parser/service/auth/schema.d.mts +3 -0
  206. package/dist/parser/service/http-adapter/index.d.mts +1 -0
  207. package/dist/parser/service/http-adapter/schema.d.mts +1 -0
  208. package/dist/parser/service/idp/types.d.mts +5 -0
  209. package/dist/parser/service/tailordb/type-source.d.mts +10 -0
  210. package/dist/parser/service/tailordb/types.d.mts +131 -0
  211. package/dist/platform-serialize-RoRtBS0v.mjs +46 -0
  212. package/dist/platform-serialize-RoRtBS0v.mjs.map +1 -0
  213. package/dist/plugin/builtin/enum-constants/index.d.mts +15 -1
  214. package/dist/plugin/builtin/file-utils/index.d.mts +15 -1
  215. package/dist/plugin/builtin/file-utils/index.mjs +1 -1
  216. package/dist/plugin/builtin/kysely-type/index.d.mts +15 -1
  217. package/dist/plugin/builtin/kysely-type/index.mjs +1 -1
  218. package/dist/plugin/builtin/seed/index.d.mts +46 -2
  219. package/dist/plugin/builtin/seed/index.mjs +1 -1
  220. package/dist/plugin/builtin/seed/seed-type-processor.d.mts +19 -0
  221. package/dist/plugin/builtin/seed/types.d.mts +2 -0
  222. package/dist/plugin/get-generated-type.d.mts +16 -0
  223. package/dist/plugin/index.d.mts +3 -117
  224. package/dist/plugin/index.mjs +1 -1
  225. package/dist/plugin/index.mjs.map +1 -1
  226. package/dist/plugin/manager.d.mts +2 -0
  227. package/dist/plugin/types.d.mts +242 -0
  228. package/dist/plugin/with-context.d.mts +101 -0
  229. package/dist/{runtime-n9NCkjee.mjs → register-ts-hook-BAHMwxfG.mjs} +7812 -4094
  230. package/dist/register-ts-hook-BAHMwxfG.mjs.map +1 -0
  231. package/dist/{registry-DdsYlL_P.mjs → registry-BIGVUrMB.mjs} +12 -9
  232. package/dist/registry-BIGVUrMB.mjs.map +1 -0
  233. package/dist/{repl-editor-DmGr9zMw.mjs → repl-editor-BCozyiNq.mjs} +6 -5
  234. package/dist/{repl-editor-DmGr9zMw.mjs.map → repl-editor-BCozyiNq.mjs.map} +1 -1
  235. package/dist/runtime/aigateway.d.mts +25 -0
  236. package/dist/runtime/aigateway.mjs +3 -0
  237. package/dist/runtime/authconnection.d.mts +21 -2
  238. package/dist/runtime/authconnection.mjs +2 -2
  239. package/dist/runtime/context.d.mts +54 -2
  240. package/dist/runtime/context.mjs +2 -2
  241. package/dist/runtime/field-parse.d.mts +10 -0
  242. package/dist/runtime/file.d.mts +170 -2
  243. package/dist/runtime/file.mjs +2 -2
  244. package/dist/runtime/globals.d.mts +38 -20
  245. package/dist/runtime/iconv.d.mts +73 -2
  246. package/dist/runtime/iconv.mjs +2 -2
  247. package/dist/runtime/idp.d.mts +129 -2
  248. package/dist/runtime/idp.mjs +2 -2
  249. package/dist/runtime/index.d.mts +48 -9
  250. package/dist/runtime/index.mjs +10 -8
  251. package/dist/runtime/logger.d.mts +98 -0
  252. package/dist/runtime/logger.mjs +3 -0
  253. package/dist/runtime/secretmanager.d.mts +41 -2
  254. package/dist/runtime/secretmanager.mjs +2 -2
  255. package/dist/runtime/types.d.mts +25 -0
  256. package/dist/runtime/workflow.d.mts +124 -2
  257. package/dist/runtime/workflow.mjs +2 -2
  258. package/dist/{schema-BhkpP5Hw.mjs → schema--xYWRGfe.mjs} +288 -229
  259. package/dist/schema--xYWRGfe.mjs.map +1 -0
  260. package/dist/{secret-file-DBqZhjFQ.mjs → secret-file-C3J4Gy8r.mjs} +2 -2
  261. package/dist/{secret-file-DBqZhjFQ.mjs.map → secret-file-C3J4Gy8r.mjs.map} +1 -1
  262. package/dist/secretmanager-CYlpffsz.mjs +13 -0
  263. package/dist/secretmanager-CYlpffsz.mjs.map +1 -0
  264. package/dist/secretmanager-IY4UvinW.mjs +131 -0
  265. package/dist/secretmanager-IY4UvinW.mjs.map +1 -0
  266. package/dist/seed/index.d.mts +4 -4
  267. package/dist/seed-LUVr7jHL.mjs +444 -0
  268. package/dist/seed-LUVr7jHL.mjs.map +1 -0
  269. package/dist/{service-DU1mVzri.mjs → service-B5WynBHQ.mjs} +3 -3
  270. package/dist/{service-DU1mVzri.mjs.map → service-B5WynBHQ.mjs.map} +1 -1
  271. package/dist/service-BNtPsK9Q.mjs +837 -0
  272. package/dist/service-BNtPsK9Q.mjs.map +1 -0
  273. package/dist/service-D5jn05ZI.mjs +3 -0
  274. package/dist/service_pb-BwZRiNug.mjs +167 -0
  275. package/dist/service_pb-BwZRiNug.mjs.map +1 -0
  276. package/dist/service_pb-wRkxUta6.mjs +3 -0
  277. package/dist/tailor-proto/src/tailor/v1/aigateway_pb.d.mts +203 -0
  278. package/dist/tailor-proto/src/tailor/v1/aigateway_resource_pb.d.mts +57 -0
  279. package/dist/tailor-proto/src/tailor/v1/application_pb.d.mts +315 -0
  280. package/dist/tailor-proto/src/tailor/v1/application_resource_pb.d.mts +160 -0
  281. package/dist/tailor-proto/src/tailor/v1/auth_pb.d.mts +2069 -0
  282. package/dist/tailor-proto/src/tailor/v1/auth_resource_pb.d.mts +865 -0
  283. package/dist/tailor-proto/src/tailor/v1/events_pb.d.mts +111 -0
  284. package/dist/tailor-proto/src/tailor/v1/events_resource_pb.d.mts +68 -0
  285. package/dist/tailor-proto/src/tailor/v1/executor_pb.d.mts +438 -0
  286. package/dist/tailor-proto/src/tailor/v1/executor_resource_pb.d.mts +563 -0
  287. package/dist/tailor-proto/src/tailor/v1/function_pb.d.mts +144 -0
  288. package/dist/tailor-proto/src/tailor/v1/function_registry_pb.d.mts +450 -0
  289. package/dist/tailor-proto/src/tailor/v1/function_resource_pb.d.mts +191 -0
  290. package/dist/tailor-proto/src/tailor/v1/http_adapter_resource_pb.d.mts +49 -0
  291. package/dist/tailor-proto/src/tailor/v1/idp_pb.d.mts +406 -0
  292. package/dist/tailor-proto/src/tailor/v1/idp_resource_pb.d.mts +429 -0
  293. package/dist/tailor-proto/src/tailor/v1/metadata_pb.d.mts +72 -0
  294. package/dist/tailor-proto/src/tailor/v1/metadata_resource_pb.d.mts +16 -0
  295. package/dist/tailor-proto/src/tailor/v1/meter_pb.d.mts +308 -0
  296. package/dist/tailor-proto/src/tailor/v1/pipeline_pb.d.mts +590 -0
  297. package/dist/tailor-proto/src/tailor/v1/pipeline_resource_pb.d.mts +329 -0
  298. package/dist/tailor-proto/src/tailor/v1/resource_pb.d.mts +112 -0
  299. package/dist/tailor-proto/src/tailor/v1/secret_manager_pb.d.mts +345 -0
  300. package/dist/tailor-proto/src/tailor/v1/secret_manager_resource_pb.d.mts +53 -0
  301. package/dist/tailor-proto/src/tailor/v1/service_pb.d.mts +3575 -0
  302. package/dist/tailor-proto/src/tailor/v1/stateflow_pb.d.mts +186 -0
  303. package/dist/tailor-proto/src/tailor/v1/stateflow_resource_pb.d.mts +28 -0
  304. package/dist/tailor-proto/src/tailor/v1/staticwebsite_pb.d.mts +428 -0
  305. package/dist/tailor-proto/src/tailor/v1/staticwebsite_resource_pb.d.mts +89 -0
  306. package/dist/tailor-proto/src/tailor/v1/tailordb_pb.d.mts +683 -0
  307. package/dist/tailor-proto/src/tailor/v1/tailordb_resource_pb.d.mts +796 -0
  308. package/dist/tailor-proto/src/tailor/v1/telemetryrouter_pb.d.mts +329 -0
  309. package/dist/tailor-proto/src/tailor/v1/telemetryrouter_resource_pb.d.mts +182 -0
  310. package/dist/tailor-proto/src/tailor/v1/workflow_pb.d.mts +861 -0
  311. package/dist/tailor-proto/src/tailor/v1/workflow_resource_pb.d.mts +309 -0
  312. package/dist/tailor-proto/src/tailor/v1/workspace_pb.d.mts +2014 -0
  313. package/dist/tailor-proto/src/tailor/v1/workspace_resource_pb.d.mts +482 -0
  314. package/dist/{telemetry-CdqJEzkj.mjs → telemetry-BRVdwh14.mjs} +3 -3
  315. package/dist/telemetry-BRVdwh14.mjs.map +1 -0
  316. package/dist/telemetry-CkbkeJxl.mjs +3 -0
  317. package/dist/test-env-key-D7UkZp99.mjs +75 -0
  318. package/dist/test-env-key-D7UkZp99.mjs.map +1 -0
  319. package/dist/types/aigateway.generated.d.mts +12 -0
  320. package/dist/types/app-config.generated.d.mts +4 -0
  321. package/dist/types/auth-connection.generated.d.mts +33 -0
  322. package/dist/types/auth.generated.d.mts +188 -0
  323. package/dist/types/executor.generated.d.mts +209 -0
  324. package/dist/types/helpers.d.mts +40 -0
  325. package/dist/types/http-adapter.generated.d.mts +28 -0
  326. package/dist/types/idp.generated.d.mts +626 -0
  327. package/dist/types/resolver.generated.d.mts +82 -0
  328. package/dist/types/secrets.generated.d.mts +14 -0
  329. package/dist/types/staticwebsite.generated.d.mts +14 -0
  330. package/dist/types/tailordb.generated.d.mts +468 -0
  331. package/dist/types/workflow.generated.d.mts +17 -0
  332. package/dist/user-agent-Bgsszb5I.mjs +28 -0
  333. package/dist/user-agent-Bgsszb5I.mjs.map +1 -0
  334. package/dist/utils/test/index.d.mts +6 -100
  335. package/dist/utils/test/index.mjs +60 -39
  336. package/dist/utils/test/index.mjs.map +1 -1
  337. package/dist/utils/test/mock.d.mts +86 -0
  338. package/dist/vitest/environment.d.mts +1 -2
  339. package/dist/vitest/environment.mjs +2 -2
  340. package/dist/vitest/environment.mjs.map +1 -1
  341. package/dist/vitest/index.d.mts +15 -429
  342. package/dist/vitest/index.mjs +1240 -31
  343. package/dist/vitest/index.mjs.map +1 -1
  344. package/dist/vitest/mock-kysely.d.mts +61 -0
  345. package/dist/vitest/mock.d.mts +10 -0
  346. package/dist/vitest/mocks/aigateway.d.mts +40 -0
  347. package/dist/vitest/mocks/authconnection.d.mts +38 -0
  348. package/dist/vitest/mocks/file.d.mts +58 -0
  349. package/dist/vitest/mocks/iconv.d.mts +51 -0
  350. package/dist/vitest/mocks/idp.d.mts +60 -0
  351. package/dist/vitest/mocks/logger.d.mts +45 -0
  352. package/dist/vitest/mocks/secretmanager.d.mts +44 -0
  353. package/dist/vitest/mocks/tailordb.d.mts +115 -0
  354. package/dist/vitest/mocks/workflow.d.mts +157 -0
  355. package/dist/vitest/setup.d.mts +1 -2
  356. package/dist/vitest/setup.mjs +2 -2
  357. package/dist/vitest/workflow-local.d.mts +41 -0
  358. package/dist/workflow-CsaQ9qK-.mjs +42 -0
  359. package/dist/workflow-CsaQ9qK-.mjs.map +1 -0
  360. package/dist/{client-z_oHGVNy.mjs → workspace_resource_pb-UGK1SSn_.mjs} +55 -619
  361. package/dist/workspace_resource_pb-UGK1SSn_.mjs.map +1 -0
  362. package/docs/cli/application.md +150 -250
  363. package/docs/cli/auth.md +51 -295
  364. package/docs/cli/completion.md +1 -25
  365. package/docs/cli/crashreport.md +3 -61
  366. package/docs/cli/executor.md +72 -183
  367. package/docs/cli/function.md +16 -132
  368. package/docs/cli/organization.md +11 -221
  369. package/docs/cli/plugin.md +29 -0
  370. package/docs/cli/query.md +2 -22
  371. package/docs/cli/secret.md +71 -251
  372. package/docs/cli/setup.md +138 -40
  373. package/docs/cli/skills.md +50 -39
  374. package/docs/cli/staticwebsite.md +32 -180
  375. package/docs/cli/tailordb.md +71 -427
  376. package/docs/cli/upgrade.md +2 -22
  377. package/docs/cli/user.md +78 -247
  378. package/docs/cli/workflow.md +150 -172
  379. package/docs/cli/workspace.md +167 -538
  380. package/docs/cli-reference.md +213 -96
  381. package/docs/configuration.md +40 -6
  382. package/docs/github-actions.md +72 -24
  383. package/docs/migration/v2.md +1316 -0
  384. package/docs/multi-environment.md +29 -7
  385. package/docs/plugin/custom.md +4 -4
  386. package/docs/plugin/index.md +8 -8
  387. package/docs/quickstart.md +8 -7
  388. package/docs/runtime.md +18 -9
  389. package/docs/services/aigateway.md +20 -2
  390. package/docs/services/auth.md +51 -59
  391. package/docs/services/executor.md +8 -3
  392. package/docs/services/http-adapter.md +16 -1
  393. package/docs/services/idp.md +55 -2
  394. package/docs/services/resolver.md +62 -8
  395. package/docs/services/secret.md +11 -11
  396. package/docs/services/staticwebsite.md +8 -2
  397. package/docs/services/tailordb-migration.md +43 -28
  398. package/docs/services/tailordb.md +200 -99
  399. package/docs/services/workflow.md +133 -55
  400. package/docs/testing.md +244 -143
  401. package/package.json +59 -46
  402. package/postinstall.mjs +4 -6
  403. package/dist/application-DB2r36Et.mjs +0 -3
  404. package/dist/application-DqS1yBg3.mjs.map +0 -1
  405. package/dist/authconnection-D2MhtTN5.mjs +0 -15
  406. package/dist/authconnection-D2MhtTN5.mjs.map +0 -1
  407. package/dist/authconnection-DvUQAjQS.d.mts +0 -39
  408. package/dist/cli/erd-viewer-assets/app.js +0 -1181
  409. package/dist/cli/erd-viewer-assets/index.html +0 -73
  410. package/dist/cli/erd-viewer-assets/serve.json +0 -13
  411. package/dist/cli/erd-viewer-assets/styles.css +0 -789
  412. package/dist/cli/index.d.mts +0 -5
  413. package/dist/cli/index.mjs.map +0 -1
  414. package/dist/client-Dbohmtkv.mjs +0 -3
  415. package/dist/client-z_oHGVNy.mjs.map +0 -1
  416. package/dist/context-Bd266-ru.mjs.map +0 -1
  417. package/dist/context-BuuIb8CC.d.mts +0 -68
  418. package/dist/errors-Dtf2WPaW.mjs.map +0 -1
  419. package/dist/field-DOsJCPFa.mjs +0 -22
  420. package/dist/field-DOsJCPFa.mjs.map +0 -1
  421. package/dist/file-BB8Vs9O_.d.mts +0 -250
  422. package/dist/file-_oUZo76X.mjs.map +0 -1
  423. package/dist/file-utils-DcyIPFQh.mjs.map +0 -1
  424. package/dist/globals-Crz8o65k.mjs.map +0 -1
  425. package/dist/http-adapter.generated-WgMnb7Sb.d.mts +0 -580
  426. package/dist/iconv-Co-TOPuH.d.mts +0 -122
  427. package/dist/iconv-D2vi8G36.mjs +0 -63
  428. package/dist/iconv-D2vi8G36.mjs.map +0 -1
  429. package/dist/idp-BDbK5gjm.mjs.map +0 -1
  430. package/dist/idp-DrhVrLmV.d.mts +0 -160
  431. package/dist/index-5vPyRu1y.d.mts +0 -18
  432. package/dist/index-B7AKc18V.d.mts +0 -47
  433. package/dist/index-BlpzXncY.d.mts +0 -1016
  434. package/dist/index-CK7u9isy.d.mts +0 -46
  435. package/dist/index-CNYe5lnW.d.mts +0 -18
  436. package/dist/index-DjUdWlzf.d.mts +0 -18
  437. package/dist/index-ZePLwxw7.d.mts +0 -208
  438. package/dist/interceptor-D-q1rvRl.mjs.map +0 -1
  439. package/dist/job-fuc3j1Ma.mjs +0 -53
  440. package/dist/job-fuc3j1Ma.mjs.map +0 -1
  441. package/dist/kysely-type-DR8uzZTA.mjs.map +0 -1
  442. package/dist/logger-CxF-Ex5d.mjs +0 -220
  443. package/dist/logger-CxF-Ex5d.mjs.map +0 -1
  444. package/dist/mock-BjFj5o1I.mjs +0 -804
  445. package/dist/mock-BjFj5o1I.mjs.map +0 -1
  446. package/dist/registry-DdsYlL_P.mjs.map +0 -1
  447. package/dist/rolldown-runtime-DXywRVcq.mjs +0 -20
  448. package/dist/runtime-n9NCkjee.mjs.map +0 -1
  449. package/dist/schema-BhkpP5Hw.mjs.map +0 -1
  450. package/dist/secretmanager-B3n4KHfm.d.mts +0 -55
  451. package/dist/secretmanager-BVxw3ih_.mjs +0 -24
  452. package/dist/secretmanager-BVxw3ih_.mjs.map +0 -1
  453. package/dist/seed-jf3008-h.mjs +0 -1160
  454. package/dist/seed-jf3008-h.mjs.map +0 -1
  455. package/dist/service-CCL8ruDf.mjs +0 -459
  456. package/dist/service-CCL8ruDf.mjs.map +0 -1
  457. package/dist/service-D6yonf2I.mjs +0 -3
  458. package/dist/telemetry-CdqJEzkj.mjs.map +0 -1
  459. package/dist/telemetry-ClwW5ohF.mjs +0 -3
  460. package/dist/test-env-key-D9kM6ETE.mjs +0 -49
  461. package/dist/test-env-key-D9kM6ETE.mjs.map +0 -1
  462. package/dist/types-B2RpYyA_.mjs +0 -371
  463. package/dist/types-B2RpYyA_.mjs.map +0 -1
  464. package/dist/types-ClhIrW_C.mjs +0 -4
  465. package/dist/types-DCUhgpyI.d.mts +0 -784
  466. package/dist/types-DhO_VEZd.d.mts +0 -574
  467. package/dist/types-DwDgacni.d.mts +0 -338
  468. package/dist/workflow-BbKvGLQg.d.mts +0 -96
  469. package/dist/workflow-DgemCAz3.mjs +0 -38
  470. package/dist/workflow-DgemCAz3.mjs.map +0 -1
  471. package/dist/workflow.generated-DtQwEo-x.d.mts +0 -671
@@ -1,18 +1,199 @@
1
- import { t as t$1 } from "../types-B2RpYyA_.mjs";
1
+ import { i as parseInternal, n as mapAllowedValues, t as db } from "../schema--xYWRGfe.mjs";
2
2
  import { t as brandValue } from "../brand-Eo4pLXPJ.mjs";
3
- import { t as db } from "../schema-BhkpP5Hw.mjs";
4
- import { r as dispatchTriggerWorkflow } from "../registry-DdsYlL_P.mjs";
5
- import { t as WORKFLOW_TEST_ENV_KEY } from "../test-env-key-D9kM6ETE.mjs";
6
- import { t as createWorkflowJob } from "../job-fuc3j1Ma.mjs";
3
+ import { a as registerJob, n as dispatchStartJob, r as dispatchStartWorkflow } from "../registry-BIGVUrMB.mjs";
4
+ import { i as withWorkflowTestInvoker } from "../test-env-key-D7UkZp99.mjs";
7
5
 
8
- //#region src/configure/user.ts
9
- /** Represents an unauthenticated user in the Tailor platform. */
10
- const unauthenticatedTailorUser = {
11
- id: "00000000-0000-0000-0000-000000000000",
12
- type: "",
13
- workspaceId: "00000000-0000-0000-0000-000000000000",
14
- attributes: null,
15
- attributeList: []
6
+ //#region src/configure/types/type.ts
7
+ function createTailorField(type, options, fields, values, metadata) {
8
+ const _metadata = metadata ? {
9
+ ...metadata,
10
+ ...metadata.allowedValues && { allowedValues: metadata.allowedValues.map((v) => ({ ...v })) },
11
+ ...metadata.validate && { validate: metadata.validate.map((v) => Array.isArray(v) ? [...v] : v) }
12
+ } : { required: true };
13
+ if (!metadata) {
14
+ if (options) {
15
+ if (options.optional === true) _metadata.required = false;
16
+ if (options.array === true) _metadata.array = true;
17
+ }
18
+ if (values) _metadata.allowedValues = mapAllowedValues(values);
19
+ }
20
+ function parseInternal$1(args) {
21
+ return parseInternal({
22
+ ...args,
23
+ field
24
+ });
25
+ }
26
+ /**
27
+ * Clone the field and apply metadata updates to the clone.
28
+ * The original instance is never mutated, so a field shared across places
29
+ * cannot leak metadata between them.
30
+ * @param metadataUpdates - Metadata properties to overwrite on the clone
31
+ * @returns A new field with the updated metadata
32
+ */
33
+ function cloneWith(metadataUpdates) {
34
+ const cloned = field.clone();
35
+ Object.assign(cloned._metadata, metadataUpdates);
36
+ return cloned;
37
+ }
38
+ const field = {
39
+ type,
40
+ fields: fields ?? {},
41
+ _defined: void 0,
42
+ _output: void 0,
43
+ _metadata,
44
+ get metadata() {
45
+ return { ...this._metadata };
46
+ },
47
+ description(description) {
48
+ return cloneWith({ description });
49
+ },
50
+ typeName(typeName) {
51
+ return cloneWith({ typeName });
52
+ },
53
+ validate(...validateInputs) {
54
+ return cloneWith({ validate: validateInputs });
55
+ },
56
+ parse(args) {
57
+ return parseInternal$1({
58
+ value: args.value,
59
+ data: args.data,
60
+ invoker: args.invoker,
61
+ pathArray: []
62
+ });
63
+ },
64
+ clone() {
65
+ let clonedFields = fields;
66
+ if (fields) {
67
+ const cloned = {};
68
+ for (const [key, nestedField] of Object.entries(fields)) cloned[key] = nestedField.clone();
69
+ clonedFields = cloned;
70
+ }
71
+ return createTailorField(type, options, clonedFields, values, this._metadata);
72
+ }
73
+ };
74
+ return field;
75
+ }
76
+ /**
77
+ * Create a UUID field for resolver input/output.
78
+ * @param options - Field configuration options
79
+ * @returns A UUID field
80
+ * @example t.uuid()
81
+ */
82
+ function uuid(options) {
83
+ return createTailorField("uuid", options);
84
+ }
85
+ /**
86
+ * Create a string field for resolver input/output.
87
+ * @param options - Field configuration options
88
+ * @returns A string field
89
+ * @example t.string()
90
+ * @example t.string({ optional: true })
91
+ * @example t.string({ array: true })
92
+ */
93
+ function string(options) {
94
+ return createTailorField("string", options);
95
+ }
96
+ /**
97
+ * Create a boolean field for resolver input/output.
98
+ * @param options - Field configuration options
99
+ * @returns A boolean field
100
+ * @example t.bool()
101
+ */
102
+ function bool(options) {
103
+ return createTailorField("boolean", options);
104
+ }
105
+ /**
106
+ * Create an integer field for resolver input/output.
107
+ * @param options - Field configuration options
108
+ * @returns An integer field
109
+ * @example t.int()
110
+ */
111
+ function int(options) {
112
+ return createTailorField("integer", options);
113
+ }
114
+ /**
115
+ * Create a float field for resolver input/output.
116
+ * @param options - Field configuration options
117
+ * @returns A float field
118
+ * @example t.float()
119
+ */
120
+ function float(options) {
121
+ return createTailorField("float", options);
122
+ }
123
+ /**
124
+ * Create a decimal field for resolver input/output (stored as string for precision).
125
+ * @param options - Field configuration options
126
+ * @returns A decimal field
127
+ * @example t.decimal()
128
+ * @example t.decimal({ optional: true })
129
+ */
130
+ function decimal(options) {
131
+ return createTailorField("decimal", options);
132
+ }
133
+ /**
134
+ * Create a date field for resolver input/output.
135
+ * @param options - Field configuration options
136
+ * @returns A date field
137
+ * @example t.date()
138
+ */
139
+ function date(options) {
140
+ return createTailorField("date", options);
141
+ }
142
+ /**
143
+ * Create a datetime field for resolver input/output.
144
+ * @param options - Field configuration options
145
+ * @returns A datetime field
146
+ * @example t.datetime()
147
+ */
148
+ function datetime(options) {
149
+ return createTailorField("datetime", options);
150
+ }
151
+ /**
152
+ * Create a time field for resolver input/output.
153
+ * @param options - Field configuration options
154
+ * @returns A time field
155
+ * @example t.time()
156
+ */
157
+ function time(options) {
158
+ return createTailorField("time", options);
159
+ }
160
+ /**
161
+ * Create an enum field for resolver input/output.
162
+ * @param values - Array of allowed string values
163
+ * @param options - Field configuration options
164
+ * @returns An enum field
165
+ * @example t.enum(["active", "inactive"])
166
+ */
167
+ function _enum(values, options) {
168
+ return createTailorField("enum", options, void 0, values);
169
+ }
170
+ /**
171
+ * Create a nested object field for resolver input/output.
172
+ * @param fields - Record of field definitions
173
+ * @param options - Field options (optional, array)
174
+ * @returns A nested object field
175
+ * @example
176
+ * // Single object:
177
+ * output: t.object({ name: t.string(), email: t.string() })
178
+ * @example
179
+ * // Array of objects:
180
+ * items: t.object({ name: t.string() }, { array: true })
181
+ */
182
+ function object(fields, options) {
183
+ return createTailorField("nested", options, fields);
184
+ }
185
+ const t$1 = {
186
+ uuid,
187
+ string,
188
+ bool,
189
+ int,
190
+ float,
191
+ decimal,
192
+ date,
193
+ datetime,
194
+ time,
195
+ enum: _enum,
196
+ object
16
197
  };
17
198
 
18
199
  //#endregion
@@ -21,10 +202,7 @@ const unauthenticatedTailorUser = {
21
202
  function defineAuth(name, config) {
22
203
  return {
23
204
  ...config,
24
- name,
25
- getConnectionToken(connectionName) {
26
- return tailor.authconnection.getConnectionToken(connectionName);
27
- }
205
+ name
28
206
  };
29
207
  }
30
208
 
@@ -74,7 +252,7 @@ const unsafeAllowAllGqlPermission = [{
74
252
  * Create a resolver definition for the Tailor SDK.
75
253
  *
76
254
  * The `body` function receives a context with `input` (typed from `config.input`),
77
- * `user`, `invoker` (reflects `authInvoker` delegation), and `env`.
255
+ * `caller`, `invoker` (reflects configured machine-user delegation), and `env`.
78
256
  * The return value of `body` must match the `output` type.
79
257
  *
80
258
  * `output` accepts either a single TailorField (e.g. `t.string()`) or a
@@ -84,6 +262,14 @@ const unsafeAllowAllGqlPermission = [{
84
262
  * If not specified, this is automatically set to true when an executor uses this resolver
85
263
  * with `resolverExecutedTrigger`. If explicitly set to false while an executor uses this
86
264
  * resolver, an error will be thrown during apply.
265
+ *
266
+ * `permission` declares the resolver's access requirement, checked against `context.user` (the
267
+ * original caller, unaffected by `authInvoker`) before `body` runs. Omitted (default):
268
+ * unchanged, anonymous callers can reach the resolver. `"allowAnonymous"`: explicitly documents
269
+ * that anonymous callers are allowed. An array of `{ conditions, permit }` policies (in the same
270
+ * style as TailorDB's `.permission()`) rejects non-matching callers: at least one `permit: true`
271
+ * policy is required (denied unless it matches), and a matching `permit: false` policy always
272
+ * overrides that grant.
87
273
  * @template Input
88
274
  * @template Output
89
275
  * @param config - Resolver configuration
@@ -94,10 +280,11 @@ const unsafeAllowAllGqlPermission = [{
94
280
  * export default createResolver({
95
281
  * name: "getUser",
96
282
  * operation: "query",
283
+ * permission: [{ conditions: [[{ user: "_loggedIn" }, "=", true]], permit: true }],
97
284
  * input: {
98
285
  * id: t.string(),
99
286
  * },
100
- * body: async ({ input, user }) => {
287
+ * body: async ({ input, caller }) => {
101
288
  * const db = getDB("tailordb");
102
289
  * const result = await db.selectFrom("User").selectAll().where("id", "=", input.id).executeTakeFirst();
103
290
  * return { name: result?.name ?? "", email: result?.email ?? "" };
@@ -364,6 +551,165 @@ function incomingWebhookTrigger(options) {
364
551
  };
365
552
  }
366
553
 
554
+ //#endregion
555
+ //#region src/configure/services/workflow/execution-policy.ts
556
+ const EXECUTION_POLICY_EXACT_KEY_REGEX = /^[a-z0-9][a-z0-9_:.-]{0,62}[a-z0-9]$/;
557
+ function createExecutionPolicyInstance(initialName, initialKey, concurrencyPolicy, matchType, separator, allowNameSetter, allowKeySetter) {
558
+ const isPrefix = matchType === "prefix";
559
+ const raw = {
560
+ name: initialName,
561
+ key: initialKey,
562
+ matchType,
563
+ ...concurrencyPolicy && { concurrencyPolicy },
564
+ ...isPrefix && { keyFor: (suffix) => {
565
+ const key = `${raw.key}${separator}${suffix}`;
566
+ if (!EXECUTION_POLICY_EXACT_KEY_REGEX.test(key)) throw new Error(`Invalid execution policy key "${key}" built by keyFor("${suffix}"): must match [a-z0-9_:.-] (2-64 chars; must start and end with [a-z0-9]).`);
567
+ return key;
568
+ } }
569
+ };
570
+ return {
571
+ instance: brandValue(raw, "execution-policy"),
572
+ setName: allowNameSetter ? (n) => {
573
+ raw.name = n;
574
+ } : void 0,
575
+ setKey: allowKeySetter ? (k) => {
576
+ raw.key = k;
577
+ } : void 0
578
+ };
579
+ }
580
+ /**
581
+ * Define a single workflow job function execution policy.
582
+ *
583
+ * Use this when declaring a policy outside the
584
+ * {@link defineWorkflowExecutionPolicies} builder — for example, when the
585
+ * runtime key prefix needs to differ from the corresponding workspace-unique
586
+ * name.
587
+ *
588
+ * When `matchType: "prefix"` is set, the returned instance has `keyFor(suffix)`
589
+ * instead of a directly-usable `key` (see {@link ExecutionPolicyWildcardInstance}).
590
+ * @param name - Workspace-unique name. Must match `^[a-z0-9][a-z0-9-]{1,61}[a-z0-9]$`.
591
+ * @param def - Optional overrides for `key` (defaults to `name`), `matchType`, `separator` (the `keyFor` join character, defaults to `.`), and concurrency
592
+ * @returns An execution policy instance
593
+ * @example
594
+ * export const perTenant = defineWorkflowExecutionPolicy("tenant-api", {
595
+ * matchType: "prefix",
596
+ * concurrencyPolicy: { maxConcurrentExecutions: 3 },
597
+ * });
598
+ *
599
+ * perTenant.keyFor(tenantId); // "tenant-api.<tenantId>"
600
+ */
601
+ /* @__NO_SIDE_EFFECTS__ */
602
+ function defineWorkflowExecutionPolicy(name, def) {
603
+ return createExecutionPolicyInstance(name, def?.key ?? name, def?.concurrencyPolicy, def?.matchType ?? "exact", def?.separator ?? ".", false, false).instance;
604
+ }
605
+ /**
606
+ * Define a group of workflow job function execution policies. Property names
607
+ * become the workspace-unique `name` and default `key` verbatim, matching the
608
+ * mental model of {@link defineWaitPoints}. Provide `name` / `key` explicitly
609
+ * to override the property-name default (for example, when the property name
610
+ * is not valid for the execution policy grammar or when the runtime key
611
+ * prefix needs to differ).
612
+ *
613
+ * When `matchType: "prefix"` is set, the returned instance has `keyFor(suffix)`
614
+ * instead of a directly-usable `key` (see {@link ExecutionPolicyWildcardInstance}).
615
+ * `matchType` can be combined with an explicit `key`, or left to apply to
616
+ * the property-name-derived prefix.
617
+ *
618
+ * The return type mirrors the builder's return type so JSDoc on each property
619
+ * is preserved in IDE autocompletion.
620
+ * @param builder - Callback that receives a `define` factory and returns a record of policies
621
+ * @param options - Group-wide options; `separator` overrides the `.` `keyFor` uses to join the prefix and suffix for every prefix policy in the group
622
+ * @returns The same object returned by the builder (with `name` / `key` resolved on each instance)
623
+ * @example
624
+ * export const executionPolicies = defineWorkflowExecutionPolicies((define) => ({
625
+ * premium: define({ concurrencyPolicy: { maxConcurrentExecutions: 5 } }),
626
+ * "tenant-api": define({
627
+ * matchType: "prefix",
628
+ * concurrencyPolicy: { maxConcurrentExecutions: 3 },
629
+ * }),
630
+ * }));
631
+ *
632
+ * // In a workflow job function:
633
+ * await tailor.workflow.execJobFunction("worker", args, {
634
+ * executionPolicyKey: executionPolicies.premium.key,
635
+ * });
636
+ * await tailor.workflow.execJobFunction("worker", args, {
637
+ * executionPolicyKey: executionPolicies["tenant-api"].keyFor(input.tenantId),
638
+ * });
639
+ */
640
+ /* @__NO_SIDE_EFFECTS__ */
641
+ function defineWorkflowExecutionPolicies(builder, options) {
642
+ const separator = options?.separator ?? ".";
643
+ const nameSetters = /* @__PURE__ */ new Map();
644
+ const keySetters = /* @__PURE__ */ new Map();
645
+ const define = (def) => {
646
+ const explicitName = def?.name;
647
+ const explicitKey = def?.key;
648
+ const { instance, setName, setKey } = createExecutionPolicyInstance(explicitName ?? "__pending__", explicitKey ?? explicitName ?? "__pending__", def?.concurrencyPolicy, def?.matchType ?? "exact", separator, explicitName === void 0, explicitKey === void 0 && explicitName === void 0);
649
+ if (setName) nameSetters.set(instance, setName);
650
+ if (setKey) keySetters.set(instance, setKey);
651
+ return instance;
652
+ };
653
+ const result = builder(define);
654
+ for (const propName of Object.keys(result)) {
655
+ const instance = result[propName];
656
+ nameSetters.get(instance)?.(propName);
657
+ keySetters.get(instance)?.(propName);
658
+ }
659
+ return result;
660
+ }
661
+
662
+ //#endregion
663
+ //#region src/configure/services/workflow/job.ts
664
+ /**
665
+ * Create a workflow job definition.
666
+ *
667
+ * All jobs must be named exports from the workflow file.
668
+ * Job names must be unique across the entire project.
669
+ *
670
+ * Input and output must be JsonValue-compatible (primitives, plain objects, arrays).
671
+ * Functions and objects with a `toJSON` method are rejected at the type level;
672
+ * class instances exposing methods are rejected via the property walk.
673
+ * @param config - Job configuration with name and body function.
674
+ * @param config.name - Unique job name across the project.
675
+ * @param config.body - Function that processes the job input.
676
+ * @returns A WorkflowJob that can be started from other jobs.
677
+ * @example
678
+ * // Simple job with async body:
679
+ * export const fetchData = createWorkflowJob({
680
+ * name: "fetch-data",
681
+ * body: async (input: { id: string }) => {
682
+ * const db = getDB("tailordb");
683
+ * return await db.selectFrom("Table").selectAll().where("id", "=", input.id).executeTakeFirst();
684
+ * },
685
+ * });
686
+ * @example
687
+ * // Orchestrator job that fans out to other jobs.
688
+ * export const orchestrate = createWorkflowJob({
689
+ * name: "orchestrate",
690
+ * body: (input: { orderId: string }) => {
691
+ * const inventory = checkInventory.start({ orderId: input.orderId });
692
+ * const payment = processPayment.start({ orderId: input.orderId });
693
+ * return { inventory, payment };
694
+ * },
695
+ * });
696
+ */
697
+ function createWorkflowJob(config) {
698
+ const userBody = config.body;
699
+ const body = process.env.__TAILOR_PLATFORM_BUNDLE ? userBody : (input, context) => withWorkflowTestInvoker(context.invoker, () => userBody(input, context));
700
+ if (!process.env.__TAILOR_PLATFORM_BUNDLE) registerJob(config.name, body);
701
+ const start = process.env.__TAILOR_PLATFORM_BUNDLE ? () => {
702
+ throw new Error("This workflow job's .start() is rewritten at build time and is unavailable in the bundle");
703
+ } : function start(args, options) {
704
+ return arguments.length >= 2 ? dispatchStartJob(config.name, args, options) : dispatchStartJob(config.name, args);
705
+ };
706
+ return brandValue({
707
+ name: config.name,
708
+ start,
709
+ body
710
+ }, "workflow-job");
711
+ }
712
+
367
713
  //#endregion
368
714
  //#region src/configure/services/workflow/wait-point.ts
369
715
  function getPlatformWorkflow() {
@@ -395,7 +741,7 @@ function createWaitPointInstance(initialKey) {
395
741
  };
396
742
  }
397
743
  /**
398
- * Define a single typed wait point with an explicit key.
744
+ * Create a single typed wait point with an explicit key.
399
745
  *
400
746
  * `Payload` and `Result` must be JsonValue-compatible.
401
747
  * Functions and objects with a `toJSON` method are rejected at the type level;
@@ -403,16 +749,16 @@ function createWaitPointInstance(initialKey) {
403
749
  * @param key - The wait point key used to match wait and resolve calls
404
750
  * @returns A WaitPointInstance with typed `.wait()` and `.resolve()` methods
405
751
  * @example
406
- * export const approval = defineWaitPoint<{ message: string }, { approved: boolean }>("approval");
752
+ * export const approval = createWaitPoint<{ message: string }, { approved: boolean }>("approval");
407
753
  *
408
754
  * await approval.wait({ message: "Please approve" });
409
755
  */
410
756
  /* @__NO_SIDE_EFFECTS__ */
411
- function defineWaitPoint(key) {
757
+ function createWaitPoint(key) {
412
758
  return createWaitPointInstance(key).instance;
413
759
  }
414
760
  /**
415
- * Define a group of typed wait points for human-in-the-loop workflows.
761
+ * Create a group of typed wait points for human-in-the-loop workflows.
416
762
  * Property names become the wait point keys.
417
763
  *
418
764
  * The return type is the same as the builder's return type, so JSDoc on each
@@ -424,7 +770,7 @@ function defineWaitPoint(key) {
424
770
  * @param builder - Callback that receives a `define` factory and returns an object of wait points
425
771
  * @returns The same object returned by the builder (with correct keys set on each instance)
426
772
  * @example
427
- * export const waitPoints = defineWaitPoints(define => ({
773
+ * export const waitPoints = createWaitPoints(define => ({
428
774
  * // Preceding JSDoc on this property is shown in IDE autocompletion
429
775
  * approval: define<{ message: string }, { approved: boolean }>(),
430
776
  * }));
@@ -435,7 +781,7 @@ function defineWaitPoint(key) {
435
781
  * // For 2-level access, use destructured export with JSDoc attached to the export itself.
436
782
  */
437
783
  /* @__NO_SIDE_EFFECTS__ */
438
- function defineWaitPoints(builder) {
784
+ function createWaitPoints(builder) {
439
785
  const setters = /* @__PURE__ */ new Map();
440
786
  const define = (() => {
441
787
  const { instance, setKey } = createWaitPointInstance("__pending__");
@@ -450,8 +796,8 @@ function defineWaitPoints(builder) {
450
796
  //#endregion
451
797
  //#region src/configure/services/workflow/workflow.ts
452
798
  /**
453
- * Create a workflow definition that can be triggered via the Tailor SDK.
454
- * In production, bundler transforms .trigger() calls to tailor.workflow.triggerWorkflow().
799
+ * Create a workflow definition that can be started via the Tailor SDK.
800
+ * In production, the bundler rewrites `.start()` calls into direct platform workflow calls.
455
801
  *
456
802
  * The workflow MUST be the default export of the file.
457
803
  * All jobs referenced by the workflow MUST be named exports.
@@ -463,7 +809,7 @@ function defineWaitPoints(builder) {
463
809
  * export const processData = createWorkflowJob({
464
810
  * name: "process-data",
465
811
  * body: (input: { id: string }) => {
466
- * const data = fetchData.trigger({ id: input.id });
812
+ * const data = fetchData.start({ id: input.id });
467
813
  * return { data };
468
814
  * },
469
815
  * });
@@ -477,9 +823,11 @@ function defineWaitPoints(builder) {
477
823
  function createWorkflow(config) {
478
824
  return brandValue({
479
825
  ...config,
480
- trigger: process.env.TAILOR_PLATFORM_BUNDLE ? async () => {
481
- throw new Error("workflow.trigger() is rewritten at build time and unavailable in the bundle");
482
- } : async (args, options) => await dispatchTriggerWorkflow(config.name, args, options)
826
+ start: process.env.__TAILOR_PLATFORM_BUNDLE ? async () => {
827
+ throw new Error("workflow.start() is rewritten at build time and unavailable in the bundle");
828
+ } : async function start(args, options) {
829
+ return arguments.length >= 2 ? await dispatchStartWorkflow(config.name, args, options) : await dispatchStartWorkflow(config.name, args);
830
+ }
483
831
  }, "workflow");
484
832
  }
485
833
 
@@ -547,6 +895,10 @@ const unsafeAllowAllIdPPermission = {
547
895
  sendPasswordResetEmail: [{
548
896
  conditions: [],
549
897
  permit: true
898
+ }],
899
+ unenrollMfa: [{
900
+ conditions: [],
901
+ permit: true
550
902
  }]
551
903
  };
552
904
 
@@ -609,12 +961,14 @@ function defineSecretManager(config, options) {
609
961
  * Files are discovered via the `httpAdapter.files` glob in `defineConfig()`.
610
962
  *
611
963
  * `input` is an object keyed by lowercase HTTP method (`get`, `post`, `put`,
612
- * `patch`, `delete`). At least one method must be declared; the methods the
964
+ * `patch`, `delete`). Each handler can return a GraphQL query string or a
965
+ * typed document node. At least one method must be declared; the methods the
613
966
  * adapter serves are derived from these keys.
614
967
  *
615
- * `output` is optional and shared across all methods. If you need different
616
- * response shapes per method, discriminate inside `output` based on the
617
- * GraphQL response shape.
968
+ * `output` is optional and shared across all methods. If `input` returns typed
969
+ * document nodes, `output` receives the corresponding result type as
970
+ * `resp.data`. If you need different response shapes per method, discriminate
971
+ * inside `output` based on the GraphQL response shape.
618
972
  *
619
973
  * Each handler runs server-side and must be synchronous: Node APIs, `fetch`,
620
974
  * `async`/`await`, Promises, and top-level `await` are not available.
@@ -675,5 +1029,5 @@ function definePlugins(...configs) {
675
1029
  const t = t$1;
676
1030
 
677
1031
  //#endregion
678
- export { WORKFLOW_TEST_ENV_KEY, authAccessTokenIssuedTrigger, authAccessTokenRefreshedTrigger, authAccessTokenRevokedTrigger, authAccessTokenTrigger, createExecutor, createHttpAdapter, createResolver, createWorkflow, createWorkflowJob, db, defineAIGateway, defineAuth, defineConfig, defineIdp, definePlugins, defineSecretManager, defineStaticWebSite, defineWaitPoint, defineWaitPoints, idpUserCreatedTrigger, idpUserDeletedTrigger, idpUserTrigger, idpUserUpdatedTrigger, incomingWebhookTrigger, recordCreatedTrigger, recordDeletedTrigger, recordTrigger, recordUpdatedTrigger, resolverExecutedTrigger, scheduleTrigger, t, unauthenticatedTailorUser, unsafeAllowAllGqlPermission, unsafeAllowAllIdPPermission, unsafeAllowAllTypePermission };
1032
+ export { authAccessTokenIssuedTrigger, authAccessTokenRefreshedTrigger, authAccessTokenRevokedTrigger, authAccessTokenTrigger, createExecutor, createHttpAdapter, createResolver, createWaitPoint, createWaitPoints, createWorkflow, createWorkflowJob, db, defineAIGateway, defineAuth, defineConfig, defineIdp, definePlugins, defineSecretManager, defineStaticWebSite, defineWorkflowExecutionPolicies, defineWorkflowExecutionPolicy, idpUserCreatedTrigger, idpUserDeletedTrigger, idpUserTrigger, idpUserUpdatedTrigger, incomingWebhookTrigger, recordCreatedTrigger, recordDeletedTrigger, recordTrigger, recordUpdatedTrigger, resolverExecutedTrigger, scheduleTrigger, t, unsafeAllowAllGqlPermission, unsafeAllowAllIdPPermission, unsafeAllowAllTypePermission };
679
1033
  //# sourceMappingURL=index.mjs.map