@tailor-platform/sdk 1.76.1 → 1.76.2

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 (273) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/application-6zsDLGKv.mjs +3 -0
  3. package/dist/{application-BUfYmf0O.mjs → application-CqjCcZ2n.mjs} +372 -1673
  4. package/dist/application-CqjCcZ2n.mjs.map +1 -0
  5. package/dist/cli/cache/bundle-cache.d.mts +2 -1
  6. package/dist/cli/cache/store.d.mts +1 -1
  7. package/dist/cli/commands/api/index.d.mts +1 -0
  8. package/dist/cli/commands/deploy/aigateway.d.mts +5 -1
  9. package/dist/cli/commands/deploy/application.d.mts +7 -1
  10. package/dist/cli/commands/deploy/apply-phases.d.mts +14 -1
  11. package/dist/cli/commands/deploy/auth.d.mts +5 -1
  12. package/dist/cli/commands/deploy/deploy.d.mts +5 -0
  13. package/dist/cli/commands/deploy/executor.d.mts +7 -1
  14. package/dist/cli/commands/deploy/function-registry.d.mts +5 -0
  15. package/dist/cli/commands/deploy/idp.d.mts +5 -1
  16. package/dist/cli/commands/deploy/resolver.d.mts +5 -1
  17. package/dist/cli/commands/deploy/secret-manager.d.mts +5 -1
  18. package/dist/cli/commands/deploy/staticwebsite.d.mts +5 -1
  19. package/dist/cli/commands/deploy/tailordb/index.d.mts +8 -1
  20. package/dist/cli/commands/deploy/types.d.mts +3 -1
  21. package/dist/cli/commands/deploy/workflow-execution-policy.d.mts +3 -1
  22. package/dist/cli/commands/deploy/workflow.d.mts +4 -1
  23. package/dist/cli/commands/executor/get.d.mts +0 -1
  24. package/dist/cli/commands/executor/jobs.d.mts +0 -1
  25. package/dist/cli/commands/executor/list.d.mts +0 -1
  26. package/dist/cli/commands/executor/transform.d.mts +1 -0
  27. package/dist/cli/commands/executor/trigger.d.mts +0 -1
  28. package/dist/cli/commands/executor/webhook.d.mts +0 -1
  29. package/dist/cli/commands/function/get.d.mts +0 -1
  30. package/dist/cli/commands/function/list.d.mts +0 -1
  31. package/dist/cli/commands/function/transform.d.mts +1 -0
  32. package/dist/cli/commands/generate/service.d.mts +5 -1
  33. package/dist/cli/commands/generate/types.d.mts +3 -1
  34. package/dist/cli/commands/machineuser/list.d.mts +0 -1
  35. package/dist/cli/commands/machineuser/token.d.mts +0 -1
  36. package/dist/cli/commands/oauth2client/get.d.mts +0 -1
  37. package/dist/cli/commands/oauth2client/list.d.mts +0 -1
  38. package/dist/cli/commands/oauth2client/transform.d.mts +1 -0
  39. package/dist/cli/commands/organization/folder/create.d.mts +0 -1
  40. package/dist/cli/commands/organization/folder/delete.d.mts +0 -1
  41. package/dist/cli/commands/organization/folder/get.d.mts +0 -1
  42. package/dist/cli/commands/organization/folder/list.d.mts +0 -1
  43. package/dist/cli/commands/organization/folder/update.d.mts +0 -1
  44. package/dist/cli/commands/organization/get.d.mts +0 -1
  45. package/dist/cli/commands/organization/list.d.mts +0 -1
  46. package/dist/cli/commands/organization/transform.d.mts +2 -0
  47. package/dist/cli/commands/organization/tree.d.mts +0 -1
  48. package/dist/cli/commands/organization/update.d.mts +0 -1
  49. package/dist/cli/commands/remove.d.mts +0 -1
  50. package/dist/cli/commands/show.d.mts +0 -1
  51. package/dist/cli/commands/tailordb/migrate/config.d.mts +0 -1
  52. package/dist/cli/commands/tailordb/migrate/diff-calculator.d.mts +0 -1
  53. package/dist/cli/commands/tailordb/migrate/generate.d.mts +0 -1
  54. package/dist/cli/commands/tailordb/migrate/snapshot.d.mts +1 -1
  55. package/dist/cli/commands/tailordb/truncate.d.mts +0 -1
  56. package/dist/cli/commands/workflow/executions.d.mts +0 -1
  57. package/dist/cli/commands/workflow/get.d.mts +2 -1
  58. package/dist/cli/commands/workflow/list.d.mts +0 -1
  59. package/dist/cli/commands/workflow/resume.d.mts +0 -1
  60. package/dist/cli/commands/workflow/start.d.mts +0 -1
  61. package/dist/cli/commands/workflow/status.d.mts +1 -0
  62. package/dist/cli/commands/workflow/transform.d.mts +1 -0
  63. package/dist/cli/commands/workflow/wait.d.mts +0 -1
  64. package/dist/cli/commands/workflow/waiter.d.mts +1 -1
  65. package/dist/cli/commands/workspace/app/health.d.mts +0 -1
  66. package/dist/cli/commands/workspace/app/list.d.mts +0 -1
  67. package/dist/cli/commands/workspace/app/transform.d.mts +2 -0
  68. package/dist/cli/commands/workspace/create.d.mts +0 -1
  69. package/dist/cli/commands/workspace/delete.d.mts +0 -1
  70. package/dist/cli/commands/workspace/get.d.mts +0 -1
  71. package/dist/cli/commands/workspace/list.d.mts +0 -1
  72. package/dist/cli/commands/workspace/restore.d.mts +0 -1
  73. package/dist/cli/commands/workspace/transform.d.mts +2 -0
  74. package/dist/cli/commands/workspace/user/invite.d.mts +0 -1
  75. package/dist/cli/commands/workspace/user/list.d.mts +0 -1
  76. package/dist/cli/commands/workspace/user/remove.d.mts +0 -1
  77. package/dist/cli/commands/workspace/user/transform.d.mts +1 -0
  78. package/dist/cli/commands/workspace/user/update.d.mts +0 -1
  79. package/dist/cli/index.d.mts +3 -1
  80. package/dist/cli/index.mjs +599 -42
  81. package/dist/cli/index.mjs.map +1 -1
  82. package/dist/cli/lib.d.mts +2 -0
  83. package/dist/cli/lib.mjs +3 -3
  84. package/dist/cli/query/index.d.mts +0 -1
  85. package/dist/cli/services/application.d.mts +12 -1
  86. package/dist/cli/services/auth/service.d.mts +2 -0
  87. package/dist/cli/services/executor/service.d.mts +1 -1
  88. package/dist/cli/services/http-adapter/bundler.d.mts +3 -1
  89. package/dist/cli/services/http-adapter/service.d.mts +2 -1
  90. package/dist/cli/services/resolver/service.d.mts +1 -1
  91. package/dist/cli/services/tailordb/service.d.mts +3 -1
  92. package/dist/cli/services/workflow/bundler.d.mts +2 -1
  93. package/dist/cli/services/workflow/service.d.mts +1 -1
  94. package/dist/cli/shared/args.d.mts +1 -1
  95. package/dist/cli/shared/client.d.mts +1 -1
  96. package/dist/cli/shared/config-loader.d.mts +0 -1
  97. package/dist/cli/shared/context.d.mts +2 -1
  98. package/dist/cli/shared/script-executor.d.mts +0 -1
  99. package/dist/cli/shared/seed-chunker.d.mts +7 -3
  100. package/dist/cli/shared/type-generator.d.mts +0 -1
  101. package/dist/completion/zsh-worker.zsh +1 -1
  102. package/dist/configure/config/index.d.mts +0 -1
  103. package/dist/configure/config/types.d.mts +2 -2
  104. package/dist/configure/index.d.mts +2 -1
  105. package/dist/configure/index.mjs +54 -4
  106. package/dist/configure/index.mjs.map +1 -1
  107. package/dist/configure/services/aigateway/index.d.mts +0 -1
  108. package/dist/configure/services/aigateway/types.d.mts +0 -1
  109. package/dist/configure/services/auth/index.d.mts +0 -1
  110. package/dist/configure/services/auth/types.d.mts +14 -13
  111. package/dist/configure/services/executor/executor.d.mts +0 -1
  112. package/dist/configure/services/executor/index.d.mts +1 -0
  113. package/dist/configure/services/executor/operation.d.mts +1 -2
  114. package/dist/configure/services/executor/trigger/event.d.mts +0 -1
  115. package/dist/configure/services/executor/trigger/index.d.mts +0 -1
  116. package/dist/configure/services/executor/trigger/schedule.d.mts +0 -1
  117. package/dist/configure/services/executor/trigger/webhook.d.mts +0 -1
  118. package/dist/configure/services/http-adapter/http-adapter.d.mts +1 -2
  119. package/dist/configure/services/idp/index.d.mts +0 -1
  120. package/dist/configure/services/idp/permission.d.mts +4 -5
  121. package/dist/configure/services/idp/types.d.mts +0 -1
  122. package/dist/configure/services/index.d.mts +5 -0
  123. package/dist/configure/services/resolver/resolver.d.mts +0 -1
  124. package/dist/configure/services/resolver/types.d.mts +0 -1
  125. package/dist/configure/services/secrets/index.d.mts +0 -1
  126. package/dist/configure/services/secrets/types.d.mts +0 -1
  127. package/dist/configure/services/staticwebsite/index.d.mts +0 -1
  128. package/dist/configure/services/staticwebsite/types.d.mts +0 -1
  129. package/dist/configure/services/tailordb/permission.d.mts +4 -5
  130. package/dist/configure/services/tailordb/schema.d.mts +21 -8
  131. package/dist/configure/services/tailordb/types.d.mts +4 -5
  132. package/dist/configure/services/workflow/execution-policy.d.mts +0 -1
  133. package/dist/configure/services/workflow/execution-policy.types.d.mts +0 -1
  134. package/dist/configure/services/workflow/index.d.mts +1 -0
  135. package/dist/configure/services/workflow/job.d.mts +0 -1
  136. package/dist/configure/services/workflow/wait-point.d.mts +0 -1
  137. package/dist/configure/services/workflow/workflow.d.mts +0 -1
  138. package/dist/configure/types/field-runtime.d.mts +1 -1
  139. package/dist/configure/types/field.d.mts +1 -2
  140. package/dist/configure/types/field.types.d.mts +1 -2
  141. package/dist/configure/types/type.d.mts +1 -1
  142. package/dist/configure/user.d.mts +0 -1
  143. package/dist/{crashreport-ayWANEZ6.mjs → crashreport-DZDr-TvH.mjs} +3 -2
  144. package/dist/{crashreport-ayWANEZ6.mjs.map → crashreport-DZDr-TvH.mjs.map} +1 -1
  145. package/dist/{crashreport-Dy4ZzSkd.mjs → crashreport-np4-_DX2.mjs} +1 -1
  146. package/dist/{field-runtime-9bfXBAOK.mjs → field-runtime-D4QWRiB1.mjs} +66 -46
  147. package/dist/field-runtime-D4QWRiB1.mjs.map +1 -0
  148. package/dist/{globals-CcU1ONiK.mjs → globals-z6zYMjlr.mjs} +2 -2
  149. package/dist/{globals-CcU1ONiK.mjs.map → globals-z6zYMjlr.mjs.map} +1 -1
  150. package/dist/kysely/index.d.mts +3 -4
  151. package/dist/parser/service/auth/index.d.mts +1 -1
  152. package/dist/parser/service/auth/schema.d.mts +1 -0
  153. package/dist/parser/service/http-adapter/index.d.mts +1 -1
  154. package/dist/parser/service/idp/types.d.mts +1 -0
  155. package/dist/parser/service/tailordb/types.d.mts +0 -1
  156. package/dist/plugin/builtin/enum-constants/index.d.mts +0 -1
  157. package/dist/plugin/builtin/file-utils/index.d.mts +0 -1
  158. package/dist/plugin/builtin/kysely-type/index.d.mts +0 -1
  159. package/dist/plugin/builtin/seed/index.d.mts +0 -1
  160. package/dist/plugin/builtin/seed/index.mjs +1 -1
  161. package/dist/plugin/get-generated-type.d.mts +0 -1
  162. package/dist/plugin/manager.d.mts +3 -1
  163. package/dist/plugin/types.d.mts +0 -1
  164. package/dist/plugin/with-context.d.mts +0 -1
  165. package/dist/{registry-NfSW0BRo.mjs → registry-CTgoVWc_.mjs} +4 -49
  166. package/dist/registry-CTgoVWc_.mjs.map +1 -0
  167. package/dist/runtime/aigateway.d.mts +0 -2
  168. package/dist/runtime/authconnection.d.mts +0 -2
  169. package/dist/runtime/globals.d.mts +0 -1
  170. package/dist/runtime/index.d.mts +0 -1
  171. package/dist/runtime/types.d.mts +16 -7
  172. package/dist/{runtime-_vUgjiqT.mjs → runtime-DlklyuHN.mjs} +1301 -716
  173. package/dist/runtime-DlklyuHN.mjs.map +1 -0
  174. package/dist/{schema-DrVyN-LP.mjs → schema-DbTR1c6M.mjs} +3 -2
  175. package/dist/schema-DbTR1c6M.mjs.map +1 -0
  176. package/dist/{secret-file-VSVGy1V0.mjs → secret-file-DBqZhjFQ.mjs} +2 -27
  177. package/dist/{secret-file-VSVGy1V0.mjs.map → secret-file-DBqZhjFQ.mjs.map} +1 -1
  178. package/dist/seed/index.d.mts +3 -2
  179. package/dist/{seed-fm0LeYP2.mjs → seed-DFFigL8V.mjs} +3 -13
  180. package/dist/seed-DFFigL8V.mjs.map +1 -0
  181. package/dist/service_pb-BoLM0X4K.mjs +167 -0
  182. package/dist/service_pb-BoLM0X4K.mjs.map +1 -0
  183. package/dist/{service_pb-B2FF59sP.mjs → service_pb-r1T7kpJc.mjs} +1 -1
  184. package/dist/tailor-proto/src/tailor/v1/aigateway_pb.d.mts +0 -1
  185. package/dist/tailor-proto/src/tailor/v1/aigateway_resource_pb.d.mts +0 -1
  186. package/dist/tailor-proto/src/tailor/v1/application_pb.d.mts +0 -1
  187. package/dist/tailor-proto/src/tailor/v1/application_resource_pb.d.mts +0 -1
  188. package/dist/tailor-proto/src/tailor/v1/auth_pb.d.mts +0 -1
  189. package/dist/tailor-proto/src/tailor/v1/auth_resource_pb.d.mts +0 -1
  190. package/dist/tailor-proto/src/tailor/v1/events_pb.d.mts +0 -1
  191. package/dist/tailor-proto/src/tailor/v1/events_resource_pb.d.mts +0 -1
  192. package/dist/tailor-proto/src/tailor/v1/executor_pb.d.mts +0 -1
  193. package/dist/tailor-proto/src/tailor/v1/executor_resource_pb.d.mts +0 -1
  194. package/dist/tailor-proto/src/tailor/v1/function_pb.d.mts +0 -1
  195. package/dist/tailor-proto/src/tailor/v1/function_registry_pb.d.mts +0 -1
  196. package/dist/tailor-proto/src/tailor/v1/function_resource_pb.d.mts +0 -1
  197. package/dist/tailor-proto/src/tailor/v1/http_adapter_resource_pb.d.mts +0 -1
  198. package/dist/tailor-proto/src/tailor/v1/idp_pb.d.mts +0 -1
  199. package/dist/tailor-proto/src/tailor/v1/idp_resource_pb.d.mts +0 -1
  200. package/dist/tailor-proto/src/tailor/v1/metadata_pb.d.mts +0 -1
  201. package/dist/tailor-proto/src/tailor/v1/metadata_resource_pb.d.mts +0 -1
  202. package/dist/tailor-proto/src/tailor/v1/meter_pb.d.mts +0 -1
  203. package/dist/tailor-proto/src/tailor/v1/pipeline_pb.d.mts +0 -1
  204. package/dist/tailor-proto/src/tailor/v1/pipeline_resource_pb.d.mts +0 -1
  205. package/dist/tailor-proto/src/tailor/v1/resource_pb.d.mts +0 -1
  206. package/dist/tailor-proto/src/tailor/v1/secret_manager_pb.d.mts +0 -1
  207. package/dist/tailor-proto/src/tailor/v1/secret_manager_resource_pb.d.mts +0 -1
  208. package/dist/tailor-proto/src/tailor/v1/service_pb.d.mts +0 -1
  209. package/dist/tailor-proto/src/tailor/v1/stateflow_pb.d.mts +0 -1
  210. package/dist/tailor-proto/src/tailor/v1/stateflow_resource_pb.d.mts +0 -1
  211. package/dist/tailor-proto/src/tailor/v1/staticwebsite_pb.d.mts +0 -1
  212. package/dist/tailor-proto/src/tailor/v1/staticwebsite_resource_pb.d.mts +0 -1
  213. package/dist/tailor-proto/src/tailor/v1/tailordb_pb.d.mts +0 -1
  214. package/dist/tailor-proto/src/tailor/v1/tailordb_resource_pb.d.mts +0 -1
  215. package/dist/tailor-proto/src/tailor/v1/telemetryrouter_pb.d.mts +0 -1
  216. package/dist/tailor-proto/src/tailor/v1/telemetryrouter_resource_pb.d.mts +0 -1
  217. package/dist/tailor-proto/src/tailor/v1/workflow_pb.d.mts +0 -1
  218. package/dist/tailor-proto/src/tailor/v1/workflow_resource_pb.d.mts +0 -1
  219. package/dist/tailor-proto/src/tailor/v1/workspace_pb.d.mts +0 -1
  220. package/dist/tailor-proto/src/tailor/v1/workspace_resource_pb.d.mts +0 -1
  221. package/dist/test-env-key-IPapa1KJ.mjs +49 -0
  222. package/dist/test-env-key-IPapa1KJ.mjs.map +1 -0
  223. package/dist/type-source-DH_LH20p.mjs +13 -0
  224. package/dist/type-source-DH_LH20p.mjs.map +1 -0
  225. package/dist/types/aigateway.generated.d.mts +5 -2
  226. package/dist/types/auth-connection.generated.d.mts +11 -5
  227. package/dist/types/auth.generated.d.mts +111 -51
  228. package/dist/types/executor.generated.d.mts +59 -27
  229. package/dist/types/helpers.d.mts +5 -5
  230. package/dist/types/http-adapter.generated.d.mts +11 -5
  231. package/dist/types/idp.generated.d.mts +20 -9
  232. package/dist/types/resolver.generated.d.mts +19 -9
  233. package/dist/types/staticwebsite.generated.d.mts +7 -3
  234. package/dist/types/tailordb.generated.d.mts +47 -22
  235. package/dist/types/workflow.generated.d.mts +9 -4
  236. package/dist/{types-BwzB2okW.mjs → types-BzJ7A_fn.mjs} +2 -2
  237. package/dist/{types-BwzB2okW.mjs.map → types-BzJ7A_fn.mjs.map} +1 -1
  238. package/dist/types-CG9H7HuE.mjs +4 -0
  239. package/dist/user-agent-DX2Jnw0-.mjs +28 -0
  240. package/dist/user-agent-DX2Jnw0-.mjs.map +1 -0
  241. package/dist/utils/test/index.d.mts +0 -1
  242. package/dist/utils/test/index.mjs +1 -1
  243. package/dist/utils/test/mock.d.mts +0 -1
  244. package/dist/vitest/environment.mjs +1 -1
  245. package/dist/vitest/index.d.mts +1 -1
  246. package/dist/vitest/index.mjs +2 -1
  247. package/dist/vitest/index.mjs.map +1 -1
  248. package/dist/vitest/mock-kysely.d.mts +0 -1
  249. package/dist/vitest/mocks/aigateway.d.mts +2 -2
  250. package/dist/vitest/mocks/authconnection.d.mts +2 -2
  251. package/dist/vitest/mocks/idp.d.mts +2 -2
  252. package/dist/vitest/mocks/secretmanager.d.mts +3 -1
  253. package/dist/vitest/mocks/tailordb.d.mts +6 -3
  254. package/dist/vitest/mocks/workflow.d.mts +11 -6
  255. package/dist/vitest/setup.mjs +1 -1
  256. package/dist/{service_pb-B5w9rjPY.mjs → workspace_resource_pb-Db3fv68L.mjs} +57 -165
  257. package/dist/workspace_resource_pb-Db3fv68L.mjs.map +1 -0
  258. package/docs/services/tailordb.md +10 -1
  259. package/package.json +11 -11
  260. package/dist/application-BUfYmf0O.mjs.map +0 -1
  261. package/dist/application-DbvD5UUz.mjs +0 -3
  262. package/dist/cli/shared/trigger-context.d.mts +0 -1
  263. package/dist/field-runtime-9bfXBAOK.mjs.map +0 -1
  264. package/dist/job-D-PbD1P3.mjs +0 -55
  265. package/dist/job-D-PbD1P3.mjs.map +0 -1
  266. package/dist/registry-NfSW0BRo.mjs.map +0 -1
  267. package/dist/resource_pb-BRv7AMXK.mjs +0 -49
  268. package/dist/resource_pb-BRv7AMXK.mjs.map +0 -1
  269. package/dist/runtime-_vUgjiqT.mjs.map +0 -1
  270. package/dist/schema-DrVyN-LP.mjs.map +0 -1
  271. package/dist/seed-fm0LeYP2.mjs.map +0 -1
  272. package/dist/service_pb-B5w9rjPY.mjs.map +0 -1
  273. package/dist/types-KlawuVKa.mjs +0 -4
