@tailor-platform/sdk 2.0.0-next.2 → 2.0.0-next.4
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 +511 -10
- 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-BO4ZF8wP.mjs +3 -0
- package/dist/application-BX13RArL.mjs +6669 -0
- package/dist/application-BX13RArL.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 +1 -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 +3 -0
- package/dist/cli/commands/deploy/aigateway.d.mts +1 -0
- package/dist/cli/commands/deploy/application.d.mts +1 -0
- package/dist/cli/commands/deploy/apply-phases.d.mts +1 -0
- package/dist/cli/commands/deploy/auth.d.mts +1 -0
- package/dist/cli/commands/deploy/deploy.d.mts +24 -0
- package/dist/cli/commands/deploy/executor.d.mts +1 -0
- package/dist/cli/commands/deploy/function-registry-types.d.mts +12 -0
- package/dist/cli/commands/deploy/function-registry.d.mts +2 -0
- package/dist/cli/commands/deploy/idp.d.mts +1 -0
- package/dist/cli/commands/deploy/resolver.d.mts +1 -0
- package/dist/cli/commands/deploy/secret-manager.d.mts +1 -0
- package/dist/cli/commands/deploy/staticwebsite.d.mts +1 -0
- package/dist/cli/commands/deploy/tailordb/index.d.mts +1 -0
- package/dist/cli/commands/deploy/types.d.mts +1 -0
- package/dist/cli/commands/deploy/workflow-execution-policy.d.mts +1 -0
- package/dist/cli/commands/deploy/workflow.d.mts +1 -0
- package/dist/cli/commands/executor/get.d.mts +29 -0
- package/dist/cli/commands/executor/jobs.d.mts +123 -0
- package/dist/cli/commands/executor/list.d.mts +19 -0
- package/dist/cli/commands/executor/transform.d.mts +41 -0
- package/dist/cli/commands/executor/trigger.d.mts +41 -0
- package/dist/cli/commands/executor/webhook.d.mts +22 -0
- package/dist/cli/commands/function/get.d.mts +18 -0
- package/dist/cli/commands/function/list.d.mts +22 -0
- package/dist/cli/commands/function/transform.d.mts +11 -0
- package/dist/cli/commands/generate/options.d.mts +7 -0
- package/dist/cli/commands/generate/seed/bundler.d.mts +26 -0
- package/dist/cli/commands/generate/service.d.mts +11 -0
- package/dist/cli/commands/machineuser/list.d.mts +27 -0
- package/dist/cli/commands/machineuser/token.d.mts +22 -0
- package/dist/cli/commands/oauth2client/get.d.mts +18 -0
- package/dist/cli/commands/oauth2client/list.d.mts +20 -0
- package/dist/cli/commands/oauth2client/transform.d.mts +20 -0
- package/dist/cli/commands/organization/folder/create.d.mts +18 -0
- package/dist/cli/commands/organization/folder/delete.d.mts +16 -0
- package/dist/cli/commands/organization/folder/get.d.mts +17 -0
- package/dist/cli/commands/organization/folder/list.d.mts +22 -0
- package/dist/cli/commands/organization/folder/update.d.mts +18 -0
- package/dist/cli/commands/organization/get.d.mts +16 -0
- package/dist/cli/commands/organization/list.d.mts +15 -0
- package/dist/cli/commands/organization/transform.d.mts +27 -0
- package/dist/cli/commands/organization/tree.d.mts +25 -0
- package/dist/cli/commands/organization/update.d.mts +17 -0
- package/dist/cli/commands/remove.d.mts +16 -0
- package/dist/cli/commands/show.d.mts +34 -0
- package/dist/cli/commands/tailordb/migrate/bundler.d.mts +28 -0
- package/dist/cli/commands/tailordb/migrate/config.d.mts +19 -0
- package/dist/cli/commands/tailordb/migrate/diff-calculator.d.mts +223 -0
- package/dist/cli/commands/tailordb/migrate/generate.d.mts +17 -0
- package/dist/cli/commands/tailordb/migrate/snapshot-types.d.mts +202 -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 +19 -0
- package/dist/cli/commands/workflow/executions.d.mts +75 -0
- package/dist/cli/commands/workflow/get.d.mts +29 -0
- package/dist/cli/commands/workflow/list.d.mts +19 -0
- package/dist/cli/commands/workflow/resume.d.mts +23 -0
- package/dist/cli/commands/workflow/start.d.mts +61 -0
- package/dist/cli/commands/workflow/status.d.mts +5 -0
- package/dist/cli/commands/workflow/transform.d.mts +33 -0
- package/dist/cli/commands/workflow/wait.d.mts +16 -0
- package/dist/cli/commands/workflow/waiter.d.mts +23 -0
- package/dist/cli/commands/workspace/app/health.d.mts +18 -0
- package/dist/cli/commands/workspace/app/list.d.mts +22 -0
- package/dist/cli/commands/workspace/app/transform.d.mts +18 -0
- package/dist/cli/commands/workspace/create.d.mts +25 -0
- package/dist/cli/commands/workspace/delete.d.mts +15 -0
- package/dist/cli/commands/workspace/get.d.mts +17 -0
- package/dist/cli/commands/workspace/list.d.mts +17 -0
- package/dist/cli/commands/workspace/restore.d.mts +15 -0
- package/dist/cli/commands/workspace/transform.d.mts +16 -0
- package/dist/cli/commands/workspace/user/invite.d.mts +22 -0
- package/dist/cli/commands/workspace/user/list.d.mts +22 -0
- package/dist/cli/commands/workspace/user/remove.d.mts +17 -0
- package/dist/cli/commands/workspace/user/transform.d.mts +8 -0
- package/dist/cli/commands/workspace/user/update.d.mts +22 -0
- package/dist/cli/erd-viewer-assets/app.js +279 -36
- package/dist/cli/erd-viewer-assets/index.html +4 -0
- package/dist/cli/erd-viewer-assets/styles.css +252 -5
- package/dist/cli/index.d.mts +18 -3
- package/dist/cli/index.mjs +2237 -520
- package/dist/cli/index.mjs.map +1 -1
- package/dist/cli/lib.d.mts +81 -21107
- package/dist/cli/lib.mjs +7 -10
- package/dist/cli/lib.mjs.map +1 -1
- package/dist/cli/query/index.d.mts +39 -0
- package/dist/cli/services/application.d.mts +1 -0
- package/dist/cli/services/auth/service.d.mts +1 -0
- package/dist/cli/services/executor/service.d.mts +1 -0
- package/dist/cli/services/http-adapter/bundler.d.mts +1 -0
- package/dist/cli/services/http-adapter/service.d.mts +1 -0
- package/dist/cli/services/resolver/service.d.mts +1 -0
- package/dist/cli/services/tailordb/service.d.mts +1 -0
- package/dist/cli/services/workflow/bundler.d.mts +1 -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 +26 -0
- package/dist/cli/shared/context.d.mts +28 -0
- package/dist/cli/shared/script-executor.d.mts +75 -0
- package/dist/cli/shared/seed-chunker.d.mts +46 -0
- package/dist/cli/shared/trigger-context.d.mts +1 -0
- package/dist/cli/shared/type-generator.d.mts +20 -0
- package/dist/cli/ts-hook.d.mts +4 -0
- package/dist/cli/ts-hook.mjs +333 -0
- package/dist/completion/zsh-worker.zsh +1531 -1131
- package/dist/configure/config/index.d.mts +21 -0
- package/dist/configure/config/types.d.mts +105 -0
- package/dist/configure/index.d.mts +124 -9
- package/dist/configure/index.mjs +136 -23
- package/dist/configure/index.mjs.map +1 -1
- package/dist/configure/services/aigateway/index.d.mts +17 -0
- package/dist/configure/services/aigateway/types.d.mts +11 -0
- package/dist/configure/services/auth/index.d.mts +34 -0
- package/dist/configure/services/auth/types.d.mts +172 -0
- package/dist/configure/services/executor/executor.d.mts +81 -0
- package/dist/configure/services/executor/index.d.mts +8 -0
- package/dist/configure/services/executor/operation.d.mts +45 -0
- package/dist/configure/services/executor/trigger/event.d.mts +272 -0
- package/dist/configure/services/executor/trigger/index.d.mts +8 -0
- package/dist/configure/services/executor/trigger/schedule.d.mts +25 -0
- package/dist/configure/services/executor/trigger/webhook.d.mts +44 -0
- package/dist/configure/services/executor/types.d.mts +2 -0
- package/dist/configure/services/http-adapter/http-adapter.d.mts +125 -0
- package/dist/configure/services/http-adapter/index.d.mts +2 -0
- package/dist/configure/services/idp/index.d.mts +64 -0
- package/dist/configure/services/idp/permission.d.mts +80 -0
- package/dist/configure/services/idp/types.d.mts +20 -0
- package/dist/configure/services/index.d.mts +34 -0
- package/dist/configure/services/resolver/index.d.mts +5 -0
- package/dist/configure/services/resolver/resolver.d.mts +75 -0
- package/dist/configure/services/resolver/types.d.mts +6 -0
- package/dist/configure/services/secrets/index.d.mts +38 -0
- package/dist/configure/services/secrets/types.d.mts +11 -0
- package/dist/configure/services/staticwebsite/index.d.mts +19 -0
- package/dist/configure/services/staticwebsite/types.d.mts +11 -0
- package/dist/configure/services/tailordb/index.d.mts +4 -0
- package/dist/configure/services/tailordb/permission.d.mts +119 -0
- package/dist/configure/services/tailordb/schema.d.mts +456 -0
- package/dist/configure/services/tailordb/types.d.mts +149 -0
- package/dist/configure/services/workflow/execution-policy.d.mts +71 -0
- package/dist/configure/services/workflow/execution-policy.types.d.mts +104 -0
- package/dist/configure/services/workflow/index.d.mts +8 -0
- package/dist/configure/services/workflow/job.d.mts +84 -0
- package/dist/configure/services/workflow/types.d.mts +2 -0
- package/dist/configure/services/workflow/wait-point.d.mts +73 -0
- package/dist/configure/services/workflow/workflow.d.mts +54 -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-runtime.d.mts +17 -0
- package/dist/configure/types/field.d.mts +9 -0
- package/dist/configure/types/field.types.d.mts +109 -0
- package/dist/configure/types/idp-name.d.mts +12 -0
- package/dist/configure/types/index.d.mts +4 -0
- package/dist/configure/types/machine-user.d.mts +2 -0
- package/dist/configure/types/type.d.mts +82 -0
- package/dist/{context-Bd266-ru.mjs → context-DYQVYWqZ.mjs} +4 -5
- package/dist/context-DYQVYWqZ.mjs.map +1 -0
- package/dist/{crashreport-DFq-vsU0.mjs → crashreport-Cg-pqRJV.mjs} +6 -6
- package/dist/{crashreport-DFq-vsU0.mjs.map → crashreport-Cg-pqRJV.mjs.map} +1 -1
- package/dist/{crashreport-BMWcxeSE.mjs → crashreport-D3RjuSYb.mjs} +1 -1
- package/dist/enum-constants-j9QBF0cB.mjs.map +1 -1
- package/dist/{errors-Dtf2WPaW.mjs → errors-118wUDRr.mjs} +2 -2
- package/dist/errors-118wUDRr.mjs.map +1 -0
- package/dist/field-runtime-CAnh_oow.mjs +183 -0
- package/dist/field-runtime-CAnh_oow.mjs.map +1 -0
- package/dist/{file-BbdFGdMV.mjs → file-BUcmVIH2.mjs} +12 -14
- package/dist/file-BUcmVIH2.mjs.map +1 -0
- package/dist/{file-utils-CYZnO1pX.mjs → file-utils-yEiIS4nJ.mjs} +2 -2
- package/dist/file-utils-yEiIS4nJ.mjs.map +1 -0
- package/dist/{globals-Cf0sxIt8.mjs → globals-BjhJJ2dN.mjs} +5 -47
- package/dist/globals-BjhJJ2dN.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 +2 -3
- package/dist/{kysely-type-DR8uzZTA.mjs → kysely-type-D-zflMGf.mjs} +2 -2
- package/dist/{kysely-type-DR8uzZTA.mjs.map → kysely-type-D-zflMGf.mjs.map} +1 -1
- package/dist/{logger-CxF-Ex5d.mjs → logger-BEiZZ3qT.mjs} +3 -3
- package/dist/{logger-CxF-Ex5d.mjs.map → logger-BEiZZ3qT.mjs.map} +1 -1
- package/dist/parser/service/auth/index.d.mts +1 -0
- package/dist/parser/service/auth/schema.d.mts +1 -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 +4 -0
- package/dist/parser/service/tailordb/types.d.mts +126 -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 +16 -1
- package/dist/plugin/builtin/file-utils/index.d.mts +16 -1
- package/dist/plugin/builtin/file-utils/index.mjs +1 -1
- package/dist/plugin/builtin/kysely-type/index.d.mts +16 -1
- package/dist/plugin/builtin/kysely-type/index.mjs +1 -1
- package/dist/plugin/builtin/seed/index.d.mts +45 -1
- package/dist/plugin/builtin/seed/index.mjs +1 -1
- package/dist/plugin/get-generated-type.d.mts +17 -0
- package/dist/plugin/index.d.mts +3 -118
- package/dist/plugin/index.mjs +1 -1
- package/dist/plugin/index.mjs.map +1 -1
- package/dist/plugin/manager.d.mts +1 -0
- package/dist/plugin/types.d.mts +243 -0
- package/dist/plugin/with-context.d.mts +102 -0
- package/dist/{runtime-CY4JvrDj.mjs → register-ts-hook-BM1caLT0.mjs} +4128 -2744
- package/dist/register-ts-hook-BM1caLT0.mjs.map +1 -0
- package/dist/{registry-DH4m7eYo.mjs → registry-BSbq6SPo.mjs} +4 -3
- package/dist/registry-BSbq6SPo.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/resource_pb-BRv7AMXK.mjs +49 -0
- package/dist/resource_pb-BRv7AMXK.mjs.map +1 -0
- package/dist/runtime/aigateway.d.mts +26 -0
- package/dist/runtime/aigateway.mjs +3 -0
- package/dist/runtime/authconnection.d.mts +22 -2
- package/dist/runtime/authconnection.mjs +2 -2
- package/dist/runtime/context.d.mts +55 -2
- package/dist/runtime/context.mjs +2 -2
- package/dist/runtime/file.d.mts +170 -2
- package/dist/runtime/file.mjs +2 -2
- package/dist/runtime/globals.d.mts +31 -19
- 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 +47 -9
- package/dist/runtime/index.mjs +9 -8
- package/dist/runtime/secretmanager.d.mts +41 -2
- package/dist/runtime/secretmanager.mjs +2 -2
- package/dist/{types-BZ7QKVE8.d.mts → runtime/types.d.mts} +4 -5
- package/dist/runtime/workflow.d.mts +113 -2
- package/dist/runtime/workflow.mjs +2 -2
- package/dist/{schema-Dtw9Orye.mjs → schema-C4LYbXVG.mjs} +21 -186
- package/dist/schema-C4LYbXVG.mjs.map +1 -0
- package/dist/{secret-file-VSVGy1V0.mjs → secret-file-aoNXJmKa.mjs} +3 -3
- package/dist/secret-file-aoNXJmKa.mjs.map +1 -0
- package/dist/secretmanager-Bd45j7an.mjs +98 -0
- package/dist/secretmanager-Bd45j7an.mjs.map +1 -0
- package/dist/secretmanager-CYlpffsz.mjs +13 -0
- package/dist/secretmanager-CYlpffsz.mjs.map +1 -0
- package/dist/seed/index.d.mts +1 -2
- package/dist/{seed-izIEyP3z.mjs → seed-CRSQJI_z.mjs} +14 -3
- package/dist/seed-CRSQJI_z.mjs.map +1 -0
- package/dist/service-CkIwEctX.mjs +3 -0
- package/dist/{service-DU1mVzri2.mjs → service-DeZeYa06.mjs} +3 -3
- package/dist/service-DeZeYa06.mjs.map +1 -0
- package/dist/{service-DjyqbCaJ.mjs → service-ufH7sS8o.mjs} +396 -58
- package/dist/service-ufH7sS8o.mjs.map +1 -0
- package/dist/service_pb-B2FF59sP.mjs +3 -0
- package/dist/service_pb-B5w9rjPY.mjs +955 -0
- package/dist/service_pb-B5w9rjPY.mjs.map +1 -0
- package/dist/tailor-proto/src/tailor/v1/aigateway_pb.d.mts +204 -0
- package/dist/tailor-proto/src/tailor/v1/aigateway_resource_pb.d.mts +58 -0
- package/dist/tailor-proto/src/tailor/v1/application_pb.d.mts +316 -0
- package/dist/tailor-proto/src/tailor/v1/application_resource_pb.d.mts +161 -0
- package/dist/tailor-proto/src/tailor/v1/auth_pb.d.mts +2070 -0
- package/dist/tailor-proto/src/tailor/v1/auth_resource_pb.d.mts +861 -0
- package/dist/tailor-proto/src/tailor/v1/events_pb.d.mts +112 -0
- package/dist/tailor-proto/src/tailor/v1/events_resource_pb.d.mts +69 -0
- package/dist/tailor-proto/src/tailor/v1/executor_pb.d.mts +439 -0
- package/dist/tailor-proto/src/tailor/v1/executor_resource_pb.d.mts +564 -0
- package/dist/tailor-proto/src/tailor/v1/function_pb.d.mts +145 -0
- package/dist/tailor-proto/src/tailor/v1/function_registry_pb.d.mts +451 -0
- package/dist/tailor-proto/src/tailor/v1/function_resource_pb.d.mts +192 -0
- package/dist/tailor-proto/src/tailor/v1/http_adapter_resource_pb.d.mts +50 -0
- package/dist/tailor-proto/src/tailor/v1/idp_pb.d.mts +407 -0
- package/dist/tailor-proto/src/tailor/v1/idp_resource_pb.d.mts +430 -0
- package/dist/tailor-proto/src/tailor/v1/metadata_pb.d.mts +73 -0
- package/dist/tailor-proto/src/tailor/v1/metadata_resource_pb.d.mts +17 -0
- package/dist/tailor-proto/src/tailor/v1/meter_pb.d.mts +309 -0
- package/dist/tailor-proto/src/tailor/v1/pipeline_pb.d.mts +591 -0
- package/dist/tailor-proto/src/tailor/v1/pipeline_resource_pb.d.mts +330 -0
- package/dist/tailor-proto/src/tailor/v1/resource_pb.d.mts +113 -0
- package/dist/tailor-proto/src/tailor/v1/secret_manager_pb.d.mts +346 -0
- package/dist/tailor-proto/src/tailor/v1/secret_manager_resource_pb.d.mts +54 -0
- package/dist/tailor-proto/src/tailor/v1/service_pb.d.mts +3576 -0
- package/dist/tailor-proto/src/tailor/v1/stateflow_pb.d.mts +187 -0
- package/dist/tailor-proto/src/tailor/v1/stateflow_resource_pb.d.mts +29 -0
- package/dist/tailor-proto/src/tailor/v1/staticwebsite_pb.d.mts +429 -0
- package/dist/tailor-proto/src/tailor/v1/staticwebsite_resource_pb.d.mts +90 -0
- package/dist/tailor-proto/src/tailor/v1/tailordb_pb.d.mts +684 -0
- package/dist/tailor-proto/src/tailor/v1/tailordb_resource_pb.d.mts +797 -0
- package/dist/tailor-proto/src/tailor/v1/telemetryrouter_pb.d.mts +330 -0
- package/dist/tailor-proto/src/tailor/v1/telemetryrouter_resource_pb.d.mts +183 -0
- package/dist/tailor-proto/src/tailor/v1/workflow_pb.d.mts +862 -0
- package/dist/tailor-proto/src/tailor/v1/workflow_resource_pb.d.mts +310 -0
- package/dist/tailor-proto/src/tailor/v1/workspace_pb.d.mts +2015 -0
- package/dist/tailor-proto/src/tailor/v1/workspace_resource_pb.d.mts +483 -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/types/aigateway.generated.d.mts +9 -0
- package/dist/types/app-config.generated.d.mts +4 -0
- package/dist/types/auth-connection.generated.d.mts +20 -0
- package/dist/types/auth.generated.d.mts +145 -0
- package/dist/types/executor.generated.d.mts +177 -0
- package/dist/types/helpers.d.mts +39 -0
- package/dist/types/http-adapter.generated.d.mts +17 -0
- package/dist/{workflow.generated-ClEjBYhm.d.mts → types/idp.generated.d.mts} +98 -185
- package/dist/types/resolver.generated.d.mts +39 -0
- package/dist/types/secrets.generated.d.mts +14 -0
- package/dist/types/staticwebsite.generated.d.mts +10 -0
- package/dist/{types-CdcQh4Z2.d.mts → types/tailordb.generated.d.mts} +2 -287
- package/dist/types/workflow.generated.d.mts +12 -0
- package/dist/types-C-lQ4se3.mjs +4 -0
- package/dist/types-CXF2OYdR.mjs +199 -0
- package/dist/types-CXF2OYdR.mjs.map +1 -0
- package/dist/utils/test/index.d.mts +5 -89
- package/dist/utils/test/index.mjs.map +1 -1
- package/dist/utils/test/mock.d.mts +87 -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 +12 -428
- package/dist/vitest/index.mjs +740 -9
- package/dist/vitest/index.mjs.map +1 -1
- package/dist/vitest/mock-kysely.d.mts +62 -0
- package/dist/vitest/mock.d.mts +9 -0
- package/dist/vitest/mocks/aigateway.d.mts +30 -0
- package/dist/vitest/mocks/authconnection.d.mts +28 -0
- package/dist/vitest/mocks/file.d.mts +41 -0
- package/dist/vitest/mocks/iconv.d.mts +27 -0
- package/dist/vitest/mocks/idp.d.mts +44 -0
- package/dist/vitest/mocks/secretmanager.d.mts +33 -0
- package/dist/vitest/mocks/tailordb.d.mts +71 -0
- package/dist/vitest/mocks/workflow.d.mts +117 -0
- package/dist/vitest/setup.d.mts +1 -2
- package/dist/vitest/setup.mjs +2 -2
- package/dist/vitest/workflow-local.d.mts +40 -0
- package/dist/workflow-GNuSnsTx.mjs +22 -0
- package/dist/workflow-GNuSnsTx.mjs.map +1 -0
- package/docs/cli/application.md +98 -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 +23 -187
- package/docs/cli/function.md +14 -130
- 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 +137 -41
- package/docs/cli/skills.md +50 -39
- package/docs/cli/staticwebsite.md +32 -180
- package/docs/cli/tailordb.md +97 -323
- package/docs/cli/upgrade.md +2 -22
- package/docs/cli/user.md +78 -247
- package/docs/cli/workflow.md +44 -203
- package/docs/cli/workspace.md +165 -538
- package/docs/cli-reference.md +167 -67
- package/docs/configuration.md +34 -4
- package/docs/github-actions.md +46 -19
- package/docs/migration/v2.md +397 -26
- 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 +9 -3
- package/docs/services/aigateway.md +18 -2
- package/docs/services/auth.md +34 -42
- package/docs/services/http-adapter.md +16 -1
- package/docs/services/idp.md +55 -2
- package/docs/services/resolver.md +2 -2
- package/docs/services/secret.md +11 -11
- package/docs/services/staticwebsite.md +8 -2
- package/docs/services/tailordb-migration.md +25 -23
- package/docs/services/tailordb.md +55 -32
- package/docs/services/workflow.md +92 -14
- package/docs/testing.md +49 -3
- package/package.json +42 -31
- package/postinstall.mjs +4 -6
- package/dist/application-Dtqap5jM.mjs +0 -3
- package/dist/application-XuMWK4eq.mjs +0 -7257
- package/dist/application-XuMWK4eq.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/context-Bd266-ru.mjs.map +0 -1
- package/dist/context-C2lEi9uw.d.mts +0 -47
- 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-BbdFGdMV.mjs.map +0 -1
- package/dist/file-Dq3NIt_F.d.mts +0 -211
- package/dist/file-utils-CYZnO1pX.mjs.map +0 -1
- package/dist/globals-Cf0sxIt8.mjs.map +0 -1
- package/dist/http-adapter.generated-DFsXDdm5.d.mts +0 -581
- 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-BI-_j9Z3.d.mts +0 -1013
- package/dist/index-C4JirJH8.d.mts +0 -18
- package/dist/index-CZfWhr0a.d.mts +0 -18
- package/dist/index-Cg8VKAdN.d.mts +0 -46
- package/dist/index-DYRjoLXD.d.mts +0 -47
- package/dist/index-lFpcjHPU.d.mts +0 -201
- package/dist/index-nW7hE6oE.d.mts +0 -18
- package/dist/interceptor-D-q1rvRl.mjs.map +0 -1
- package/dist/mock-FPxmnt-y.mjs +0 -759
- package/dist/mock-FPxmnt-y.mjs.map +0 -1
- package/dist/registry-DH4m7eYo.mjs.map +0 -1
- package/dist/rolldown-runtime-DXywRVcq.mjs +0 -20
- package/dist/runtime-CY4JvrDj.mjs.map +0 -1
- package/dist/schema-Dtw9Orye.mjs.map +0 -1
- package/dist/secret-file-VSVGy1V0.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-izIEyP3z.mjs.map +0 -1
- package/dist/service-DCqIWibD.mjs +0 -3
- package/dist/service-DU1mVzri2.mjs.map +0 -1
- package/dist/service-DjyqbCaJ.mjs.map +0 -1
- package/dist/telemetry-CdqJEzkj.mjs.map +0 -1
- package/dist/telemetry-ClwW5ohF.mjs +0 -3
- package/dist/types-74etvaxy.mjs +0 -4
- package/dist/types-BDRml5C3.d.mts +0 -574
- package/dist/types-BQijbo4m.mjs +0 -371
- package/dist/types-BQijbo4m.mjs.map +0 -1
- package/dist/types-BX4q6Mo6.d.mts +0 -339
- package/dist/workflow-BOmaZwwG.mjs +0 -43
- package/dist/workflow-BOmaZwwG.mjs.map +0 -1
- package/dist/workflow-BVy4XWjS.d.mts +0 -101
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { DefinedFieldMetadata, FieldMetadata, TailorField, TailorFieldType } from "../../types/field.types.mjs";
|
|
2
|
+
import { AuthConnectionConfig, AuthConnectionOAuth2Config } from "../../../types/auth-connection.generated.mjs";
|
|
3
|
+
import { BuiltinIdP, IDToken, IdProvider, OAuth2ClientInput, OIDC, SAML, SCIMAttribute, SCIMAttributeMapping, SCIMAuthorization, SCIMConfig, SCIMResource, TenantProvider } from "../../../types/auth.generated.mjs";
|
|
4
|
+
import { AuthConfig, AuthConnectionTokenResult, AuthExternalConfig, AuthOwnConfig, AuthServiceInput, BeforeLoginClaims, BeforeLoginHookArgs, DefinedAuth, FederatedIdentity, FederatedIdentityClaims, FederatedIdentityProvider, OAuth2ClientGrantType, SCIMAttributeType, UserAttributeKey, UserAttributeListKey, UserAttributes, UsernameFieldKey, ValueOperand } from "./types.mjs";
|
|
5
|
+
import { TailorDBInstance } from "../tailordb/schema.mjs";
|
|
6
|
+
|
|
7
|
+
//#region src/configure/services/auth/index.d.ts
|
|
8
|
+
type MachineUserAttributeFields = Record<string, TailorField<DefinedFieldMetadata, unknown, FieldMetadata, TailorFieldType>>;
|
|
9
|
+
type PlaceholderUser = TailorDBInstance<Record<string, never>, Record<string, never>>;
|
|
10
|
+
type PlaceholderAttributes = UserAttributes<PlaceholderUser>;
|
|
11
|
+
type PlaceholderAttributeList = UserAttributeListKey<PlaceholderUser>[];
|
|
12
|
+
type UserProfileAuthInput<User extends TailorDBInstance, Attributes extends UserAttributes<User>, AttributeList extends UserAttributeListKey<User>[], MachineUserNames extends string, ConnectionNames extends string = string> = Omit<AuthServiceInput<User, Attributes, AttributeList, MachineUserNames, undefined, ConnectionNames>, "userProfile" | "machineUserAttributes"> & {
|
|
13
|
+
userProfile: NonNullable<AuthServiceInput<User, Attributes, AttributeList, MachineUserNames, undefined>["userProfile"]>;
|
|
14
|
+
machineUserAttributes?: never;
|
|
15
|
+
};
|
|
16
|
+
type MachineUserOnlyAuthInput<MachineUserNames extends string, MachineUserAttributes extends MachineUserAttributeFields, ConnectionNames extends string = string> = Omit<AuthServiceInput<PlaceholderUser, PlaceholderAttributes, PlaceholderAttributeList, MachineUserNames, MachineUserAttributes, ConnectionNames>, "userProfile" | "machineUserAttributes"> & {
|
|
17
|
+
userProfile?: never;
|
|
18
|
+
machineUserAttributes: MachineUserAttributes;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Define an auth service for the Tailor SDK.
|
|
22
|
+
* @template Name
|
|
23
|
+
* @template User
|
|
24
|
+
* @template Attributes
|
|
25
|
+
* @template AttributeList
|
|
26
|
+
* @template MachineUserNames
|
|
27
|
+
* @param name - Auth service name
|
|
28
|
+
* @param config - Auth service configuration
|
|
29
|
+
* @returns Defined auth service
|
|
30
|
+
*/
|
|
31
|
+
declare function defineAuth<const Name extends string, const User extends TailorDBInstance, const Attributes extends UserAttributes<User>, const AttributeList extends UserAttributeListKey<User>[], const MachineUserNames extends string, const ConnectionNames extends string = string>(name: Name, config: UserProfileAuthInput<User, Attributes, AttributeList, MachineUserNames, ConnectionNames>): DefinedAuth<Name, UserProfileAuthInput<User, Attributes, AttributeList, MachineUserNames, ConnectionNames>>;
|
|
32
|
+
declare function defineAuth<const Name extends string, const MachineUserAttributes extends MachineUserAttributeFields, const MachineUserNames extends string, const ConnectionNames extends string = string>(name: Name, config: MachineUserOnlyAuthInput<MachineUserNames, MachineUserAttributes, ConnectionNames>): DefinedAuth<Name, MachineUserOnlyAuthInput<MachineUserNames, MachineUserAttributes, ConnectionNames>>;
|
|
33
|
+
//#endregion
|
|
34
|
+
export { type AuthConfig, type AuthConnectionConfig, type AuthConnectionOAuth2Config, type AuthConnectionTokenResult, type AuthExternalConfig, type AuthOwnConfig, type AuthServiceInput, type BeforeLoginClaims, type BeforeLoginHookArgs, type BuiltinIdP, type DefinedAuth, type FederatedIdentity, type FederatedIdentityClaims, type FederatedIdentityProvider, type IDToken, type IdProvider as IdProviderConfig, type OAuth2ClientInput as OAuth2Client, type OAuth2ClientGrantType, type OIDC, type SAML, type SCIMAttribute, type SCIMAttributeMapping, type SCIMAttributeType, type SCIMAuthorization, type SCIMConfig, type SCIMResource, type TenantProvider as TenantProviderConfig, type UserAttributeKey, type UserAttributeListKey, type UserAttributes, type UsernameFieldKey, type ValueOperand, defineAuth };
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import { TailorEnv } from "../../../runtime/types.mjs";
|
|
2
|
+
import { output } from "../../../types/helpers.mjs";
|
|
3
|
+
import { DefinedFieldMetadata, FieldMetadata, TailorField, TailorFieldType } from "../../types/field.types.mjs";
|
|
4
|
+
import { TailorDBInstance } from "../tailordb/types.mjs";
|
|
5
|
+
import { AuthConnectionConfig } from "../../../types/auth-connection.generated.mjs";
|
|
6
|
+
import { IdProvider, OAuth2Client, OAuth2ClientInput, SCIMAttribute, SCIMConfig, TenantProvider } from "../../../types/auth.generated.mjs";
|
|
7
|
+
import { IsAny, JsonObject, JsonValue } from "type-fest";
|
|
8
|
+
|
|
9
|
+
//#region src/configure/services/auth/types.d.ts
|
|
10
|
+
type OAuth2ClientGrantType = OAuth2Client["grantTypes"][number];
|
|
11
|
+
type SCIMAttributeType = SCIMAttribute["type"];
|
|
12
|
+
interface MachineUserNameRegistry {}
|
|
13
|
+
/**
|
|
14
|
+
* Machine user name.
|
|
15
|
+
*
|
|
16
|
+
* When `tailor.d.ts` is generated (via `tailor deploy`/`generate`), this is narrowed
|
|
17
|
+
* to the union of defined machine user names. When no machine users are registered yet,
|
|
18
|
+
* falls back to `string` to avoid blocking editing before the first generate run.
|
|
19
|
+
*/
|
|
20
|
+
type MachineUserName = keyof MachineUserNameRegistry extends never ? string : keyof MachineUserNameRegistry & string;
|
|
21
|
+
/** Result of retrieving a connection token at runtime. */
|
|
22
|
+
type AuthConnectionTokenResult = {
|
|
23
|
+
access_token: string;
|
|
24
|
+
};
|
|
25
|
+
type ValueOperand = string | boolean | string[] | boolean[];
|
|
26
|
+
type AuthAttributeValue = ValueOperand | null | undefined;
|
|
27
|
+
type UserFieldKeys<User extends TailorDBInstance> = keyof output<User> & string;
|
|
28
|
+
type FieldDefined<User extends TailorDBInstance, Key extends UserFieldKeys<User>> = User["fields"][Key] extends {
|
|
29
|
+
_defined: infer Defined;
|
|
30
|
+
} ? Defined : never;
|
|
31
|
+
type FieldOutput<User extends TailorDBInstance, Key extends UserFieldKeys<User>> = output<User>[Key];
|
|
32
|
+
type FieldIsRequired<User extends TailorDBInstance, Key extends UserFieldKeys<User>> = undefined extends FieldOutput<User, Key> ? false : true;
|
|
33
|
+
type FieldIsOfType<User extends TailorDBInstance, Key extends UserFieldKeys<User>, Type extends string> = FieldDefined<User, Key> extends {
|
|
34
|
+
type: Type;
|
|
35
|
+
} ? true : false;
|
|
36
|
+
type FieldIsArray<User extends TailorDBInstance, Key extends UserFieldKeys<User>> = FieldDefined<User, Key> extends {
|
|
37
|
+
array: true;
|
|
38
|
+
} ? true : false;
|
|
39
|
+
type FieldIsUnique<User extends TailorDBInstance, Key extends UserFieldKeys<User>> = FieldDefined<User, Key> extends {
|
|
40
|
+
unique: true;
|
|
41
|
+
} ? true : false;
|
|
42
|
+
type FieldSupportsValueOperand<User extends TailorDBInstance, Key extends UserFieldKeys<User>> = FieldOutput<User, Key> extends ValueOperand | null | undefined ? true : false;
|
|
43
|
+
type UsernameFieldKey<User extends TailorDBInstance> = IsAny<User> extends true ? string : { [K in UserFieldKeys<User>]: FieldIsRequired<User, K> extends true ? FieldIsOfType<User, K, "string"> extends true ? FieldIsArray<User, K> extends true ? never : FieldIsUnique<User, K> extends true ? K : never : never : never }[UserFieldKeys<User>];
|
|
44
|
+
type UserAttributeKey<User extends TailorDBInstance> = { [K in UserFieldKeys<User>]: K extends "id" ? never : FieldSupportsValueOperand<User, K> extends true ? FieldIsOfType<User, K, "datetime" | "date" | "time"> extends true ? never : K : never }[UserFieldKeys<User>];
|
|
45
|
+
type UserAttributeListKey<User extends TailorDBInstance> = { [K in UserFieldKeys<User>]: K extends "id" ? never : FieldIsOfType<User, K, "uuid"> extends true ? FieldIsArray<User, K> extends true ? never : K : never }[UserFieldKeys<User>];
|
|
46
|
+
type UserAttributes<User extends TailorDBInstance> = { [K in UserAttributeKey<User>]?: true };
|
|
47
|
+
type DisallowExtraKeys<T, Allowed extends PropertyKey> = T & { [K in Exclude<keyof T, Allowed>]: never };
|
|
48
|
+
type AttributeListValue<User extends TailorDBInstance, Key extends UserAttributeListKey<User>> = Key extends keyof output<User> ? output<User>[Key] : never;
|
|
49
|
+
type AttributeListToTuple<User extends TailorDBInstance, AttributeList extends readonly UserAttributeListKey<User>[]> = { [Index in keyof AttributeList]: AttributeList[Index] extends UserAttributeListKey<User> ? AttributeListValue<User, AttributeList[Index]> : never };
|
|
50
|
+
type SelectedAttributeKeys<User extends TailorDBInstance, Attributes extends UserAttributes<User>> = Extract<{ [K in keyof Attributes]-?: undefined extends Attributes[K] ? never : K }[keyof Attributes], UserAttributeKey<User>>;
|
|
51
|
+
type UserProfile<User extends TailorDBInstance, Attributes extends UserAttributes<User>, AttributeList extends UserAttributeListKey<User>[]> = {
|
|
52
|
+
/**
|
|
53
|
+
* TailorDB namespace where the user type is defined.
|
|
54
|
+
*
|
|
55
|
+
* Usually auto-resolved, so you don't need to specify this.
|
|
56
|
+
* Required only when multiple TailorDBs exist and the type is in an external TailorDB.
|
|
57
|
+
*/
|
|
58
|
+
namespace?: string;
|
|
59
|
+
type: User;
|
|
60
|
+
usernameField: UsernameFieldKey<User>;
|
|
61
|
+
attributes?: DisallowExtraKeys<Attributes, UserAttributeKey<User>>;
|
|
62
|
+
attributeList?: AttributeList;
|
|
63
|
+
};
|
|
64
|
+
type MachineUserAttributeFields = Record<string, TailorField<DefinedFieldMetadata, unknown, FieldMetadata, TailorFieldType>>;
|
|
65
|
+
type TailorFieldOutputValue<Field> = Field extends TailorField<DefinedFieldMetadata, infer Output, FieldMetadata, TailorFieldType> ? Output : never;
|
|
66
|
+
type MachineUserAttributeValues<Fields extends MachineUserAttributeFields> = { [K in keyof Fields]: TailorFieldOutputValue<Fields[K]> extends ValueOperand | null | undefined ? TailorFieldOutputValue<Fields[K]> : never };
|
|
67
|
+
type MachineUserFromAttributes<Fields extends MachineUserAttributeFields> = (keyof Fields extends never ? {
|
|
68
|
+
attributes?: never;
|
|
69
|
+
} : {
|
|
70
|
+
attributes: DisallowExtraKeys<MachineUserAttributeValues<Fields>, keyof Fields>;
|
|
71
|
+
}) & {
|
|
72
|
+
attributeList?: string[];
|
|
73
|
+
};
|
|
74
|
+
type MachineUser<User extends TailorDBInstance, Attributes extends UserAttributes<User> = UserAttributes<User>, AttributeList extends UserAttributeListKey<User>[] = [], MachineUserAttributes extends MachineUserAttributeFields | undefined = undefined> = IsAny<MachineUserAttributes> extends true ? IsAny<User> extends true ? {
|
|
75
|
+
attributes: Record<string, AuthAttributeValue>;
|
|
76
|
+
attributeList?: string[];
|
|
77
|
+
} : (SelectedAttributeKeys<User, Attributes> extends never ? {
|
|
78
|
+
attributes?: never;
|
|
79
|
+
} : {
|
|
80
|
+
attributes: { [K in SelectedAttributeKeys<User, Attributes>]: K extends keyof output<User> ? output<User>[K] : never } & { [K in Exclude<keyof output<User>, SelectedAttributeKeys<User, Attributes>>]?: never };
|
|
81
|
+
}) & ([] extends AttributeList ? {
|
|
82
|
+
attributeList?: never;
|
|
83
|
+
} : {
|
|
84
|
+
attributeList: AttributeListToTuple<User, AttributeList>;
|
|
85
|
+
}) : [MachineUserAttributes] extends [MachineUserAttributeFields] ? MachineUserFromAttributes<MachineUserAttributes> : IsAny<User> extends true ? {
|
|
86
|
+
attributes: Record<string, AuthAttributeValue>;
|
|
87
|
+
attributeList?: string[];
|
|
88
|
+
} : (SelectedAttributeKeys<User, Attributes> extends never ? {
|
|
89
|
+
attributes?: never;
|
|
90
|
+
} : {
|
|
91
|
+
attributes: { [K in SelectedAttributeKeys<User, Attributes>]: K extends keyof output<User> ? output<User>[K] : never } & { [K in Exclude<keyof output<User>, SelectedAttributeKeys<User, Attributes>>]?: never };
|
|
92
|
+
}) & ([] extends AttributeList ? {
|
|
93
|
+
attributeList?: never;
|
|
94
|
+
} : {
|
|
95
|
+
attributeList: AttributeListToTuple<User, AttributeList>;
|
|
96
|
+
});
|
|
97
|
+
/** Upstream OAuth provider that federated a login through the Built-in IdP. */
|
|
98
|
+
type FederatedIdentityProvider = "google" | "microsoft";
|
|
99
|
+
/**
|
|
100
|
+
* Profile claims forwarded from the upstream OAuth provider's ID token.
|
|
101
|
+
*
|
|
102
|
+
* Commonly present claims are typed; any other claim the provider issues is
|
|
103
|
+
* forwarded as-is and reachable through the index signature. Availability
|
|
104
|
+
* varies by provider (e.g. Microsoft does not issue `picture`).
|
|
105
|
+
*/
|
|
106
|
+
type FederatedIdentityClaims = {
|
|
107
|
+
name?: string;
|
|
108
|
+
given_name?: string;
|
|
109
|
+
family_name?: string;
|
|
110
|
+
picture?: string;
|
|
111
|
+
locale?: string;
|
|
112
|
+
[claim: string]: JsonValue | undefined;
|
|
113
|
+
};
|
|
114
|
+
/**
|
|
115
|
+
* The upstream identity that federated this login, populated when a user signs
|
|
116
|
+
* in through a Built-in IdP OAuth provider (Google or Microsoft).
|
|
117
|
+
*
|
|
118
|
+
* Available on {@link BeforeLoginClaims.federated_identity}; `undefined` for
|
|
119
|
+
* password logins.
|
|
120
|
+
*/
|
|
121
|
+
type FederatedIdentity = {
|
|
122
|
+
provider: FederatedIdentityProvider;
|
|
123
|
+
claims: FederatedIdentityClaims;
|
|
124
|
+
};
|
|
125
|
+
/**
|
|
126
|
+
* Token claims passed to the {@link BeforeLoginHook} handler. Carries the IdP's
|
|
127
|
+
* own claims (e.g. `sub`, `email`) plus, for federated logins, the upstream
|
|
128
|
+
* provider's profile under {@link BeforeLoginClaims.federated_identity}.
|
|
129
|
+
*/
|
|
130
|
+
type BeforeLoginClaims = JsonObject & {
|
|
131
|
+
/** Present only for federated (Google/Microsoft) logins; `undefined` for password logins. */federated_identity?: FederatedIdentity;
|
|
132
|
+
};
|
|
133
|
+
type BeforeLoginHookArgs = {
|
|
134
|
+
claims: BeforeLoginClaims;
|
|
135
|
+
idpConfigName: string; /** Environment variables defined in `defineConfig({ env })`. */
|
|
136
|
+
env: TailorEnv;
|
|
137
|
+
};
|
|
138
|
+
type BeforeLoginHook<MachineUserNames extends string> = {
|
|
139
|
+
handler(args: BeforeLoginHookArgs): Promise<void>;
|
|
140
|
+
invoker: NoInfer<MachineUserNames>;
|
|
141
|
+
};
|
|
142
|
+
type AuthHooks<MachineUserNames extends string> = {
|
|
143
|
+
beforeLogin?: BeforeLoginHook<MachineUserNames>;
|
|
144
|
+
};
|
|
145
|
+
type AuthServiceInput<User extends TailorDBInstance, Attributes extends UserAttributes<User>, AttributeList extends UserAttributeListKey<User>[], MachineUserNames extends string, MachineUserAttributes extends MachineUserAttributeFields | undefined = MachineUserAttributeFields | undefined, ConnectionNames extends string = string> = {
|
|
146
|
+
hooks?: AuthHooks<MachineUserNames>;
|
|
147
|
+
userProfile?: UserProfile<User, Attributes, AttributeList>;
|
|
148
|
+
machineUserAttributes?: MachineUserAttributes;
|
|
149
|
+
machineUsers?: Record<MachineUserNames, MachineUser<User, Attributes, AttributeList, MachineUserAttributes>>;
|
|
150
|
+
oauth2Clients?: Record<string, OAuth2ClientInput>;
|
|
151
|
+
idProvider?: IdProvider;
|
|
152
|
+
scim?: SCIMConfig;
|
|
153
|
+
tenantProvider?: TenantProvider;
|
|
154
|
+
connections?: Record<ConnectionNames, AuthConnectionConfig>;
|
|
155
|
+
publishSessionEvents?: boolean;
|
|
156
|
+
};
|
|
157
|
+
declare const authDefinitionBrand: unique symbol;
|
|
158
|
+
type AuthDefinitionBrand = {
|
|
159
|
+
readonly [authDefinitionBrand]: true;
|
|
160
|
+
};
|
|
161
|
+
type DefinedAuth<Name extends string, Config> = Config & {
|
|
162
|
+
name: Name;
|
|
163
|
+
} & AuthDefinitionBrand;
|
|
164
|
+
type AuthExternalConfig = {
|
|
165
|
+
name: string;
|
|
166
|
+
external: true;
|
|
167
|
+
};
|
|
168
|
+
type AuthServiceInputLoose = AuthServiceInput<any, any, any, string, any>;
|
|
169
|
+
type AuthOwnConfig = DefinedAuth<string, AuthServiceInputLoose>;
|
|
170
|
+
type AuthConfig = AuthOwnConfig | AuthExternalConfig;
|
|
171
|
+
//#endregion
|
|
172
|
+
export { AuthAttributeValue, AuthConfig, AuthConnectionTokenResult, AuthDefinitionBrand, AuthExternalConfig, AuthHooks, AuthOwnConfig, AuthServiceInput, BeforeLoginClaims, BeforeLoginHook, BeforeLoginHookArgs, DefinedAuth, FederatedIdentity, FederatedIdentityClaims, FederatedIdentityProvider, MachineUserName, MachineUserNameRegistry, OAuth2ClientGrantType, SCIMAttributeType, UserAttributeKey, UserAttributeListKey, UserAttributes, UsernameFieldKey, ValueOperand };
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { MachineUserName } from "../auth/types.mjs";
|
|
2
|
+
import { ExecutorInput } from "../../../types/executor.generated.mjs";
|
|
3
|
+
import { Workflow } from "../workflow/workflow.mjs";
|
|
4
|
+
import { Operation } from "./operation.mjs";
|
|
5
|
+
import { Trigger } from "./trigger/index.mjs";
|
|
6
|
+
|
|
7
|
+
//#region src/configure/services/executor/executor.d.ts
|
|
8
|
+
/**
|
|
9
|
+
* Extract mainJob's Input type from Workflow.
|
|
10
|
+
*/
|
|
11
|
+
type WorkflowInput<W extends Workflow> = Parameters<W["trigger"]>[0];
|
|
12
|
+
type TriggerArgs<T extends Trigger<unknown>> = T extends {
|
|
13
|
+
__args: infer Args;
|
|
14
|
+
} ? Args : never;
|
|
15
|
+
type ExecutorBase<T extends Trigger<unknown>> = Omit<ExecutorInput, "trigger" | "operation"> & {
|
|
16
|
+
trigger: T;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Executor type with conditional inference for workflow operations.
|
|
20
|
+
* When operation.kind is "workflow", infers W from the workflow property
|
|
21
|
+
* to ensure args type matches the workflow's mainJob input type.
|
|
22
|
+
*/
|
|
23
|
+
type Executor<T extends Trigger<unknown>, O> = O extends {
|
|
24
|
+
kind: "workflow";
|
|
25
|
+
workflow: infer W extends Workflow;
|
|
26
|
+
} ? ExecutorBase<T> & {
|
|
27
|
+
operation: {
|
|
28
|
+
kind: "workflow";
|
|
29
|
+
workflow: W;
|
|
30
|
+
args?: WorkflowInput<W> | ((args: TriggerArgs<T>) => WorkflowInput<W>);
|
|
31
|
+
invoker?: MachineUserName;
|
|
32
|
+
};
|
|
33
|
+
} : ExecutorBase<T> & {
|
|
34
|
+
operation: O;
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* Create an executor configuration for the Tailor SDK.
|
|
38
|
+
*
|
|
39
|
+
* Executors are event-driven handlers that respond to record changes,
|
|
40
|
+
* resolver executions, or other events.
|
|
41
|
+
*
|
|
42
|
+
* Operation kinds: "function", "graphql", "webhook", "workflow".
|
|
43
|
+
* @template T
|
|
44
|
+
* @template O
|
|
45
|
+
* @param config - Executor configuration
|
|
46
|
+
* @returns The same executor configuration
|
|
47
|
+
* @example
|
|
48
|
+
* import { createExecutor, recordCreatedTrigger } from "@tailor-platform/sdk";
|
|
49
|
+
* import { order } from "../tailordb/order";
|
|
50
|
+
*
|
|
51
|
+
* export default createExecutor({
|
|
52
|
+
* name: "order-created",
|
|
53
|
+
* description: "Handles new order creation",
|
|
54
|
+
* trigger: recordCreatedTrigger({ type: order }),
|
|
55
|
+
* operation: {
|
|
56
|
+
* kind: "function",
|
|
57
|
+
* body: async ({ newRecord }) => {
|
|
58
|
+
* console.log("New order:", newRecord.id);
|
|
59
|
+
* },
|
|
60
|
+
* },
|
|
61
|
+
* });
|
|
62
|
+
*/
|
|
63
|
+
declare function createExecutor<T extends Trigger<unknown>, O extends Operation<TriggerArgs<T>> | {
|
|
64
|
+
kind: "workflow";
|
|
65
|
+
workflow: Workflow;
|
|
66
|
+
}>(config: Executor<T, O>): Executor<T, O>;
|
|
67
|
+
/**
|
|
68
|
+
* Create an executor configuration for the Tailor SDK.
|
|
69
|
+
* This overload preserves source compatibility for legacy explicit generic calls,
|
|
70
|
+
* where the first generic argument represents trigger args.
|
|
71
|
+
* @template Args
|
|
72
|
+
* @template O
|
|
73
|
+
* @param config - Executor configuration
|
|
74
|
+
* @returns The same executor configuration
|
|
75
|
+
*/
|
|
76
|
+
declare function createExecutor<Args, O extends Operation<Args> | {
|
|
77
|
+
kind: "workflow";
|
|
78
|
+
workflow: Workflow;
|
|
79
|
+
}>(config: Executor<Trigger<Args>, O>): Executor<Trigger<Args>, O>;
|
|
80
|
+
//#endregion
|
|
81
|
+
export { createExecutor };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ExecutorServiceConfig, ExecutorServiceInput } from "../../config/types.mjs";
|
|
2
|
+
import { FunctionOperation, GqlOperation, Operation, WebhookOperation, WorkflowOperation } from "./operation.mjs";
|
|
3
|
+
import { AuthAccessTokenArgs, AuthAccessTokenIssuedArgs, AuthAccessTokenRefreshedArgs, AuthAccessTokenRevokedArgs, AuthAccessTokenTrigger, IdpUserArgs, IdpUserCreatedArgs, IdpUserDeletedArgs, IdpUserTrigger, IdpUserUpdatedArgs, RecordCreatedArgs, RecordDeletedArgs, RecordUpdatedArgs, ResolverExecutedArgs, ResolverExecutedTrigger, TailorDBTrigger, authAccessTokenIssuedTrigger, authAccessTokenRefreshedTrigger, authAccessTokenRevokedTrigger, authAccessTokenTrigger, idpUserCreatedTrigger, idpUserDeletedTrigger, idpUserTrigger, idpUserUpdatedTrigger, recordCreatedTrigger, recordDeletedTrigger, recordTrigger, recordUpdatedTrigger, resolverExecutedTrigger } from "./trigger/event.mjs";
|
|
4
|
+
import { ScheduleArgs, ScheduleTrigger, scheduleTrigger } from "./trigger/schedule.mjs";
|
|
5
|
+
import { IncomingWebhookArgs, IncomingWebhookRequest, IncomingWebhookResponse, IncomingWebhookResponseConfig, IncomingWebhookTrigger, IncomingWebhookTriggerOptions, incomingWebhookTrigger } from "./trigger/webhook.mjs";
|
|
6
|
+
import { Trigger } from "./trigger/index.mjs";
|
|
7
|
+
import { createExecutor } from "./executor.mjs";
|
|
8
|
+
export { AuthAccessTokenArgs, AuthAccessTokenIssuedArgs, AuthAccessTokenRefreshedArgs, AuthAccessTokenRevokedArgs, AuthAccessTokenTrigger, type ExecutorServiceConfig, type ExecutorServiceInput, FunctionOperation, GqlOperation, IdpUserArgs, IdpUserCreatedArgs, IdpUserDeletedArgs, IdpUserTrigger, IdpUserUpdatedArgs, IncomingWebhookArgs, IncomingWebhookRequest, IncomingWebhookResponse, IncomingWebhookResponseConfig, IncomingWebhookTrigger, IncomingWebhookTriggerOptions, Operation, RecordCreatedArgs, RecordDeletedArgs, RecordUpdatedArgs, ResolverExecutedArgs, ResolverExecutedTrigger, ScheduleArgs, ScheduleTrigger, TailorDBTrigger, Trigger, WebhookOperation, WorkflowOperation, authAccessTokenIssuedTrigger, authAccessTokenRefreshedTrigger, authAccessTokenRevokedTrigger, authAccessTokenTrigger, createExecutor, idpUserCreatedTrigger, idpUserDeletedTrigger, idpUserTrigger, idpUserUpdatedTrigger, incomingWebhookTrigger, recordCreatedTrigger, recordDeletedTrigger, recordTrigger, recordUpdatedTrigger, resolverExecutedTrigger, scheduleTrigger };
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { TailorPrincipal } from "../../../runtime/types.mjs";
|
|
2
|
+
import { MachineUserName } from "../auth/types.mjs";
|
|
3
|
+
import { FunctionOperation as FunctionOperation$1, GqlOperation as GqlOperation$1, WebhookOperation as WebhookOperation$1, WorkflowOperation as WorkflowOperation$1 } from "../../../types/executor.generated.mjs";
|
|
4
|
+
import { Workflow } from "../workflow/workflow.mjs";
|
|
5
|
+
import { Client } from "@urql/core";
|
|
6
|
+
|
|
7
|
+
//#region src/configure/services/executor/operation.d.ts
|
|
8
|
+
/** Function-based executor operation. The body receives the trigger args and the `invoker`. */
|
|
9
|
+
type FunctionOperation<Args> = Omit<FunctionOperation$1, "body" | "invoker"> & {
|
|
10
|
+
body: (args: Args & {
|
|
11
|
+
invoker: TailorPrincipal | null;
|
|
12
|
+
}) => void | Promise<void>;
|
|
13
|
+
invoker?: MachineUserName;
|
|
14
|
+
};
|
|
15
|
+
type UrqlOperationArgs = Parameters<Client["query"] | Client["mutation"]>;
|
|
16
|
+
/** GraphQL-based executor operation. Executes a GraphQL query or mutation. */
|
|
17
|
+
type GqlOperation<Args> = Omit<GqlOperation$1, "query" | "variables" | "invoker"> & {
|
|
18
|
+
query: UrqlOperationArgs[0];
|
|
19
|
+
variables?: (args: Args) => UrqlOperationArgs[1];
|
|
20
|
+
invoker?: MachineUserName;
|
|
21
|
+
};
|
|
22
|
+
type RequestHeader = "A-IM" | "Accept" | "Accept-Additions" | "Accept-CH" | "Accept-Charset" | "Accept-Datetime" | "Accept-Encoding" | "Accept-Features" | "Accept-Language" | "Accept-Patch" | "Accept-Post" | "Accept-Ranges" | "Accept-Signature" | "Access-Control" | "Access-Control-Allow-Credentials" | "Access-Control-Allow-Headers" | "Access-Control-Allow-Methods" | "Access-Control-Allow-Origin" | "Access-Control-Expose-Headers" | "Access-Control-Max-Age" | "Access-Control-Request-Headers" | "Access-Control-Request-Method" | "Age" | "Allow" | "ALPN" | "Alt-Svc" | "Alt-Used" | "Alternates" | "AMP-Cache-Transform" | "Apply-To-Redirect-Ref" | "Authentication-Control" | "Authentication-Info" | "Authorization" | "Available-Dictionary" | "C-Ext" | "C-Man" | "C-Opt" | "C-PEP" | "C-PEP-Info" | "Cache-Control" | "Cache-Status" | "Cal-Managed-ID" | "CalDAV-Timezones" | "Capsule-Protocol" | "CDN-Cache-Control" | "CDN-Loop" | "Cert-Not-After" | "Cert-Not-Before" | "Clear-Site-Data" | "Client-Cert" | "Client-Cert-Chain" | "Close" | "CMCD-Object" | "CMCD-Request" | "CMCD-Session" | "CMCD-Status" | "CMSD-Dynamic" | "CMSD-Static" | "Concealed-Auth-Export" | "Configuration-Context" | "Connection" | "Content-Base" | "Content-Digest" | "Content-Disposition" | "Content-Encoding" | "Content-ID" | "Content-Language" | "Content-Length" | "Content-Location" | "Content-MD5" | "Content-Range" | "Content-Script-Type" | "Content-Security-Policy" | "Content-Security-Policy-Report-Only" | "Content-Style-Type" | "Content-Type" | "Content-Version" | "Cookie" | "Cookie2" | "Cross-Origin-Embedder-Policy" | "Cross-Origin-Embedder-Policy-Report-Only" | "Cross-Origin-Opener-Policy" | "Cross-Origin-Opener-Policy-Report-Only" | "Cross-Origin-Resource-Policy" | "CTA-Common-Access-Token" | "DASL" | "Date" | "DAV" | "Default-Style" | "Delta-Base" | "Deprecation" | "Depth" | "Derived-From" | "Destination" | "Differential-ID" | "Dictionary-ID" | "Digest" | "DPoP" | "DPoP-Nonce" | "Early-Data" | "EDIINT-Features" | "ETag" | "Expect" | "Expect-CT" | "Expires" | "Ext" | "Forwarded" | "From" | "GetProfile" | "Hobareg" | "Host" | "HTTP2-Settings" | "If" | "If-Match" | "If-Modified-Since" | "If-None-Match" | "If-Range" | "If-Schedule-Tag-Match" | "If-Unmodified-Since" | "IM" | "Include-Referred-Token-Binding-ID" | "Isolation" | "Keep-Alive" | "Label" | "Last-Event-ID" | "Last-Modified" | "Link" | "Link-Template" | "Location" | "Lock-Token" | "Man" | "Max-Forwards" | "Memento-Datetime" | "Meter" | "Method-Check" | "Method-Check-Expires" | "MIME-Version" | "Negotiate" | "NEL" | "OData-EntityId" | "OData-Isolation" | "OData-MaxVersion" | "OData-Version" | "Opt" | "Optional-WWW-Authenticate" | "Ordering-Type" | "Origin" | "Origin-Agent-Cluster" | "OSCORE" | "OSLC-Core-Version" | "Overwrite" | "P3P" | "PEP" | "PEP-Info" | "Permissions-Policy" | "PICS-Label" | "Ping-From" | "Ping-To" | "Position" | "Pragma" | "Prefer" | "Preference-Applied" | "Priority" | "ProfileObject" | "Protocol" | "Protocol-Info" | "Protocol-Query" | "Protocol-Request" | "Proxy-Authenticate" | "Proxy-Authentication-Info" | "Proxy-Authorization" | "Proxy-Features" | "Proxy-Instruction" | "Proxy-Status" | "Public" | "Public-Key-Pins" | "Public-Key-Pins-Report-Only" | "Range" | "Redirect-Ref" | "Referer" | "Referer-Root" | "Referrer-Policy" | "Refresh" | "Repeatability-Client-ID" | "Repeatability-First-Sent" | "Repeatability-Request-ID" | "Repeatability-Result" | "Replay-Nonce" | "Reporting-Endpoints" | "Repr-Digest" | "Retry-After" | "Safe" | "Schedule-Reply" | "Schedule-Tag" | "Sec-GPC" | "Sec-Purpose" | "Sec-Token-Binding" | "Sec-WebSocket-Accept" | "Sec-WebSocket-Extensions" | "Sec-WebSocket-Key" | "Sec-WebSocket-Protocol" | "Sec-WebSocket-Version" | "Security-Scheme" | "Server" | "Server-Timing" | "Set-Cookie" | "Set-Cookie2" | "SetProfile" | "Signature" | "Signature-Input" | "SLUG" | "SoapAction" | "Status-URI" | "Strict-Transport-Security" | "Sunset" | "Surrogate-Capability" | "Surrogate-Control" | "TCN" | "TE" | "Timeout" | "Timing-Allow-Origin" | "Topic" | "Traceparent" | "Tracestate" | "Trailer" | "Transfer-Encoding" | "TTL" | "Upgrade" | "Urgency" | "URI" | "Use-As-Dictionary" | "User-Agent" | "Variant-Vary" | "Vary" | "Via" | "Want-Content-Digest" | "Want-Digest" | "Want-Repr-Digest" | "Warning" | "WWW-Authenticate" | "X-Content-Type-Options" | "X-Frame-Options" | (string & {});
|
|
23
|
+
/** Outbound webhook executor operation. Sends HTTP requests to external URLs. */
|
|
24
|
+
type WebhookOperation<Args> = Omit<WebhookOperation$1, "url" | "requestBody" | "headers"> & {
|
|
25
|
+
url: (args: Args) => string;
|
|
26
|
+
requestBody?: (args: Args) => Record<string, unknown>;
|
|
27
|
+
headers?: { [key in RequestHeader]?: string | {
|
|
28
|
+
vault: string;
|
|
29
|
+
key: string;
|
|
30
|
+
} };
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Extract mainJob's Input type from Workflow.
|
|
34
|
+
* Workflow<Job> -> Job is WorkflowJob<Name, Input, Output> -> Input
|
|
35
|
+
*/
|
|
36
|
+
type WorkflowInput<W extends Workflow> = Parameters<W["trigger"]>[0];
|
|
37
|
+
/** Workflow-triggering executor operation. Triggers a workflow in response to an event. */
|
|
38
|
+
type WorkflowOperation<Args, W extends Workflow = Workflow> = Omit<WorkflowOperation$1, "workflowName" | "args" | "invoker"> & {
|
|
39
|
+
workflow: W;
|
|
40
|
+
args?: WorkflowInput<W> | ((args: Args) => WorkflowInput<W>);
|
|
41
|
+
invoker?: MachineUserName;
|
|
42
|
+
};
|
|
43
|
+
type Operation<Args> = FunctionOperation<Args> | GqlOperation<Args> | WebhookOperation<Args> | WorkflowOperation<Args>;
|
|
44
|
+
//#endregion
|
|
45
|
+
export { FunctionOperation, GqlOperation, Operation, WebhookOperation, WorkflowOperation };
|
|
@@ -0,0 +1,272 @@
|
|
|
1
|
+
import { TailorEnv, TailorPrincipal } from "../../../../runtime/types.mjs";
|
|
2
|
+
import { output } from "../../../../types/helpers.mjs";
|
|
3
|
+
import { AuthAccessTokenTrigger as AuthAccessTokenTrigger$1, IdpUserTrigger as IdpUserTrigger$1, ResolverExecutedTrigger as ResolverExecutedTrigger$1, TailorDBTrigger as TailorDBTrigger$1 } from "../../../../types/executor.generated.mjs";
|
|
4
|
+
import { TailorDBType } from "../../tailordb/schema.mjs";
|
|
5
|
+
import { IdpName } from "../../../types/idp-name.mjs";
|
|
6
|
+
import { ResolverConfig } from "../../resolver/resolver.mjs";
|
|
7
|
+
|
|
8
|
+
//#region src/configure/services/executor/trigger/event.d.ts
|
|
9
|
+
interface EventArgs {
|
|
10
|
+
workspaceId: string;
|
|
11
|
+
appNamespace: string;
|
|
12
|
+
env: TailorEnv;
|
|
13
|
+
actor: TailorPrincipal | null;
|
|
14
|
+
}
|
|
15
|
+
interface RecordArgs extends EventArgs {
|
|
16
|
+
typeName: string;
|
|
17
|
+
}
|
|
18
|
+
interface RecordCreatedArgs<T extends TailorDBType> extends RecordArgs {
|
|
19
|
+
event: "created";
|
|
20
|
+
rawEvent: "tailordb.type_record.created";
|
|
21
|
+
newRecord: output<T>;
|
|
22
|
+
}
|
|
23
|
+
interface RecordUpdatedArgs<T extends TailorDBType> extends RecordArgs {
|
|
24
|
+
event: "updated";
|
|
25
|
+
rawEvent: "tailordb.type_record.updated";
|
|
26
|
+
newRecord: output<T>;
|
|
27
|
+
oldRecord: output<T>;
|
|
28
|
+
}
|
|
29
|
+
interface RecordDeletedArgs<T extends TailorDBType> extends RecordArgs {
|
|
30
|
+
event: "deleted";
|
|
31
|
+
rawEvent: "tailordb.type_record.deleted";
|
|
32
|
+
oldRecord: output<T>;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Args for resolverExecutedTrigger. This is a discriminated union on `success`.
|
|
36
|
+
*
|
|
37
|
+
* When `success` is true, `result` contains the resolver output and `error` is never.
|
|
38
|
+
* When `success` is false, `error` contains the error message and `result` is never.
|
|
39
|
+
*
|
|
40
|
+
* Narrow on `success` to safely access either `result` or `error`.
|
|
41
|
+
* @example
|
|
42
|
+
* body: async (args) => {
|
|
43
|
+
* if (args.success) {
|
|
44
|
+
* console.log(args.result);
|
|
45
|
+
* } else {
|
|
46
|
+
* console.error(args.error);
|
|
47
|
+
* }
|
|
48
|
+
* }
|
|
49
|
+
*/
|
|
50
|
+
type ResolverExecutedArgs<R extends ResolverConfig> = EventArgs & {
|
|
51
|
+
resolverName: string;
|
|
52
|
+
} & ({
|
|
53
|
+
success: true;
|
|
54
|
+
result: output<R["output"]>;
|
|
55
|
+
error?: never;
|
|
56
|
+
} | {
|
|
57
|
+
success: false;
|
|
58
|
+
result?: never;
|
|
59
|
+
error: string;
|
|
60
|
+
});
|
|
61
|
+
interface IdpUserCreatedArgs extends EventArgs {
|
|
62
|
+
event: "created";
|
|
63
|
+
rawEvent: "idp.user.created";
|
|
64
|
+
namespaceName: string;
|
|
65
|
+
userId: string;
|
|
66
|
+
}
|
|
67
|
+
interface IdpUserUpdatedArgs extends EventArgs {
|
|
68
|
+
event: "updated";
|
|
69
|
+
rawEvent: "idp.user.updated";
|
|
70
|
+
namespaceName: string;
|
|
71
|
+
userId: string;
|
|
72
|
+
}
|
|
73
|
+
interface IdpUserDeletedArgs extends EventArgs {
|
|
74
|
+
event: "deleted";
|
|
75
|
+
rawEvent: "idp.user.deleted";
|
|
76
|
+
namespaceName: string;
|
|
77
|
+
userId: string;
|
|
78
|
+
}
|
|
79
|
+
type IdpUserArgs = IdpUserCreatedArgs | IdpUserUpdatedArgs | IdpUserDeletedArgs;
|
|
80
|
+
interface AuthAccessTokenIssuedArgs extends EventArgs {
|
|
81
|
+
event: "issued";
|
|
82
|
+
rawEvent: "auth.access_token.issued";
|
|
83
|
+
namespaceName: string;
|
|
84
|
+
userId: string;
|
|
85
|
+
}
|
|
86
|
+
interface AuthAccessTokenRefreshedArgs extends EventArgs {
|
|
87
|
+
event: "refreshed";
|
|
88
|
+
rawEvent: "auth.access_token.refreshed";
|
|
89
|
+
namespaceName: string;
|
|
90
|
+
userId: string;
|
|
91
|
+
}
|
|
92
|
+
interface AuthAccessTokenRevokedArgs extends EventArgs {
|
|
93
|
+
event: "revoked";
|
|
94
|
+
rawEvent: "auth.access_token.revoked";
|
|
95
|
+
namespaceName: string;
|
|
96
|
+
userId: string;
|
|
97
|
+
}
|
|
98
|
+
type AuthAccessTokenArgs = AuthAccessTokenIssuedArgs | AuthAccessTokenRefreshedArgs | AuthAccessTokenRevokedArgs;
|
|
99
|
+
declare const recordEventMap: {
|
|
100
|
+
readonly created: "tailordb.type_record.created";
|
|
101
|
+
readonly updated: "tailordb.type_record.updated";
|
|
102
|
+
readonly deleted: "tailordb.type_record.deleted";
|
|
103
|
+
};
|
|
104
|
+
type RecordEventMap = typeof recordEventMap;
|
|
105
|
+
type RecordEventKind = keyof RecordEventMap;
|
|
106
|
+
type RecordArgsMap<T extends TailorDBType> = {
|
|
107
|
+
created: RecordCreatedArgs<T>;
|
|
108
|
+
updated: RecordUpdatedArgs<T>;
|
|
109
|
+
deleted: RecordDeletedArgs<T>;
|
|
110
|
+
};
|
|
111
|
+
type RecordMultiArgs<T extends TailorDBType, K extends RecordEventKind[]> = RecordArgsMap<T>[K[number]];
|
|
112
|
+
type TailorDBTrigger<Args> = TailorDBTrigger$1 & {
|
|
113
|
+
__args: Args;
|
|
114
|
+
};
|
|
115
|
+
type RecordTriggerOptions<T extends TailorDBType, Args> = {
|
|
116
|
+
type: T;
|
|
117
|
+
condition?: (args: Args) => boolean;
|
|
118
|
+
};
|
|
119
|
+
/**
|
|
120
|
+
* Create a trigger that fires when a TailorDB record is created.
|
|
121
|
+
* @template T
|
|
122
|
+
* @param options - Trigger options
|
|
123
|
+
* @returns Record created trigger
|
|
124
|
+
*/
|
|
125
|
+
declare function recordCreatedTrigger<T extends TailorDBType>(options: RecordTriggerOptions<T, RecordCreatedArgs<T>>): TailorDBTrigger<RecordCreatedArgs<T>>;
|
|
126
|
+
/**
|
|
127
|
+
* Create a trigger that fires when a TailorDB record is updated.
|
|
128
|
+
* @template T
|
|
129
|
+
* @param options - Trigger options
|
|
130
|
+
* @returns Record updated trigger
|
|
131
|
+
*/
|
|
132
|
+
declare function recordUpdatedTrigger<T extends TailorDBType>(options: RecordTriggerOptions<T, RecordUpdatedArgs<T>>): TailorDBTrigger<RecordUpdatedArgs<T>>;
|
|
133
|
+
/**
|
|
134
|
+
* Create a trigger that fires when a TailorDB record is deleted.
|
|
135
|
+
* @template T
|
|
136
|
+
* @param options - Trigger options
|
|
137
|
+
* @returns Record deleted trigger
|
|
138
|
+
*/
|
|
139
|
+
declare function recordDeletedTrigger<T extends TailorDBType>(options: RecordTriggerOptions<T, RecordDeletedArgs<T>>): TailorDBTrigger<RecordDeletedArgs<T>>;
|
|
140
|
+
type RecordTriggerMultiOptions<T extends TailorDBType, K extends RecordEventKind[]> = {
|
|
141
|
+
type: T;
|
|
142
|
+
events: K;
|
|
143
|
+
condition?: (args: RecordMultiArgs<T, K>) => boolean;
|
|
144
|
+
};
|
|
145
|
+
/**
|
|
146
|
+
* Create a trigger that fires on multiple TailorDB record event types.
|
|
147
|
+
* @template T
|
|
148
|
+
* @template K
|
|
149
|
+
* @param options - Trigger options with events array
|
|
150
|
+
* @returns TailorDB record trigger
|
|
151
|
+
*/
|
|
152
|
+
declare function recordTrigger<T extends TailorDBType, const K extends [RecordEventKind, ...RecordEventKind[]]>(options: RecordTriggerMultiOptions<T, K>): TailorDBTrigger<RecordMultiArgs<T, K>>;
|
|
153
|
+
type ResolverExecutedTrigger<Args> = ResolverExecutedTrigger$1 & {
|
|
154
|
+
__args: Args;
|
|
155
|
+
};
|
|
156
|
+
type ResolverExecutedTriggerOptions<R extends ResolverConfig> = {
|
|
157
|
+
resolver: R;
|
|
158
|
+
condition?: (args: ResolverExecutedArgs<R>) => boolean;
|
|
159
|
+
};
|
|
160
|
+
/**
|
|
161
|
+
* Create a trigger that fires when a resolver is executed.
|
|
162
|
+
* @template R
|
|
163
|
+
* @param options - Trigger options
|
|
164
|
+
* @returns Resolver executed trigger
|
|
165
|
+
*/
|
|
166
|
+
declare function resolverExecutedTrigger<R extends ResolverConfig>(options: ResolverExecutedTriggerOptions<R>): ResolverExecutedTrigger<ResolverExecutedArgs<R>>;
|
|
167
|
+
declare const idpUserEventMap: {
|
|
168
|
+
readonly created: "idp.user.created";
|
|
169
|
+
readonly updated: "idp.user.updated";
|
|
170
|
+
readonly deleted: "idp.user.deleted";
|
|
171
|
+
};
|
|
172
|
+
type IdpUserEventMap = typeof idpUserEventMap;
|
|
173
|
+
type IdpUserEventKind = keyof IdpUserEventMap;
|
|
174
|
+
type IdpUserArgsMap = {
|
|
175
|
+
created: IdpUserCreatedArgs;
|
|
176
|
+
updated: IdpUserUpdatedArgs;
|
|
177
|
+
deleted: IdpUserDeletedArgs;
|
|
178
|
+
};
|
|
179
|
+
type IdpUserMultiArgs<K extends IdpUserEventKind[]> = IdpUserArgsMap[K[number]];
|
|
180
|
+
type IdpUserTrigger<Args> = IdpUserTrigger$1 & {
|
|
181
|
+
__args: Args;
|
|
182
|
+
};
|
|
183
|
+
type IdpUserSingleTriggerOptions = {
|
|
184
|
+
/**
|
|
185
|
+
* IdP namespace name to subscribe to. Required when the project defines
|
|
186
|
+
* multiple IdPs; optional when a single IdP exists. Must match an IdP name
|
|
187
|
+
* declared in `defineConfig({ idp: [...] })`.
|
|
188
|
+
*/
|
|
189
|
+
idp?: IdpName;
|
|
190
|
+
};
|
|
191
|
+
/**
|
|
192
|
+
* Create a trigger that fires when an IdP user is created.
|
|
193
|
+
* @param options - Trigger options
|
|
194
|
+
* @param options.idp - IdP namespace name to subscribe to
|
|
195
|
+
* @returns IdP user created trigger
|
|
196
|
+
*/
|
|
197
|
+
declare function idpUserCreatedTrigger(options?: IdpUserSingleTriggerOptions): IdpUserTrigger<IdpUserCreatedArgs>;
|
|
198
|
+
/**
|
|
199
|
+
* Create a trigger that fires when an IdP user is updated.
|
|
200
|
+
* @param options - Trigger options
|
|
201
|
+
* @param options.idp - IdP namespace name to subscribe to
|
|
202
|
+
* @returns IdP user updated trigger
|
|
203
|
+
*/
|
|
204
|
+
declare function idpUserUpdatedTrigger(options?: IdpUserSingleTriggerOptions): IdpUserTrigger<IdpUserUpdatedArgs>;
|
|
205
|
+
/**
|
|
206
|
+
* Create a trigger that fires when an IdP user is deleted.
|
|
207
|
+
* @param options - Trigger options
|
|
208
|
+
* @param options.idp - IdP namespace name to subscribe to
|
|
209
|
+
* @returns IdP user deleted trigger
|
|
210
|
+
*/
|
|
211
|
+
declare function idpUserDeletedTrigger(options?: IdpUserSingleTriggerOptions): IdpUserTrigger<IdpUserDeletedArgs>;
|
|
212
|
+
type IdpUserTriggerOptions<K extends IdpUserEventKind[]> = {
|
|
213
|
+
events: K;
|
|
214
|
+
/**
|
|
215
|
+
* IdP namespace name to subscribe to. Required when the project defines
|
|
216
|
+
* multiple IdPs; optional when a single IdP exists. Must match an IdP name
|
|
217
|
+
* declared in `defineConfig({ idp: [...] })`.
|
|
218
|
+
*/
|
|
219
|
+
idp?: IdpName;
|
|
220
|
+
};
|
|
221
|
+
/**
|
|
222
|
+
* Create a trigger that fires on multiple IdP user event types.
|
|
223
|
+
* @template K
|
|
224
|
+
* @param options - Trigger options with events array
|
|
225
|
+
* @param options.events - IdP user event kinds to subscribe to
|
|
226
|
+
* @param options.idp - IdP namespace name to subscribe to
|
|
227
|
+
* @returns IdP user trigger
|
|
228
|
+
*/
|
|
229
|
+
declare function idpUserTrigger<const K extends [IdpUserEventKind, ...IdpUserEventKind[]]>(options: IdpUserTriggerOptions<K>): IdpUserTrigger<IdpUserMultiArgs<K>>;
|
|
230
|
+
declare const authAccessTokenEventMap: {
|
|
231
|
+
readonly issued: "auth.access_token.issued";
|
|
232
|
+
readonly refreshed: "auth.access_token.refreshed";
|
|
233
|
+
readonly revoked: "auth.access_token.revoked";
|
|
234
|
+
};
|
|
235
|
+
type AuthAccessTokenEventMap = typeof authAccessTokenEventMap;
|
|
236
|
+
type AuthAccessTokenEventKind = keyof AuthAccessTokenEventMap;
|
|
237
|
+
type AuthAccessTokenArgsMap = {
|
|
238
|
+
issued: AuthAccessTokenIssuedArgs;
|
|
239
|
+
refreshed: AuthAccessTokenRefreshedArgs;
|
|
240
|
+
revoked: AuthAccessTokenRevokedArgs;
|
|
241
|
+
};
|
|
242
|
+
type AuthAccessTokenMultiArgs<K extends AuthAccessTokenEventKind[]> = AuthAccessTokenArgsMap[K[number]];
|
|
243
|
+
type AuthAccessTokenTrigger<Args> = AuthAccessTokenTrigger$1 & {
|
|
244
|
+
__args: Args;
|
|
245
|
+
};
|
|
246
|
+
/**
|
|
247
|
+
* Create a trigger that fires when an access token is issued.
|
|
248
|
+
* @returns Auth access token issued trigger
|
|
249
|
+
*/
|
|
250
|
+
declare function authAccessTokenIssuedTrigger(): AuthAccessTokenTrigger<AuthAccessTokenIssuedArgs>;
|
|
251
|
+
/**
|
|
252
|
+
* Create a trigger that fires when an access token is refreshed.
|
|
253
|
+
* @returns Auth access token refreshed trigger
|
|
254
|
+
*/
|
|
255
|
+
declare function authAccessTokenRefreshedTrigger(): AuthAccessTokenTrigger<AuthAccessTokenRefreshedArgs>;
|
|
256
|
+
/**
|
|
257
|
+
* Create a trigger that fires when an access token is revoked.
|
|
258
|
+
* @returns Auth access token revoked trigger
|
|
259
|
+
*/
|
|
260
|
+
declare function authAccessTokenRevokedTrigger(): AuthAccessTokenTrigger<AuthAccessTokenRevokedArgs>;
|
|
261
|
+
type AuthAccessTokenTriggerOptions<K extends AuthAccessTokenEventKind[]> = {
|
|
262
|
+
events: K;
|
|
263
|
+
};
|
|
264
|
+
/**
|
|
265
|
+
* Create a trigger that fires on multiple auth access token event types.
|
|
266
|
+
* @template K
|
|
267
|
+
* @param options - Trigger options with events array
|
|
268
|
+
* @returns Auth access token trigger
|
|
269
|
+
*/
|
|
270
|
+
declare function authAccessTokenTrigger<const K extends [AuthAccessTokenEventKind, ...AuthAccessTokenEventKind[]]>(options: AuthAccessTokenTriggerOptions<K>): AuthAccessTokenTrigger<AuthAccessTokenMultiArgs<K>>;
|
|
271
|
+
//#endregion
|
|
272
|
+
export { AuthAccessTokenArgs, AuthAccessTokenIssuedArgs, AuthAccessTokenRefreshedArgs, AuthAccessTokenRevokedArgs, AuthAccessTokenTrigger, IdpUserArgs, IdpUserCreatedArgs, IdpUserDeletedArgs, IdpUserTrigger, IdpUserUpdatedArgs, RecordCreatedArgs, RecordDeletedArgs, RecordUpdatedArgs, ResolverExecutedArgs, ResolverExecutedTrigger, TailorDBTrigger, authAccessTokenIssuedTrigger, authAccessTokenRefreshedTrigger, authAccessTokenRevokedTrigger, authAccessTokenTrigger, idpUserCreatedTrigger, idpUserDeletedTrigger, idpUserTrigger, idpUserUpdatedTrigger, recordCreatedTrigger, recordDeletedTrigger, recordTrigger, recordUpdatedTrigger, resolverExecutedTrigger };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AuthAccessTokenArgs, AuthAccessTokenIssuedArgs, AuthAccessTokenRefreshedArgs, AuthAccessTokenRevokedArgs, AuthAccessTokenTrigger, IdpUserArgs, IdpUserCreatedArgs, IdpUserDeletedArgs, IdpUserTrigger, IdpUserUpdatedArgs, RecordCreatedArgs, RecordDeletedArgs, RecordUpdatedArgs, ResolverExecutedArgs, ResolverExecutedTrigger, TailorDBTrigger, authAccessTokenIssuedTrigger, authAccessTokenRefreshedTrigger, authAccessTokenRevokedTrigger, authAccessTokenTrigger, idpUserCreatedTrigger, idpUserDeletedTrigger, idpUserTrigger, idpUserUpdatedTrigger, recordCreatedTrigger, recordDeletedTrigger, recordTrigger, recordUpdatedTrigger, resolverExecutedTrigger } from "./event.mjs";
|
|
2
|
+
import { ScheduleArgs, ScheduleTrigger, scheduleTrigger } from "./schedule.mjs";
|
|
3
|
+
import { IncomingWebhookArgs, IncomingWebhookRequest, IncomingWebhookResponse, IncomingWebhookResponseConfig, IncomingWebhookTrigger, IncomingWebhookTriggerOptions, incomingWebhookTrigger } from "./webhook.mjs";
|
|
4
|
+
|
|
5
|
+
//#region src/configure/services/executor/trigger/index.d.ts
|
|
6
|
+
type Trigger<Args> = TailorDBTrigger<Args> | ResolverExecutedTrigger<Args> | ScheduleTrigger<Args> | IncomingWebhookTrigger<Args> | IdpUserTrigger<Args> | AuthAccessTokenTrigger<Args>;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { AuthAccessTokenArgs, AuthAccessTokenIssuedArgs, AuthAccessTokenRefreshedArgs, AuthAccessTokenRevokedArgs, AuthAccessTokenTrigger, IdpUserArgs, IdpUserCreatedArgs, IdpUserDeletedArgs, IdpUserTrigger, IdpUserUpdatedArgs, IncomingWebhookArgs, IncomingWebhookRequest, IncomingWebhookResponse, IncomingWebhookResponseConfig, IncomingWebhookTrigger, IncomingWebhookTriggerOptions, RecordCreatedArgs, RecordDeletedArgs, RecordUpdatedArgs, ResolverExecutedArgs, ResolverExecutedTrigger, ScheduleArgs, ScheduleTrigger, TailorDBTrigger, Trigger, authAccessTokenIssuedTrigger, authAccessTokenRefreshedTrigger, authAccessTokenRevokedTrigger, authAccessTokenTrigger, idpUserCreatedTrigger, idpUserDeletedTrigger, idpUserTrigger, idpUserUpdatedTrigger, incomingWebhookTrigger, recordCreatedTrigger, recordDeletedTrigger, recordTrigger, recordUpdatedTrigger, resolverExecutedTrigger, scheduleTrigger };
|