@tailor-platform/sdk 2.0.0-next.1 → 2.0.0-next.3

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 (429) hide show
  1. package/CHANGELOG.md +514 -2
  2. package/README.md +9 -9
  3. package/agent-skills/{tailor-sdk → tailor}/SKILL.md +3 -1
  4. package/dist/aigateway-B3oZZE6v.mjs +15 -0
  5. package/dist/aigateway-B3oZZE6v.mjs.map +1 -0
  6. package/dist/application-D2hSK1ZL.mjs +3 -0
  7. package/dist/{application-DqS1yBg3.mjs → application-eHp9jXld.mjs} +1397 -684
  8. package/dist/application-eHp9jXld.mjs.map +1 -0
  9. package/dist/{authconnection-D2MhtTN5.mjs → authconnection-BGQM8FZI.mjs} +2 -2
  10. package/dist/authconnection-BGQM8FZI.mjs.map +1 -0
  11. package/dist/cli/cache/bundle-cache.d.mts +1 -0
  12. package/dist/cli/cache/store.d.mts +1 -0
  13. package/dist/cli/cache/types.d.mts +1 -0
  14. package/dist/cli/commands/api/api-call.d.mts +19 -0
  15. package/dist/cli/commands/api/index.d.mts +3 -0
  16. package/dist/cli/commands/deploy/aigateway.d.mts +1 -0
  17. package/dist/cli/commands/deploy/application.d.mts +1 -0
  18. package/dist/cli/commands/deploy/apply-phases.d.mts +1 -0
  19. package/dist/cli/commands/deploy/auth.d.mts +1 -0
  20. package/dist/cli/commands/deploy/deploy.d.mts +24 -0
  21. package/dist/cli/commands/deploy/executor.d.mts +1 -0
  22. package/dist/cli/commands/deploy/function-registry-types.d.mts +12 -0
  23. package/dist/cli/commands/deploy/function-registry.d.mts +2 -0
  24. package/dist/cli/commands/deploy/idp.d.mts +1 -0
  25. package/dist/cli/commands/deploy/resolver.d.mts +1 -0
  26. package/dist/cli/commands/deploy/secret-manager.d.mts +1 -0
  27. package/dist/cli/commands/deploy/staticwebsite.d.mts +1 -0
  28. package/dist/cli/commands/deploy/tailordb/index.d.mts +1 -0
  29. package/dist/cli/commands/deploy/types.d.mts +1 -0
  30. package/dist/cli/commands/deploy/workflow.d.mts +1 -0
  31. package/dist/cli/commands/executor/get.d.mts +29 -0
  32. package/dist/cli/commands/executor/jobs.d.mts +123 -0
  33. package/dist/cli/commands/executor/list.d.mts +19 -0
  34. package/dist/cli/commands/executor/transform.d.mts +41 -0
  35. package/dist/cli/commands/executor/trigger.d.mts +41 -0
  36. package/dist/cli/commands/executor/webhook.d.mts +22 -0
  37. package/dist/cli/commands/function/get.d.mts +18 -0
  38. package/dist/cli/commands/function/list.d.mts +22 -0
  39. package/dist/cli/commands/function/transform.d.mts +11 -0
  40. package/dist/cli/commands/generate/options.d.mts +7 -0
  41. package/dist/cli/commands/generate/seed/bundler.d.mts +26 -0
  42. package/dist/cli/commands/generate/service.d.mts +11 -0
  43. package/dist/cli/commands/machineuser/list.d.mts +27 -0
  44. package/dist/cli/commands/machineuser/token.d.mts +22 -0
  45. package/dist/cli/commands/oauth2client/get.d.mts +18 -0
  46. package/dist/cli/commands/oauth2client/list.d.mts +20 -0
  47. package/dist/cli/commands/oauth2client/transform.d.mts +20 -0
  48. package/dist/cli/commands/organization/folder/create.d.mts +18 -0
  49. package/dist/cli/commands/organization/folder/delete.d.mts +16 -0
  50. package/dist/cli/commands/organization/folder/get.d.mts +17 -0
  51. package/dist/cli/commands/organization/folder/list.d.mts +22 -0
  52. package/dist/cli/commands/organization/folder/update.d.mts +18 -0
  53. package/dist/cli/commands/organization/get.d.mts +16 -0
  54. package/dist/cli/commands/organization/list.d.mts +15 -0
  55. package/dist/cli/commands/organization/transform.d.mts +27 -0
  56. package/dist/cli/commands/organization/tree.d.mts +25 -0
  57. package/dist/cli/commands/organization/update.d.mts +17 -0
  58. package/dist/cli/commands/remove.d.mts +16 -0
  59. package/dist/cli/commands/show.d.mts +34 -0
  60. package/dist/cli/commands/tailordb/migrate/bundler.d.mts +28 -0
  61. package/dist/cli/commands/tailordb/migrate/config.d.mts +19 -0
  62. package/dist/cli/commands/tailordb/migrate/diff-calculator.d.mts +223 -0
  63. package/dist/cli/commands/tailordb/migrate/generate.d.mts +17 -0
  64. package/dist/cli/commands/tailordb/migrate/snapshot-types.d.mts +202 -0
  65. package/dist/cli/commands/tailordb/migrate/snapshot.d.mts +98 -0
  66. package/dist/cli/commands/tailordb/migrate/types.d.mts +7 -0
  67. package/dist/cli/commands/tailordb/truncate.d.mts +19 -0
  68. package/dist/cli/commands/workflow/executions.d.mts +75 -0
  69. package/dist/cli/commands/workflow/get.d.mts +29 -0
  70. package/dist/cli/commands/workflow/list.d.mts +19 -0
  71. package/dist/cli/commands/workflow/resume.d.mts +23 -0
  72. package/dist/cli/commands/workflow/start.d.mts +61 -0
  73. package/dist/cli/commands/workflow/status.d.mts +5 -0
  74. package/dist/cli/commands/workflow/transform.d.mts +33 -0
  75. package/dist/cli/commands/workflow/wait.d.mts +16 -0
  76. package/dist/cli/commands/workflow/waiter.d.mts +23 -0
  77. package/dist/cli/commands/workspace/app/health.d.mts +18 -0
  78. package/dist/cli/commands/workspace/app/list.d.mts +22 -0
  79. package/dist/cli/commands/workspace/app/transform.d.mts +18 -0
  80. package/dist/cli/commands/workspace/create.d.mts +25 -0
  81. package/dist/cli/commands/workspace/delete.d.mts +15 -0
  82. package/dist/cli/commands/workspace/get.d.mts +17 -0
  83. package/dist/cli/commands/workspace/list.d.mts +17 -0
  84. package/dist/cli/commands/workspace/restore.d.mts +15 -0
  85. package/dist/cli/commands/workspace/transform.d.mts +16 -0
  86. package/dist/cli/commands/workspace/user/invite.d.mts +22 -0
  87. package/dist/cli/commands/workspace/user/list.d.mts +22 -0
  88. package/dist/cli/commands/workspace/user/remove.d.mts +17 -0
  89. package/dist/cli/commands/workspace/user/transform.d.mts +8 -0
  90. package/dist/cli/commands/workspace/user/update.d.mts +22 -0
  91. package/dist/cli/erd-viewer-assets/app.js +279 -36
  92. package/dist/cli/erd-viewer-assets/index.html +4 -0
  93. package/dist/cli/erd-viewer-assets/styles.css +252 -5
  94. package/dist/cli/index.d.mts +18 -3
  95. package/dist/cli/index.mjs +2193 -519
  96. package/dist/cli/index.mjs.map +1 -1
  97. package/dist/cli/lib.d.mts +81 -21048
  98. package/dist/cli/lib.mjs +8 -12
  99. package/dist/cli/lib.mjs.map +1 -1
  100. package/dist/cli/query/index.d.mts +35 -0
  101. package/dist/cli/services/application.d.mts +1 -0
  102. package/dist/cli/services/auth/service.d.mts +1 -0
  103. package/dist/cli/services/executor/service.d.mts +1 -0
  104. package/dist/cli/services/http-adapter/bundler.d.mts +1 -0
  105. package/dist/cli/services/http-adapter/service.d.mts +1 -0
  106. package/dist/cli/services/resolver/service.d.mts +1 -0
  107. package/dist/cli/services/tailordb/service.d.mts +1 -0
  108. package/dist/cli/services/workflow/bundler.d.mts +1 -0
  109. package/dist/cli/services/workflow/service.d.mts +1 -0
  110. package/dist/cli/shared/args.d.mts +13 -0
  111. package/dist/cli/shared/client.d.mts +1273 -0
  112. package/dist/cli/shared/config-loader.d.mts +26 -0
  113. package/dist/cli/shared/context.d.mts +28 -0
  114. package/dist/cli/shared/script-executor.d.mts +75 -0
  115. package/dist/cli/shared/seed-chunker.d.mts +46 -0
  116. package/dist/cli/shared/trigger-context.d.mts +1 -0
  117. package/dist/cli/shared/type-generator.d.mts +20 -0
  118. package/dist/cli/ts-hook.d.mts +4 -0
  119. package/dist/cli/ts-hook.mjs +303 -0
  120. package/dist/completion/zsh-worker.zsh +1577 -1098
  121. package/dist/configure/config/index.d.mts +21 -0
  122. package/dist/configure/config/types.d.mts +103 -0
  123. package/dist/configure/index.d.mts +122 -8
  124. package/dist/configure/index.mjs +74 -34
  125. package/dist/configure/index.mjs.map +1 -1
  126. package/dist/configure/services/aigateway/index.d.mts +17 -0
  127. package/dist/configure/services/aigateway/types.d.mts +11 -0
  128. package/dist/configure/services/auth/index.d.mts +34 -0
  129. package/dist/configure/services/auth/types.d.mts +172 -0
  130. package/dist/configure/services/executor/executor.d.mts +81 -0
  131. package/dist/configure/services/executor/index.d.mts +8 -0
  132. package/dist/configure/services/executor/operation.d.mts +45 -0
  133. package/dist/configure/services/executor/trigger/event.d.mts +272 -0
  134. package/dist/configure/services/executor/trigger/index.d.mts +8 -0
  135. package/dist/configure/services/executor/trigger/schedule.d.mts +25 -0
  136. package/dist/configure/services/executor/trigger/webhook.d.mts +44 -0
  137. package/dist/configure/services/executor/types.d.mts +2 -0
  138. package/dist/configure/services/http-adapter/http-adapter.d.mts +125 -0
  139. package/dist/configure/services/http-adapter/index.d.mts +2 -0
  140. package/dist/configure/services/idp/index.d.mts +64 -0
  141. package/dist/configure/services/idp/permission.d.mts +80 -0
  142. package/dist/configure/services/idp/types.d.mts +20 -0
  143. package/dist/configure/services/index.d.mts +32 -0
  144. package/dist/configure/services/resolver/index.d.mts +5 -0
  145. package/dist/configure/services/resolver/resolver.d.mts +75 -0
  146. package/dist/configure/services/resolver/types.d.mts +6 -0
  147. package/dist/configure/services/secrets/index.d.mts +38 -0
  148. package/dist/configure/services/secrets/types.d.mts +11 -0
  149. package/dist/configure/services/staticwebsite/index.d.mts +19 -0
  150. package/dist/configure/services/staticwebsite/types.d.mts +11 -0
  151. package/dist/configure/services/tailordb/index.d.mts +4 -0
  152. package/dist/configure/services/tailordb/permission.d.mts +119 -0
  153. package/dist/configure/services/tailordb/schema.d.mts +456 -0
  154. package/dist/configure/services/tailordb/types.d.mts +149 -0
  155. package/dist/configure/services/workflow/index.d.mts +6 -0
  156. package/dist/configure/services/workflow/job.d.mts +79 -0
  157. package/dist/configure/services/workflow/types.d.mts +2 -0
  158. package/dist/configure/services/workflow/wait-point.d.mts +73 -0
  159. package/dist/configure/services/workflow/workflow.d.mts +54 -0
  160. package/dist/configure/types/aigateway-name.d.mts +12 -0
  161. package/dist/configure/types/connection-name.d.mts +12 -0
  162. package/dist/configure/types/field-runtime.d.mts +17 -0
  163. package/dist/configure/types/field.d.mts +9 -0
  164. package/dist/configure/types/field.types.d.mts +109 -0
  165. package/dist/configure/types/idp-name.d.mts +12 -0
  166. package/dist/configure/types/index.d.mts +4 -0
  167. package/dist/configure/types/machine-user.d.mts +2 -0
  168. package/dist/configure/types/type.d.mts +82 -0
  169. package/dist/context-Bd266-ru.mjs.map +1 -1
  170. package/dist/{crashreport-BsjAkFWw.mjs → crashreport-Cg-pqRJV.mjs} +9 -11
  171. package/dist/{crashreport-BsjAkFWw.mjs.map → crashreport-Cg-pqRJV.mjs.map} +1 -1
  172. package/dist/{crashreport-pr6Rhvza.mjs → crashreport-D3RjuSYb.mjs} +1 -1
  173. package/dist/enum-constants-j9QBF0cB.mjs.map +1 -1
  174. package/dist/{errors-Dtf2WPaW.mjs → errors-118wUDRr.mjs} +2 -2
  175. package/dist/errors-118wUDRr.mjs.map +1 -0
  176. package/dist/field-runtime-CAnh_oow.mjs +183 -0
  177. package/dist/field-runtime-CAnh_oow.mjs.map +1 -0
  178. package/dist/{file-_oUZo76X.mjs → file-BbdFGdMV.mjs} +2 -10
  179. package/dist/file-BbdFGdMV.mjs.map +1 -0
  180. package/dist/{file-utils-DcyIPFQh.mjs → file-utils-CYZnO1pX.mjs} +5 -5
  181. package/dist/file-utils-CYZnO1pX.mjs.map +1 -0
  182. package/dist/{globals-Crz8o65k.mjs → globals-DhwZj0RB.mjs} +5 -47
  183. package/dist/globals-DhwZj0RB.mjs.map +1 -0
  184. package/dist/{idp-BDbK5gjm.mjs → idp-Bx25ZBdN.mjs} +9 -1
  185. package/dist/idp-Bx25ZBdN.mjs.map +1 -0
  186. package/dist/{interceptor-D-q1rvRl.mjs → interceptor-e33JtsC-.mjs} +2 -2
  187. package/dist/interceptor-e33JtsC-.mjs.map +1 -0
  188. package/dist/kysely/index.d.mts +2 -3
  189. package/dist/{kysely-type-DR8uzZTA.mjs → kysely-type-5eAChaHO.mjs} +4 -2
  190. package/dist/kysely-type-5eAChaHO.mjs.map +1 -0
  191. package/dist/{logger-CxF-Ex5d.mjs → logger-BEiZZ3qT.mjs} +3 -3
  192. package/dist/{logger-CxF-Ex5d.mjs.map → logger-BEiZZ3qT.mjs.map} +1 -1
  193. package/dist/parser/service/auth/index.d.mts +1 -0
  194. package/dist/parser/service/auth/schema.d.mts +1 -0
  195. package/dist/parser/service/http-adapter/index.d.mts +1 -0
  196. package/dist/parser/service/http-adapter/schema.d.mts +1 -0
  197. package/dist/parser/service/idp/types.d.mts +4 -0
  198. package/dist/parser/service/tailordb/types.d.mts +126 -0
  199. package/dist/platform-serialize-RoRtBS0v.mjs +46 -0
  200. package/dist/platform-serialize-RoRtBS0v.mjs.map +1 -0
  201. package/dist/plugin/builtin/enum-constants/index.d.mts +16 -1
  202. package/dist/plugin/builtin/file-utils/index.d.mts +16 -1
  203. package/dist/plugin/builtin/file-utils/index.mjs +1 -1
  204. package/dist/plugin/builtin/kysely-type/index.d.mts +16 -1
  205. package/dist/plugin/builtin/kysely-type/index.mjs +1 -1
  206. package/dist/plugin/builtin/seed/index.d.mts +45 -1
  207. package/dist/plugin/builtin/seed/index.mjs +1 -1
  208. package/dist/plugin/get-generated-type.d.mts +17 -0
  209. package/dist/plugin/index.d.mts +3 -117
  210. package/dist/plugin/index.mjs +1 -1
  211. package/dist/plugin/index.mjs.map +1 -1
  212. package/dist/plugin/manager.d.mts +1 -0
  213. package/dist/plugin/types.d.mts +243 -0
  214. package/dist/plugin/with-context.d.mts +102 -0
  215. package/dist/{runtime-n9NCkjee.mjs → register-ts-hook-ZpBacA07.mjs} +4374 -2446
  216. package/dist/register-ts-hook-ZpBacA07.mjs.map +1 -0
  217. package/dist/{registry-DdsYlL_P.mjs → registry-DH4m7eYo.mjs} +4 -2
  218. package/dist/registry-DH4m7eYo.mjs.map +1 -0
  219. package/dist/{repl-editor-DmGr9zMw.mjs → repl-editor-BCozyiNq.mjs} +6 -5
  220. package/dist/{repl-editor-DmGr9zMw.mjs.map → repl-editor-BCozyiNq.mjs.map} +1 -1
  221. package/dist/runtime/aigateway.d.mts +35 -0
  222. package/dist/runtime/aigateway.mjs +3 -0
  223. package/dist/runtime/authconnection.d.mts +31 -2
  224. package/dist/runtime/authconnection.mjs +1 -1
  225. package/dist/runtime/context.d.mts +46 -2
  226. package/dist/runtime/file.d.mts +210 -2
  227. package/dist/runtime/file.mjs +2 -2
  228. package/dist/runtime/globals.d.mts +31 -19
  229. package/dist/runtime/iconv.d.mts +121 -2
  230. package/dist/runtime/idp.d.mts +186 -2
  231. package/dist/runtime/idp.mjs +1 -1
  232. package/dist/runtime/index.d.mts +47 -9
  233. package/dist/runtime/index.mjs +6 -5
  234. package/dist/runtime/secretmanager.d.mts +54 -2
  235. package/dist/runtime/types.d.mts +20 -0
  236. package/dist/runtime/workflow.d.mts +112 -2
  237. package/dist/runtime/workflow.mjs +2 -2
  238. package/dist/{schema-BhkpP5Hw.mjs → schema-89dYxNC2.mjs} +25 -187
  239. package/dist/schema-89dYxNC2.mjs.map +1 -0
  240. package/dist/{secret-file-DBqZhjFQ.mjs → secret-file-aoNXJmKa.mjs} +28 -3
  241. package/dist/secret-file-aoNXJmKa.mjs.map +1 -0
  242. package/dist/secretmanager-Bd45j7an.mjs +98 -0
  243. package/dist/secretmanager-Bd45j7an.mjs.map +1 -0
  244. package/dist/seed/index.d.mts +1 -2
  245. package/dist/{seed-jf3008-h.mjs → seed-CRSQJI_z.mjs} +16 -6
  246. package/dist/seed-CRSQJI_z.mjs.map +1 -0
  247. package/dist/service-CkIwEctX.mjs +3 -0
  248. package/dist/{service-DU1mVzri.mjs → service-DeZeYa06.mjs} +3 -3
  249. package/dist/{service-DU1mVzri.mjs.map → service-DeZeYa06.mjs.map} +1 -1
  250. package/dist/service-ufH7sS8o.mjs +797 -0
  251. package/dist/service-ufH7sS8o.mjs.map +1 -0
  252. package/dist/{client-z_oHGVNy.mjs → service_pb-CIrhGwHk.mjs} +38 -466
  253. package/dist/service_pb-CIrhGwHk.mjs.map +1 -0
  254. package/dist/service_pb-DjwIn4jO.mjs +3 -0
  255. package/dist/tailor-proto/src/tailor/v1/aigateway_pb.d.mts +204 -0
  256. package/dist/tailor-proto/src/tailor/v1/aigateway_resource_pb.d.mts +58 -0
  257. package/dist/tailor-proto/src/tailor/v1/application_pb.d.mts +316 -0
  258. package/dist/tailor-proto/src/tailor/v1/application_resource_pb.d.mts +161 -0
  259. package/dist/tailor-proto/src/tailor/v1/auth_pb.d.mts +2070 -0
  260. package/dist/tailor-proto/src/tailor/v1/auth_resource_pb.d.mts +861 -0
  261. package/dist/tailor-proto/src/tailor/v1/events_pb.d.mts +112 -0
  262. package/dist/tailor-proto/src/tailor/v1/events_resource_pb.d.mts +69 -0
  263. package/dist/tailor-proto/src/tailor/v1/executor_pb.d.mts +439 -0
  264. package/dist/tailor-proto/src/tailor/v1/executor_resource_pb.d.mts +564 -0
  265. package/dist/tailor-proto/src/tailor/v1/function_pb.d.mts +145 -0
  266. package/dist/tailor-proto/src/tailor/v1/function_registry_pb.d.mts +451 -0
  267. package/dist/tailor-proto/src/tailor/v1/function_resource_pb.d.mts +192 -0
  268. package/dist/tailor-proto/src/tailor/v1/http_adapter_resource_pb.d.mts +50 -0
  269. package/dist/tailor-proto/src/tailor/v1/idp_pb.d.mts +407 -0
  270. package/dist/tailor-proto/src/tailor/v1/idp_resource_pb.d.mts +430 -0
  271. package/dist/tailor-proto/src/tailor/v1/metadata_pb.d.mts +73 -0
  272. package/dist/tailor-proto/src/tailor/v1/metadata_resource_pb.d.mts +17 -0
  273. package/dist/tailor-proto/src/tailor/v1/meter_pb.d.mts +309 -0
  274. package/dist/tailor-proto/src/tailor/v1/pipeline_pb.d.mts +591 -0
  275. package/dist/tailor-proto/src/tailor/v1/pipeline_resource_pb.d.mts +330 -0
  276. package/dist/tailor-proto/src/tailor/v1/resource_pb.d.mts +113 -0
  277. package/dist/tailor-proto/src/tailor/v1/secret_manager_pb.d.mts +346 -0
  278. package/dist/tailor-proto/src/tailor/v1/secret_manager_resource_pb.d.mts +54 -0
  279. package/dist/tailor-proto/src/tailor/v1/service_pb.d.mts +3576 -0
  280. package/dist/tailor-proto/src/tailor/v1/stateflow_pb.d.mts +187 -0
  281. package/dist/tailor-proto/src/tailor/v1/stateflow_resource_pb.d.mts +29 -0
  282. package/dist/tailor-proto/src/tailor/v1/staticwebsite_pb.d.mts +429 -0
  283. package/dist/tailor-proto/src/tailor/v1/staticwebsite_resource_pb.d.mts +90 -0
  284. package/dist/tailor-proto/src/tailor/v1/tailordb_pb.d.mts +684 -0
  285. package/dist/tailor-proto/src/tailor/v1/tailordb_resource_pb.d.mts +797 -0
  286. package/dist/tailor-proto/src/tailor/v1/telemetryrouter_pb.d.mts +330 -0
  287. package/dist/tailor-proto/src/tailor/v1/telemetryrouter_resource_pb.d.mts +183 -0
  288. package/dist/tailor-proto/src/tailor/v1/workflow_pb.d.mts +842 -0
  289. package/dist/tailor-proto/src/tailor/v1/workflow_resource_pb.d.mts +276 -0
  290. package/dist/tailor-proto/src/tailor/v1/workspace_pb.d.mts +2015 -0
  291. package/dist/tailor-proto/src/tailor/v1/workspace_resource_pb.d.mts +483 -0
  292. package/dist/{telemetry-CdqJEzkj.mjs → telemetry-BRVdwh14.mjs} +3 -3
  293. package/dist/telemetry-BRVdwh14.mjs.map +1 -0
  294. package/dist/telemetry-CkbkeJxl.mjs +3 -0
  295. package/dist/test-env-key-D7UkZp99.mjs +75 -0
  296. package/dist/test-env-key-D7UkZp99.mjs.map +1 -0
  297. package/dist/types/aigateway.generated.d.mts +9 -0
  298. package/dist/types/app-config.generated.d.mts +4 -0
  299. package/dist/types/auth-connection.generated.d.mts +20 -0
  300. package/dist/types/auth.generated.d.mts +145 -0
  301. package/dist/types/executor.generated.d.mts +177 -0
  302. package/dist/types/helpers.d.mts +39 -0
  303. package/dist/types/http-adapter.generated.d.mts +17 -0
  304. package/dist/{workflow.generated-DtQwEo-x.d.mts → types/idp.generated.d.mts} +98 -185
  305. package/dist/types/resolver.generated.d.mts +39 -0
  306. package/dist/types/secrets.generated.d.mts +14 -0
  307. package/dist/types/staticwebsite.generated.d.mts +10 -0
  308. package/dist/types/tailordb.generated.d.mts +428 -0
  309. package/dist/types/workflow.generated.d.mts +12 -0
  310. package/dist/types-C-lQ4se3.mjs +4 -0
  311. package/dist/types-CXF2OYdR.mjs +199 -0
  312. package/dist/types-CXF2OYdR.mjs.map +1 -0
  313. package/dist/utils/test/index.d.mts +5 -98
  314. package/dist/utils/test/index.mjs +4 -13
  315. package/dist/utils/test/index.mjs.map +1 -1
  316. package/dist/utils/test/mock.d.mts +87 -0
  317. package/dist/vitest/environment.d.mts +1 -2
  318. package/dist/vitest/environment.mjs +2 -2
  319. package/dist/vitest/environment.mjs.map +1 -1
  320. package/dist/vitest/index.d.mts +12 -428
  321. package/dist/vitest/index.mjs +741 -10
  322. package/dist/vitest/index.mjs.map +1 -1
  323. package/dist/vitest/mock-kysely.d.mts +62 -0
  324. package/dist/vitest/mock.d.mts +9 -0
  325. package/dist/vitest/mocks/aigateway.d.mts +30 -0
  326. package/dist/vitest/mocks/authconnection.d.mts +28 -0
  327. package/dist/vitest/mocks/file.d.mts +41 -0
  328. package/dist/vitest/mocks/iconv.d.mts +27 -0
  329. package/dist/vitest/mocks/idp.d.mts +44 -0
  330. package/dist/vitest/mocks/secretmanager.d.mts +33 -0
  331. package/dist/vitest/mocks/tailordb.d.mts +71 -0
  332. package/dist/vitest/mocks/workflow.d.mts +115 -0
  333. package/dist/vitest/setup.d.mts +1 -2
  334. package/dist/vitest/setup.mjs +2 -2
  335. package/dist/vitest/workflow-local.d.mts +40 -0
  336. package/dist/{workflow-DgemCAz3.mjs → workflow-Bo59B75H.mjs} +16 -4
  337. package/dist/workflow-Bo59B75H.mjs.map +1 -0
  338. package/docs/cli/application.md +98 -250
  339. package/docs/cli/auth.md +48 -292
  340. package/docs/cli/completion.md +1 -25
  341. package/docs/cli/crashreport.md +3 -61
  342. package/docs/cli/executor.md +72 -183
  343. package/docs/cli/function.md +14 -130
  344. package/docs/cli/organization.md +11 -221
  345. package/docs/cli/plugin.md +29 -0
  346. package/docs/cli/query.md +2 -22
  347. package/docs/cli/secret.md +71 -251
  348. package/docs/cli/setup.md +138 -40
  349. package/docs/cli/skills.md +50 -39
  350. package/docs/cli/staticwebsite.md +32 -180
  351. package/docs/cli/tailordb.md +97 -323
  352. package/docs/cli/upgrade.md +2 -22
  353. package/docs/cli/user.md +78 -247
  354. package/docs/cli/workflow.md +150 -172
  355. package/docs/cli/workspace.md +165 -538
  356. package/docs/cli-reference.md +184 -78
  357. package/docs/configuration.md +10 -4
  358. package/docs/github-actions.md +64 -24
  359. package/docs/migration/v2.md +735 -0
  360. package/docs/multi-environment.md +29 -7
  361. package/docs/plugin/index.md +6 -6
  362. package/docs/quickstart.md +8 -7
  363. package/docs/runtime.md +6 -2
  364. package/docs/services/aigateway.md +18 -2
  365. package/docs/services/auth.md +44 -52
  366. package/docs/services/executor.md +3 -3
  367. package/docs/services/http-adapter.md +16 -1
  368. package/docs/services/idp.md +55 -2
  369. package/docs/services/resolver.md +7 -7
  370. package/docs/services/secret.md +11 -11
  371. package/docs/services/staticwebsite.md +8 -2
  372. package/docs/services/tailordb-migration.md +24 -22
  373. package/docs/services/tailordb.md +39 -14
  374. package/docs/services/workflow.md +18 -18
  375. package/docs/testing.md +108 -50
  376. package/package.json +46 -35
  377. package/postinstall.mjs +4 -6
  378. package/dist/application-DB2r36Et.mjs +0 -3
  379. package/dist/application-DqS1yBg3.mjs.map +0 -1
  380. package/dist/authconnection-D2MhtTN5.mjs.map +0 -1
  381. package/dist/authconnection-DvUQAjQS.d.mts +0 -39
  382. package/dist/client-Dbohmtkv.mjs +0 -3
  383. package/dist/client-z_oHGVNy.mjs.map +0 -1
  384. package/dist/context-BuuIb8CC.d.mts +0 -68
  385. package/dist/errors-Dtf2WPaW.mjs.map +0 -1
  386. package/dist/field-DOsJCPFa.mjs +0 -22
  387. package/dist/field-DOsJCPFa.mjs.map +0 -1
  388. package/dist/file-BB8Vs9O_.d.mts +0 -250
  389. package/dist/file-_oUZo76X.mjs.map +0 -1
  390. package/dist/file-utils-DcyIPFQh.mjs.map +0 -1
  391. package/dist/globals-Crz8o65k.mjs.map +0 -1
  392. package/dist/http-adapter.generated-WgMnb7Sb.d.mts +0 -580
  393. package/dist/iconv-Co-TOPuH.d.mts +0 -122
  394. package/dist/idp-BDbK5gjm.mjs.map +0 -1
  395. package/dist/idp-DrhVrLmV.d.mts +0 -160
  396. package/dist/index-5vPyRu1y.d.mts +0 -18
  397. package/dist/index-B7AKc18V.d.mts +0 -47
  398. package/dist/index-BlpzXncY.d.mts +0 -1016
  399. package/dist/index-CK7u9isy.d.mts +0 -46
  400. package/dist/index-CNYe5lnW.d.mts +0 -18
  401. package/dist/index-DjUdWlzf.d.mts +0 -18
  402. package/dist/index-ZePLwxw7.d.mts +0 -208
  403. package/dist/interceptor-D-q1rvRl.mjs.map +0 -1
  404. package/dist/job-fuc3j1Ma.mjs +0 -53
  405. package/dist/job-fuc3j1Ma.mjs.map +0 -1
  406. package/dist/kysely-type-DR8uzZTA.mjs.map +0 -1
  407. package/dist/mock-BjFj5o1I.mjs +0 -804
  408. package/dist/mock-BjFj5o1I.mjs.map +0 -1
  409. package/dist/registry-DdsYlL_P.mjs.map +0 -1
  410. package/dist/runtime-n9NCkjee.mjs.map +0 -1
  411. package/dist/schema-BhkpP5Hw.mjs.map +0 -1
  412. package/dist/secret-file-DBqZhjFQ.mjs.map +0 -1
  413. package/dist/secretmanager-B3n4KHfm.d.mts +0 -55
  414. package/dist/seed-jf3008-h.mjs.map +0 -1
  415. package/dist/service-CCL8ruDf.mjs +0 -459
  416. package/dist/service-CCL8ruDf.mjs.map +0 -1
  417. package/dist/service-D6yonf2I.mjs +0 -3
  418. package/dist/telemetry-CdqJEzkj.mjs.map +0 -1
  419. package/dist/telemetry-ClwW5ohF.mjs +0 -3
  420. package/dist/test-env-key-D9kM6ETE.mjs +0 -49
  421. package/dist/test-env-key-D9kM6ETE.mjs.map +0 -1
  422. package/dist/types-B2RpYyA_.mjs +0 -371
  423. package/dist/types-B2RpYyA_.mjs.map +0 -1
  424. package/dist/types-ClhIrW_C.mjs +0 -4
  425. package/dist/types-DCUhgpyI.d.mts +0 -784
  426. package/dist/types-DhO_VEZd.d.mts +0 -574
  427. package/dist/types-DwDgacni.d.mts +0 -338
  428. package/dist/workflow-BbKvGLQg.d.mts +0 -96
  429. package/dist/workflow-DgemCAz3.mjs.map +0 -1