@@ -1,16 +1,22 @@
1
1
  //#region src/types/http-adapter.generated.d.ts
2
2
  type HttpAdapterConfigInput = {
3
- /** Unique adapter name within the domain */name: string; /** Path pattern with segment wildcards (trailing or single-segment) */
4
- pathPattern: string; /** Per-method functions that transform HTTP requests to GraphQL requests */
3
+ /** Unique adapter name within the domain */
4
+ name: string;
5
+ /** Path pattern with segment wildcards (trailing or single-segment) */
6
+ pathPattern: string;
7
+ /** Per-method functions that transform HTTP requests to GraphQL requests */
5
8
  input: {
6
9
  get?: Function | undefined;
7
10
  post?: Function | undefined;
8
11
  put?: Function | undefined;
9
12
  patch?: Function | undefined;
10
13
  delete?: Function | undefined;
11
- }; /** Whether the adapter is active */
12
- enabled?: boolean | undefined; /** Matching priority; the lowest value wins when multiple adapters match */
13
- priority?: number | undefined; /** Function that transforms GraphQL response to HTTP response */
14
+ };
15
+ /** Whether the adapter is active */
16
+ enabled?: boolean | undefined;
17
+ /** Matching priority; the lowest value wins when multiple adapters match */
18
+ priority?: number | undefined;
19
+ /** Function that transforms GraphQL response to HTTP response */
14
20
  output?: Function | undefined;
