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