@@ -1,804 +0,0 @@
1
- import { t as TRIGGER_DEFAULT } from "./registry-DdsYlL_P.mjs";
2
- import { a as writeWorkflowTestEnv, r as clearWorkflowTestEnv } from "./test-env-key-D9kM6ETE.mjs";
3
- import { t as assertDefined } from "./assert-DBxo8jPo.mjs";
4
- import { i as platformSerialize } from "./globals-Crz8o65k.mjs";
5
- import { vi } from "vitest";
6
-
7
- //#region src/vitest/mock.ts
8
- /**
9
- * Mock controls for Tailor Platform APIs (vitest).
10
- *
11
- * Each `xMock()` factory installs `vi.fn()`-backed mocks for one platform
12
- * namespace onto `globalThis` when acquired, and restores the previous value
13
- * when the `using` scope exits. State lives in the per-acquisition vi.fns /
14
- * closures — there is no shared global state bag — so nested/sequential scopes
15
- * are isolated and namespaces never interfere with each other.
16
- *
17
- * Acquire a mock with a `using` declaration:
18
- *
19
- * ```ts
20
- * test("...", () => {
21
- * using wf = mockWorkflow();
22
- * wf.setJobHandler(() => ({ ok: true }));
23
- * }); // previous workflow mock restored here
24
- * ```
25
- *
26
- * The friendly helpers (`setJobHandler`, `enqueueResult`, `triggeredJobs`, …)
27
- * are thin wrappers over the underlying vi.fns, which are also exposed directly
28
- * (`wf.triggerJobFunction`) for native matchers like
29
- * `expect(wf.triggerJobFunction).toHaveBeenCalledWith(...)`.
30
- */
31
- function withDispose(facade, dispose) {
32
- Object.defineProperty(facade, Symbol.dispose, {
33
- value: dispose,
34
- enumerable: false,
35
- writable: true,
36
- configurable: true
37
- });
38
- return facade;
39
- }
40
- function tailorRoot() {
41
- const g = globalThis;
42
- if (!g.tailor) g.tailor = { context: { getInvoker: () => null } };
43
- return g.tailor;
44
- }
45
- function tailordbRoot() {
46
- const g = globalThis;
47
- if (!g.tailordb) g.tailordb = {};
48
- return g.tailordb;
49
- }
50
- var MockQueryResult = class {
51
- command;
52
- rowCount;
53
- rows;
54
- constructor(rows) {
55
- this.command = "";
56
- this.rowCount = rows.length;
57
- this.rows = rows;
58
- }
59
- };
60
- /**
61
- * Acquire a disposable mock for TailorDB operations. Installs a mock
62
- * `tailordb.Client` whose `queryObject` is a shared `vi.fn()` (so query
63
- * responses can be staged before the client is constructed). Restored on
64
- * dispose.
65
- * @returns Disposable TailorDB mock control object
66
- * @example
67
- * ```typescript
68
- * import { mockTailordb } from "@tailor-platform/sdk/vitest";
69
- *
70
- * test("order-based", async () => {
71
- * using db = mockTailordb();
72
- * db.enqueueResults([], [{ age: 30 }], []); // BEGIN / SELECT / COMMIT
73
- * // …
74
- * expect(db.queryObject).toHaveBeenCalledTimes(3);
75
- * expect(db.Client).toHaveBeenCalledWith({ namespace: "tailordb" });
76
- * });
77
- * ```
78
- */
79
- function mockTailordb() {
80
- const root = tailordbRoot();
81
- const prevClient = root.Client;
82
- const queryObject = vi.fn(async (_query, _params = []) => new MockQueryResult([]));
83
- const connect = vi.fn(async () => {});
84
- const createdClients = [];
85
- const Client = vi.fn(function(config) {
86
- const record = {
87
- namespace: config?.namespace,
88
- ended: false
89
- };
90
- createdClients.push(record);
91
- this.connect = connect;
92
- this.end = vi.fn(async () => {
93
- record.ended = true;
94
- });
95
- this.queryObject = queryObject;
96
- this.createTransaction = (name) => {
97
- if (!name) throw new Error("Transaction name must be a non-empty string");
98
- return {
99
- begin: async () => {},
100
- commit: async () => {},
101
- rollback: async () => {},
102
- queryObject
103
- };
104
- };
105
- });
106
- root.Client = Client;
107
- return withDispose({
108
- /** The mock `tailordb.Client` constructor (`vi.fn`). */
109
- Client,
110
- /** The shared `queryObject` `vi.fn` used by every client and transaction. */
111
- queryObject,
112
- /**
113
- * Set a fallback query resolver. Called when the enqueue queue is empty.
114
- * @param resolver - Function that returns rows for a given query and params
115
- */
116
- setQueryResolver(resolver) {
117
- queryObject.mockImplementation(async (query, params = []) => new MockQueryResult(resolver(query, params) ?? []));
118
- },
119
- /**
120
- * Enqueue rows for the next `queryObject` call (FIFO; takes priority over
121
- * `setQueryResolver`). Call with no arguments for an empty result.
122
- * @param rows - Row objects to return from the next `queryObject` call
123
- */
124
- enqueueResult(...rows) {
125
- queryObject.mockImplementationOnce(async () => new MockQueryResult(rows));
126
- },
127
- /**
128
- * Enqueue rows for multiple subsequent `queryObject` calls (FIFO).
129
- * @param rowsList - Rows arrays, one per upcoming query
130
- */
131
- enqueueResults(...rowsList) {
132
- for (const rows of rowsList) queryObject.mockImplementationOnce(async () => new MockQueryResult(rows));
133
- },
134
- /**
135
- * All queries executed via `queryObject`, in order, derived from the vi.fn
136
- * call records.
137
- * @returns Executed queries array
138
- */
139
- get executedQueries() {
140
- return queryObject.mock.calls.map(([query, params]) => ({
141
- query,
142
- params: params ?? []
143
- }));
144
- },
145
- /**
146
- * All TailorDB clients created, with their namespace and end state.
147
- * @returns Created clients array
148
- */
149
- get createdClients() {
150
- return createdClients;
151
- },
152
- /** Reset query responses and recorded calls (keeps the mock installed). */
153
- reset() {
154
- queryObject.mockReset();
155
- queryObject.mockImplementation(async () => new MockQueryResult([]));
156
- connect.mockClear();
157
- Client.mockClear();
158
- createdClients.length = 0;
159
- }
160
- }, () => {
161
- root.Client = prevClient;
162
- });
163
- }
164
- /**
165
- * Acquire a disposable mock for workflow operations (`tailor.workflow`).
166
- * Restored on dispose.
167
- * @returns Disposable workflow mock control object
168
- * @example
169
- * ```typescript
170
- * import { mockWorkflow } from "@tailor-platform/sdk/vitest";
171
- *
172
- * test("job handler", async () => {
173
- * using wf = mockWorkflow();
174
- * wf.setJobHandler((name) => (name === "validate" ? { valid: true } : null));
175
- * await runWorkflowUnderTest(); // calls tailor.workflow.triggerJobFunction("validate", {})
176
- * expect(wf.triggerJobFunction).toHaveBeenCalledWith("validate", {});
177
- * });
178
- * ```
179
- */
180
- function mockWorkflow() {
181
- const root = tailorRoot();
182
- const prev = root.workflow;
183
- const defaultTriggerJob = (jobName, _args) => {
184
- throw new Error(`No workflow job mock for "${jobName}". Call mockWorkflow().setJobHandler(...) or enqueueResult(...), or use runWorkflowLocally() for local workflow execution.`);
185
- };
186
- const defaultTriggerWorkflow = async (_workflowName, _args, _options) => {
187
- return TRIGGER_DEFAULT;
188
- };
189
- const triggerJobFunction = vi.fn(defaultTriggerJob);
190
- const triggerWorkflow = vi.fn(defaultTriggerWorkflow);
191
- const wait = vi.fn((_key, _payload) => null);
192
- const resolve = vi.fn(async (_executionId, _key, _callback) => {});
193
- const installedTriggerJobFunction = (jobName, args) => {
194
- const out = triggerJobFunction(jobName, platformSerialize(args));
195
- return out instanceof Promise ? out.then((v) => platformSerialize(v)) : platformSerialize(out);
196
- };
197
- root.workflow = {
198
- triggerJobFunction: installedTriggerJobFunction,
199
- triggerWorkflow: (...call) => call.length >= 3 ? triggerWorkflow(call[0], platformSerialize(call[1]), call[2]) : triggerWorkflow(call[0], platformSerialize(call[1])),
200
- wait: (key, payload) => wait(key, platformSerialize(payload)),
201
- resolve: (executionId, key, callback) => resolve(executionId, key, (payload) => {
202
- const out = callback(payload);
203
- return out instanceof Promise ? out.then((v) => platformSerialize(v)) : platformSerialize(out);
204
- })
205
- };
206
- return withDispose({
207
- /** The `triggerJobFunction` `vi.fn`. */
208
- triggerJobFunction,
209
- /** The `triggerWorkflow` `vi.fn`. */
210
- triggerWorkflow,
211
- /** The `wait` `vi.fn`. */
212
- wait,
213
- /** The `resolve` `vi.fn`. */
214
- resolve,
215
- /**
216
- * Set a fallback job handler. Called when the enqueue queue is empty.
217
- * @param handler - Function returning a result for a job name and args
218
- */
219
- setJobHandler(handler) {
220
- triggerJobFunction.mockImplementation((name, args) => handler(name, args));
221
- },
222
- /**
223
- * Enqueue a single result for the next `triggerJobFunction` call (FIFO;
224
- * takes priority over `setJobHandler`).
225
- * @param result - Result to return from the next call
226
- */
227
- enqueueResult(result) {
228
- triggerJobFunction.mockImplementationOnce(() => result);
229
- },
230
- /**
231
- * Enqueue results for multiple subsequent `triggerJobFunction` calls (FIFO).
232
- * @param results - Results to enqueue, one per upcoming call
233
- */
234
- enqueueResults(...results) {
235
- for (const result of results) triggerJobFunction.mockImplementationOnce(() => result);
236
- },
237
- /**
238
- * All jobs triggered via `triggerJobFunction`, in order.
239
- * @returns Triggered jobs array
240
- */
241
- get triggeredJobs() {
242
- return triggerJobFunction.mock.calls.map(([jobName, args]) => ({
243
- jobName,
244
- args
245
- }));
246
- },
247
- /**
248
- * Configure what `triggerWorkflow` returns. Pass a string (same id every
249
- * call) or `(name, args, options) => string`. Default: a placeholder UUID.
250
- * @param handler - Static execution ID or a function returning one
251
- */
252
- setTriggerHandler(handler) {
253
- triggerWorkflow.mockImplementation(typeof handler === "function" ? async (name, args, options) => handler(name, args, options) : async () => handler);
254
- },
255
- /**
256
- * Configure what `wait` returns. Pass `(key, payload) => unknown` or any
257
- * other value to return it for every call. Default: `null`.
258
- * @param handler - Static value or a function returning one
259
- */
260
- setWaitHandler: ((handler) => {
261
- wait.mockImplementation(typeof handler === "function" ? (key, payload) => handler(key, payload) : () => handler);
262
- }),
263
- /**
264
- * Set the `env` passed to job bodies invoked via `runWorkflowLocally()`.
265
- * Cleared on dispose / reset.
266
- * @param env - Env passed to job bodies.
267
- */
268
- setEnv(env) {
269
- writeWorkflowTestEnv({ ...env });
270
- },
271
- /**
272
- * Configure how `resolve` runs the user-supplied callback. Default: callback
273
- * is not invoked (records the call only).
274
- * @param handler - Function invoked per `resolve` call
275
- */
276
- setResolveHandler(handler) {
277
- resolve.mockImplementation(async (executionId, key, callback) => {
278
- await handler(executionId, key, callback);
279
- });
280
- },
281
- /**
282
- * `wait` calls reshaped as `{ key, payload }` for assertions.
283
- * @returns Wait call records
284
- */
285
- get waitCalls() {
286
- return wait.mock.calls.map(([key, payload]) => ({
287
- key,
288
- payload
289
- }));
290
- },
291
- /**
292
- * `resolve` calls reshaped as `{ executionId, key }` for assertions.
293
- * @returns Resolve call records
294
- */
295
- get resolveCalls() {
296
- return resolve.mock.calls.map(([executionId, key]) => ({
297
- executionId,
298
- key
299
- }));
300
- },
301
- /** Reset all workflow responses and recorded calls (keeps the mock installed). */
302
- reset() {
303
- triggerJobFunction.mockReset();
304
- triggerJobFunction.mockImplementation(defaultTriggerJob);
305
- triggerWorkflow.mockReset();
306
- triggerWorkflow.mockImplementation(defaultTriggerWorkflow);
307
- wait.mockReset();
308
- wait.mockImplementation(() => null);
309
- resolve.mockReset();
310
- resolve.mockImplementation(async () => {});
311
- clearWorkflowTestEnv();
312
- }
313
- }, () => {
314
- root.workflow = prev;
315
- clearWorkflowTestEnv();
316
- });
317
- }
318
- const SECRET_STORE = Symbol("tailorSecretStore");
319
- /**
320
- * Acquire a disposable mock for `tailor.secretmanager`. The secret store is
321
- * inherited (cloned) from the currently-installed mock on acquisition and
322
- * restored on dispose, so secrets seeded outside the test survive across
323
- * `using` scopes while per-test `setSecrets()` overrides stay isolated.
324
- * @returns Disposable SecretManager mock control object
325
- * @example
326
- * ```typescript
327
- * import { mockSecretmanager } from "@tailor-platform/sdk/vitest";
328
- *
329
- * test("reads secrets from vault", async () => {
330
- * using sm = mockSecretmanager();
331
- * sm.setSecrets({ "my-vault": { API_KEY: "sk-123" } });
332
- * // …
333
- * });
334
- * ```
335
- */
336
- function mockSecretmanager() {
337
- const root = tailorRoot();
338
- const prev = root.secretmanager;
339
- const holder = { store: structuredClone(prev?.[SECRET_STORE]?.store ?? {}) };
340
- const getSecret = vi.fn(async (vault, name) => holder.store[vault]?.[name]);
341
- const getSecrets = vi.fn(async (vault, names) => {
342
- const vaultData = holder.store[vault] ?? {};
343
- const result = {};
344
- for (const name of names) if (name in vaultData) result[name] = assertDefined(vaultData[name], `vault entry missing for: ${name}`);
345
- return result;
346
- });
347
- root.secretmanager = {
348
- getSecret,
349
- getSecrets,
350
- [SECRET_STORE]: holder
351
- };
352
- return withDispose({
353
- /** The `getSecret` `vi.fn`. */
354
- getSecret,
355
- /** The `getSecrets` `vi.fn`. */
356
- getSecrets,
357
- setSecrets(secrets) {
358
- holder.store = secrets;
359
- },
360
- get calls() {
361
- return [...getSecret.mock.calls.map((args, i) => ({
362
- order: getSecret.mock.invocationCallOrder[i] ?? 0,
363
- call: {
364
- method: "getSecret",
365
- vault: args[0],
366
- name: args[1]
367
- }
368
- })), ...getSecrets.mock.calls.map((args, i) => ({
369
- order: getSecrets.mock.invocationCallOrder[i] ?? 0,
370
- call: {
371
- method: "getSecrets",
372
- vault: args[0],
373
- names: args[1]
374
- }
375
- }))].toSorted((a, b) => a.order - b.order).map((e) => e.call);
376
- },
377
- reset() {
378
- holder.store = {};
379
- getSecret.mockClear();
380
- getSecrets.mockClear();
381
- }
382
- }, () => {
383
- root.secretmanager = prev;
384
- });
385
- }
386
- /**
387
- * Acquire a disposable mock for `tailor.authconnection`. Restored on dispose.
388
- * @returns Disposable AuthConnection mock control object
389
- * @example
390
- * ```typescript
391
- * import { mockAuthconnection } from "@tailor-platform/sdk/vitest";
392
- *
393
- * test("returns configured token", async () => {
394
- * using ac = mockAuthconnection();
395
- * ac.setTokens({ google: { access_token: "ya29.xxx" } });
396
- * // …
397
- * });
398
- * ```
399
- */
400
- function mockAuthconnection() {
401
- const root = tailorRoot();
402
- const prev = root.authconnection;
403
- let tokens = {};
404
- const getConnectionToken = vi.fn(async (connectionName) => tokens[connectionName] ?? { access_token: "mock-token" });
405
- root.authconnection = { getConnectionToken };
406
- return withDispose({
407
- /** The `getConnectionToken` `vi.fn`. */
408
- getConnectionToken,
409
- setTokens(value) {
410
- tokens = value;
411
- },
412
- get calls() {
413
- return getConnectionToken.mock.calls.map(([connectionName]) => ({ connectionName }));
414
- },
415
- reset() {
416
- tokens = {};
417
- getConnectionToken.mockClear();
418
- }
419
- }, () => {
420
- root.authconnection = prev;
421
- });
422
- }
423
- const IDP_DEFAULTS = {
424
- users: {
425
- users: [],
426
- nextPageToken: null,
427
- totalCount: 0
428
- },
429
- user: {
430
- id: "mock-id",
431
- name: "mock-user",
432
- disabled: false
433
- },
434
- userByName: {
435
- id: "mock-id",
436
- name: "mock-user",
437
- disabled: false
438
- },
439
- createUser: {
440
- id: "mock-id",
441
- name: "mock-user",
442
- disabled: false
443
- },
444
- updateUser: {
445
- id: "mock-id",
446
- name: "mock-user",
447
- disabled: false
448
- },
449
- deleteUser: true,
450
- sendPasswordResetEmail: true
451
- };
452
- /**
453
- * Acquire a disposable mock for `tailor.idp`. Restored on dispose.
454
- * @returns Disposable IDP mock control object
455
- * @example
456
- * ```typescript
457
- * import { mockIdp } from "@tailor-platform/sdk/vitest";
458
- *
459
- * test("resolver-based", async () => {
460
- * using idp = mockIdp();
461
- * idp.setResolver((method) =>
462
- * method === "user" ? { id: "u-1", name: "alice", disabled: false } : null,
463
- * );
464
- * // …
465
- * });
466
- * ```
467
- */
468
- function mockIdp() {
469
- const root = tailorRoot();
470
- const prev = root.idp;
471
- const queue = [];
472
- let resolver = () => null;
473
- const calls = [];
474
- function handle(method, args, namespace) {
475
- calls.push({
476
- method,
477
- args,
478
- namespace
479
- });
480
- if (queue.length > 0) return queue.shift();
481
- const resolved = resolver(method, args, namespace);
482
- if (resolved != null) return resolved;
483
- const fallback = IDP_DEFAULTS[method];
484
- return fallback === void 0 ? void 0 : structuredClone(fallback);
485
- }
486
- const Client = vi.fn(function(config) {
487
- const namespace = config.namespace;
488
- this.users = async (options) => handle("users", [options], namespace);
489
- this.user = async (userId) => handle("user", [userId], namespace);
490
- this.userByName = async (name) => handle("userByName", [name], namespace);
491
- this.createUser = async (input) => handle("createUser", [input], namespace);
492
- this.updateUser = async (input) => handle("updateUser", [input], namespace);
493
- this.deleteUser = async (userId) => handle("deleteUser", [userId], namespace);
494
- this.sendPasswordResetEmail = async (input) => handle("sendPasswordResetEmail", [input], namespace);
495
- });
496
- root.idp = { Client };
497
- return withDispose({
498
- /** The mock IDP `Client` constructor (`vi.fn`). */
499
- Client,
500
- setResolver(value) {
501
- resolver = value;
502
- },
503
- /**
504
- * Enqueue a single result for the next IDP call (FIFO; falls back to
505
- * `setResolver` when exhausted).
506
- * @param result - Result to return from the next IDP call
507
- */
508
- enqueueResult(result) {
509
- queue.push(result);
510
- },
511
- /**
512
- * Enqueue results for multiple subsequent IDP calls.
513
- * @param results - Results to enqueue, one per upcoming call
514
- */
515
- enqueueResults(...results) {
516
- queue.push(...results);
517
- },
518
- get calls() {
519
- return calls;
520
- },
521
- reset() {
522
- queue.length = 0;
523
- resolver = () => null;
524
- calls.length = 0;
525
- }
526
- }, () => {
527
- root.idp = prev;
528
- });
529
- }
530
- function isUtf8(encoding) {
531
- return encoding === "UTF8" || encoding === "UTF-8";
532
- }
533
- function defaultIconvResult(method, args) {
534
- switch (method) {
535
- case "convert":
536
- case "convertBuffer": return isUtf8(args[2]) ? "" : new Uint8Array();
537
- case "decode": return "";
538
- case "encode": return isUtf8(args[1]) ? "" : new Uint8Array();
539
- case "encodings": return [];
540
- default: return;
541
- }
542
- }
543
- /**
544
- * Acquire a disposable mock for `tailor.iconv`. Restored on dispose.
545
- * @returns Disposable Iconv mock control object
546
- * @example
547
- * ```typescript
548
- * import { mockIconv } from "@tailor-platform/sdk/vitest";
549
- *
550
- * test("mock encoding conversion", () => {
551
- * using iconv = mockIconv();
552
- * iconv.setResolver((method) => (method === "decode" ? "decoded-text" : null));
553
- * // …
554
- * });
555
- * ```
556
- */
557
- function mockIconv() {
558
- const root = tailorRoot();
559
- const prev = root.iconv;
560
- let resolver = null;
561
- const calls = [];
562
- function handle(method, args) {
563
- calls.push({
564
- method,
565
- args: [...args]
566
- });
567
- if (resolver) {
568
- const result = resolver(method, args);
569
- if (result != null) return result;
570
- }
571
- return defaultIconvResult(method, args);
572
- }
573
- class MockIconv {
574
- #fromEncoding;
575
- #toEncoding;
576
- constructor(fromEncoding, toEncoding) {
577
- this.#fromEncoding = fromEncoding;
578
- this.#toEncoding = toEncoding;
579
- }
580
- convert(input) {
581
- return handle("convert", [
582
- input,
583
- this.#fromEncoding,
584
- this.#toEncoding
585
- ]);
586
- }
587
- }
588
- root.iconv = {
589
- convert: (str, from, to) => handle("convert", [
590
- str,
591
- from,
592
- to
593
- ]),
594
- convertBuffer: (buf, from, to) => handle("convertBuffer", [
595
- buf,
596
- from,
597
- to
598
- ]),
599
- decode: (buf, encoding) => handle("decode", [buf, encoding]),
600
- encode: (str, encoding) => handle("encode", [str, encoding]),
601
- encodings: () => handle("encodings", []),
602
- Iconv: MockIconv
603
- };
604
- return withDispose({
605
- setResolver(value) {
606
- resolver = value;
607
- },
608
- get calls() {
609
- return calls;
610
- },
611
- reset() {
612
- resolver = null;
613
- calls.length = 0;
614
- }
615
- }, () => {
616
- root.iconv = prev;
617
- });
618
- }
619
- const FILE_DEFAULTS = {
620
- upload: { metadata: {
621
- fileSize: 0,
622
- sha256sum: ""
623
- } },
624
- download: {
625
- data: new Uint8Array(),
626
- metadata: {
627
- contentType: "",
628
- fileSize: 0,
629
- sha256sum: "",
630
- lastUploadedAt: ""
631
- }
632
- },
633
- downloadAsBase64: {
634
- data: "",
635
- metadata: {
636
- contentType: "",
637
- fileSize: 0,
638
- sha256sum: "",
639
- lastUploadedAt: ""
640
- }
641
- },
642
- delete: void 0,
643
- getMetadata: {
644
- contentType: "",
645
- fileSize: 0,
646
- sha256sum: "",
647
- urlPath: ""
648
- },
649
- downloadStream: null,
650
- uploadStream: { metadata: {
651
- fileSize: 0,
652
- sha256sum: ""
653
- } }
654
- };
655
- function toFileStream(value) {
656
- if (value !== null && typeof value === "object" && Symbol.asyncIterator in value && typeof value.close === "function") return value;
657
- if (value instanceof ArrayBuffer || ArrayBuffer.isView(value)) throw new TypeError("openDownloadStream expects an iterable of StreamValue items (e.g. [{ type: \"chunk\", data, position }, { type: \"complete\" }]); got raw bytes. Wrap the bytes in a structured chunk first.");
658
- if (value !== null && typeof value === "object" && (Symbol.iterator in value || Symbol.asyncIterator in value)) {
659
- const source = value;
660
- const inner = Symbol.asyncIterator in source ? source[Symbol.asyncIterator]() : source[Symbol.iterator]();
661
- const stream = {
662
- async next() {
663
- const r = await inner.next();
664
- if (!r.done) assertStreamValue(r.value);
665
- return r.done ? {
666
- done: true,
667
- value: void 0
668
- } : r;
669
- },
670
- async close() {},
671
- [Symbol.asyncIterator]() {
672
- return stream;
673
- }
674
- };
675
- return stream;
676
- }
677
- const empty = {
678
- async next() {
679
- return {
680
- done: true,
681
- value: void 0
682
- };
683
- },
684
- async close() {},
685
- [Symbol.asyncIterator]() {
686
- return empty;
687
- }
688
- };
689
- return empty;
690
- }
691
- function assertStreamValue(v) {
692
- if (v === null || typeof v !== "object") throw new TypeError(`openDownloadStream expected a StreamValue item ({ type: "metadata" | "chunk" | "complete", ... }); got ${typeof v === "object" ? "null" : typeof v}.`);
693
- if (v instanceof ArrayBuffer || ArrayBuffer.isView(v)) throw new TypeError("openDownloadStream expected a StreamValue item, got raw bytes. Wrap the bytes in a structured chunk first (e.g. { type: \"chunk\", data, position }).");
694
- const type = v.type;
695
- if (type !== "metadata" && type !== "chunk" && type !== "complete") throw new TypeError(`openDownloadStream expected a StreamValue item with type "metadata" | "chunk" | "complete"; got ${JSON.stringify(type)}.`);
696
- }
697
- /**
698
- * Acquire a disposable mock for `tailordb.file`. Restored on dispose.
699
- * @returns Disposable File mock control object
700
- * @example
701
- * ```typescript
702
- * import { mockFile } from "@tailor-platform/sdk/vitest";
703
- *
704
- * test("mock file download", async () => {
705
- * using file = mockFile();
706
- * file.enqueueResult({ data: new Uint8Array([1, 2, 3]), metadata: { ... } });
707
- * // …
708
- * });
709
- * ```
710
- */
711
- function mockFile() {
712
- const root = tailordbRoot();
713
- const prev = root.file;
714
- const queue = [];
715
- let resolver = () => null;
716
- const calls = [];
717
- function handle(method, namespace, typeName, fieldName, recordId) {
718
- const call = {
719
- method,
720
- namespace,
721
- typeName,
722
- fieldName,
723
- recordId
724
- };
725
- calls.push(call);
726
- if (queue.length > 0) return queue.shift();
727
- const resolved = resolver(method, call);
728
- if (resolved != null) return resolved;
729
- const fallback = FILE_DEFAULTS[method];
730
- return fallback === void 0 ? void 0 : structuredClone(fallback);
731
- }
732
- root.file = {
733
- async upload(namespace, typeName, fieldName, recordId) {
734
- return handle("upload", namespace, typeName, fieldName, recordId);
735
- },
736
- async download(namespace, typeName, fieldName, recordId) {
737
- return handle("download", namespace, typeName, fieldName, recordId);
738
- },
739
- async downloadAsBase64(namespace, typeName, fieldName, recordId) {
740
- return handle("downloadAsBase64", namespace, typeName, fieldName, recordId);
741
- },
742
- async delete(namespace, typeName, fieldName, recordId) {
743
- handle("delete", namespace, typeName, fieldName, recordId);
744
- },
745
- async getMetadata(namespace, typeName, fieldName, recordId) {
746
- return handle("getMetadata", namespace, typeName, fieldName, recordId);
747
- },
748
- async openDownloadStream(namespace, typeName, fieldName, recordId) {
749
- return toFileStream(handle("openDownloadStream", namespace, typeName, fieldName, recordId));
750
- },
751
- async downloadStream(namespace, typeName, fieldName, recordId) {
752
- const resolved = handle("downloadStream", namespace, typeName, fieldName, recordId);
753
- if (resolved != null) return resolved;
754
- return {
755
- body: new ReadableStream({ start(c) {
756
- c.close();
757
- } }),
758
- metadata: {
759
- contentType: "",
760
- fileSize: 0,
761
- sha256sum: "",
762
- lastUploadedAt: ""
763
- }
764
- };
765
- },
766
- async uploadStream(namespace, typeName, fieldName, recordId) {
767
- return handle("uploadStream", namespace, typeName, fieldName, recordId);
768
- }
769
- };
770
- return withDispose({
771
- setResolver(value) {
772
- resolver = value;
773
- },
774
- /**
775
- * Enqueue a single result for the next `tailordb.file` call (FIFO; falls
776
- * back to `setResolver` when exhausted).
777
- * @param result - Result to return from the next file call
778
- */
779
- enqueueResult(result) {
780
- queue.push(result);
781
- },
782
- /**
783
- * Enqueue results for multiple subsequent `tailordb.file` calls.
784
- * @param results - Results to enqueue, one per upcoming call
785
- */
786
- enqueueResults(...results) {
787
- queue.push(...results);
788
- },
789
- get calls() {
790
- return calls;
791
- },
792
- reset() {
793
- queue.length = 0;
794
- resolver = () => null;
795
- calls.length = 0;
796
- }
797
- }, () => {
798
- root.file = prev;
799
- });
800
- }
801
-
802
- //#endregion
803
- export { mockSecretmanager as a, mockIdp as i, mockFile as n, mockTailordb as o, mockIconv as r, mockWorkflow as s, mockAuthconnection as t };
804
- //# sourceMappingURL=mock-BjFj5o1I.mjs.map