15
21
  };
16
22
  //#endregion
@@ -25,16 +25,23 @@ type IdPGqlOperations = {
25
25
  * Namespace-level email configuration defaults
26
26
  */
27
27
  type IdPEmailConfig = {
28
- /** Default sender display name for emails */fromName?: string | undefined; /** Default subject for password reset emails */
28
+ /** Default sender display name for emails */
29
+ fromName?: string | undefined;
30
+ /** Default subject for password reset emails */
29
31
  passwordResetSubject?: string | undefined;
30
32
  };
31
33
  type IdPInput = {
32
- /** IdP service name */name: string; /** OAuth2 client names that can use this IdP */
33
- clients: string[]; /** Authorization mode for IdP API access */
34
+ /** IdP service name */
35
+ name: string;
36
+ /** OAuth2 client names that can use this IdP */
37
+ clients: string[];
38
+ /** Authorization mode for IdP API access */
34
39
  authorization?: "insecure" | "loggedIn" | {
35
40
  cel: string;
36
- } | undefined; /** UI language for IdP pages */
37
- lang?: "en" | "ja" | undefined; /** User authentication policy configuration */
41
+ } | undefined;
42
+ /** UI language for IdP pages */
43
+ lang?: "en" | "ja" | undefined;
44
+ /** User authentication policy configuration */
38
45
  userAuthPolicy?: {
39
46
  useNonEmailIdentifier?: boolean | undefined;
40
47
  allowSelfPasswordReset?: boolean | undefined;
@@ -52,8 +59,10 @@ type IdPInput = {
52
59
  requireMfa?: boolean | undefined;
53
60
  allowedReturnOrigins?: string[] | undefined;
54
61
  mfaIssuer?: string | undefined;
55
- } | undefined; /** Enable publishing user lifecycle events */
56
- publishUserEvents?: boolean | undefined; /** Configure which GraphQL operations are enabled */
62
+ } | undefined;
63
+ /** Enable publishing user lifecycle events */
64
+ publishUserEvents?: boolean | undefined;
65
+ /** Configure which GraphQL operations are enabled */
57
66
  gqlOperations?: "query" | {
58
67
  create?: boolean | undefined;
59
68
  update?: boolean | undefined;
@@ -62,11 +71,13 @@ type IdPInput = {
62
71
  sendPasswordResetEmail?: boolean | undefined;
63
72
  requestMfaSettingsUrl?: boolean | undefined;
64
73
  unenrollMfa?: boolean | undefined;
65
- } | undefined; /** Namespace-level email configuration defaults */
74
+ } | undefined;
75
+ /** Namespace-level email configuration defaults */
66
76
  emailConfig?: {
67
77
  fromName?: string | undefined;
68
78
  passwordResetSubject?: string | undefined;
69
- } | undefined; /** Per-operation permission policies for IdP users */
79
+ } | undefined;
80
+ /** Per-operation permission policies for IdP users */
70
81
  permission?: {
71
82
  create: readonly (readonly [(string | boolean | readonly string[] | readonly boolean[] | {
72
83
  user: string;
@@ -1,16 +1,22 @@
1
1
  //#region src/types/resolver.generated.d.ts
2
2
  type Resolver = {
3
- /** GraphQL operation type (query or mutation) */operation: "query" | "mutation"; /** Resolver name */
4
- name: string; /** Resolver implementation function */
5
- body: Function; /** Output field definition */
3
+ /** GraphQL operation type (query or mutation) */
4
+ operation: "query" | "mutation";
5
+ /** Resolver name */
6
+ name: string;
7
+ /** Resolver implementation function */
8
+ body: Function;
9
+ /** Output field definition */
6
10
  output: {
7
11
  type: "string" | "boolean" | "date" | "enum" | "uuid" | "integer" | "float" | "decimal" | "datetime" | "time" | "nested";
8
12
  metadata: {
9
13
  required?: boolean | undefined;
10
- array?: boolean | undefined; /** Resolver description */
14
+ array?: boolean | undefined;
15
+ /** Resolver description */
11
16
  description?: string | undefined;
12
17
  allowedValues?: {
13
- value: string; /** Resolver description */
18
+ value: string;
19
+ /** Resolver description */
14
20
  description?: string | undefined;
15
21
  }[] | undefined;
16
22
  hooks?: {
@@ -22,12 +28,16 @@ type Resolver = {
22
28
  fields: {
23
29
  [x: string]: any;
24
30
  };
25
- }; /** Resolver description */
26
- description?: string | undefined; /** Input field definitions */
31
+ };
32
+ /** Resolver description */
33
+ description?: string | undefined;
34
+ /** Input field definitions */
27
35
  input?: {
28
36
  [x: string]: any;
29
- } | undefined; /** Enable publishing events from this resolver */
30
- publishEvents?: boolean | undefined; /** Machine user to execute this resolver as */
37
+ } | undefined;
38
+ /** Enable publishing events from this resolver */
39
+ publishEvents?: boolean | undefined;
40
+ /** Machine user to execute this resolver as */
31
41
  authInvoker?: string | {
32
42
  namespace: string;
33
43
  machineUserName: string;
@@ -1,8 +1,12 @@
1
1
  //#region src/types/staticwebsite.generated.d.ts
2
2
  type StaticWebsite = {
3
- /** Static website name */name: string; /** Static website description */
4
- description?: string | undefined; /** IP addresses allowed to access the website */
5
- allowedIpAddresses?: string[] | undefined; /** Custom domains for the static website */
3
+ /** Static website name */
4
+ name: string;
5
+ /** Static website description */
6
+ description?: string | undefined;
7
+ /** IP addresses allowed to access the website */
8
+ allowedIpAddresses?: string[] | undefined;
9
+ /** Custom domains for the static website */
6
10
  customDomains?: string[] | undefined;
7
11
  };
8
12
  type StaticWebsiteInput = StaticWebsite;
@@ -10,36 +10,56 @@ type GqlOperationsInput = "query" | {
10
10
  read?: boolean | undefined;
11
11
  };
12
12
  type DBFieldMetadata = {
13
- /** Whether the field is required */required?: boolean | undefined; /** Whether the field is an array */
14
- array?: boolean | undefined; /** Field description */
15
- description?: string | undefined; /** Type name for nested or enum fields */
16
- typeName?: string | undefined; /** Allowed values for enum fields */
13
+ /** Whether the field is required */
14
+ required?: boolean | undefined;
15
+ /** Whether the field is an array */
16
+ array?: boolean | undefined;
17
+ /** Field description */
18
+ description?: string | undefined;
19
+ /** Type name for nested or enum fields */
20
+ typeName?: string | undefined;
21
+ /** Allowed values for enum fields */
17
22
  allowedValues?: {
18
- value: string; /** Field description */
23
+ value: string;
24
+ /** Field description */
19
25
  description?: string | undefined;
20
- }[] | undefined; /** Whether the field is indexed for faster queries */
21
- index?: boolean | undefined; /** Whether the field value must be unique */
22
- unique?: boolean | undefined; /** Whether the field is a vector field for similarity search */
23
- vector?: boolean | undefined; /** Whether the field is a foreign key */
24
- foreignKey?: boolean | undefined; /** Target type name for foreign key relations */
25
- foreignKeyType?: string | undefined; /** Target field name for foreign key relations */
26
- foreignKeyField?: string | undefined; /** Lifecycle hooks for the field */
26
+ }[] | undefined;
27
+ /** Whether the field is indexed for faster queries */
28
+ index?: boolean | undefined;
29
+ /** Whether the field value must be unique */
30
+ unique?: boolean | undefined;
31
+ /** Whether the field is a vector field for similarity search */
32
+ vector?: boolean | undefined;
33
+ /** Whether the field is a foreign key */
34
+ foreignKey?: boolean | undefined;
35
+ /** Target type name for foreign key relations */
36
+ foreignKeyType?: string | undefined;
37
+ /** Target field name for foreign key relations */
38
+ foreignKeyField?: string | undefined;
39
+ /** Lifecycle hooks for the field */
27
40
  hooks?: {
28
41
  create?: Function | undefined;
29
42
  update?: Function | undefined;
30
- } | undefined; /** Validation functions for the field */
31
- validate?: (Function | [Function, string])[] | undefined; /** Serial (auto-increment) configuration */
43
+ } | undefined;
44
+ /** Validation functions for the field */
45
+ validate?: (Function | [Function, string])[] | undefined;
46
+ /** Serial (auto-increment) configuration */
32
47
  serial?: {
33
48
  start: number;
34
49
  maxValue?: number | undefined;
35
50
  format?: string | undefined;
36
- } | undefined; /** Decimal scale (number of digits after decimal point, 0-12) */
51
+ } | undefined;
52
+ /** Decimal scale (number of digits after decimal point, 0-12) */
37
53
  scale?: number | undefined;
38
54
  };
39
55
  type TailorDBTypeParsedSettings = {
40
- /** Custom plural form of the type name for GraphQL */pluralForm?: string | undefined; /** Enable aggregation queries for this type */
41
- aggregation?: boolean | undefined; /** Enable bulk upsert mutation for this type */
42
- bulkUpsert?: boolean | undefined; /** Configure GraphQL operations for this type. Use "query" for read-only mode, or an object for granular control. */
56
+ /** Custom plural form of the type name for GraphQL */
57
+ pluralForm?: string | undefined;
58
+ /** Enable aggregation queries for this type */
59
+ aggregation?: boolean | undefined;
60
+ /** Enable bulk upsert mutation for this type */
61
+ bulkUpsert?: boolean | undefined;
62
+ /** Configure GraphQL operations for this type. Use "query" for read-only mode, or an object for granular control. */
43
63
  gqlOperations?: {
44
64
  create?: boolean | undefined;
45
65
  update?: boolean | undefined;
@@ -410,13 +430,18 @@ type RawPermissions = {
410
430
  }[] | undefined;
411
431
  };
412
432
  type TailorDBServiceConfigInput = {
413
- /** Glob patterns for TailorDB type definition files */files: string[]; /** Glob patterns to exclude from type discovery */
414
- ignores?: string[] | undefined; /** URL for the ERD (Entity Relationship Diagram) site */
415
- erdSite?: string | undefined; /** Migration configuration */
433
+ /** Glob patterns for TailorDB type definition files */
434
+ files: string[];
435
+ /** Glob patterns to exclude from type discovery */
436
+ ignores?: string[] | undefined;
437
+ /** URL for the ERD (Entity Relationship Diagram) site */
438
+ erdSite?: string | undefined;
439
+ /** Migration configuration */
416
440
  migration?: {
417
441
  directory: string;
418
442
  machineUser?: string | undefined;
419
- } | undefined; /** Default GraphQL operations for all types in this service */
443
+ } | undefined;
444
+ /** Default GraphQL operations for all types in this service */
420
445
  gqlOperations?: "query" | {
421
446
  create?: boolean | undefined;
422
447
  update?: boolean | undefined;
@@ -1,12 +1,17 @@
1
1
  //#region src/types/workflow.generated.d.ts
2
2
  type RetryPolicy = {
3
- /** Maximum number of retries (1-10) */maxRetries: number; /** Initial backoff duration (e.g., '1s', '500ms', '1m', max 1h) */
4
- initialBackoff: `${number}ms` | `${number}s` | `${number}m`; /** Maximum backoff duration (e.g., '30s', '5m', max 24h) */
5
- maxBackoff: `${number}ms` | `${number}s` | `${number}m`; /** Backoff multiplier (>= 1) */
3
+ /** Maximum number of retries (1-10) */
4
+ maxRetries: number;
5
+ /** Initial backoff duration (e.g., '1s', '500ms', '1m', max 1h) */
6
+ initialBackoff: `${number}ms` | `${number}s` | `${number}m`;
7
+ /** Maximum backoff duration (e.g., '30s', '5m', max 24h) */
8
+ maxBackoff: `${number}ms` | `${number}s` | `${number}m`;
9
+ /** Backoff multiplier (>= 1) */
6
10
  backoffMultiplier: number;
7
11
  };
8
12
  type ConcurrencyPolicy = {
9
- /** Maximum number of concurrent executions (1-1000) */maxConcurrentExecutions: number;
13
+ /** Maximum number of concurrent executions (1-1000) */
14
+ maxConcurrentExecutions: number;
10
15
  };
11
16
  //#endregion
12
17
  export { ConcurrencyPolicy, RetryPolicy };
@@ -1,4 +1,4 @@
1
- import { n as mapAllowedValues, t as parseInternal } from "./field-runtime-9bfXBAOK.mjs";
1
+ import { n as mapAllowedValues, t as parseInternal } from "./field-runtime-D4QWRiB1.mjs";
2
2
 
3
3
  //#region src/configure/types/type.ts
4
4
  function createTailorField(type, options, fields, values, metadata) {
@@ -196,4 +196,4 @@ const t = {
196
196
 
197
197
  //#endregion
198
198
  export { t };
199
- //# sourceMappingURL=types-BwzB2okW.mjs.map
199
+ //# sourceMappingURL=types-BzJ7A_fn.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"types-BwzB2okW.mjs","names":["parseInternal","parseFieldInternal"],"sources":["../src/configure/types/type.ts"],"sourcesContent":["import { type AllowedValues, type AllowedValuesOutput, mapAllowedValues } from \"./field\";\nimport {\n parseInternal as parseFieldInternal,\n type FieldParseArgs,\n type FieldParseInternalArgs,\n} from \"./field-runtime\";\nimport type {\n DefinedFieldMetadata,\n TailorFieldType,\n TailorToTs,\n FieldMetadata,\n FieldOptions,\n FieldOutput,\n TailorField as TailorFieldBase,\n FieldValidateInput,\n} from \"#/configure/types/field.types\";\nimport type { InferFieldsOutput, TypeLevelError } from \"#/types/helpers\";\nimport type { StandardSchemaV1 } from \"@standard-schema/spec\";\n\n// Erased fields stay assignable across builder method-state changes.\n// oxlint-disable-next-line no-explicit-any\ntype AnyBuilderMethod = any;\n\nexport type TailorAnyField = Omit<\n TailorFieldBase<AnyBuilderMethod, AnyBuilderMethod, FieldMetadata, TailorFieldType>,\n \"fields\"\n> & {\n readonly fields: Record<string, AnyBuilderMethod>;\n _metadata: FieldMetadata;\n description: AnyBuilderMethod;\n typeName: AnyBuilderMethod;\n validate: AnyBuilderMethod;\n parse: AnyBuilderMethod;\n _parseInternal: AnyBuilderMethod;\n};\n\ntype IsAny<T> = 0 extends 1 & T ? true : false;\ntype WithFieldDescription<Defined> = Defined & { description: true };\ntype WithFieldTypeName<Defined> = Defined & { typeName: true };\ntype WithFieldValidate<Defined> = Defined & { validate: true };\ntype FieldDescriptionFn<Defined extends DefinedFieldMetadata, Output> = (\n description: string,\n) => TailorField<WithFieldDescription<Defined>, Output>;\ntype FieldTypeNameFn<Defined extends DefinedFieldMetadata, Output> = (\n typeName: string,\n) => TailorField<WithFieldTypeName<Defined>, Output>;\ntype FieldValidateFn<Defined extends DefinedFieldMetadata, Output> = (\n ...validate: FieldValidateInput<Output>[]\n) => TailorField<WithFieldValidate<Defined>, Output>;\ntype FieldDescriptionMethod<Defined extends DefinedFieldMetadata, Output> =\n IsAny<Defined> extends true\n ? FieldDescriptionFn<Defined, Output>\n : Defined extends { description: unknown }\n ? TypeLevelError<\".description() has already been set\">\n : FieldDescriptionFn<Defined, Output>;\ntype FieldTypeNameMethod<Defined extends DefinedFieldMetadata, Output> =\n IsAny<Defined> extends true\n ? TypeLevelError<string>\n : Defined extends { typeName: unknown }\n ? TypeLevelError<\".typeName() has already been set\">\n : Defined extends { type: \"enum\" | \"nested\" }\n ? FieldTypeNameFn<Defined, Output>\n : TypeLevelError<\"typeName can only be set on enum or object fields\">;\ntype FieldValidateMethod<Defined extends DefinedFieldMetadata, Output> =\n IsAny<Defined> extends true\n ? FieldValidateFn<Defined, Output>\n : Defined extends { validate: unknown }\n ? TypeLevelError<\".validate() has already been set\">\n : FieldValidateFn<Defined, Output>;\n\n/**\n * Full TailorField interface with builder methods.\n * Extends the minimal structural interface from types/ with fluent API methods.\n */\nexport interface TailorField<\n Defined extends DefinedFieldMetadata = DefinedFieldMetadata,\n // Generic default output type (kept loose on purpose for library ergonomics).\n // oxlint-disable-next-line no-explicit-any\n Output = any,\n M extends FieldMetadata = FieldMetadata,\n T extends TailorFieldType = TailorFieldType,\n> extends TailorFieldBase<Defined, Output, M, T> {\n readonly fields: Record<string, TailorAnyField>;\n _metadata: M;\n\n /**\n * Set a description for the field\n * @param description - The description text\n * @returns The field with updated metadata\n */\n description: FieldDescriptionMethod<Defined, Output>;\n\n /**\n * Set a custom type name for enum or nested types\n * @param typeName - The custom type name\n * @returns The field with updated metadata\n */\n typeName: FieldTypeNameMethod<Defined, Output>;\n\n /**\n * Add validation functions to the field\n * @param validate - One or more validation functions\n * @returns The field with updated metadata\n */\n validate: FieldValidateMethod<Defined, Output>;\n\n /**\n * Parse and validate a value against this field's validation rules\n * Returns StandardSchema Result type with success or failure\n * @param args - Value, context data, and user\n * @returns Validation result\n */\n parse(args: FieldParseArgs): StandardSchemaV1.Result<Output>;\n\n /**\n * Internal parse method that tracks field path for nested validation\n * @private\n * @param args - Parse arguments\n * @returns Validation result\n */\n _parseInternal(args: FieldParseInternalArgs): StandardSchemaV1.Result<Output>;\n}\n\n/**\n * Internal shape carried by every runtime field for clone-on-write support.\n *\n * `clone()` is intentionally kept off the public {@link TailorField} interface:\n * adding it there would force `TailorDBField` (which has a differently-typed\n * `clone`) to stop being assignable to `TailorField`, breaking the supported\n * `t.object({ field: db.string() })` usage. Every `t.*` and `db.*` field carries\n * a `clone()` at runtime, so the internal cast in `clone()` is safe.\n */\ntype CloneableField = { clone(): TailorAnyField };\n\ntype TailorFieldRuntime<\n Defined extends DefinedFieldMetadata,\n Output,\n M extends FieldMetadata = FieldMetadata,\n T extends TailorFieldType = TailorFieldType,\n> = TailorFieldBase<Defined, Output, M, T> & {\n readonly fields: Record<string, TailorAnyField>;\n _metadata: M;\n description(description: string): object;\n typeName(typeName: string): object;\n validate(...validate: FieldValidateInput<Output>[]): object;\n parse(args: FieldParseArgs): StandardSchemaV1.Result<Output>;\n _parseInternal(args: FieldParseInternalArgs): StandardSchemaV1.Result<Output>;\n clone(): TailorAnyField;\n};\n\n/**\n * Creates a new TailorField instance.\n * @param type - Field type\n * @param options - Field options\n * @param fields - Nested fields for object-like types\n * @param values - Allowed values for enum-like fields\n * @param metadata - Pre-built metadata to clone from (used by `clone()`); when\n * given, the mutable containers are deep-copied here and `options`/`values` are\n * ignored for metadata construction\n * @returns A new TailorField\n */\nfunction createTailorField<\n const T extends TailorFieldType,\n const TOptions extends FieldOptions,\n const OutputBase = TailorToTs[T],\n>(\n type: T,\n options?: TOptions,\n fields?: Record<string, TailorAnyField>,\n values?: AllowedValues,\n metadata?: FieldMetadata,\n): TailorField<\n { type: T; array: TOptions extends { array: true } ? true : false },\n FieldOutput<OutputBase, TOptions>\n>;\nfunction createTailorField<\n const T extends TailorFieldType,\n const TOptions extends FieldOptions,\n const OutputBase = TailorToTs[T],\n>(\n type: T,\n options?: TOptions,\n fields?: Record<string, TailorAnyField>,\n values?: AllowedValues,\n metadata?: FieldMetadata,\n): object {\n type FieldValue = FieldOutput<OutputBase, TOptions>;\n\n // When cloning, take ownership of the source metadata and deep-copy its mutable\n // containers (enum value objects and `[fn, message]` validator tuples; validator\n // functions are kept by reference) so no two instances share mutable state.\n const _metadata: FieldMetadata = metadata\n ? {\n ...metadata,\n ...(metadata.allowedValues && {\n allowedValues: metadata.allowedValues.map((v) => ({ ...v })),\n }),\n ...(metadata.validate && {\n validate: metadata.validate.map((v) => (Array.isArray(v) ? ([...v] as typeof v) : v)),\n }),\n }\n : { required: true };\n\n if (!metadata) {\n if (options) {\n if (options.optional === true) {\n _metadata.required = false;\n }\n if (options.array === true) {\n _metadata.array = true;\n }\n }\n if (values) {\n _metadata.allowedValues = mapAllowedValues(values);\n }\n }\n\n function parseInternal(\n args: FieldParseInternalArgs,\n ): StandardSchemaV1.Result<FieldOutput<OutputBase, TOptions>> {\n return parseFieldInternal<T, FieldOutput<OutputBase, TOptions>>({\n ...args,\n field,\n });\n }\n\n /**\n * Clone the field and apply metadata updates to the clone.\n * The original instance is never mutated, so a field shared across places\n * cannot leak metadata between them.\n * @param metadataUpdates - Metadata properties to overwrite on the clone\n * @returns A new field with the updated metadata\n */\n function cloneWith(metadataUpdates: Partial<FieldMetadata>) {\n const cloned = field.clone();\n Object.assign(cloned._metadata, metadataUpdates);\n return cloned;\n }\n\n const field: TailorFieldRuntime<\n { type: T; array: TOptions extends { array: true } ? true : false },\n FieldValue,\n FieldMetadata,\n T\n > = {\n type,\n fields: fields ?? {},\n _defined: undefined as unknown as {\n type: T;\n array: TOptions extends { array: true } ? true : false;\n },\n _output: undefined as FieldOutput<OutputBase, TOptions>,\n _metadata,\n\n get metadata() {\n return { ...this._metadata };\n },\n\n description(description: string) {\n // Clone-on-write so a shared field instance never leaks metadata.\n return cloneWith({ description });\n },\n\n typeName(typeName: string) {\n // Clone-on-write so a shared field instance never leaks metadata.\n return cloneWith({ typeName });\n },\n\n validate(...validateInputs: FieldValidateInput<FieldValue>[]) {\n // Clone-on-write so a shared field instance never leaks metadata.\n return cloneWith({ validate: validateInputs });\n },\n\n parse(args: FieldParseArgs): StandardSchemaV1.Result<FieldOutput<OutputBase, TOptions>> {\n return parseInternal({\n value: args.value,\n data: args.data,\n user: args.user,\n pathArray: [],\n });\n },\n\n _parseInternal: parseInternal,\n\n clone() {\n // Deep clone nested object fields so the new instance shares no mutable state.\n let clonedFields = fields;\n if (fields) {\n const cloned: Record<string, TailorAnyField> = {};\n for (const [key, nestedField] of Object.entries(fields)) {\n // Both t.* and db.* fields carry clone() at runtime (see CloneableField).\n cloned[key] = (nestedField as TailorAnyField & CloneableField).clone();\n }\n clonedFields = cloned;\n }\n\n // Rebuild via the factory, handing it this field's metadata so the new\n // parseInternal closure rebinds to the clone and the factory owns the metadata deep-copy.\n // oxlint-disable-next-line no-explicit-any\n return createTailorField(type, options, clonedFields, values, this._metadata) as any;\n },\n };\n\n return field;\n}\n\n/**\n * Create a UUID field for resolver input/output.\n * @param options - Field configuration options\n * @returns A UUID field\n * @example t.uuid()\n */\nfunction uuid<const Opt extends FieldOptions>(options?: Opt) {\n return createTailorField(\"uuid\", options);\n}\n\n/**\n * Create a string field for resolver input/output.\n * @param options - Field configuration options\n * @returns A string field\n * @example t.string()\n * @example t.string({ optional: true })\n * @example t.string({ array: true })\n */\nfunction string<const Opt extends FieldOptions>(options?: Opt) {\n return createTailorField(\"string\", options);\n}\n\n/**\n * Create a boolean field for resolver input/output.\n * @param options - Field configuration options\n * @returns A boolean field\n * @example t.bool()\n */\nfunction bool<const Opt extends FieldOptions>(options?: Opt) {\n return createTailorField(\"boolean\", options);\n}\n\n/**\n * Create an integer field for resolver input/output.\n * @param options - Field configuration options\n * @returns An integer field\n * @example t.int()\n */\nfunction int<const Opt extends FieldOptions>(options?: Opt) {\n return createTailorField(\"integer\", options);\n}\n\n/**\n * Create a float field for resolver input/output.\n * @param options - Field configuration options\n * @returns A float field\n * @example t.float()\n */\nfunction float<const Opt extends FieldOptions>(options?: Opt) {\n return createTailorField(\"float\", options);\n}\n\n/**\n * Create a decimal field for resolver input/output (stored as string for precision).\n * @param options - Field configuration options\n * @returns A decimal field\n * @example t.decimal()\n * @example t.decimal({ optional: true })\n */\nfunction decimal<const Opt extends FieldOptions>(options?: Opt) {\n return createTailorField(\"decimal\", options);\n}\n\n/**\n * Create a date field for resolver input/output.\n * @param options - Field configuration options\n * @returns A date field\n * @example t.date()\n */\nfunction date<const Opt extends FieldOptions>(options?: Opt) {\n return createTailorField(\"date\", options);\n}\n\n/**\n * Create a datetime field for resolver input/output.\n * @param options - Field configuration options\n * @returns A datetime field\n * @example t.datetime()\n */\nfunction datetime<const Opt extends FieldOptions>(options?: Opt) {\n return createTailorField(\"datetime\", options);\n}\n\n/**\n * Create a time field for resolver input/output.\n * @param options - Field configuration options\n * @returns A time field\n * @example t.time()\n */\nfunction time<const Opt extends FieldOptions>(options?: Opt) {\n return createTailorField(\"time\", options);\n}\n\n/**\n * Create an enum field for resolver input/output.\n * @param values - Array of allowed string values\n * @param options - Field configuration options\n * @returns An enum field\n * @example t.enum([\"active\", \"inactive\"])\n */\nfunction _enum<const V extends AllowedValues, const Opt extends FieldOptions>(\n values: V,\n options?: Opt,\n): TailorField<\n { type: \"enum\"; array: Opt extends { array: true } ? true : false },\n FieldOutput<AllowedValuesOutput<V>, Opt>\n> {\n return createTailorField<\"enum\", Opt, AllowedValuesOutput<V>>(\"enum\", options, undefined, values);\n}\n\n/**\n * Create a nested object field for resolver input/output.\n * @param fields - Record of field definitions\n * @param options - Field options (optional, array)\n * @returns A nested object field\n * @example\n * // Single object:\n * output: t.object({ name: t.string(), email: t.string() })\n * @example\n * // Array of objects:\n * items: t.object({ name: t.string() }, { array: true })\n */\nfunction object<const F extends Record<string, TailorAnyField>, const Opt extends FieldOptions>(\n fields: F,\n options?: Opt,\n) {\n const objectField = createTailorField(\"nested\", options, fields) as TailorField<\n { type: \"nested\"; array: Opt extends { array: true } ? true : false },\n FieldOutput<InferFieldsOutput<F>, Opt>\n >;\n return objectField;\n}\n\nexport const t = {\n uuid,\n string,\n bool,\n int,\n float,\n decimal,\n date,\n datetime,\n time,\n enum: _enum,\n object,\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"types-BzJ7A_fn.mjs","names":["parseInternal","parseFieldInternal"],"sources":["../src/configure/types/type.ts"],"sourcesContent":["import { type AllowedValues, type AllowedValuesOutput, mapAllowedValues } from \"./field\";\nimport {\n parseInternal as parseFieldInternal,\n type FieldParseArgs,\n type FieldParseInternalArgs,\n} from \"./field-runtime\";\nimport type {\n DefinedFieldMetadata,\n TailorFieldType,\n TailorToTs,\n FieldMetadata,\n FieldOptions,\n FieldOutput,\n TailorField as TailorFieldBase,\n FieldValidateInput,\n} from \"#/configure/types/field.types\";\nimport type { InferFieldsOutput, TypeLevelError } from \"#/types/helpers\";\nimport type { StandardSchemaV1 } from \"@standard-schema/spec\";\n\n// Erased fields stay assignable across builder method-state changes.\n// oxlint-disable-next-line no-explicit-any\ntype AnyBuilderMethod = any;\n\nexport type TailorAnyField = Omit<\n TailorFieldBase<AnyBuilderMethod, AnyBuilderMethod, FieldMetadata, TailorFieldType>,\n \"fields\"\n> & {\n readonly fields: Record<string, AnyBuilderMethod>;\n _metadata: FieldMetadata;\n description: AnyBuilderMethod;\n typeName: AnyBuilderMethod;\n validate: AnyBuilderMethod;\n parse: AnyBuilderMethod;\n _parseInternal: AnyBuilderMethod;\n};\n\ntype IsAny<T> = 0 extends 1 & T ? true : false;\ntype WithFieldDescription<Defined> = Defined & { description: true };\ntype WithFieldTypeName<Defined> = Defined & { typeName: true };\ntype WithFieldValidate<Defined> = Defined & { validate: true };\ntype FieldDescriptionFn<Defined extends DefinedFieldMetadata, Output> = (\n description: string,\n) => TailorField<WithFieldDescription<Defined>, Output>;\ntype FieldTypeNameFn<Defined extends DefinedFieldMetadata, Output> = (\n typeName: string,\n) => TailorField<WithFieldTypeName<Defined>, Output>;\ntype FieldValidateFn<Defined extends DefinedFieldMetadata, Output> = (\n ...validate: FieldValidateInput<Output>[]\n) => TailorField<WithFieldValidate<Defined>, Output>;\ntype FieldDescriptionMethod<Defined extends DefinedFieldMetadata, Output> =\n IsAny<Defined> extends true\n ? FieldDescriptionFn<Defined, Output>\n : Defined extends { description: unknown }\n ? TypeLevelError<\".description() has already been set\">\n : FieldDescriptionFn<Defined, Output>;\ntype FieldTypeNameMethod<Defined extends DefinedFieldMetadata, Output> =\n IsAny<Defined> extends true\n ? TypeLevelError<string>\n : Defined extends { typeName: unknown }\n ? TypeLevelError<\".typeName() has already been set\">\n : Defined extends { type: \"enum\" | \"nested\" }\n ? FieldTypeNameFn<Defined, Output>\n : TypeLevelError<\"typeName can only be set on enum or object fields\">;\ntype FieldValidateMethod<Defined extends DefinedFieldMetadata, Output> =\n IsAny<Defined> extends true\n ? FieldValidateFn<Defined, Output>\n : Defined extends { validate: unknown }\n ? TypeLevelError<\".validate() has already been set\">\n : FieldValidateFn<Defined, Output>;\n\n/**\n * Full TailorField interface with builder methods.\n * Extends the minimal structural interface from types/ with fluent API methods.\n */\nexport interface TailorField<\n Defined extends DefinedFieldMetadata = DefinedFieldMetadata,\n // Generic default output type (kept loose on purpose for library ergonomics).\n // oxlint-disable-next-line no-explicit-any\n Output = any,\n M extends FieldMetadata = FieldMetadata,\n T extends TailorFieldType = TailorFieldType,\n> extends TailorFieldBase<Defined, Output, M, T> {\n readonly fields: Record<string, TailorAnyField>;\n _metadata: M;\n\n /**\n * Set a description for the field\n * @param description - The description text\n * @returns The field with updated metadata\n */\n description: FieldDescriptionMethod<Defined, Output>;\n\n /**\n * Set a custom type name for enum or nested types\n * @param typeName - The custom type name\n * @returns The field with updated metadata\n */\n typeName: FieldTypeNameMethod<Defined, Output>;\n\n /**\n * Add validation functions to the field\n * @param validate - One or more validation functions\n * @returns The field with updated metadata\n */\n validate: FieldValidateMethod<Defined, Output>;\n\n /**\n * Parse and validate a value against this field's validation rules\n * Returns StandardSchema Result type with success or failure\n * @param args - Value, context data, and user\n * @returns Validation result\n */\n parse(args: FieldParseArgs): StandardSchemaV1.Result<Output>;\n\n /**\n * Internal parse method that tracks field path for nested validation\n * @private\n * @param args - Parse arguments\n * @returns Validation result\n */\n _parseInternal(args: FieldParseInternalArgs): StandardSchemaV1.Result<Output>;\n}\n\n/**\n * Internal shape carried by every runtime field for clone-on-write support.\n *\n * `clone()` is intentionally kept off the public {@link TailorField} interface:\n * adding it there would force `TailorDBField` (which has a differently-typed\n * `clone`) to stop being assignable to `TailorField`, breaking the supported\n * `t.object({ field: db.string() })` usage. Every `t.*` and `db.*` field carries\n * a `clone()` at runtime, so the internal cast in `clone()` is safe.\n */\ntype CloneableField = { clone(): TailorAnyField };\n\ntype TailorFieldRuntime<\n Defined extends DefinedFieldMetadata,\n Output,\n M extends FieldMetadata = FieldMetadata,\n T extends TailorFieldType = TailorFieldType,\n> = TailorFieldBase<Defined, Output, M, T> & {\n readonly fields: Record<string, TailorAnyField>;\n _metadata: M;\n description(description: string): object;\n typeName(typeName: string): object;\n validate(...validate: FieldValidateInput<Output>[]): object;\n parse(args: FieldParseArgs): StandardSchemaV1.Result<Output>;\n _parseInternal(args: FieldParseInternalArgs): StandardSchemaV1.Result<Output>;\n clone(): TailorAnyField;\n};\n\n/**\n * Creates a new TailorField instance.\n * @param type - Field type\n * @param options - Field options\n * @param fields - Nested fields for object-like types\n * @param values - Allowed values for enum-like fields\n * @param metadata - Pre-built metadata to clone from (used by `clone()`); when\n * given, the mutable containers are deep-copied here and `options`/`values` are\n * ignored for metadata construction\n * @returns A new TailorField\n */\nfunction createTailorField<\n const T extends TailorFieldType,\n const TOptions extends FieldOptions,\n const OutputBase = TailorToTs[T],\n>(\n type: T,\n options?: TOptions,\n fields?: Record<string, TailorAnyField>,\n values?: AllowedValues,\n metadata?: FieldMetadata,\n): TailorField<\n { type: T; array: TOptions extends { array: true } ? true : false },\n FieldOutput<OutputBase, TOptions>\n>;\nfunction createTailorField<\n const T extends TailorFieldType,\n const TOptions extends FieldOptions,\n const OutputBase = TailorToTs[T],\n>(\n type: T,\n options?: TOptions,\n fields?: Record<string, TailorAnyField>,\n values?: AllowedValues,\n metadata?: FieldMetadata,\n): object {\n type FieldValue = FieldOutput<OutputBase, TOptions>;\n\n // When cloning, take ownership of the source metadata and deep-copy its mutable\n // containers (enum value objects and `[fn, message]` validator tuples; validator\n // functions are kept by reference) so no two instances share mutable state.\n const _metadata: FieldMetadata = metadata\n ? {\n ...metadata,\n ...(metadata.allowedValues && {\n allowedValues: metadata.allowedValues.map((v) => ({ ...v })),\n }),\n ...(metadata.validate && {\n validate: metadata.validate.map((v) => (Array.isArray(v) ? ([...v] as typeof v) : v)),\n }),\n }\n : { required: true };\n\n if (!metadata) {\n if (options) {\n if (options.optional === true) {\n _metadata.required = false;\n }\n if (options.array === true) {\n _metadata.array = true;\n }\n }\n if (values) {\n _metadata.allowedValues = mapAllowedValues(values);\n }\n }\n\n function parseInternal(\n args: FieldParseInternalArgs,\n ): StandardSchemaV1.Result<FieldOutput<OutputBase, TOptions>> {\n return parseFieldInternal<T, FieldOutput<OutputBase, TOptions>>({\n ...args,\n field,\n });\n }\n\n /**\n * Clone the field and apply metadata updates to the clone.\n * The original instance is never mutated, so a field shared across places\n * cannot leak metadata between them.\n * @param metadataUpdates - Metadata properties to overwrite on the clone\n * @returns A new field with the updated metadata\n */\n function cloneWith(metadataUpdates: Partial<FieldMetadata>) {\n const cloned = field.clone();\n Object.assign(cloned._metadata, metadataUpdates);\n return cloned;\n }\n\n const field: TailorFieldRuntime<\n { type: T; array: TOptions extends { array: true } ? true : false },\n FieldValue,\n FieldMetadata,\n T\n > = {\n type,\n fields: fields ?? {},\n _defined: undefined as unknown as {\n type: T;\n array: TOptions extends { array: true } ? true : false;\n },\n _output: undefined as FieldOutput<OutputBase, TOptions>,\n _metadata,\n\n get metadata() {\n return { ...this._metadata };\n },\n\n description(description: string) {\n // Clone-on-write so a shared field instance never leaks metadata.\n return cloneWith({ description });\n },\n\n typeName(typeName: string) {\n // Clone-on-write so a shared field instance never leaks metadata.\n return cloneWith({ typeName });\n },\n\n validate(...validateInputs: FieldValidateInput<FieldValue>[]) {\n // Clone-on-write so a shared field instance never leaks metadata.\n return cloneWith({ validate: validateInputs });\n },\n\n parse(args: FieldParseArgs): StandardSchemaV1.Result<FieldOutput<OutputBase, TOptions>> {\n return parseInternal({\n value: args.value,\n data: args.data,\n user: args.user,\n pathArray: [],\n });\n },\n\n _parseInternal: parseInternal,\n\n clone() {\n // Deep clone nested object fields so the new instance shares no mutable state.\n let clonedFields = fields;\n if (fields) {\n const cloned: Record<string, TailorAnyField> = {};\n for (const [key, nestedField] of Object.entries(fields)) {\n // Both t.* and db.* fields carry clone() at runtime (see CloneableField).\n cloned[key] = (nestedField as TailorAnyField & CloneableField).clone();\n }\n clonedFields = cloned;\n }\n\n // Rebuild via the factory, handing it this field's metadata so the new\n // parseInternal closure rebinds to the clone and the factory owns the metadata deep-copy.\n // oxlint-disable-next-line no-explicit-any\n return createTailorField(type, options, clonedFields, values, this._metadata) as any;\n },\n };\n\n return field;\n}\n\n/**\n * Create a UUID field for resolver input/output.\n * @param options - Field configuration options\n * @returns A UUID field\n * @example t.uuid()\n */\nfunction uuid<const Opt extends FieldOptions>(options?: Opt) {\n return createTailorField(\"uuid\", options);\n}\n\n/**\n * Create a string field for resolver input/output.\n * @param options - Field configuration options\n * @returns A string field\n * @example t.string()\n * @example t.string({ optional: true })\n * @example t.string({ array: true })\n */\nfunction string<const Opt extends FieldOptions>(options?: Opt) {\n return createTailorField(\"string\", options);\n}\n\n/**\n * Create a boolean field for resolver input/output.\n * @param options - Field configuration options\n * @returns A boolean field\n * @example t.bool()\n */\nfunction bool<const Opt extends FieldOptions>(options?: Opt) {\n return createTailorField(\"boolean\", options);\n}\n\n/**\n * Create an integer field for resolver input/output.\n * @param options - Field configuration options\n * @returns An integer field\n * @example t.int()\n */\nfunction int<const Opt extends FieldOptions>(options?: Opt) {\n return createTailorField(\"integer\", options);\n}\n\n/**\n * Create a float field for resolver input/output.\n * @param options - Field configuration options\n * @returns A float field\n * @example t.float()\n */\nfunction float<const Opt extends FieldOptions>(options?: Opt) {\n return createTailorField(\"float\", options);\n}\n\n/**\n * Create a decimal field for resolver input/output (stored as string for precision).\n * @param options - Field configuration options\n * @returns A decimal field\n * @example t.decimal()\n * @example t.decimal({ optional: true })\n */\nfunction decimal<const Opt extends FieldOptions>(options?: Opt) {\n return createTailorField(\"decimal\", options);\n}\n\n/**\n * Create a date field for resolver input/output.\n * @param options - Field configuration options\n * @returns A date field\n * @example t.date()\n */\nfunction date<const Opt extends FieldOptions>(options?: Opt) {\n return createTailorField(\"date\", options);\n}\n\n/**\n * Create a datetime field for resolver input/output.\n * @param options - Field configuration options\n * @returns A datetime field\n * @example t.datetime()\n */\nfunction datetime<const Opt extends FieldOptions>(options?: Opt) {\n return createTailorField(\"datetime\", options);\n}\n\n/**\n * Create a time field for resolver input/output.\n * @param options - Field configuration options\n * @returns A time field\n * @example t.time()\n */\nfunction time<const Opt extends FieldOptions>(options?: Opt) {\n return createTailorField(\"time\", options);\n}\n\n/**\n * Create an enum field for resolver input/output.\n * @param values - Array of allowed string values\n * @param options - Field configuration options\n * @returns An enum field\n * @example t.enum([\"active\", \"inactive\"])\n */\nfunction _enum<const V extends AllowedValues, const Opt extends FieldOptions>(\n values: V,\n options?: Opt,\n): TailorField<\n { type: \"enum\"; array: Opt extends { array: true } ? true : false },\n FieldOutput<AllowedValuesOutput<V>, Opt>\n> {\n return createTailorField<\"enum\", Opt, AllowedValuesOutput<V>>(\"enum\", options, undefined, values);\n}\n\n/**\n * Create a nested object field for resolver input/output.\n * @param fields - Record of field definitions\n * @param options - Field options (optional, array)\n * @returns A nested object field\n * @example\n * // Single object:\n * output: t.object({ name: t.string(), email: t.string() })\n * @example\n * // Array of objects:\n * items: t.object({ name: t.string() }, { array: true })\n */\nfunction object<const F extends Record<string, TailorAnyField>, const Opt extends FieldOptions>(\n fields: F,\n options?: Opt,\n) {\n const objectField = createTailorField(\"nested\", options, fields) as TailorField<\n { type: \"nested\"; array: Opt extends { array: true } ? true : false },\n FieldOutput<InferFieldsOutput<F>, Opt>\n >;\n return objectField;\n}\n\nexport const t = {\n uuid,\n string,\n bool,\n int,\n float,\n decimal,\n date,\n datetime,\n time,\n enum: _enum,\n object,\n};\n"],"mappings":";;;AA+KA,SAAS,kBAKP,MACA,SACA,QACA,QACA,UACQ;CAMR,MAAM,YAA2B,WAC7B;EACE,GAAG;EACH,GAAI,SAAS,iBAAiB,EAC5B,eAAe,SAAS,cAAc,KAAK,OAAO,EAAE,GAAG,EAAE,EAAE,EAC7D;EACA,GAAI,SAAS,YAAY,EACvB,UAAU,SAAS,SAAS,KAAK,MAAO,MAAM,QAAQ,CAAC,IAAK,CAAC,GAAG,CAAC,IAAiB,CAAE,EACtF;CACF,IACA,EAAE,UAAU,KAAK;CAErB,IAAI,CAAC,UAAU;EACb,IAAI,SAAS;GACX,IAAI,QAAQ,aAAa,MACvB,UAAU,WAAW;GAEvB,IAAI,QAAQ,UAAU,MACpB,UAAU,QAAQ;EAEtB;EACA,IAAI,QACF,UAAU,gBAAgB,iBAAiB,MAAM;CAErD;CAEA,SAASA,gBACP,MAC4D;EAC5D,OAAOC,cAAyD;GAC9D,GAAG;GACH;EACF,CAAC;CACH;;;;;;;;CASA,SAAS,UAAU,iBAAyC;EAC1D,MAAM,SAAS,MAAM,MAAM;EAC3B,OAAO,OAAO,OAAO,WAAW,eAAe;EAC/C,OAAO;CACT;CAEA,MAAM,QAKF;EACF;EACA,QAAQ,UAAU,CAAC;EACnB,UAAU;EAIV,SAAS;EACT;EAEA,IAAI,WAAW;GACb,OAAO,EAAE,GAAG,KAAK,UAAU;EAC7B;EAEA,YAAY,aAAqB;GAE/B,OAAO,UAAU,EAAE,YAAY,CAAC;EAClC;EAEA,SAAS,UAAkB;GAEzB,OAAO,UAAU,EAAE,SAAS,CAAC;EAC/B;EAEA,SAAS,GAAG,gBAAkD;GAE5D,OAAO,UAAU,EAAE,UAAU,eAAe,CAAC;EAC/C;EAEA,MAAM,MAAkF;GACtF,OAAOD,gBAAc;IACnB,OAAO,KAAK;IACZ,MAAM,KAAK;IACX,MAAM,KAAK;IACX,WAAW,CAAC;GACd,CAAC;EACH;EAEA,gBAAgBA;EAEhB,QAAQ;GAEN,IAAI,eAAe;GACnB,IAAI,QAAQ;IACV,MAAM,SAAyC,CAAC;IAChD,KAAK,MAAM,CAAC,KAAK,gBAAgB,OAAO,QAAQ,MAAM,GAEpD,OAAO,OAAQ,YAAgD,MAAM;IAEvE,eAAe;GACjB;GAKA,OAAO,kBAAkB,MAAM,SAAS,cAAc,QAAQ,KAAK,SAAS;EAC9E;CACF;CAEA,OAAO;AACT;;;;;;;AAQA,SAAS,KAAqC,SAAe;CAC3D,OAAO,kBAAkB,QAAQ,OAAO;AAC1C;;;;;;;;;AAUA,SAAS,OAAuC,SAAe;CAC7D,OAAO,kBAAkB,UAAU,OAAO;AAC5C;;;;;;;AAQA,SAAS,KAAqC,SAAe;CAC3D,OAAO,kBAAkB,WAAW,OAAO;AAC7C;;;;;;;AAQA,SAAS,IAAoC,SAAe;CAC1D,OAAO,kBAAkB,WAAW,OAAO;AAC7C;;;;;;;AAQA,SAAS,MAAsC,SAAe;CAC5D,OAAO,kBAAkB,SAAS,OAAO;AAC3C;;;;;;;;AASA,SAAS,QAAwC,SAAe;CAC9D,OAAO,kBAAkB,WAAW,OAAO;AAC7C;;;;;;;AAQA,SAAS,KAAqC,SAAe;CAC3D,OAAO,kBAAkB,QAAQ,OAAO;AAC1C;;;;;;;AAQA,SAAS,SAAyC,SAAe;CAC/D,OAAO,kBAAkB,YAAY,OAAO;AAC9C;;;;;;;AAQA,SAAS,KAAqC,SAAe;CAC3D,OAAO,kBAAkB,QAAQ,OAAO;AAC1C;;;;;;;;AASA,SAAS,MACP,QACA,SAIA;CACA,OAAO,kBAAuD,QAAQ,SAAS,QAAW,MAAM;AAClG;;;;;;;;;;;;;AAcA,SAAS,OACP,QACA,SACA;CAKA,OAJoB,kBAAkB,UAAU,SAAS,MAIxC;AACnB;AAEA,MAAa,IAAI;CACf;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA,MAAM;CACN;AACF"}
@@ -0,0 +1,4 @@
1
+ import { n as mapAllowedValues } from "./field-runtime-D4QWRiB1.mjs";
2
+ import { t } from "./types-BzJ7A_fn.mjs";
3
+
4
+ export { t };
@@ -0,0 +1,28 @@
1
+ import { t as readPackageJson } from "./package-json-8b0O9TlX.mjs";
2
+
3
+ //#region src/cli/shared/user-agent.ts
4
+ /**
5
+ * Build the User-Agent string from an already-known SDK version, without
6
+ * touching the filesystem. Use this when the caller has resolved the version
7
+ * (e.g. crash reporting already reads `package.json`) to avoid a redundant read.
8
+ * @param version - SDK version string
9
+ * @returns User-Agent header value
10
+ */
11
+ function userAgentFromVersion(version) {
12
+ return `tailor-sdk/${version}`;
13
+ }
14
+ /**
15
+ * Build the User-Agent string for CLI requests.
16
+ *
17
+ * Lives in its own module (rather than `client.ts`) so callers that only need
18
+ * the UA — e.g. crash reporting — do not pull in the operator client's heavy
19
+ * OAuth2/Connect/Protobuf dependencies, and so importing it never forms a cycle.
20
+ * @returns User-Agent header value
21
+ */
22
+ async function userAgent() {
23
+ return userAgentFromVersion((await readPackageJson()).version ?? "unknown");
24
+ }
25
+
26
+ //#endregion
27
+ export { userAgentFromVersion as n, userAgent as t };
28
+ //# sourceMappingURL=user-agent-DX2Jnw0-.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-agent-DX2Jnw0-.mjs","names":[],"sources":["../src/cli/shared/user-agent.ts"],"sourcesContent":["import { readPackageJson } from \"./package-json\";\n\n/**\n * Build the User-Agent string from an already-known SDK version, without\n * touching the filesystem. Use this when the caller has resolved the version\n * (e.g. crash reporting already reads `package.json`) to avoid a redundant read.\n * @param version - SDK version string\n * @returns User-Agent header value\n */\nexport function userAgentFromVersion(version: string): string {\n return `tailor-sdk/${version}`;\n}\n\n/**\n * Build the User-Agent string for CLI requests.\n *\n * Lives in its own module (rather than `client.ts`) so callers that only need\n * the UA — e.g. crash reporting — do not pull in the operator client's heavy\n * OAuth2/Connect/Protobuf dependencies, and so importing it never forms a cycle.\n * @returns User-Agent header value\n */\nexport async function userAgent() {\n const packageJson = await readPackageJson();\n return userAgentFromVersion(packageJson.version ?? \"unknown\");\n}\n"],"mappings":";;;;;;;;;;AASA,SAAgB,qBAAqB,SAAyB;CAC5D,OAAO,cAAc;AACvB;;;;;;;;;AAUA,eAAsB,YAAY;CAEhC,OAAO,sBAAqB,MADF,gBAAgB,EACH,CAAC,WAAW,SAAS;AAC9D"}
@@ -4,7 +4,6 @@ import { WORKFLOW_TEST_ENV_KEY } from "../../configure/services/workflow/test-en
4
4
  import { output } from "../../configure/index.mjs";
5
5
  import { createImportMain, setupInvokerMock, setupTailorErrorsMock, setupTailordbMock, setupWaitPointMock, setupWorkflowMock } from "./mock.mjs";
6
6
  import { StandardSchemaV1 } from "@standard-schema/spec";
7
-
8
7
  //#region src/utils/test/index.d.ts
9
8
  /** Represents an unauthenticated user in the Tailor platform. */
10
9
  declare const unauthenticatedTailorUser: {
@@ -1,4 +1,4 @@
1
- import { u as WORKFLOW_TEST_ENV_KEY } from "../../registry-NfSW0BRo.mjs";
1
+ import { t as WORKFLOW_TEST_ENV_KEY } from "../../test-env-key-IPapa1KJ.mjs";
2
2
  import { pathToFileURL } from "node:url";
3
3
  import * as path from "node:path";
4
4
 
@@ -1,5 +1,4 @@
1
1
  import { TailorInvoker } from "../../runtime/types.mjs";
2
-
3
2
  //#region src/utils/test/mock.d.ts
4
3
  type MainFunction = (args: Record<string, unknown>) => unknown | Promise<unknown>;
5
4
  type QueryResolver = (query: string, params: unknown[]) => unknown[];
@@ -1,4 +1,4 @@
1
- import { n as cleanupPlatformGlobals, r as installPlatformGlobals, t as RUNTIME_FLAG_KEY } from "../globals-CcU1ONiK.mjs";
1
+ import { n as cleanupPlatformGlobals, r as installPlatformGlobals, t as RUNTIME_FLAG_KEY } from "../globals-z6zYMjlr.mjs";
2
2
  import * as globals from "globals";
3
3
 
4
4
  //#region src/vitest/environment.ts
@@ -6,9 +6,9 @@ import { mockIdp } from "./mocks/idp.mjs";
6
6
  import { mockSecretmanager } from "./mocks/secretmanager.mjs";
7
7
  import { mockTailordb } from "./mocks/tailordb.mjs";
8
8
  import { mockWorkflow } from "./mocks/workflow.mjs";
9
+ import "./mock.mjs";
9
10
  import { ExecutedQuery, KyselyMock, createKyselyMock } from "./mock-kysely.mjs";
10
11
  import { Plugin } from "vitest/config";
11
-
12
12
  //#region src/vitest/index.d.ts
13
13
  /**
14
14
  * Creates Vitest plugins that emulate the Tailor Platform function runtime environment.
@@ -1,4 +1,5 @@
1
- import { a as getRegisteredWorkflow, d as buildJobContext, f as clearWorkflowTestEnv, i as getRegisteredJob, m as platformSerialize, p as writeWorkflowTestEnv, t as TRIGGER_DEFAULT } from "../registry-NfSW0BRo.mjs";
1
+ import { a as getRegisteredWorkflow, i as getRegisteredJob, t as TRIGGER_DEFAULT, u as platformSerialize } from "../registry-CTgoVWc_.mjs";
2
+ import { i as writeWorkflowTestEnv, n as buildJobContext, r as clearWorkflowTestEnv } from "../test-env-key-IPapa1KJ.mjs";
2
3
  import { t as assertDefined } from "../assert-DBxo8jPo.mjs";
3
4
  import { i as withDispose, n as tailorRoot, r as tailordbRoot, t as mockSecretmanager } from "../secretmanager-Bd45j7an.mjs";
4
5
  import { builtinModules } from "node:module";