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,263 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared field descriptor for app-settings TOML sync (issue #1033).
|
|
3
|
+
*
|
|
4
|
+
* A single source of truth describing every app setting that round-trips
|
|
5
|
+
* through `app.toml`. It drives BOTH directions:
|
|
6
|
+
* - pull (`serializeAppSettingsToToml`): server settings -> `app.toml` object
|
|
7
|
+
* - push (`parseTomlToAppSettings`): `app.toml` object -> settings payload
|
|
8
|
+
*
|
|
9
|
+
* Driving serializer and parser from one table means the two can never drift
|
|
10
|
+
* apart, and a single drift test can assert the descriptor stays in step with
|
|
11
|
+
* the server's `GET /settings` response and `PUT /settings` allow-list. This
|
|
12
|
+
* generalizes the earlier hand-maintained `AUTH_BOOLEAN_KEYS` /
|
|
13
|
+
* `RECOGNIZED_AUTH_KEYS` pattern to every section, and fully replaces it.
|
|
14
|
+
*
|
|
15
|
+
* Design decisions of record (issue #1033):
|
|
16
|
+
* - Google is a typed client MAP (#2891): `googleClients` renders as
|
|
17
|
+
* `[auth.google.clients.<type>]`, and each entry's `clientSecret` holds a
|
|
18
|
+
* whole `{{secrets.KEY}}` reference rather than the secret itself, so the
|
|
19
|
+
* map round-trips through `app.toml` like any other setting.
|
|
20
|
+
* - `[cors]` is always emitted (the `mode` key is `emit: "always"`), even in
|
|
21
|
+
* universal mode. A one-time diff on the next pull for existing apps is
|
|
22
|
+
* acceptable.
|
|
23
|
+
* - `[invitations]` is an additive table for the member-invitation fields.
|
|
24
|
+
* - Nothing is writable-but-excluded any more (#2891). The legacy passkey
|
|
25
|
+
* pair and the three Google/redirect scalars are RETIRED: not writable, not
|
|
26
|
+
* synced, and refused by name with their own guidance when an old
|
|
27
|
+
* `app.toml` still carries them.
|
|
28
|
+
* - Push type mismatches are field-named validation errors — no silent
|
|
29
|
+
* coercion of a mistyped TOML value.
|
|
30
|
+
* - THE FILE IS THE WHOLE TRUTH (#2880, sponsor 2026-08-21). `app.toml` used
|
|
31
|
+
* to be the one surface where an omitted key preserved the server's value,
|
|
32
|
+
* while every other type follows "the local file is the source of truth"
|
|
33
|
+
* (#1567). That exception is gone: push emits a value for EVERY writable
|
|
34
|
+
* field, and a key the file does not carry clears the field or resets it to
|
|
35
|
+
* its declared default (`APP_SETTINGS_ABSENT_VALUES`). `[app].name` and
|
|
36
|
+
* `[app].mode` are the two exceptions — no default, identity-critical, and
|
|
37
|
+
* `mode: null` is a 400 — so their absence is a validation error instead.
|
|
38
|
+
*/
|
|
39
|
+
/** The value shape of a synced setting. Drives serialization + push validation. */
|
|
40
|
+
export type AppSettingType = "string" | "boolean" | "number" | "string[]" | "object";
|
|
41
|
+
/** The `app.toml` section a setting lives under. */
|
|
42
|
+
export type AppSettingSection = "app" | "auth" | "cors" | "invitations";
|
|
43
|
+
export interface AppSettingDescriptor {
|
|
44
|
+
/** Server settings key — matches the `GET`/`PUT /settings` field name. */
|
|
45
|
+
field: string;
|
|
46
|
+
/** `app.toml` section the key lives under. */
|
|
47
|
+
section: AppSettingSection;
|
|
48
|
+
/** Key within the section (often equal to `field`, e.g. `corsMode` -> `mode`). */
|
|
49
|
+
key: string;
|
|
50
|
+
/** Value type; drives pull serialization and push-side type validation. */
|
|
51
|
+
type: AppSettingType;
|
|
52
|
+
/**
|
|
53
|
+
* `"always"` — emit on pull even when empty (empty array / `false` / default),
|
|
54
|
+
* but never when the value is `null`/`undefined` (TOML cannot encode null).
|
|
55
|
+
* `"whenSet"` — omit when the value is "empty" (`null`/`undefined`/`""`/`[]`/`{}`).
|
|
56
|
+
*/
|
|
57
|
+
emit: "always" | "whenSet";
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Every field that round-trips through `app.toml` — DERIVED from the
|
|
61
|
+
* `app-settings` configuration-object definition (#2644), not listed.
|
|
62
|
+
*
|
|
63
|
+
* The definition already states each field's section (its table's TOML path),
|
|
64
|
+
* its `app.toml` key, its type and its `emit` rule, and the coverage guard
|
|
65
|
+
* holds it against the `App` model. Restating those 26 entries here made
|
|
66
|
+
* adding a setting two edits that a parity test then compared — the "two lists
|
|
67
|
+
* and a test they agree" shape the design gate rejected (2026-08-12). One edit
|
|
68
|
+
* in the definition now reaches the server allow-list
|
|
69
|
+
* (`settings-fields.ts`), this descriptor, and both directions of the sync.
|
|
70
|
+
*
|
|
71
|
+
* `json` in the definition is this module's `object` — the same shape under the
|
|
72
|
+
* name each side has always used for it.
|
|
73
|
+
*/
|
|
74
|
+
export declare const APP_SETTINGS_DESCRIPTOR: readonly AppSettingDescriptor[];
|
|
75
|
+
/**
|
|
76
|
+
* Section render order for a stable, diff-friendly `app.toml` — the
|
|
77
|
+
* definition's table order (#2644), so a new section is rendered by being
|
|
78
|
+
* declared there.
|
|
79
|
+
*/
|
|
80
|
+
export declare const APP_SETTINGS_SECTIONS: readonly AppSettingSection[];
|
|
81
|
+
/**
|
|
82
|
+
* `GET /settings` keys that are computed/read-only and never sync (no server
|
|
83
|
+
* setter). The external coverage drift test classifies these here.
|
|
84
|
+
*/
|
|
85
|
+
export declare const IGNORED_GET_KEYS: ReadonlySet<string>;
|
|
86
|
+
/**
|
|
87
|
+
* Fields that ARE still writable server-side (present in the `PUT /settings`
|
|
88
|
+
* allow-list) but are deliberately excluded from TOML because a newer field
|
|
89
|
+
* supersedes them. Kept distinct from `IGNORED_GET_KEYS` so the coverage test's
|
|
90
|
+
* "every allow-listed field is covered" claim stays true — these are excluded,
|
|
91
|
+
* not read-only. (Codex design-review concern #1.)
|
|
92
|
+
*/
|
|
93
|
+
export declare const DEPRECATED_WRITABLE_EXCLUDED: ReadonlySet<string>;
|
|
94
|
+
/**
|
|
95
|
+
* What push sends for a field the file does not carry (#2880 criterion 4).
|
|
96
|
+
*
|
|
97
|
+
* `"required"` means the key may not be omitted at all; every other entry is
|
|
98
|
+
* the value the PUT receives, chosen so it lands the server exactly where its
|
|
99
|
+
* `GET /settings` read default already reports the field when nothing is
|
|
100
|
+
* stored. That equality is the whole point: it makes a `config pull` (which
|
|
101
|
+
* omits `emit: "whenSet"` values that are empty) followed by a `config push` a
|
|
102
|
+
* no-op, and it makes an absent key compare equal to the server's materialized
|
|
103
|
+
* default rather than as a difference no push could clear.
|
|
104
|
+
*
|
|
105
|
+
* The vendored surface declares no defaults, so the table is authored here and
|
|
106
|
+
* asserted field-by-field against the controller's read defaults by
|
|
107
|
+
* `app-settings-absent-values-2880.test.ts` — a new setting fails that test
|
|
108
|
+
* (and `appSettingAbsentValue` below) rather than silently clearing.
|
|
109
|
+
*
|
|
110
|
+
* | absent key | sent | why |
|
|
111
|
+
* |---|---|---|
|
|
112
|
+
* | `name`, `mode` | — | required: no server default, identity-critical, and `mode: null` is a 400 |
|
|
113
|
+
* | `waitlistEnabled`, `passkeyEnabled`, `memberInvitationsEnabled`, `corsAllowCredentials` | `false` | the read default (`!!` / strict bool) |
|
|
114
|
+
* | `emailSignInEnabled`, `waitlistNotifyAdmins` | `true` | the read default (`isEmailSignInEnabled` / `!== false`) |
|
|
115
|
+
* | `memberInvitationLimit` | `5` | the read default (`?? 5`) |
|
|
116
|
+
* | `corsMode` | `"universal"` | the read default (`|| "universal"`) |
|
|
117
|
+
* | `googleOAuthEnabled`, `appleSignInEnabled` | `null` | tri-state: null is "auto", not "off" |
|
|
118
|
+
* | everything else | `null` | clears |
|
|
119
|
+
*/
|
|
120
|
+
export type AppSettingAbsentValue = {
|
|
121
|
+
required: true;
|
|
122
|
+
} | {
|
|
123
|
+
required?: false;
|
|
124
|
+
value: unknown;
|
|
125
|
+
};
|
|
126
|
+
export declare const APP_SETTINGS_ABSENT_VALUES: Readonly<Record<string, AppSettingAbsentValue>>;
|
|
127
|
+
/**
|
|
128
|
+
* The absent-key rule for one field, or a loud failure.
|
|
129
|
+
*
|
|
130
|
+
* Deliberately a throw rather than a `?? null` fallback: under whole-truth push
|
|
131
|
+
* an unlisted field would be CLEARED on every push by a table nobody updated.
|
|
132
|
+
*/
|
|
133
|
+
export declare function appSettingAbsentValue(field: string): AppSettingAbsentValue;
|
|
134
|
+
/** Fields whose absence is a validation error rather than a clear (#2880). */
|
|
135
|
+
export declare const REQUIRED_APP_SETTING_FIELDS: readonly string[];
|
|
136
|
+
/**
|
|
137
|
+
* The value the SERVER would hold after accepting this one (#2880 DSO-003).
|
|
138
|
+
*
|
|
139
|
+
* The comparison runs on the local side only: push forwards what the file says
|
|
140
|
+
* and the server normalizes it, so without this an authored-but-noncanonical
|
|
141
|
+
* value (`baseUrl` with a trailing slash, a mixed-case test-account email)
|
|
142
|
+
* differs from the record the server returns FOREVER — and baseline restamping
|
|
143
|
+
* cannot save it, because after an apply the remote hash matches the new
|
|
144
|
+
* baseline while the local hash still does not, re-classifying `local-edited`
|
|
145
|
+
* on every run.
|
|
146
|
+
*
|
|
147
|
+
* Mirrors the rules in `settings-controller.ts` (`baseUrl` trim + trailing
|
|
148
|
+
* slash), `validateTestAccountBaseEmails` (trim, lower-case, dedupe) and
|
|
149
|
+
* `validateRedirectUris` (trim, dedupe). Only the NORMALIZATION is mirrored,
|
|
150
|
+
* never the rejection: an entry the server would refuse stays as authored so
|
|
151
|
+
* the server's own 400 is what the operator sees.
|
|
152
|
+
*/
|
|
153
|
+
export declare function canonicalizeAppSettingValue(field: string, value: unknown): unknown;
|
|
154
|
+
/**
|
|
155
|
+
* One field's comparable value — what `config diff` and the push gate both read.
|
|
156
|
+
*
|
|
157
|
+
* Canonicalized as above, then flattened to `null` when the value is "empty"
|
|
158
|
+
* under an `emit: "whenSet"` field's own rule. That second step is the
|
|
159
|
+
* app-settings copy of what `projectConfigForComparison` does for every other
|
|
160
|
+
* type (#2731): pull OMITS an empty `whenSet` value, so the file it round-trips
|
|
161
|
+
* to has no key, and comparing `[]` against "no key" would be a difference no
|
|
162
|
+
* push could ever converge.
|
|
163
|
+
*/
|
|
164
|
+
export declare function comparableAppSettingValue(descriptor: AppSettingDescriptor, value: unknown): unknown;
|
|
165
|
+
/**
|
|
166
|
+
* Project a settings record (either side) onto the full writable field set.
|
|
167
|
+
*
|
|
168
|
+
* `excludeName` is the cross-app rule (#2880 DSO-001): while a cross-app push's
|
|
169
|
+
* name exclusion is active, BOTH sides and the stamped baseline are hashed
|
|
170
|
+
* without `name`, so `classifyPushChange`'s `remoteHash === baselineHash ⇒
|
|
171
|
+
* local-edited` arithmetic stays valid.
|
|
172
|
+
*/
|
|
173
|
+
export declare function projectAppSettingsForComparison(settings: Record<string, any> | null | undefined, options?: {
|
|
174
|
+
excludeName?: boolean;
|
|
175
|
+
}): Record<string, unknown>;
|
|
176
|
+
/** Descriptor `field` names, for parity/coverage tests. */
|
|
177
|
+
export declare const DESCRIPTOR_FIELDS: ReadonlySet<string>;
|
|
178
|
+
/**
|
|
179
|
+
* Build one `app.toml` section object from server settings (pull direction).
|
|
180
|
+
* Applies each field's `emit` rule; a `null` value is always omitted (TOML
|
|
181
|
+
* cannot encode null).
|
|
182
|
+
*/
|
|
183
|
+
export declare function serializeSection(settings: Record<string, any>, section: AppSettingSection): Record<string, any>;
|
|
184
|
+
/**
|
|
185
|
+
* Build the full `app.toml` data object (all sections) from server settings.
|
|
186
|
+
* Empty sections are omitted, though in practice every section has at least one
|
|
187
|
+
* `emit: "always"` key so all four are present.
|
|
188
|
+
*/
|
|
189
|
+
export declare function serializeAppSettingsToToml(settings: Record<string, any>): Record<string, any>;
|
|
190
|
+
export interface ParsedSettingsResult {
|
|
191
|
+
/** Settings payload to send to `PUT /settings` (only keys present in TOML). */
|
|
192
|
+
settings: Record<string, any>;
|
|
193
|
+
/**
|
|
194
|
+
* Non-fatal issues — surfaced but not blocking. Unrecognized keys used to
|
|
195
|
+
* land here; #2644 criterion 6 made them errors, so this is now the slot for
|
|
196
|
+
* anything advisory a later rule adds.
|
|
197
|
+
*/
|
|
198
|
+
warnings: string[];
|
|
199
|
+
/** Fatal issues (unrecognized key or table, type mismatch) — push aborts. */
|
|
200
|
+
errors: string[];
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Translate a parsed `app.toml` object into the settings the FILE STATES —
|
|
204
|
+
* only the keys it carries. This is the parse half; `buildAppSettingsPayload`
|
|
205
|
+
* below turns it into the whole-truth `PUT /settings` body by filling in what
|
|
206
|
+
* the file omits. An unrecognized key or table and a type
|
|
207
|
+
* mismatch are both hard errors the caller must treat as abort-before-PUT
|
|
208
|
+
* (#2644 criterion 6: push rejects what it does not recognize, for every
|
|
209
|
+
* configuration surface, so a typo fails locally instead of being ignored).
|
|
210
|
+
*
|
|
211
|
+
* A per-entry `clientSecret` that is not a whole `{{secrets.KEY}}` reference is
|
|
212
|
+
* the server's rejection to make (#2256): the push forwards the map and the
|
|
213
|
+
* `PUT` answers 400 with `GOOGLE_CLIENT_SECRET_MUST_BE_SECRET_REF`. Duplicating
|
|
214
|
+
* the shape rule here would put two definitions of "valid reference" in play.
|
|
215
|
+
*
|
|
216
|
+
* A RETIRED key (#2891) is different: it is not a value the server can judge,
|
|
217
|
+
* it is a line that has to be deleted, so the parser refuses it locally with
|
|
218
|
+
* the guidance that names its replacement.
|
|
219
|
+
*
|
|
220
|
+
* `isCrossAppPush` — or `excludeName`, the same rule as the caller computed it
|
|
221
|
+
* (#2880 DSO-001, `appSettingsNameExcluded`) — strips `name` so a cross-app
|
|
222
|
+
* push never overwrites the target app's name. The strip has to happen HERE and
|
|
223
|
+
* not only in the payload builder below (#2936): a field the body will not
|
|
224
|
+
* carry is not a field this file gets to refuse, or a slot bound to another app
|
|
225
|
+
* aborts diff and push over a `[app].name` neither of them was going to send.
|
|
226
|
+
*/
|
|
227
|
+
export declare function parseTomlToAppSettings(tomlData: Record<string, any>, options?: {
|
|
228
|
+
isCrossAppPush?: boolean;
|
|
229
|
+
excludeName?: boolean;
|
|
230
|
+
}): ParsedSettingsResult;
|
|
231
|
+
/**
|
|
232
|
+
* `[app].name` / `[app].mode` absent — the two keys whole-truth push refuses to
|
|
233
|
+
* fill in for the author (#2880).
|
|
234
|
+
*
|
|
235
|
+
* Read from the DOCUMENT rather than the parse result, so a cross-app push
|
|
236
|
+
* (which strips `name` before validating) still requires the file to state one.
|
|
237
|
+
* `mode` has no default and `mode: null` is a 400; more to the point, a deleted
|
|
238
|
+
* `mode` line silently resetting an invite-only app to public is the wrong
|
|
239
|
+
* failure to choose.
|
|
240
|
+
*/
|
|
241
|
+
export declare function missingRequiredKeyErrors(tomlData: Record<string, any>): string[];
|
|
242
|
+
/**
|
|
243
|
+
* The whole-truth `PUT /settings` body (#2880 criterion 4).
|
|
244
|
+
*
|
|
245
|
+
* Every writable field gets a value: the authored one where the file carries
|
|
246
|
+
* the key, its `APP_SETTINGS_ABSENT_VALUES` entry where it does not. That is
|
|
247
|
+
* what makes `app.toml` mean what every other configuration file means — the
|
|
248
|
+
* local file is the state, not a patch over whatever the server happens to
|
|
249
|
+
* hold (#1567). The controller applies only the keys in the body (`if (field in
|
|
250
|
+
* updates)`), so the completeness has to come from here.
|
|
251
|
+
*
|
|
252
|
+
* Values are forwarded AS AUTHORED, never canonicalized: the server owns its
|
|
253
|
+
* own normalization, and a CLI that rewrote the value before sending it would
|
|
254
|
+
* be pushing something the operator did not write. The canonicalization in
|
|
255
|
+
* `canonicalizeAppSettingValue` is for the local COMPARISON only.
|
|
256
|
+
*
|
|
257
|
+
* `excludeName` (and `isCrossAppPush`, which implies it) leaves `name` out of
|
|
258
|
+
* the body entirely, so a cross-app push never renames the target app.
|
|
259
|
+
*/
|
|
260
|
+
export declare function buildAppSettingsPayload(tomlData: Record<string, any>, options?: {
|
|
261
|
+
isCrossAppPush?: boolean;
|
|
262
|
+
excludeName?: boolean;
|
|
263
|
+
}): ParsedSettingsResult;
|