primitive-admin 1.1.0-alpha.9 → 1.2.0-alpha.0
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/README.md +530 -116
- package/assets/skill/skills/primitive-platform/SKILL.md +295 -0
- package/dist/bin/primitive.d.ts +2 -0
- package/dist/bin/primitive.js +372 -21
- package/dist/bin/primitive.js.map +1 -1
- package/dist/src/commands/admins.d.ts +2 -0
- package/dist/src/commands/admins.js +136 -30
- package/dist/src/commands/admins.js.map +1 -1
- package/dist/src/commands/analytics.d.ts +2 -0
- package/dist/src/commands/analytics.js +713 -55
- package/dist/src/commands/analytics.js.map +1 -1
- package/dist/src/commands/apps.d.ts +2 -0
- package/dist/src/commands/apps.js +65 -100
- package/dist/src/commands/apps.js.map +1 -1
- package/dist/src/commands/auth-sessions.d.ts +7 -0
- package/dist/src/commands/auth-sessions.js +144 -0
- package/dist/src/commands/auth-sessions.js.map +1 -0
- package/dist/src/commands/auth.d.ts +2 -0
- package/dist/src/commands/auth.js +238 -108
- package/dist/src/commands/auth.js.map +1 -1
- package/dist/src/commands/blob-buckets.d.ts +2 -0
- package/dist/src/commands/blob-buckets.js +331 -0
- package/dist/src/commands/blob-buckets.js.map +1 -0
- package/dist/src/commands/catalog.d.ts +2 -0
- package/dist/src/commands/catalog.js +63 -48
- package/dist/src/commands/catalog.js.map +1 -1
- package/dist/src/commands/collection-type-configs.d.ts +2 -0
- package/dist/src/commands/collection-type-configs.js +85 -0
- package/dist/src/commands/collection-type-configs.js.map +1 -0
- package/dist/src/commands/collections.d.ts +2 -0
- package/dist/src/commands/collections.js +1285 -0
- package/dist/src/commands/collections.js.map +1 -0
- package/dist/src/commands/comparisons.d.ts +2 -0
- package/dist/src/commands/comparisons.js +6 -6
- package/dist/src/commands/comparisons.js.map +1 -1
- package/dist/src/commands/config.d.ts +46 -0
- package/dist/src/commands/config.js +465 -0
- package/dist/src/commands/config.js.map +1 -0
- package/dist/src/commands/connections.d.ts +2 -0
- package/dist/src/commands/connections.js +99 -0
- package/dist/src/commands/connections.js.map +1 -0
- package/dist/src/commands/cron-triggers.d.ts +2 -0
- package/dist/src/commands/cron-triggers.js +266 -0
- package/dist/src/commands/cron-triggers.js.map +1 -0
- package/dist/src/commands/database-type-configs.d.ts +2 -0
- package/dist/src/commands/database-type-configs.js +164 -0
- package/dist/src/commands/database-type-configs.js.map +1 -0
- package/dist/src/commands/database-types.d.ts +2 -0
- package/dist/src/commands/database-types.js +171 -0
- package/dist/src/commands/database-types.js.map +1 -0
- package/dist/src/commands/databases.d.ts +65 -0
- package/dist/src/commands/databases.js +1868 -243
- package/dist/src/commands/databases.js.map +1 -1
- package/dist/src/commands/documents.d.ts +60 -0
- package/dist/src/commands/documents.js +2888 -22
- package/dist/src/commands/documents.js.map +1 -1
- package/dist/src/commands/email-templates.d.ts +2 -0
- package/dist/src/commands/email-templates.js +175 -0
- package/dist/src/commands/email-templates.js.map +1 -0
- package/dist/src/commands/env.d.ts +23 -0
- package/dist/src/commands/env.js +395 -0
- package/dist/src/commands/env.js.map +1 -0
- package/dist/src/commands/feature-flags.d.ts +14 -0
- package/dist/src/commands/feature-flags.js +117 -0
- package/dist/src/commands/feature-flags.js.map +1 -0
- package/dist/src/commands/functions.d.ts +20 -0
- package/dist/src/commands/functions.js +1630 -0
- package/dist/src/commands/functions.js.map +1 -0
- package/dist/src/commands/group-type-configs.d.ts +2 -0
- package/dist/src/commands/group-type-configs.js +87 -0
- package/dist/src/commands/group-type-configs.js.map +1 -0
- package/dist/src/commands/groups.d.ts +2 -0
- package/dist/src/commands/groups.js +81 -113
- package/dist/src/commands/groups.js.map +1 -1
- package/dist/src/commands/guides.d.ts +223 -0
- package/dist/src/commands/guides.js +627 -69
- package/dist/src/commands/guides.js.map +1 -1
- package/dist/src/commands/init.d.ts +37 -0
- package/dist/src/commands/init.js +1693 -208
- package/dist/src/commands/init.js.map +1 -1
- package/dist/src/commands/integrations.d.ts +2 -0
- package/dist/src/commands/integrations.js +428 -187
- package/dist/src/commands/integrations.js.map +1 -1
- package/dist/src/commands/llm.d.ts +2 -0
- package/dist/src/commands/llm.js +13 -8
- package/dist/src/commands/llm.js.map +1 -1
- package/dist/src/commands/locks.d.ts +8 -0
- package/dist/src/commands/locks.js +175 -0
- package/dist/src/commands/locks.js.map +1 -0
- package/dist/src/commands/metadata-category-configs.d.ts +12 -0
- package/dist/src/commands/metadata-category-configs.js +113 -0
- package/dist/src/commands/metadata-category-configs.js.map +1 -0
- package/dist/src/commands/metadata.d.ts +2 -0
- package/dist/src/commands/metadata.js +288 -0
- package/dist/src/commands/metadata.js.map +1 -0
- package/dist/src/commands/prompts.d.ts +2 -0
- package/dist/src/commands/prompts.js +322 -634
- package/dist/src/commands/prompts.js.map +1 -1
- package/dist/src/commands/rule-sets.d.ts +3 -0
- package/dist/src/commands/rule-sets.js +139 -148
- package/dist/src/commands/rule-sets.js.map +1 -1
- package/dist/src/commands/scripts.d.ts +30 -0
- package/dist/src/commands/scripts.js +688 -0
- package/dist/src/commands/scripts.js.map +1 -0
- package/dist/src/commands/secrets.d.ts +2 -0
- package/dist/src/commands/secrets.js +109 -0
- package/dist/src/commands/secrets.js.map +1 -0
- package/dist/src/commands/sessions.d.ts +2 -0
- package/dist/src/commands/sessions.js +76 -0
- package/dist/src/commands/sessions.js.map +1 -0
- package/dist/src/commands/settings.d.ts +18 -0
- package/dist/src/commands/settings.js +54 -0
- package/dist/src/commands/settings.js.map +1 -0
- package/dist/src/commands/skill.d.ts +2 -0
- package/dist/src/commands/skill.js +29 -0
- package/dist/src/commands/skill.js.map +1 -0
- package/dist/src/commands/sync-app-settings.d.ts +158 -0
- package/dist/src/commands/sync-app-settings.js +328 -0
- package/dist/src/commands/sync-app-settings.js.map +1 -0
- package/dist/src/commands/sync.d.ts +2667 -0
- package/dist/src/commands/sync.js +17141 -834
- package/dist/src/commands/sync.js.map +1 -1
- package/dist/src/commands/tokens.d.ts +2 -0
- package/dist/src/commands/tokens.js +132 -22
- package/dist/src/commands/tokens.js.map +1 -1
- package/dist/src/commands/users.d.ts +2 -0
- package/dist/src/commands/users.js +542 -24
- package/dist/src/commands/users.js.map +1 -1
- package/dist/src/commands/vars.d.ts +8 -0
- package/dist/src/commands/vars.js +97 -0
- package/dist/src/commands/vars.js.map +1 -0
- package/dist/src/commands/waitlist.d.ts +2 -0
- package/dist/src/commands/waitlist.js +12 -11
- package/dist/src/commands/waitlist.js.map +1 -1
- package/dist/src/commands/webhooks.d.ts +31 -0
- package/dist/src/commands/webhooks.js +633 -0
- package/dist/src/commands/webhooks.js.map +1 -0
- package/dist/src/commands/workflows.d.ts +88 -0
- package/dist/src/commands/workflows.js +1568 -742
- package/dist/src/commands/workflows.js.map +1 -1
- package/dist/src/lib/access-rule-display.d.ts +21 -0
- package/dist/src/lib/access-rule-display.js +34 -0
- package/dist/src/lib/access-rule-display.js.map +1 -0
- package/dist/src/lib/api-client.d.ts +2513 -0
- package/dist/src/lib/api-client.js +2456 -162
- package/dist/src/lib/api-client.js.map +1 -1
- package/dist/src/lib/app-match-guard.d.ts +44 -0
- package/dist/src/lib/app-match-guard.js +72 -0
- package/dist/src/lib/app-match-guard.js.map +1 -0
- package/dist/src/lib/app-settings-descriptor.d.ts +263 -0
- package/dist/src/lib/app-settings-descriptor.js +583 -0
- package/dist/src/lib/app-settings-descriptor.js.map +1 -0
- package/dist/src/lib/auth-flow.d.ts +8 -0
- package/dist/src/lib/batch.d.ts +26 -0
- package/dist/src/lib/batch.js +32 -0
- package/dist/src/lib/batch.js.map +1 -0
- package/dist/src/lib/block-layout.d.ts +160 -0
- package/dist/src/lib/block-layout.js +451 -0
- package/dist/src/lib/block-layout.js.map +1 -0
- package/dist/src/lib/block-selector.d.ts +58 -0
- package/dist/src/lib/block-selector.js +92 -0
- package/dist/src/lib/block-selector.js.map +1 -0
- package/dist/src/lib/canonical-json.d.ts +12 -0
- package/dist/src/lib/canonical-json.js +35 -0
- package/dist/src/lib/canonical-json.js.map +1 -0
- package/dist/src/lib/channel.d.ts +30 -0
- package/dist/src/lib/channel.js +68 -0
- package/dist/src/lib/channel.js.map +1 -0
- package/dist/src/lib/cli-manifest.d.ts +68 -0
- package/dist/src/lib/cli-manifest.js +71 -0
- package/dist/src/lib/cli-manifest.js.map +1 -0
- package/dist/src/lib/codegen-shared/generatedFiles.d.ts +101 -0
- package/dist/src/lib/codegen-shared/generatedFiles.js +191 -0
- package/dist/src/lib/codegen-shared/generatedFiles.js.map +1 -0
- package/dist/src/lib/codegen-shared/prettierStable.d.ts +262 -0
- package/dist/src/lib/codegen-shared/prettierStable.js +610 -0
- package/dist/src/lib/codegen-shared/prettierStable.js.map +1 -0
- package/dist/src/lib/codegen-shared/resolveCodegenSourceDir.d.ts +38 -0
- package/dist/src/lib/codegen-shared/resolveCodegenSourceDir.js +46 -0
- package/dist/src/lib/codegen-shared/resolveCodegenSourceDir.js.map +1 -0
- package/dist/src/lib/collection-export.d.ts +212 -0
- package/dist/src/lib/collection-export.js +288 -0
- package/dist/src/lib/collection-export.js.map +1 -0
- package/dist/src/lib/config-json-field.d.ts +28 -0
- package/dist/src/lib/config-json-field.js +56 -0
- package/dist/src/lib/config-json-field.js.map +1 -0
- package/dist/src/lib/config-object-descriptor.d.ts +127 -0
- package/dist/src/lib/config-object-descriptor.js +740 -0
- package/dist/src/lib/config-object-descriptor.js.map +1 -0
- package/dist/src/lib/config-payload.d.ts +92 -0
- package/dist/src/lib/config-payload.js +161 -0
- package/dist/src/lib/config-payload.js.map +1 -0
- package/dist/src/lib/config-surface.d.ts +141 -0
- package/dist/src/lib/config-surface.js +368 -0
- package/dist/src/lib/config-surface.js.map +1 -0
- package/dist/src/lib/config-toml.d.ts +10 -0
- package/dist/src/lib/config-toml.js +42 -0
- package/dist/src/lib/config-toml.js.map +1 -0
- package/dist/src/lib/config.d.ts +71 -0
- package/dist/src/lib/config.js +71 -68
- package/dist/src/lib/config.js.map +1 -1
- package/dist/src/lib/confirm-prompt.d.ts +83 -0
- package/dist/src/lib/confirm-prompt.js +110 -0
- package/dist/src/lib/confirm-prompt.js.map +1 -0
- package/dist/src/lib/constants.d.ts +11 -0
- package/dist/src/lib/constants.js +12 -0
- package/dist/src/lib/constants.js.map +1 -0
- package/dist/src/lib/crash-handlers.d.ts +20 -0
- package/dist/src/lib/crash-handlers.js +49 -0
- package/dist/src/lib/crash-handlers.js.map +1 -0
- package/dist/src/lib/credentials-store.d.ts +104 -0
- package/dist/src/lib/credentials-store.js +336 -0
- package/dist/src/lib/credentials-store.js.map +1 -0
- package/dist/src/lib/csv.d.ts +47 -0
- package/dist/src/lib/csv.js +172 -0
- package/dist/src/lib/csv.js.map +1 -0
- package/dist/src/lib/data-input.d.ts +23 -0
- package/dist/src/lib/data-input.js +50 -0
- package/dist/src/lib/data-input.js.map +1 -0
- package/dist/src/lib/db-codegen/dbFingerprint.d.ts +10 -0
- package/dist/src/lib/db-codegen/dbFingerprint.js +17 -0
- package/dist/src/lib/db-codegen/dbFingerprint.js.map +1 -0
- package/dist/src/lib/db-codegen/dbGenerator.d.ts +67 -0
- package/dist/src/lib/db-codegen/dbGenerator.js +170 -0
- package/dist/src/lib/db-codegen/dbGenerator.js.map +1 -0
- package/dist/src/lib/db-codegen/dbNaming.d.ts +87 -0
- package/dist/src/lib/db-codegen/dbNaming.js +180 -0
- package/dist/src/lib/db-codegen/dbNaming.js.map +1 -0
- package/dist/src/lib/db-codegen/dbTemplates.d.ts +272 -0
- package/dist/src/lib/db-codegen/dbTemplates.js +480 -0
- package/dist/src/lib/db-codegen/dbTemplates.js.map +1 -0
- package/dist/src/lib/db-codegen/dbTsTypes.d.ts +73 -0
- package/dist/src/lib/db-codegen/dbTsTypes.js +139 -0
- package/dist/src/lib/db-codegen/dbTsTypes.js.map +1 -0
- package/dist/src/lib/db-codegen/dbTypeIR.d.ts +146 -0
- package/dist/src/lib/db-codegen/dbTypeIR.js +525 -0
- package/dist/src/lib/db-codegen/dbTypeIR.js.map +1 -0
- package/dist/src/lib/db-codegen/generated-operation-def-descriptor.d.ts +112 -0
- package/dist/src/lib/db-codegen/generated-operation-def-descriptor.js +211 -0
- package/dist/src/lib/db-codegen/generated-operation-def-descriptor.js.map +1 -0
- package/dist/src/lib/deprecation.d.ts +22 -0
- package/dist/src/lib/deprecation.js +43 -0
- package/dist/src/lib/deprecation.js.map +1 -0
- package/dist/src/lib/document-export-permissions.d.ts +30 -0
- package/dist/src/lib/document-export-permissions.js +54 -0
- package/dist/src/lib/document-export-permissions.js.map +1 -0
- package/dist/src/lib/document-ingest-artifact.d.ts +120 -0
- package/dist/src/lib/document-ingest-artifact.js +505 -0
- package/dist/src/lib/document-ingest-artifact.js.map +1 -0
- package/dist/src/lib/document-ingest-input.d.ts +51 -0
- package/dist/src/lib/document-ingest-input.js +132 -0
- package/dist/src/lib/document-ingest-input.js.map +1 -0
- package/dist/src/lib/document-ingest-rows.d.ts +137 -0
- package/dist/src/lib/document-ingest-rows.js +181 -0
- package/dist/src/lib/document-ingest-rows.js.map +1 -0
- package/dist/src/lib/document-ingest.d.ts +101 -0
- package/dist/src/lib/document-ingest.js +384 -0
- package/dist/src/lib/document-ingest.js.map +1 -0
- package/dist/src/lib/env-resolver-core.d.ts +258 -0
- package/dist/src/lib/env-resolver-core.js +447 -0
- package/dist/src/lib/env-resolver-core.js.map +1 -0
- package/dist/src/lib/env-resolver.d.ts +99 -0
- package/dist/src/lib/env-resolver.js +153 -0
- package/dist/src/lib/env-resolver.js.map +1 -0
- package/dist/src/lib/fetch.d.ts +5 -0
- package/dist/src/lib/function-bundle.d.ts +147 -0
- package/dist/src/lib/function-bundle.js +341 -0
- package/dist/src/lib/function-bundle.js.map +1 -0
- package/dist/src/lib/function-collect.d.ts +123 -0
- package/dist/src/lib/function-collect.js +610 -0
- package/dist/src/lib/function-collect.js.map +1 -0
- package/dist/src/lib/function-db-types.d.ts +202 -0
- package/dist/src/lib/function-db-types.js +870 -0
- package/dist/src/lib/function-db-types.js.map +1 -0
- package/dist/src/lib/function-document-types.d.ts +144 -0
- package/dist/src/lib/function-document-types.js +370 -0
- package/dist/src/lib/function-document-types.js.map +1 -0
- package/dist/src/lib/function-grants-preflight.d.ts +64 -0
- package/dist/src/lib/function-grants-preflight.js +105 -0
- package/dist/src/lib/function-grants-preflight.js.map +1 -0
- package/dist/src/lib/function-log-lines.d.ts +76 -0
- package/dist/src/lib/function-log-lines.js +160 -0
- package/dist/src/lib/function-log-lines.js.map +1 -0
- package/dist/src/lib/function-log-row.d.ts +29 -0
- package/dist/src/lib/function-log-row.js +73 -0
- package/dist/src/lib/function-log-row.js.map +1 -0
- package/dist/src/lib/function-log-tail.d.ts +132 -0
- package/dist/src/lib/function-log-tail.js +262 -0
- package/dist/src/lib/function-log-tail.js.map +1 -0
- package/dist/src/lib/function-run.d.ts +289 -0
- package/dist/src/lib/function-run.js +389 -0
- package/dist/src/lib/function-run.js.map +1 -0
- package/dist/src/lib/function-schema-codegen.d.ts +143 -0
- package/dist/src/lib/function-schema-codegen.js +420 -0
- package/dist/src/lib/function-schema-codegen.js.map +1 -0
- package/dist/src/lib/function-sync.d.ts +459 -0
- package/dist/src/lib/function-sync.js +1258 -0
- package/dist/src/lib/function-sync.js.map +1 -0
- package/dist/src/lib/function-trigger-listing.d.ts +27 -0
- package/dist/src/lib/function-trigger-listing.js +70 -0
- package/dist/src/lib/function-trigger-listing.js.map +1 -0
- package/dist/src/lib/function-triggers.d.ts +66 -0
- package/dist/src/lib/function-triggers.js +285 -0
- package/dist/src/lib/function-triggers.js.map +1 -0
- package/dist/src/lib/function-typecheck.d.ts +86 -0
- package/dist/src/lib/function-typecheck.js +370 -0
- package/dist/src/lib/function-typecheck.js.map +1 -0
- package/dist/src/lib/function-versions.d.ts +122 -0
- package/dist/src/lib/function-versions.js +182 -0
- package/dist/src/lib/function-versions.js.map +1 -0
- package/dist/src/lib/generated-allowlist.d.ts +28 -0
- package/dist/src/lib/generated-allowlist.js +280 -0
- package/dist/src/lib/generated-allowlist.js.map +1 -0
- package/dist/src/lib/generated-config-surfaces.d.ts +2936 -0
- package/dist/src/lib/generated-config-surfaces.js +10593 -0
- package/dist/src/lib/generated-config-surfaces.js.map +1 -0
- package/dist/src/lib/generated-sdk-types.d.ts +12 -0
- package/dist/src/lib/generated-sdk-types.js +13 -0
- package/dist/src/lib/generated-sdk-types.js.map +1 -0
- package/dist/src/lib/generated-template-lint.d.ts +212 -0
- package/dist/src/lib/generated-template-lint.js +624 -0
- package/dist/src/lib/generated-template-lint.js.map +1 -0
- package/dist/src/lib/generated-workflow-model-fields.d.ts +20 -0
- package/dist/src/lib/generated-workflow-model-fields.js +53 -0
- package/dist/src/lib/generated-workflow-model-fields.js.map +1 -0
- package/dist/src/lib/google-client-secret-status.d.ts +35 -0
- package/dist/src/lib/google-client-secret-status.js +56 -0
- package/dist/src/lib/google-client-secret-status.js.map +1 -0
- package/dist/src/lib/init-adopt.d.ts +16 -0
- package/dist/src/lib/init-adopt.js +34 -0
- package/dist/src/lib/init-adopt.js.map +1 -0
- package/dist/src/lib/init-assets.d.ts +39 -0
- package/dist/src/lib/init-assets.js +97 -0
- package/dist/src/lib/init-assets.js.map +1 -0
- package/dist/src/lib/init-client-platforms.d.ts +14 -0
- package/dist/src/lib/init-client-platforms.js +71 -0
- package/dist/src/lib/init-client-platforms.js.map +1 -0
- package/dist/src/lib/init-config.d.ts +98 -0
- package/dist/src/lib/init-config.js +186 -0
- package/dist/src/lib/init-config.js.map +1 -0
- package/dist/src/lib/init-email-redirect-uris.d.ts +37 -0
- package/dist/src/lib/init-email-redirect-uris.js +46 -0
- package/dist/src/lib/init-email-redirect-uris.js.map +1 -0
- package/dist/src/lib/init-ios-links.d.ts +91 -0
- package/dist/src/lib/init-ios-links.js +219 -0
- package/dist/src/lib/init-ios-links.js.map +1 -0
- package/dist/src/lib/init-plan.d.ts +80 -0
- package/dist/src/lib/init-plan.js +95 -0
- package/dist/src/lib/init-plan.js.map +1 -0
- package/dist/src/lib/init-production-env.d.ts +48 -0
- package/dist/src/lib/init-production-env.js +59 -0
- package/dist/src/lib/init-production-env.js.map +1 -0
- package/dist/src/lib/init-schema.d.ts +74 -0
- package/dist/src/lib/init-schema.js +358 -0
- package/dist/src/lib/init-schema.js.map +1 -0
- package/dist/src/lib/init-xcode.d.ts +34 -0
- package/dist/src/lib/init-xcode.js +138 -0
- package/dist/src/lib/init-xcode.js.map +1 -0
- package/dist/src/lib/integration-request-config.d.ts +30 -0
- package/dist/src/lib/integration-request-config.js +145 -0
- package/dist/src/lib/integration-request-config.js.map +1 -0
- package/dist/src/lib/integration-selector.d.ts +42 -0
- package/dist/src/lib/integration-selector.js +46 -0
- package/dist/src/lib/integration-selector.js.map +1 -0
- package/dist/src/lib/ios-app-id.d.ts +34 -0
- package/dist/src/lib/ios-app-id.js +69 -0
- package/dist/src/lib/ios-app-id.js.map +1 -0
- package/dist/src/lib/list-options.d.ts +68 -0
- package/dist/src/lib/list-options.js +89 -0
- package/dist/src/lib/list-options.js.map +1 -0
- package/dist/src/lib/local-state.d.ts +55 -0
- package/dist/src/lib/local-state.js +167 -0
- package/dist/src/lib/local-state.js.map +1 -0
- package/dist/src/lib/local-test-cases.d.ts +63 -0
- package/dist/src/lib/local-test-cases.js +136 -0
- package/dist/src/lib/local-test-cases.js.map +1 -0
- package/dist/src/lib/log-inspection.d.ts +710 -0
- package/dist/src/lib/log-inspection.js +814 -0
- package/dist/src/lib/log-inspection.js.map +1 -0
- package/dist/src/lib/logout-admin-session.d.ts +33 -0
- package/dist/src/lib/logout-admin-session.js +70 -0
- package/dist/src/lib/logout-admin-session.js.map +1 -0
- package/dist/src/lib/migration-nag.d.ts +49 -0
- package/dist/src/lib/migration-nag.js +164 -0
- package/dist/src/lib/migration-nag.js.map +1 -0
- package/dist/src/lib/object-status-filter.d.ts +22 -0
- package/dist/src/lib/object-status-filter.js +45 -0
- package/dist/src/lib/object-status-filter.js.map +1 -0
- package/dist/src/lib/output.d.ts +124 -0
- package/dist/src/lib/output.js +219 -8
- package/dist/src/lib/output.js.map +1 -1
- package/dist/src/lib/package-manager.d.ts +140 -0
- package/dist/src/lib/package-manager.js +305 -0
- package/dist/src/lib/package-manager.js.map +1 -0
- package/dist/src/lib/paginate.d.ts +82 -0
- package/dist/src/lib/paginate.js +99 -0
- package/dist/src/lib/paginate.js.map +1 -0
- package/dist/src/lib/platform-owned.d.ts +63 -0
- package/dist/src/lib/platform-owned.js +85 -0
- package/dist/src/lib/platform-owned.js.map +1 -0
- package/dist/src/lib/project-config.d.ts +122 -0
- package/dist/src/lib/project-config.js +244 -0
- package/dist/src/lib/project-config.js.map +1 -0
- package/dist/src/lib/prompt-cost-format.d.ts +11 -0
- package/dist/src/lib/prompt-cost-format.js +41 -0
- package/dist/src/lib/prompt-cost-format.js.map +1 -0
- package/dist/src/lib/prompt-schema-codegen.d.ts +147 -0
- package/dist/src/lib/prompt-schema-codegen.js +462 -0
- package/dist/src/lib/prompt-schema-codegen.js.map +1 -0
- package/dist/src/lib/query-operators.d.ts +43 -0
- package/dist/src/lib/query-operators.js +80 -0
- package/dist/src/lib/query-operators.js.map +1 -0
- package/dist/src/lib/record-filter.d.ts +18 -0
- package/dist/src/lib/record-filter.js +55 -0
- package/dist/src/lib/record-filter.js.map +1 -0
- package/dist/src/lib/refresh-admin-credentials.d.ts +73 -0
- package/dist/src/lib/refresh-admin-credentials.js +123 -0
- package/dist/src/lib/refresh-admin-credentials.js.map +1 -0
- package/dist/src/lib/resolve-init-dev-port.d.ts +56 -0
- package/dist/src/lib/resolve-init-dev-port.js +55 -0
- package/dist/src/lib/resolve-init-dev-port.js.map +1 -0
- package/dist/src/lib/resolve-init-server.d.ts +64 -0
- package/dist/src/lib/resolve-init-server.js +77 -0
- package/dist/src/lib/resolve-init-server.js.map +1 -0
- package/dist/src/lib/resolve-owner.d.ts +19 -0
- package/dist/src/lib/resolve-owner.js +20 -0
- package/dist/src/lib/resolve-owner.js.map +1 -0
- package/dist/src/lib/resolve-platform.d.ts +74 -0
- package/dist/src/lib/resolve-platform.js +105 -0
- package/dist/src/lib/resolve-platform.js.map +1 -0
- package/dist/src/lib/run-status.d.ts +19 -0
- package/dist/src/lib/run-status.generated.d.ts +39 -0
- package/dist/src/lib/run-status.generated.js +66 -0
- package/dist/src/lib/run-status.generated.js.map +1 -0
- package/dist/src/lib/run-status.js +19 -0
- package/dist/src/lib/run-status.js.map +1 -0
- package/dist/src/lib/server-text-normalization.d.ts +51 -0
- package/dist/src/lib/server-text-normalization.js +90 -0
- package/dist/src/lib/server-text-normalization.js.map +1 -0
- package/dist/src/lib/server-url.d.ts +22 -0
- package/dist/src/lib/server-url.js +33 -0
- package/dist/src/lib/server-url.js.map +1 -0
- package/dist/src/lib/signing-secret-status.d.ts +81 -0
- package/dist/src/lib/signing-secret-status.js +116 -0
- package/dist/src/lib/signing-secret-status.js.map +1 -0
- package/dist/src/lib/skill-installer.d.ts +71 -0
- package/dist/src/lib/skill-installer.js +441 -0
- package/dist/src/lib/skill-installer.js.map +1 -0
- package/dist/src/lib/snapshot-audit-source.d.ts +45 -0
- package/dist/src/lib/snapshot-audit-source.js +58 -0
- package/dist/src/lib/snapshot-audit-source.js.map +1 -0
- package/dist/src/lib/snapshot-audit-store.d.ts +52 -0
- package/dist/src/lib/snapshot-audit-store.js +196 -0
- package/dist/src/lib/snapshot-audit-store.js.map +1 -0
- package/dist/src/lib/snapshot-audit.d.ts +207 -0
- package/dist/src/lib/snapshot-audit.js +431 -0
- package/dist/src/lib/snapshot-audit.js.map +1 -0
- package/dist/src/lib/snapshot-build-rows.d.ts +60 -0
- package/dist/src/lib/snapshot-build-rows.js +87 -0
- package/dist/src/lib/snapshot-build-rows.js.map +1 -0
- package/dist/src/lib/snapshot-build.d.ts +50 -0
- package/dist/src/lib/snapshot-build.js +111 -0
- package/dist/src/lib/snapshot-build.js.map +1 -0
- package/dist/src/lib/snapshot-manifest-layout.d.ts +61 -0
- package/dist/src/lib/snapshot-manifest-layout.js +70 -0
- package/dist/src/lib/snapshot-manifest-layout.js.map +1 -0
- package/dist/src/lib/snapshots.d.ts +98 -0
- package/dist/src/lib/snapshots.js +294 -0
- package/dist/src/lib/snapshots.js.map +1 -0
- package/dist/src/lib/step-run-table.d.ts +43 -0
- package/dist/src/lib/step-run-table.js +129 -0
- package/dist/src/lib/step-run-table.js.map +1 -0
- package/dist/src/lib/storage-pending-retry.d.ts +26 -0
- package/dist/src/lib/storage-pending-retry.js +42 -0
- package/dist/src/lib/storage-pending-retry.js.map +1 -0
- package/dist/src/lib/swift-codegen/agentGenerator.d.ts +42 -0
- package/dist/src/lib/swift-codegen/agentGenerator.js +118 -0
- package/dist/src/lib/swift-codegen/agentGenerator.js.map +1 -0
- package/dist/src/lib/swift-codegen/banners.d.ts +24 -0
- package/dist/src/lib/swift-codegen/banners.js +25 -0
- package/dist/src/lib/swift-codegen/banners.js.map +1 -0
- package/dist/src/lib/swift-codegen/dbGenerator.d.ts +113 -0
- package/dist/src/lib/swift-codegen/dbGenerator.js +926 -0
- package/dist/src/lib/swift-codegen/dbGenerator.js.map +1 -0
- package/dist/src/lib/swift-codegen/dbSwiftTypes.d.ts +42 -0
- package/dist/src/lib/swift-codegen/dbSwiftTypes.js +100 -0
- package/dist/src/lib/swift-codegen/dbSwiftTypes.js.map +1 -0
- package/dist/src/lib/swift-codegen/functionGenerator.d.ts +139 -0
- package/dist/src/lib/swift-codegen/functionGenerator.js +462 -0
- package/dist/src/lib/swift-codegen/functionGenerator.js.map +1 -0
- package/dist/src/lib/swift-codegen/generator.d.ts +100 -0
- package/dist/src/lib/swift-codegen/generator.js +457 -0
- package/dist/src/lib/swift-codegen/generator.js.map +1 -0
- package/dist/src/lib/swift-codegen/schemaToSwift.d.ts +87 -0
- package/dist/src/lib/swift-codegen/schemaToSwift.js +661 -0
- package/dist/src/lib/swift-codegen/schemaToSwift.js.map +1 -0
- package/dist/src/lib/swift-codegen/siblingSymbols.d.ts +94 -0
- package/dist/src/lib/swift-codegen/siblingSymbols.js +155 -0
- package/dist/src/lib/swift-codegen/siblingSymbols.js.map +1 -0
- package/dist/src/lib/swift-codegen/swiftNaming.d.ts +85 -0
- package/dist/src/lib/swift-codegen/swiftNaming.js +198 -0
- package/dist/src/lib/swift-codegen/swiftNaming.js.map +1 -0
- package/dist/src/lib/sync-dir-selector.d.ts +21 -0
- package/dist/src/lib/sync-dir-selector.js +30 -0
- package/dist/src/lib/sync-dir-selector.js.map +1 -0
- package/dist/src/lib/sync-paths.d.ts +128 -0
- package/dist/src/lib/sync-paths.js +195 -0
- package/dist/src/lib/sync-paths.js.map +1 -0
- package/dist/src/lib/sync-resource-types.d.ts +563 -0
- package/dist/src/lib/sync-resource-types.js +1073 -0
- package/dist/src/lib/sync-resource-types.js.map +1 -0
- package/dist/src/lib/sync-selectors.d.ts +138 -0
- package/dist/src/lib/sync-selectors.js +289 -0
- package/dist/src/lib/sync-selectors.js.map +1 -0
- package/dist/src/lib/template.d.ts +170 -0
- package/dist/src/lib/template.js +484 -68
- package/dist/src/lib/template.js.map +1 -1
- package/dist/src/lib/test-case-file-names.d.ts +40 -0
- package/dist/src/lib/test-case-file-names.js +91 -0
- package/dist/src/lib/test-case-file-names.js.map +1 -0
- package/dist/src/lib/test-case-keys.d.ts +29 -0
- package/dist/src/lib/test-case-keys.js +55 -0
- package/dist/src/lib/test-case-keys.js.map +1 -0
- package/dist/src/lib/test-case-variables.d.ts +29 -0
- package/dist/src/lib/test-case-variables.js +71 -0
- package/dist/src/lib/test-case-variables.js.map +1 -0
- package/dist/src/lib/token-inject.d.ts +56 -0
- package/dist/src/lib/token-inject.js +204 -0
- package/dist/src/lib/token-inject.js.map +1 -0
- package/dist/src/lib/toml-database-config.d.ts +123 -0
- package/dist/src/lib/toml-database-config.js +544 -0
- package/dist/src/lib/toml-database-config.js.map +1 -0
- package/dist/src/lib/toml-metadata-config.d.ts +151 -0
- package/dist/src/lib/toml-metadata-config.js +476 -0
- package/dist/src/lib/toml-metadata-config.js.map +1 -0
- package/dist/src/lib/toml-native-form.d.ts +46 -0
- package/dist/src/lib/toml-native-form.js +78 -0
- package/dist/src/lib/toml-native-form.js.map +1 -0
- package/dist/src/lib/toml-params-validator.d.ts +129 -0
- package/dist/src/lib/toml-params-validator.js +298 -0
- package/dist/src/lib/toml-params-validator.js.map +1 -0
- package/dist/src/lib/toml-scalar-edit.d.ts +43 -0
- package/dist/src/lib/toml-scalar-edit.js +283 -0
- package/dist/src/lib/toml-scalar-edit.js.map +1 -0
- package/dist/src/lib/user-selector.d.ts +24 -0
- package/dist/src/lib/user-selector.js +33 -0
- package/dist/src/lib/user-selector.js.map +1 -0
- package/dist/src/lib/version-check.d.ts +35 -0
- package/dist/src/lib/version-check.js +241 -0
- package/dist/src/lib/version-check.js.map +1 -0
- package/dist/src/lib/watch.d.ts +121 -0
- package/dist/src/lib/watch.js +169 -0
- package/dist/src/lib/watch.js.map +1 -0
- package/dist/src/lib/web-url.d.ts +40 -0
- package/dist/src/lib/web-url.js +76 -0
- package/dist/src/lib/web-url.js.map +1 -0
- package/dist/src/lib/webhook-deliver.d.ts +209 -0
- package/dist/src/lib/webhook-deliver.js +519 -0
- package/dist/src/lib/webhook-deliver.js.map +1 -0
- package/dist/src/lib/workflow-apply.d.ts +110 -0
- package/dist/src/lib/workflow-apply.js +164 -0
- package/dist/src/lib/workflow-apply.js.map +1 -0
- package/dist/src/lib/workflow-codegen/generated-schema-descriptor.d.ts +129 -0
- package/dist/src/lib/workflow-codegen/generated-schema-descriptor.js +269 -0
- package/dist/src/lib/workflow-codegen/generated-schema-descriptor.js.map +1 -0
- package/dist/src/lib/workflow-codegen/generator.d.ts +96 -0
- package/dist/src/lib/workflow-codegen/generator.js +361 -0
- package/dist/src/lib/workflow-codegen/generator.js.map +1 -0
- package/dist/src/lib/workflow-codegen/invokerIR.d.ts +94 -0
- package/dist/src/lib/workflow-codegen/invokerIR.js +76 -0
- package/dist/src/lib/workflow-codegen/invokerIR.js.map +1 -0
- package/dist/src/lib/workflow-codegen/naming.d.ts +33 -0
- package/dist/src/lib/workflow-codegen/naming.js +81 -0
- package/dist/src/lib/workflow-codegen/naming.js.map +1 -0
- package/dist/src/lib/workflow-codegen/schemaToTs.d.ts +80 -0
- package/dist/src/lib/workflow-codegen/schemaToTs.js +303 -0
- package/dist/src/lib/workflow-codegen/schemaToTs.js.map +1 -0
- package/dist/src/lib/workflow-config-apply.d.ts +70 -0
- package/dist/src/lib/workflow-config-apply.js +137 -0
- package/dist/src/lib/workflow-config-apply.js.map +1 -0
- package/dist/src/lib/workflow-config-sidecar.d.ts +63 -0
- package/dist/src/lib/workflow-config-sidecar.js +96 -0
- package/dist/src/lib/workflow-config-sidecar.js.map +1 -0
- package/dist/src/lib/workflow-defaults.d.ts +29 -0
- package/dist/src/lib/workflow-defaults.js +41 -0
- package/dist/src/lib/workflow-defaults.js.map +1 -0
- package/dist/src/lib/workflow-field-descriptor.d.ts +91 -0
- package/dist/src/lib/workflow-field-descriptor.js +153 -0
- package/dist/src/lib/workflow-field-descriptor.js.map +1 -0
- package/dist/src/lib/workflow-fragments.d.ts +64 -0
- package/dist/src/lib/workflow-fragments.js +342 -0
- package/dist/src/lib/workflow-fragments.js.map +1 -0
- package/dist/src/lib/workflow-include-preserve.d.ts +76 -0
- package/dist/src/lib/workflow-include-preserve.js +286 -0
- package/dist/src/lib/workflow-include-preserve.js.map +1 -0
- package/dist/src/lib/workflow-payload.d.ts +98 -0
- package/dist/src/lib/workflow-payload.js +178 -0
- package/dist/src/lib/workflow-payload.js.map +1 -0
- package/dist/src/lib/workflow-toml-validator.d.ts +211 -0
- package/dist/src/lib/workflow-toml-validator.js +770 -0
- package/dist/src/lib/workflow-toml-validator.js.map +1 -0
- package/dist/src/lib/workflow-usage.d.ts +196 -0
- package/dist/src/lib/workflow-usage.js +310 -0
- package/dist/src/lib/workflow-usage.js.map +1 -0
- package/dist/src/types/index.d.ts +591 -0
- package/dist/src/validators.d.ts +65 -0
- package/dist/src/validators.js +64 -0
- package/dist/src/validators.js.map +1 -0
- package/package.json +34 -9
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"function-sync.js","sourceRoot":"","sources":["../../../src/lib/function-sync.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What `primitive functions list` prints about each function's triggers
|
|
3
|
+
* (#3690). Pure: the server listing's items in, cells and rows out.
|
|
4
|
+
*
|
|
5
|
+
* The listing answers every function's `triggers` block — the webhook (or
|
|
6
|
+
* null) and the cron entries, the same objects `functions get` reports less
|
|
7
|
+
* the webhook's secret fields. An item from a server that predates the block
|
|
8
|
+
* carries no `triggers` key at all, and reads `unknown` rather than `-`: "no
|
|
9
|
+
* triggers" would be a claim the CLI cannot make.
|
|
10
|
+
*/
|
|
11
|
+
export interface TriggerTableRow {
|
|
12
|
+
functionKey: string;
|
|
13
|
+
kind: "webhook" | "cron";
|
|
14
|
+
name: string;
|
|
15
|
+
/** `<cron> <timezone>` for a cron entry, `-` for a webhook. */
|
|
16
|
+
schedule: string;
|
|
17
|
+
status: string | null;
|
|
18
|
+
nextFireAt: string | null;
|
|
19
|
+
lastFireAt: string | null;
|
|
20
|
+
}
|
|
21
|
+
/** The TRIGGERS column: `-`, `webhook`, `cron`, `cron ×2`, `webhook, cron ×3`. */
|
|
22
|
+
export declare function triggerKindsCell(triggers: unknown): string;
|
|
23
|
+
/**
|
|
24
|
+
* One row per trigger, in item order: each function's webhook first, then its
|
|
25
|
+
* cron entries in the order the server sent them.
|
|
26
|
+
*/
|
|
27
|
+
export declare function triggerTableRows(items: readonly any[]): TriggerTableRow[];
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What `primitive functions list` prints about each function's triggers
|
|
3
|
+
* (#3690). Pure: the server listing's items in, cells and rows out.
|
|
4
|
+
*
|
|
5
|
+
* The listing answers every function's `triggers` block — the webhook (or
|
|
6
|
+
* null) and the cron entries, the same objects `functions get` reports less
|
|
7
|
+
* the webhook's secret fields. An item from a server that predates the block
|
|
8
|
+
* carries no `triggers` key at all, and reads `unknown` rather than `-`: "no
|
|
9
|
+
* triggers" would be a claim the CLI cannot make.
|
|
10
|
+
*/
|
|
11
|
+
function triggerBlock(triggers) {
|
|
12
|
+
if (!triggers || typeof triggers !== "object")
|
|
13
|
+
return null;
|
|
14
|
+
const block = triggers;
|
|
15
|
+
return {
|
|
16
|
+
webhook: block.webhook && typeof block.webhook === "object" ? block.webhook : null,
|
|
17
|
+
cron: Array.isArray(block.cron) ? block.cron : [],
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
/** The TRIGGERS column: `-`, `webhook`, `cron`, `cron ×2`, `webhook, cron ×3`. */
|
|
21
|
+
export function triggerKindsCell(triggers) {
|
|
22
|
+
const block = triggerBlock(triggers);
|
|
23
|
+
if (!block)
|
|
24
|
+
return "unknown";
|
|
25
|
+
const parts = [];
|
|
26
|
+
if (block.webhook)
|
|
27
|
+
parts.push("webhook");
|
|
28
|
+
if (block.cron.length === 1)
|
|
29
|
+
parts.push("cron");
|
|
30
|
+
if (block.cron.length > 1)
|
|
31
|
+
parts.push(`cron ×${block.cron.length}`);
|
|
32
|
+
return parts.length > 0 ? parts.join(", ") : "-";
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* One row per trigger, in item order: each function's webhook first, then its
|
|
36
|
+
* cron entries in the order the server sent them.
|
|
37
|
+
*/
|
|
38
|
+
export function triggerTableRows(items) {
|
|
39
|
+
const rows = [];
|
|
40
|
+
for (const item of items) {
|
|
41
|
+
const block = triggerBlock(item?.triggers);
|
|
42
|
+
if (!block)
|
|
43
|
+
continue;
|
|
44
|
+
const functionKey = String(item.functionKey ?? "");
|
|
45
|
+
if (block.webhook) {
|
|
46
|
+
rows.push({
|
|
47
|
+
functionKey,
|
|
48
|
+
kind: "webhook",
|
|
49
|
+
name: String(block.webhook.webhookKey ?? ""),
|
|
50
|
+
schedule: "-",
|
|
51
|
+
status: block.webhook.status ?? null,
|
|
52
|
+
nextFireAt: null,
|
|
53
|
+
lastFireAt: block.webhook.lastTriggeredAt ?? null,
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
for (const entry of block.cron) {
|
|
57
|
+
rows.push({
|
|
58
|
+
functionKey,
|
|
59
|
+
kind: "cron",
|
|
60
|
+
name: String(entry?.name ?? ""),
|
|
61
|
+
schedule: `${entry?.cron ?? ""} ${entry?.timezone ?? "UTC"}`,
|
|
62
|
+
status: entry?.status ?? null,
|
|
63
|
+
nextFireAt: entry?.nextFireAt ?? null,
|
|
64
|
+
lastFireAt: entry?.lastTriggeredAt ?? null,
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return rows;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=function-trigger-listing.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"function-trigger-listing.js","sourceRoot":"","sources":["../../../src/lib/function-trigger-listing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAaH,SAAS,YAAY,CACnB,QAAiB;IAEjB,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3D,MAAM,KAAK,GAAG,QAAiD,CAAC;IAChE,OAAO;QACL,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;QAClF,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;KAClD,CAAC;AACJ,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,gBAAgB,CAAC,QAAiB;IAChD,MAAM,KAAK,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IACrC,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,KAAK,CAAC,OAAO;QAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACzC,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACpE,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AACnD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAqB;IACpD,MAAM,IAAI,GAAsB,EAAE,CAAC;IACnC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QACnD,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,IAAI,CAAC;gBACR,WAAW;gBACX,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;gBAC5C,QAAQ,EAAE,GAAG;gBACb,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI;gBACpC,UAAU,EAAE,IAAI;gBAChB,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,eAAe,IAAI,IAAI;aAClD,CAAC,CAAC;QACL,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YAC/B,IAAI,CAAC,IAAI,CAAC;gBACR,WAAW;gBACX,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC;gBAC/B,QAAQ,EAAE,GAAG,KAAK,EAAE,IAAI,IAAI,EAAE,IAAI,KAAK,EAAE,QAAQ,IAAI,KAAK,EAAE;gBAC5D,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,IAAI;gBAC7B,UAAU,EAAE,KAAK,EAAE,UAAU,IAAI,IAAI;gBACrC,UAAU,EAAE,KAAK,EAAE,eAAe,IAAI,IAAI;aAC3C,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `[function.triggers.*]`, read and checked locally (#3181).
|
|
3
|
+
*
|
|
4
|
+
* The SERVER is the authority: it derives the declaration from the TOML bytes
|
|
5
|
+
* inside the version envelope and validates it there, so a direct API push
|
|
6
|
+
* cannot ship a trigger the authored file does not declare (D3181-005). What
|
|
7
|
+
* this file buys is the other half of the `entry` dual-validation shape #3179
|
|
8
|
+
* established — an author who mistypes a key hears about it against their own
|
|
9
|
+
* file, by name, before a request is made.
|
|
10
|
+
*
|
|
11
|
+
* It is deliberately a VENDORED copy of the shape rules in
|
|
12
|
+
* `src/server-functions/trigger-declaration.ts` rather than an import: the CLI
|
|
13
|
+
* compiles with `rootDir: "."` and cannot reach the worker sources, which is
|
|
14
|
+
* the same constraint that made `generated-config-surfaces.ts` a vendored
|
|
15
|
+
* artifact. `cli/tests/unit/function-triggers-3181.test.ts` drives both copies
|
|
16
|
+
* from one fixture list so they cannot drift apart silently.
|
|
17
|
+
*
|
|
18
|
+
* Everything that needs the APP's state stays on the server: whether a
|
|
19
|
+
* referenced secret exists, whether the scheme-specific config is valid under
|
|
20
|
+
* this environment's JWKS policy, whether the app is at its webhook or cron
|
|
21
|
+
* cap, whether a standalone webhook holds the key. A local copy of those would
|
|
22
|
+
* be a preflight that can give a false all-clear.
|
|
23
|
+
*/
|
|
24
|
+
/**
|
|
25
|
+
* The resolved mode the declaration is checked against (#3281): the caller
|
|
26
|
+
* resolves `mode`/`durable` once through the vendored `resolveDeclaredMode`
|
|
27
|
+
* and hands the answer here, so this copy never reads the alias itself.
|
|
28
|
+
*/
|
|
29
|
+
export interface TriggerModeOptions {
|
|
30
|
+
mode?: "request" | "task";
|
|
31
|
+
}
|
|
32
|
+
export interface WebhookTriggerDeclaration {
|
|
33
|
+
verificationScheme: string;
|
|
34
|
+
signingSecret?: string;
|
|
35
|
+
toleranceSeconds?: number;
|
|
36
|
+
deduplicationEnabled?: boolean;
|
|
37
|
+
deduplicationWindowMs?: number;
|
|
38
|
+
maxBodyBytes?: number;
|
|
39
|
+
secretGracePeriodMs?: number;
|
|
40
|
+
verification?: Record<string, unknown>;
|
|
41
|
+
}
|
|
42
|
+
export interface CronTriggerDeclaration {
|
|
43
|
+
name: string;
|
|
44
|
+
cron: string;
|
|
45
|
+
timezone?: string;
|
|
46
|
+
overlapPolicy?: string;
|
|
47
|
+
rootInput?: unknown;
|
|
48
|
+
}
|
|
49
|
+
/** One `[[function.triggers.database]]` entry, normalized (#3184). */
|
|
50
|
+
export interface DatabaseTriggerDeclaration {
|
|
51
|
+
type: string;
|
|
52
|
+
}
|
|
53
|
+
export interface TriggerDeclaration {
|
|
54
|
+
webhook: WebhookTriggerDeclaration | null;
|
|
55
|
+
cron: CronTriggerDeclaration[];
|
|
56
|
+
databases: DatabaseTriggerDeclaration[];
|
|
57
|
+
}
|
|
58
|
+
export declare const MAX_CRON_TRIGGERS_PER_FUNCTION = 10;
|
|
59
|
+
export declare const MAX_DATABASE_TRIGGERS_PER_FUNCTION = 5;
|
|
60
|
+
export declare class TriggerDeclarationError extends Error {
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Normalize (and check) the `triggers` table of a parsed `[function]` table.
|
|
64
|
+
* Returns null when nothing is declared, so a caller can skip the work.
|
|
65
|
+
*/
|
|
66
|
+
export declare function normalizeFunctionTriggers(functionTable: any, options?: TriggerModeOptions): TriggerDeclaration | null;
|
|
@@ -0,0 +1,285 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `[function.triggers.*]`, read and checked locally (#3181).
|
|
3
|
+
*
|
|
4
|
+
* The SERVER is the authority: it derives the declaration from the TOML bytes
|
|
5
|
+
* inside the version envelope and validates it there, so a direct API push
|
|
6
|
+
* cannot ship a trigger the authored file does not declare (D3181-005). What
|
|
7
|
+
* this file buys is the other half of the `entry` dual-validation shape #3179
|
|
8
|
+
* established — an author who mistypes a key hears about it against their own
|
|
9
|
+
* file, by name, before a request is made.
|
|
10
|
+
*
|
|
11
|
+
* It is deliberately a VENDORED copy of the shape rules in
|
|
12
|
+
* `src/server-functions/trigger-declaration.ts` rather than an import: the CLI
|
|
13
|
+
* compiles with `rootDir: "."` and cannot reach the worker sources, which is
|
|
14
|
+
* the same constraint that made `generated-config-surfaces.ts` a vendored
|
|
15
|
+
* artifact. `cli/tests/unit/function-triggers-3181.test.ts` drives both copies
|
|
16
|
+
* from one fixture list so they cannot drift apart silently.
|
|
17
|
+
*
|
|
18
|
+
* Everything that needs the APP's state stays on the server: whether a
|
|
19
|
+
* referenced secret exists, whether the scheme-specific config is valid under
|
|
20
|
+
* this environment's JWKS policy, whether the app is at its webhook or cron
|
|
21
|
+
* cap, whether a standalone webhook holds the key. A local copy of those would
|
|
22
|
+
* be a preflight that can give a false all-clear.
|
|
23
|
+
*/
|
|
24
|
+
export const MAX_CRON_TRIGGERS_PER_FUNCTION = 10;
|
|
25
|
+
export const MAX_DATABASE_TRIGGERS_PER_FUNCTION = 5;
|
|
26
|
+
const CRON_NAME_PATTERN = /^[a-zA-Z0-9][a-zA-Z0-9_-]*$/;
|
|
27
|
+
/** The charset the grant grammar already uses for a database type key. */
|
|
28
|
+
const DATABASE_TYPE_PATTERN = /^[A-Za-z0-9_-]+$/;
|
|
29
|
+
const DATABASE_KEYS = ["type"];
|
|
30
|
+
const WEBHOOK_KEYS = [
|
|
31
|
+
"verificationScheme",
|
|
32
|
+
"signingSecret",
|
|
33
|
+
"toleranceSeconds",
|
|
34
|
+
"deduplicationEnabled",
|
|
35
|
+
"deduplicationWindowMs",
|
|
36
|
+
"maxBodyBytes",
|
|
37
|
+
"secretGracePeriodMs",
|
|
38
|
+
"verification",
|
|
39
|
+
];
|
|
40
|
+
const CRON_KEYS = ["name", "cron", "timezone", "overlapPolicy", "rootInput"];
|
|
41
|
+
const VALID_OVERLAP_POLICIES = ["skip", "allow"];
|
|
42
|
+
export class TriggerDeclarationError extends Error {
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Normalize (and check) the `triggers` table of a parsed `[function]` table.
|
|
46
|
+
* Returns null when nothing is declared, so a caller can skip the work.
|
|
47
|
+
*/
|
|
48
|
+
export function normalizeFunctionTriggers(functionTable, options = {}) {
|
|
49
|
+
const triggers = functionTable?.triggers;
|
|
50
|
+
if (triggers === undefined || triggers === null)
|
|
51
|
+
return null;
|
|
52
|
+
if (typeof triggers !== "object" || Array.isArray(triggers)) {
|
|
53
|
+
throw new TriggerDeclarationError("[function.triggers] must be a table declaring `webhook` and/or `cron`");
|
|
54
|
+
}
|
|
55
|
+
for (const key of Object.keys(triggers)) {
|
|
56
|
+
if (key !== "webhook" && key !== "cron" && key !== "database") {
|
|
57
|
+
throw new TriggerDeclarationError(`unknown trigger kind '${key}' under [function.triggers]: the kinds are ` +
|
|
58
|
+
"`webhook`, `cron` and `database`");
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
const webhook = normalizeWebhook(triggers.webhook, options);
|
|
62
|
+
const cron = normalizeCron(triggers.cron, options);
|
|
63
|
+
const databases = normalizeDatabases(triggers.database, options);
|
|
64
|
+
if (!webhook && cron.length === 0 && databases.length === 0)
|
|
65
|
+
return null;
|
|
66
|
+
return { webhook, cron, databases };
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* `[[function.triggers.database]]` — one accepted key, `type` (#3184).
|
|
70
|
+
*
|
|
71
|
+
* Sync mode only, permanently: a database-change fire runs inside the write
|
|
72
|
+
* request with no run row, and there is no durable shape for that.
|
|
73
|
+
*/
|
|
74
|
+
function normalizeDatabases(raw, options) {
|
|
75
|
+
if (raw === undefined || raw === null)
|
|
76
|
+
return [];
|
|
77
|
+
const entries = Array.isArray(raw) ? raw : [raw];
|
|
78
|
+
if (entries.length === 0)
|
|
79
|
+
return [];
|
|
80
|
+
if (options.mode === "task") {
|
|
81
|
+
throw new TriggerDeclarationError("database triggers require request mode: set `mode = \"request\"` (or " +
|
|
82
|
+
"remove `mode = \"task\"`), or remove the [[function.triggers.database]] " +
|
|
83
|
+
"entries");
|
|
84
|
+
}
|
|
85
|
+
if (entries.length > MAX_DATABASE_TRIGGERS_PER_FUNCTION) {
|
|
86
|
+
throw new TriggerDeclarationError(`a function may watch at most ${MAX_DATABASE_TRIGGERS_PER_FUNCTION} database ` +
|
|
87
|
+
`types, and this one declares ${entries.length}`);
|
|
88
|
+
}
|
|
89
|
+
const seen = new Set();
|
|
90
|
+
const normalized = [];
|
|
91
|
+
for (const entry of entries) {
|
|
92
|
+
if (entry === null || typeof entry !== "object" || Array.isArray(entry)) {
|
|
93
|
+
throw new TriggerDeclarationError("each [[function.triggers.database]] entry must be a table");
|
|
94
|
+
}
|
|
95
|
+
const table = entry;
|
|
96
|
+
for (const key of Object.keys(table)) {
|
|
97
|
+
if (!DATABASE_KEYS.includes(key)) {
|
|
98
|
+
throw new TriggerDeclarationError(`unknown key '${key}' in a [[function.triggers.database]] entry: the ` +
|
|
99
|
+
`only accepted key is ${DATABASE_KEYS.join(", ")}`);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
const type = String(table.type ?? "").trim();
|
|
103
|
+
if (!type) {
|
|
104
|
+
throw new TriggerDeclarationError("each [[function.triggers.database]] entry needs a `type`: it names the " +
|
|
105
|
+
"database type whose writes fire the function");
|
|
106
|
+
}
|
|
107
|
+
if (!DATABASE_TYPE_PATTERN.test(type)) {
|
|
108
|
+
throw new TriggerDeclarationError(`database trigger type '${type}' must contain only letters, digits, ` +
|
|
109
|
+
"'-' or '_'");
|
|
110
|
+
}
|
|
111
|
+
if (seen.has(type)) {
|
|
112
|
+
throw new TriggerDeclarationError(`duplicate database trigger type '${type}': a function fires once per ` +
|
|
113
|
+
"write request, so each type is declared once");
|
|
114
|
+
}
|
|
115
|
+
seen.add(type);
|
|
116
|
+
normalized.push({ type });
|
|
117
|
+
}
|
|
118
|
+
// Sorted, matching the server, so `config diff` compares the same canonical
|
|
119
|
+
// shape whichever order the file lists its blocks in.
|
|
120
|
+
normalized.sort((a, b) => a.type.localeCompare(b.type));
|
|
121
|
+
return normalized;
|
|
122
|
+
}
|
|
123
|
+
function normalizeWebhook(raw, options) {
|
|
124
|
+
if (raw === undefined || raw === null)
|
|
125
|
+
return null;
|
|
126
|
+
if (Array.isArray(raw)) {
|
|
127
|
+
throw new TriggerDeclarationError("[function.triggers.webhook] is a single table: one webhook trigger per " +
|
|
128
|
+
'function (the intent, "Webhook trigger URL and scheme?")');
|
|
129
|
+
}
|
|
130
|
+
if (typeof raw !== "object") {
|
|
131
|
+
throw new TriggerDeclarationError("[function.triggers.webhook] must be a table");
|
|
132
|
+
}
|
|
133
|
+
const table = raw;
|
|
134
|
+
for (const key of Object.keys(table)) {
|
|
135
|
+
if (!WEBHOOK_KEYS.includes(key)) {
|
|
136
|
+
throw new TriggerDeclarationError(`unknown key '${key}' under [function.triggers.webhook]: accepted keys ` +
|
|
137
|
+
`are ${WEBHOOK_KEYS.join(", ")}`);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
if (options.mode === "task") {
|
|
141
|
+
throw new TriggerDeclarationError("webhook triggers require request mode: set `mode = \"request\"` (or " +
|
|
142
|
+
"remove `mode = \"task\"`), or remove [function.triggers.webhook]");
|
|
143
|
+
}
|
|
144
|
+
const scheme = String(table.verificationScheme ?? "").trim();
|
|
145
|
+
if (!scheme) {
|
|
146
|
+
throw new TriggerDeclarationError("[function.triggers.webhook] verificationScheme is required");
|
|
147
|
+
}
|
|
148
|
+
if (scheme === "none") {
|
|
149
|
+
throw new TriggerDeclarationError("verification scheme 'none' is not allowed for function triggers: an " +
|
|
150
|
+
"unauthenticated caller could run the function");
|
|
151
|
+
}
|
|
152
|
+
const declaration = { verificationScheme: scheme };
|
|
153
|
+
if (table.signingSecret !== undefined) {
|
|
154
|
+
declaration.signingSecret = String(table.signingSecret);
|
|
155
|
+
}
|
|
156
|
+
for (const key of [
|
|
157
|
+
"toleranceSeconds",
|
|
158
|
+
"deduplicationWindowMs",
|
|
159
|
+
"maxBodyBytes",
|
|
160
|
+
"secretGracePeriodMs",
|
|
161
|
+
]) {
|
|
162
|
+
if (table[key] === undefined)
|
|
163
|
+
continue;
|
|
164
|
+
const value = Number(table[key]);
|
|
165
|
+
if (!Number.isFinite(value)) {
|
|
166
|
+
throw new TriggerDeclarationError(`[function.triggers.webhook] ${key} must be a number`);
|
|
167
|
+
}
|
|
168
|
+
declaration[key] = value;
|
|
169
|
+
}
|
|
170
|
+
if (table.deduplicationEnabled !== undefined) {
|
|
171
|
+
if (typeof table.deduplicationEnabled !== "boolean") {
|
|
172
|
+
throw new TriggerDeclarationError("[function.triggers.webhook] deduplicationEnabled must be a boolean");
|
|
173
|
+
}
|
|
174
|
+
declaration.deduplicationEnabled = table.deduplicationEnabled;
|
|
175
|
+
}
|
|
176
|
+
if (table.verification !== undefined) {
|
|
177
|
+
const verification = table.verification;
|
|
178
|
+
if (verification === null ||
|
|
179
|
+
typeof verification !== "object" ||
|
|
180
|
+
Array.isArray(verification)) {
|
|
181
|
+
throw new TriggerDeclarationError("[function.triggers.webhook.verification] must be a table");
|
|
182
|
+
}
|
|
183
|
+
declaration.verification = jsonSafe(verification);
|
|
184
|
+
}
|
|
185
|
+
return declaration;
|
|
186
|
+
}
|
|
187
|
+
function normalizeCron(raw, options) {
|
|
188
|
+
if (raw === undefined || raw === null)
|
|
189
|
+
return [];
|
|
190
|
+
const entries = Array.isArray(raw) ? raw : [raw];
|
|
191
|
+
if (entries.length === 0)
|
|
192
|
+
return [];
|
|
193
|
+
if (options.mode === "task") {
|
|
194
|
+
throw new TriggerDeclarationError("cron triggers require request mode: set `mode = \"request\"` (or " +
|
|
195
|
+
"remove `mode = \"task\"`), or remove the [[function.triggers.cron]] " +
|
|
196
|
+
"entries — a cron trigger on a task function is not available in this " +
|
|
197
|
+
"release");
|
|
198
|
+
}
|
|
199
|
+
if (entries.length > MAX_CRON_TRIGGERS_PER_FUNCTION) {
|
|
200
|
+
throw new TriggerDeclarationError(`a function may declare at most ${MAX_CRON_TRIGGERS_PER_FUNCTION} cron ` +
|
|
201
|
+
`trigger entries, and this one declares ${entries.length}`);
|
|
202
|
+
}
|
|
203
|
+
const seen = new Set();
|
|
204
|
+
const normalized = [];
|
|
205
|
+
for (const entry of entries) {
|
|
206
|
+
if (entry === null || typeof entry !== "object" || Array.isArray(entry)) {
|
|
207
|
+
throw new TriggerDeclarationError("each [[function.triggers.cron]] entry must be a table");
|
|
208
|
+
}
|
|
209
|
+
const table = entry;
|
|
210
|
+
for (const key of Object.keys(table)) {
|
|
211
|
+
if (!CRON_KEYS.includes(key)) {
|
|
212
|
+
throw new TriggerDeclarationError(`unknown key '${key}' in a [[function.triggers.cron]] entry: accepted ` +
|
|
213
|
+
`keys are ${CRON_KEYS.join(", ")}`);
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
const name = String(table.name ?? "").trim();
|
|
217
|
+
if (!name) {
|
|
218
|
+
throw new TriggerDeclarationError("each [[function.triggers.cron]] entry needs a `name`: it is required " +
|
|
219
|
+
"because it is half of the trigger's key, `<functionKey>:<name>`");
|
|
220
|
+
}
|
|
221
|
+
if (!CRON_NAME_PATTERN.test(name)) {
|
|
222
|
+
throw new TriggerDeclarationError(`cron trigger name '${name}' must start with a letter or digit and ` +
|
|
223
|
+
"contain only letters, digits, '-' or '_'");
|
|
224
|
+
}
|
|
225
|
+
if (seen.has(name)) {
|
|
226
|
+
throw new TriggerDeclarationError(`duplicate cron trigger name '${name}': names are the trigger's key ` +
|
|
227
|
+
"within the function, so each must appear once");
|
|
228
|
+
}
|
|
229
|
+
seen.add(name);
|
|
230
|
+
const cron = String(table.cron ?? "").trim();
|
|
231
|
+
if (!cron) {
|
|
232
|
+
throw new TriggerDeclarationError(`cron trigger '${name}' needs a \`cron\` expression`);
|
|
233
|
+
}
|
|
234
|
+
// Shape only. The full grammar is the server's `parseCron` — the CLI
|
|
235
|
+
// refuses the mistake that is obvious from the text and leaves the
|
|
236
|
+
// authority where the DO's own parser is.
|
|
237
|
+
if (cron.trim().split(/\s+/).length !== 5) {
|
|
238
|
+
throw new TriggerDeclarationError(`cron trigger '${name}': a cron expression has exactly 5 fields, and ` +
|
|
239
|
+
`'${cron}' has ${cron.trim().split(/\s+/).length}`);
|
|
240
|
+
}
|
|
241
|
+
const declaration = { name, cron };
|
|
242
|
+
if (table.timezone !== undefined) {
|
|
243
|
+
declaration.timezone = String(table.timezone);
|
|
244
|
+
}
|
|
245
|
+
if (table.overlapPolicy !== undefined) {
|
|
246
|
+
const policy = String(table.overlapPolicy);
|
|
247
|
+
if (!VALID_OVERLAP_POLICIES.includes(policy)) {
|
|
248
|
+
throw new TriggerDeclarationError(`cron trigger '${name}': overlapPolicy must be one of ` +
|
|
249
|
+
VALID_OVERLAP_POLICIES.join(", "));
|
|
250
|
+
}
|
|
251
|
+
declaration.overlapPolicy = policy;
|
|
252
|
+
}
|
|
253
|
+
if (table.rootInput !== undefined) {
|
|
254
|
+
declaration.rootInput = jsonSafe(table.rootInput);
|
|
255
|
+
}
|
|
256
|
+
normalized.push(declaration);
|
|
257
|
+
}
|
|
258
|
+
// Sorted by name, matching the server, so `config diff` compares the same
|
|
259
|
+
// canonical shape whichever order the file lists its entries in.
|
|
260
|
+
normalized.sort((a, b) => a.name.localeCompare(b.name));
|
|
261
|
+
return normalized;
|
|
262
|
+
}
|
|
263
|
+
function jsonSafe(value) {
|
|
264
|
+
if (value === null || value === undefined)
|
|
265
|
+
return value;
|
|
266
|
+
if (typeof value === "bigint")
|
|
267
|
+
return Number(value);
|
|
268
|
+
if (value instanceof Date)
|
|
269
|
+
return value.toISOString();
|
|
270
|
+
if (Array.isArray(value))
|
|
271
|
+
return value.map(jsonSafe);
|
|
272
|
+
if (typeof value === "object") {
|
|
273
|
+
const anyValue = value;
|
|
274
|
+
if (typeof anyValue.toISOString === "function") {
|
|
275
|
+
return String(anyValue.toISOString());
|
|
276
|
+
}
|
|
277
|
+
const out = {};
|
|
278
|
+
for (const [key, child] of Object.entries(anyValue)) {
|
|
279
|
+
out[key] = jsonSafe(child);
|
|
280
|
+
}
|
|
281
|
+
return out;
|
|
282
|
+
}
|
|
283
|
+
return value;
|
|
284
|
+
}
|
|
285
|
+
//# sourceMappingURL=function-triggers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"function-triggers.js","sourceRoot":"","sources":["../../../src/lib/function-triggers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Typechecking a function's sources against the declarations `config push`
|
|
3
|
+
* generates — #3331.
|
|
4
|
+
*
|
|
5
|
+
* The push already owns all three parts of the program: it writes
|
|
6
|
+
* `functions/primitive-db-types.d.ts`, `primitive-functions.d.ts`,
|
|
7
|
+
* `primitive-function-types.d.ts` and `primitive-document-types.d.ts`, it
|
|
8
|
+
* scaffolds (and repairs) the `functions/tsconfig.json` that loads them, and it
|
|
9
|
+
* builds the bundle. Until this file it never asked the compiler anything: the
|
|
10
|
+
* same invocation that wrote the declaration that would have caught a broken
|
|
11
|
+
* function shipped it anyway. That is not hypothetical — an app upgrading to
|
|
12
|
+
* the alpha that made `ctx.user` nullable (#3279) had a live function reading
|
|
13
|
+
* `ctx.user.userId`, and the push that regenerated the declaration shipped it
|
|
14
|
+
* unchanged.
|
|
15
|
+
*
|
|
16
|
+
* ── What the program is ──────────────────────────────────────────────────
|
|
17
|
+
*
|
|
18
|
+
* Exactly what `tsc -p functions/tsconfig.json --noEmit` would compile, with
|
|
19
|
+
* one difference that matters: the generated declarations are read from the
|
|
20
|
+
* PLAN rather than from disk. `--dry-run` writes nothing, and a fresh clone has
|
|
21
|
+
* nothing written yet, so a checker that read the disk would either refuse
|
|
22
|
+
* every function for a missing module or — worse — pass code against a STALE
|
|
23
|
+
* declaration, which is the exact failure #3279 produced. The overlay is the
|
|
24
|
+
* whole point of the fix: the code is held to the declarations this push
|
|
25
|
+
* generates, no earlier ones.
|
|
26
|
+
*
|
|
27
|
+
* Everything else is the tree's own: the tsconfig an author may adjust decides
|
|
28
|
+
* the compiler options (`strict`, `lib`, their own `paths`), because that file
|
|
29
|
+
* is what their editor and their CI `tsc` read, and a push that judged by
|
|
30
|
+
* different options would refuse code their editor calls fine.
|
|
31
|
+
*
|
|
32
|
+
* ── Why per function ─────────────────────────────────────────────────────
|
|
33
|
+
*
|
|
34
|
+
* The push loop applies each `functions/<key>.toml` independently and records
|
|
35
|
+
* one failure row per function, so one broken function must not refuse the
|
|
36
|
+
* others in the tree. The program is built ONCE and the diagnostics are asked
|
|
37
|
+
* for file by file: a function's files are the in-tree sources its bundle build
|
|
38
|
+
* read PLUS everything those pull in through the type graph, so a shared
|
|
39
|
+
* helper's error is attributed to every function that imports it, which is the
|
|
40
|
+
* honest answer — each of them is broken.
|
|
41
|
+
*
|
|
42
|
+
* The type graph rather than the bundle's inputs because the two differ exactly
|
|
43
|
+
* where this check matters: esbuild erases `import type` without ever reading
|
|
44
|
+
* the file, so a helper that only declares types never reaches push's source
|
|
45
|
+
* list, and a broken alias there resolves to `any` and takes the function's
|
|
46
|
+
* whole typing down with it (SO3331-002).
|
|
47
|
+
*
|
|
48
|
+
* A file the tsconfig does not sweep in is added as a root rather than skipped:
|
|
49
|
+
* a narrowed `include` must not silently turn the check off for the code the
|
|
50
|
+
* push is about to ship.
|
|
51
|
+
*/
|
|
52
|
+
/** The flag that skips the check, named wherever the refusal is read. */
|
|
53
|
+
export declare const TYPECHECK_SKIP_FLAG = "--no-typecheck";
|
|
54
|
+
export interface FunctionTypecheckFailure {
|
|
55
|
+
/** The compiler's own lines, `functions/`-relative, one per diagnostic. */
|
|
56
|
+
diagnostics: string;
|
|
57
|
+
/** The whole refusal, as `config push` reports it against the function. */
|
|
58
|
+
message: string;
|
|
59
|
+
}
|
|
60
|
+
export interface FunctionTypechecker {
|
|
61
|
+
/**
|
|
62
|
+
* The diagnostics for one function's sources, or null when they typecheck.
|
|
63
|
+
*
|
|
64
|
+
* `sources` are tree-relative POSIX paths — what the bundle build collected
|
|
65
|
+
* for this function.
|
|
66
|
+
*/
|
|
67
|
+
check(functionKey: string, sources: readonly string[]): FunctionTypecheckFailure | null;
|
|
68
|
+
}
|
|
69
|
+
export interface FunctionTypecheckSetup {
|
|
70
|
+
/** null when there is nothing to check, or no compiler to check it with. */
|
|
71
|
+
checker: FunctionTypechecker | null;
|
|
72
|
+
/** What push should warn about once: a missing compiler, a broken tsconfig. */
|
|
73
|
+
warnings: string[];
|
|
74
|
+
}
|
|
75
|
+
export interface FunctionTypecheckOptions {
|
|
76
|
+
/** Injected in tests; the real one resolves the CLI's own TypeScript. */
|
|
77
|
+
loadTypeScript?: () => any;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Build the checker for a config tree, or say why there is none.
|
|
81
|
+
*
|
|
82
|
+
* Nothing to check when the tree has no `functions/` directory — the same test
|
|
83
|
+
* the artifact plan makes, and the same answer: a tree with no functions needs
|
|
84
|
+
* no compiler wiring.
|
|
85
|
+
*/
|
|
86
|
+
export declare function createFunctionTypechecker(configDir: string, options?: FunctionTypecheckOptions): FunctionTypecheckSetup;
|