@wildo-ai/saas-models 1.0.1 → 1.1.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/LICENSE +34 -0
- package/dist/esm/.builder.pid +9 -0
- package/dist/esm/__tests__/setup.d.ts.map +1 -1
- package/dist/esm/__tests__/setup.js +18 -3
- package/dist/esm/__tests__/setup.js.map +1 -1
- package/dist/esm/_inspect.d.ts +2 -0
- package/dist/esm/_inspect.d.ts.map +1 -0
- package/dist/esm/_inspect.js +3 -0
- package/dist/esm/_inspect.js.map +1 -0
- package/dist/esm/applications/application-metadata.shared.resources-config.schemas.d.ts +6 -6
- package/dist/esm/applications/application-metadata.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/applications/application-metadata.shared.resources-config.schemas.js +5 -1
- package/dist/esm/applications/application-metadata.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/applications/application-subject.shared.schemas.d.ts +51 -0
- package/dist/esm/applications/application-subject.shared.schemas.d.ts.map +1 -0
- package/dist/esm/applications/application-subject.shared.schemas.js +56 -0
- package/dist/esm/applications/application-subject.shared.schemas.js.map +1 -0
- package/dist/esm/applications/application-versions.shared.resources-config.schemas.d.ts +9 -11
- package/dist/esm/applications/application-versions.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/applications/application-versions.shared.resources-config.schemas.js +42 -74
- package/dist/esm/applications/application-versions.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/applications/applications-context.schemas.d.ts +228 -200
- package/dist/esm/applications/applications-context.schemas.d.ts.map +1 -1
- package/dist/esm/applications/applications-context.schemas.js +1 -1
- package/dist/esm/applications/applications-context.schemas.js.map +1 -1
- package/dist/esm/applications/applications.shared.resources-config.schemas.d.ts +4 -9
- package/dist/esm/applications/applications.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/applications/applications.shared.resources-config.schemas.js +103 -87
- package/dist/esm/applications/applications.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/applications/applications.shared.schemas.d.ts +59 -5
- package/dist/esm/applications/applications.shared.schemas.d.ts.map +1 -1
- package/dist/esm/applications/applications.shared.schemas.js +80 -3
- package/dist/esm/applications/applications.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.d.ts +4 -4
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.js +98 -25
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/billing-account.shared.schemas.d.ts +32 -8
- package/dist/esm/billing/billing-account.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-account.shared.schemas.js +67 -2
- package/dist/esm/billing/billing-account.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-configuration.shared.schemas.d.ts +8 -8
- package/dist/esm/billing/billing-configuration.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-configuration.shared.schemas.js +2 -3
- package/dist/esm/billing/billing-configuration.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-enums.shared.schemas.d.ts +75 -0
- package/dist/esm/billing/billing-enums.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-enums.shared.schemas.js +78 -1
- package/dist/esm/billing/billing-enums.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-types.shared.schemas.d.ts +204 -42
- package/dist/esm/billing/billing-types.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-types.shared.schemas.js +76 -1
- package/dist/esm/billing/billing-types.shared.schemas.js.map +1 -1
- package/dist/esm/billing/credit-pool.shared.resources-config.schemas.d.ts +8 -6
- package/dist/esm/billing/credit-pool.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/credit-pool.shared.resources-config.schemas.js +48 -16
- package/dist/esm/billing/credit-pool.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/credit-pool.shared.schemas.d.ts +9 -9
- package/dist/esm/billing/credit-pool.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/credit-pool.shared.schemas.js +13 -6
- package/dist/esm/billing/credit-pool.shared.schemas.js.map +1 -1
- package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.d.ts +2 -2
- package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.js +26 -17
- package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/invoice-ref.shared.schemas.d.ts +10 -10
- package/dist/esm/billing/invoice-ref.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/invoice-ref.shared.schemas.js +32 -7
- package/dist/esm/billing/invoice-ref.shared.schemas.js.map +1 -1
- package/dist/esm/billing/price.shared.resources-config.schemas.d.ts +7 -7
- package/dist/esm/billing/price.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/price.shared.resources-config.schemas.js +23 -5
- package/dist/esm/billing/price.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/price.shared.schemas.d.ts +4 -4
- package/dist/esm/billing/price.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/price.shared.schemas.js +1 -1
- package/dist/esm/billing/price.shared.schemas.js.map +1 -1
- package/dist/esm/billing/product-behavior-policy.shared.schemas.d.ts +9 -9
- package/dist/esm/billing/product-behavior-policy.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product-behavior-policy.shared.schemas.js +10 -2
- package/dist/esm/billing/product-behavior-policy.shared.schemas.js.map +1 -1
- package/dist/esm/billing/product-definition.shared.schemas.d.ts +27 -27
- package/dist/esm/billing/product-definition.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product-definition.shared.schemas.js +39 -9
- package/dist/esm/billing/product-definition.shared.schemas.js.map +1 -1
- package/dist/esm/billing/product.shared.resources-config.schemas.d.ts +22 -22
- package/dist/esm/billing/product.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product.shared.resources-config.schemas.js +6 -6
- package/dist/esm/billing/product.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/product.shared.schemas.d.ts +19 -19
- package/dist/esm/billing/product.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product.shared.schemas.js +1 -1
- package/dist/esm/billing/product.shared.schemas.js.map +1 -1
- package/dist/esm/billing/promotions.shared.resources-config.schemas.d.ts +7 -7
- package/dist/esm/billing/promotions.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/promotions.shared.resources-config.schemas.js +34 -6
- package/dist/esm/billing/promotions.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/promotions.shared.schemas.d.ts +2 -2
- package/dist/esm/billing/promotions.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/promotions.shared.schemas.js +1 -1
- package/dist/esm/billing/promotions.shared.schemas.js.map +1 -1
- package/dist/esm/billing/referral.shared.resources-config.schemas.d.ts +12 -12
- package/dist/esm/billing/referral.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/referral.shared.resources-config.schemas.js +5 -5
- package/dist/esm/billing/referral.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/referral.shared.schemas.d.ts +7 -7
- package/dist/esm/billing/referral.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/referral.shared.schemas.js +36 -8
- package/dist/esm/billing/referral.shared.schemas.js.map +1 -1
- package/dist/esm/billing/subscription.shared.resources-config.schemas.d.ts +6 -6
- package/dist/esm/billing/subscription.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/subscription.shared.resources-config.schemas.js +51 -24
- package/dist/esm/billing/subscription.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/subscription.shared.schemas.d.ts +13 -13
- package/dist/esm/billing/subscription.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/subscription.shared.schemas.js +37 -5
- package/dist/esm/billing/subscription.shared.schemas.js.map +1 -1
- package/dist/esm/billing/usage-record.shared.resources-config.schemas.d.ts +2 -2
- package/dist/esm/billing/usage-record.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/usage-record.shared.resources-config.schemas.js +23 -14
- package/dist/esm/billing/usage-record.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/usage-record.shared.schemas.d.ts +15 -12
- package/dist/esm/billing/usage-record.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/usage-record.shared.schemas.js +34 -7
- package/dist/esm/billing/usage-record.shared.schemas.js.map +1 -1
- package/dist/esm/charts/aggregation-query.shared.schemas.d.ts +36 -36
- package/dist/esm/charts/aggregation-query.shared.schemas.d.ts.map +1 -1
- package/dist/esm/charts/aggregation-query.shared.schemas.js +6 -6
- package/dist/esm/charts/aggregation-query.shared.schemas.js.map +1 -1
- package/dist/esm/charts/aggregation.shared.definitions.d.ts.map +1 -1
- package/dist/esm/charts/aggregation.shared.definitions.js +1 -1
- package/dist/esm/charts/aggregation.shared.definitions.js.map +1 -1
- package/dist/esm/charts/chart-definition-builder.shared.d.ts +5 -3
- package/dist/esm/charts/chart-definition-builder.shared.d.ts.map +1 -1
- package/dist/esm/charts/chart-definition-builder.shared.js +4 -2
- package/dist/esm/charts/chart-definition-builder.shared.js.map +1 -1
- package/dist/esm/{runtime/companion-artifact-placement.shared.definitions.d.ts → companion/artifact-placement.shared.definitions.d.ts} +2 -3
- package/dist/esm/companion/artifact-placement.shared.definitions.d.ts.map +1 -0
- package/dist/esm/{runtime/companion-artifact-placement.shared.definitions.js → companion/artifact-placement.shared.definitions.js} +1 -2
- package/dist/esm/companion/artifact-placement.shared.definitions.js.map +1 -0
- package/dist/esm/companion/provider-discovery.shared.schemas.d.ts +131 -0
- package/dist/esm/companion/provider-discovery.shared.schemas.d.ts.map +1 -0
- package/dist/esm/companion/provider-discovery.shared.schemas.js +122 -0
- package/dist/esm/companion/provider-discovery.shared.schemas.js.map +1 -0
- package/dist/esm/companion/shared-library-companion.shared.definitions.d.ts +6 -0
- package/dist/esm/companion/shared-library-companion.shared.definitions.d.ts.map +1 -0
- package/dist/esm/companion/shared-library-companion.shared.definitions.js +1 -0
- package/dist/esm/companion/shared-library-companion.shared.definitions.js.map +1 -0
- package/dist/esm/companion-exports.d.ts +4 -0
- package/dist/esm/companion-exports.d.ts.map +1 -0
- package/dist/esm/companion-exports.js +4 -0
- package/dist/esm/companion-exports.js.map +1 -0
- package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.d.ts +65 -0
- package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.js +68 -0
- package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.d.ts +147 -0
- package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.js +20 -0
- package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.d.ts +60 -16
- package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.js +77 -10
- package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.d.ts +58 -0
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.js +74 -0
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.d.ts +1949 -115
- package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.js +2229 -11
- package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.js.map +1 -1
- package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.d.ts +25 -10
- package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.js +226 -3
- package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.js.map +1 -1
- package/dist/esm/compliance/data-classification/data-classification.shared.schemas.d.ts +8 -0
- package/dist/esm/compliance/data-classification/data-classification.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/data-classification/data-classification.shared.schemas.js +9 -0
- package/dist/esm/compliance/data-classification/data-classification.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/documents/governed-documents.shared.schemas.d.ts +524 -0
- package/dist/esm/compliance/documents/governed-documents.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/documents/governed-documents.shared.schemas.js +482 -0
- package/dist/esm/compliance/documents/governed-documents.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.d.ts +112 -0
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.js +120 -0
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/client-storage.shared.schemas.d.ts +134 -0
- package/dist/esm/compliance/privacy/client-storage.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/client-storage.shared.schemas.js +129 -0
- package/dist/esm/compliance/privacy/client-storage.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/data-retention.shared.schemas.d.ts +1 -1
- package/dist/esm/compliance/privacy/data-retention.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/data-retention.shared.schemas.js +1 -1
- package/dist/esm/compliance/privacy/data-retention.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.d.ts +50 -0
- package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.js +98 -0
- package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.js.map +1 -0
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.d.ts +181 -0
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.js +184 -0
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.d.ts +230 -0
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.js +232 -0
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/personal-data-category.shared.schemas.d.ts +220 -0
- package/dist/esm/compliance/privacy/personal-data-category.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/personal-data-category.shared.schemas.js +252 -0
- package/dist/esm/compliance/privacy/personal-data-category.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/personal-data-declaration.shared.utils.d.ts +75 -0
- package/dist/esm/compliance/privacy/personal-data-declaration.shared.utils.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/personal-data-declaration.shared.utils.js +43 -0
- package/dist/esm/compliance/privacy/personal-data-declaration.shared.utils.js.map +1 -0
- package/dist/esm/compliance/privacy/privacy.shared.schemas.d.ts +56 -43
- package/dist/esm/compliance/privacy/privacy.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/privacy.shared.schemas.js +72 -18
- package/dist/esm/compliance/privacy/privacy.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/redaction.shared.schemas.d.ts +21 -3
- package/dist/esm/compliance/privacy/redaction.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/redaction.shared.schemas.js +19 -1
- package/dist/esm/compliance/privacy/redaction.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.d.ts +124 -0
- package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.js +107 -0
- package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/sharing.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/sharing.shared.schemas.js +1 -1
- package/dist/esm/compliance/privacy/sharing.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.d.ts +279 -0
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.js +238 -0
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/subject-export-render.shared.utils.d.ts +74 -0
- package/dist/esm/compliance/privacy/subject-export-render.shared.utils.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/subject-export-render.shared.utils.js +137 -0
- package/dist/esm/compliance/privacy/subject-export-render.shared.utils.js.map +1 -0
- package/dist/esm/compliance/privacy/subject-export.shared.schemas.d.ts +457 -0
- package/dist/esm/compliance/privacy/subject-export.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/subject-export.shared.schemas.js +549 -0
- package/dist/esm/compliance/privacy/subject-export.shared.schemas.js.map +1 -0
- package/dist/esm/config/analytics-value-moments.shared.schemas.d.ts +13 -13
- package/dist/esm/config/analytics-value-moments.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/analytics-value-moments.shared.schemas.js +1 -1
- package/dist/esm/config/analytics-value-moments.shared.schemas.js.map +1 -1
- package/dist/esm/config/app-configuration-shared.shared.schemas.d.ts +135 -125
- package/dist/esm/config/app-configuration-shared.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/app-configuration-shared.shared.schemas.js +74 -10
- package/dist/esm/config/app-configuration-shared.shared.schemas.js.map +1 -1
- package/dist/esm/config/app-frontend-type.shared.schemas.d.ts +94 -0
- package/dist/esm/config/app-frontend-type.shared.schemas.d.ts.map +1 -0
- package/dist/esm/config/app-frontend-type.shared.schemas.js +95 -0
- package/dist/esm/config/app-frontend-type.shared.schemas.js.map +1 -0
- package/dist/esm/config/auth-config-resolution.shared.utils.d.ts +35 -5
- package/dist/esm/config/auth-config-resolution.shared.utils.d.ts.map +1 -1
- package/dist/esm/config/auth-config-resolution.shared.utils.js +44 -2
- package/dist/esm/config/auth-config-resolution.shared.utils.js.map +1 -1
- package/dist/esm/config/brand-assets.shared.schemas.d.ts +89 -0
- package/dist/esm/config/brand-assets.shared.schemas.d.ts.map +1 -0
- package/dist/esm/config/brand-assets.shared.schemas.js +99 -0
- package/dist/esm/config/brand-assets.shared.schemas.js.map +1 -0
- package/dist/esm/config/configuration-validation.shared.schemas.d.ts +12 -1
- package/dist/esm/config/configuration-validation.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/configuration-validation.shared.schemas.js +12 -1
- package/dist/esm/config/configuration-validation.shared.schemas.js.map +1 -1
- package/dist/esm/config/entity-identity-config.shared.schemas.d.ts +170 -91
- package/dist/esm/config/entity-identity-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/entity-identity-config.shared.schemas.js +130 -19
- package/dist/esm/config/entity-identity-config.shared.schemas.js.map +1 -1
- package/dist/esm/config/frontend/chart-definition.shared.schemas.d.ts +167 -166
- package/dist/esm/config/frontend/chart-definition.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/frontend/chart-definition.shared.schemas.js +93 -9
- package/dist/esm/config/frontend/chart-definition.shared.schemas.js.map +1 -1
- package/dist/esm/config/frontend/chart-registration-alignment.shared.d.ts +69 -0
- package/dist/esm/config/frontend/chart-registration-alignment.shared.d.ts.map +1 -0
- package/dist/esm/config/frontend/chart-registration-alignment.shared.js +61 -0
- package/dist/esm/config/frontend/chart-registration-alignment.shared.js.map +1 -0
- package/dist/esm/config/frontend/navigation.shared.schemas.d.ts +110 -39
- package/dist/esm/config/frontend/navigation.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/frontend/navigation.shared.schemas.js +93 -9
- package/dist/esm/config/frontend/navigation.shared.schemas.js.map +1 -1
- package/dist/esm/config/frontend/onboarding.shared.schemas.d.ts +70 -134
- package/dist/esm/config/frontend/onboarding.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/frontend/onboarding.shared.schemas.js +27 -25
- package/dist/esm/config/frontend/onboarding.shared.schemas.js.map +1 -1
- package/dist/esm/config/postgresql.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/postgresql.shared.schemas.js +1 -1
- package/dist/esm/config/postgresql.shared.schemas.js.map +1 -1
- package/dist/esm/config/registration-acquisition-policy.shared.utils.d.ts +24 -0
- package/dist/esm/config/registration-acquisition-policy.shared.utils.d.ts.map +1 -0
- package/dist/esm/config/registration-acquisition-policy.shared.utils.js +62 -0
- package/dist/esm/config/registration-acquisition-policy.shared.utils.js.map +1 -0
- package/dist/esm/config-authoring.entry.d.ts +5 -0
- package/dist/esm/config-authoring.entry.d.ts.map +1 -0
- package/dist/esm/config-authoring.entry.js +7 -0
- package/dist/esm/config-authoring.entry.js.map +1 -0
- package/dist/esm/crdt/crdt-merge.shared.utils.d.ts +1 -1
- package/dist/esm/crdt/crdt-merge.shared.utils.d.ts.map +1 -1
- package/dist/esm/crdt/crdt-merge.shared.utils.js +1 -1
- package/dist/esm/crdt/crdt-merge.shared.utils.js.map +1 -1
- package/dist/esm/data-seeding/data-seeding-config.shared.schemas.d.ts +66 -0
- package/dist/esm/data-seeding/data-seeding-config.shared.schemas.d.ts.map +1 -0
- package/dist/esm/data-seeding/data-seeding-config.shared.schemas.js +118 -0
- package/dist/esm/data-seeding/data-seeding-config.shared.schemas.js.map +1 -0
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.d.ts +348 -1
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.d.ts.map +1 -1
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.js +357 -1
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.js.map +1 -1
- package/dist/esm/errors/errors.shared.definitions.d.ts +2 -2
- package/dist/esm/errors/errors.shared.definitions.d.ts.map +1 -1
- package/dist/esm/errors/errors.shared.definitions.js +12 -1
- package/dist/esm/errors/errors.shared.definitions.js.map +1 -1
- package/dist/esm/errors/errors.shared.schemas.d.ts +82 -36
- package/dist/esm/errors/errors.shared.schemas.d.ts.map +1 -1
- package/dist/esm/errors/errors.shared.schemas.js +100 -3
- package/dist/esm/errors/errors.shared.schemas.js.map +1 -1
- package/dist/esm/errors/errors.shared.utils.d.ts +1 -1
- package/dist/esm/errors/errors.shared.utils.d.ts.map +1 -1
- package/dist/esm/errors/errors.shared.utils.js +1 -1
- package/dist/esm/errors/errors.shared.utils.js.map +1 -1
- package/dist/esm/errors/resource-access-forbidden.shared.error.d.ts +16 -0
- package/dist/esm/errors/resource-access-forbidden.shared.error.d.ts.map +1 -0
- package/dist/esm/errors/resource-access-forbidden.shared.error.js +18 -0
- package/dist/esm/errors/resource-access-forbidden.shared.error.js.map +1 -0
- package/dist/esm/errors/zod-issue-formatting.shared.utils.d.ts +113 -0
- package/dist/esm/errors/zod-issue-formatting.shared.utils.d.ts.map +1 -0
- package/dist/esm/errors/zod-issue-formatting.shared.utils.js +102 -0
- package/dist/esm/errors/zod-issue-formatting.shared.utils.js.map +1 -0
- package/dist/esm/exports/tabular-csv.shared.utils.d.ts +42 -0
- package/dist/esm/exports/tabular-csv.shared.utils.d.ts.map +1 -0
- package/dist/esm/exports/tabular-csv.shared.utils.js +63 -0
- package/dist/esm/exports/tabular-csv.shared.utils.js.map +1 -0
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.d.ts +347 -0
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.js +206 -0
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.js.map +1 -0
- package/dist/esm/external-data.exports.d.ts +30 -0
- package/dist/esm/external-data.exports.d.ts.map +1 -0
- package/dist/esm/external-data.exports.js +30 -0
- package/dist/esm/external-data.exports.js.map +1 -0
- package/dist/esm/external-providers/compose-provider-registry.shared.d.ts +63 -0
- package/dist/esm/external-providers/compose-provider-registry.shared.d.ts.map +1 -0
- package/dist/esm/external-providers/compose-provider-registry.shared.js +102 -0
- package/dist/esm/external-providers/compose-provider-registry.shared.js.map +1 -0
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.d.ts +164 -0
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.js +194 -0
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/engine-capability-resolution-mode.shared.d.ts +39 -0
- package/dist/esm/external-providers/engine-capability-resolution-mode.shared.d.ts.map +1 -0
- package/dist/esm/external-providers/engine-capability-resolution-mode.shared.js +85 -0
- package/dist/esm/external-providers/engine-capability-resolution-mode.shared.js.map +1 -0
- package/dist/esm/external-providers/external-providers.shared.schemas.d.ts +22 -22
- package/dist/esm/external-providers/external-providers.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/external-providers.shared.schemas.js +5 -5
- package/dist/esm/external-providers/external-providers.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.d.ts +319 -0
- package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.js +17 -0
- package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.d.ts +35 -0
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.js +19 -0
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-capability.shared.schemas.d.ts +135 -0
- package/dist/esm/external-providers/provider-capability.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-capability.shared.schemas.js +102 -0
- package/dist/esm/external-providers/provider-capability.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.d.ts +175 -0
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.js +211 -0
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-metadata.shared.schemas.d.ts +37 -0
- package/dist/esm/external-providers/provider-metadata.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-metadata.shared.schemas.js +58 -0
- package/dist/esm/external-providers/provider-metadata.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-protocol.shared.schemas.d.ts +65 -0
- package/dist/esm/external-providers/provider-protocol.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-protocol.shared.schemas.js +63 -0
- package/dist/esm/external-providers/provider-protocol.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.d.ts +99 -0
- package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.js +137 -0
- package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.js.map +1 -0
- package/dist/esm/features/application-features.shared.resources-config.schemas.d.ts +39 -0
- package/dist/esm/features/application-features.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/features/application-features.shared.resources-config.schemas.js +147 -0
- package/dist/esm/features/application-features.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/features/core-feature-definitions.shared.d.ts +17 -2
- package/dist/esm/features/core-feature-definitions.shared.d.ts.map +1 -1
- package/dist/esm/features/core-feature-definitions.shared.js +91 -3
- package/dist/esm/features/core-feature-definitions.shared.js.map +1 -1
- package/dist/esm/features/feature-builders.shared.d.ts +13 -2
- package/dist/esm/features/feature-builders.shared.d.ts.map +1 -1
- package/dist/esm/features/feature-builders.shared.js +3 -1
- package/dist/esm/features/feature-builders.shared.js.map +1 -1
- package/dist/esm/features/feature-definition.shared.schemas.d.ts +70 -24
- package/dist/esm/features/feature-definition.shared.schemas.d.ts.map +1 -1
- package/dist/esm/features/feature-definition.shared.schemas.js +84 -1
- package/dist/esm/features/feature-definition.shared.schemas.js.map +1 -1
- package/dist/esm/features/feature-registry.shared.d.ts +8 -9
- package/dist/esm/features/feature-registry.shared.d.ts.map +1 -1
- package/dist/esm/features/feature-registry.shared.js +5 -8
- package/dist/esm/features/feature-registry.shared.js.map +1 -1
- package/dist/esm/features/feature-resolution.shared.schemas.d.ts +1 -1
- package/dist/esm/features/feature-resolution.shared.schemas.d.ts.map +1 -1
- package/dist/esm/features/feature-resolution.shared.schemas.js +1 -1
- package/dist/esm/features/feature-resolution.shared.schemas.js.map +1 -1
- package/dist/esm/features/scope-features.shared.schemas.d.ts +9 -10
- package/dist/esm/features/scope-features.shared.schemas.d.ts.map +1 -1
- package/dist/esm/features/scope-features.shared.schemas.js +20 -6
- package/dist/esm/features/scope-features.shared.schemas.js.map +1 -1
- package/dist/esm/features/user-features.shared.resources-config.schemas.d.ts +9 -9
- package/dist/esm/features/user-features.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/features/user-features.shared.resources-config.schemas.js +35 -1
- package/dist/esm/features/user-features.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/files/files.shared.resources-config.schemas.d.ts +35 -9
- package/dist/esm/files/files.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/files/files.shared.resources-config.schemas.js +27 -5
- package/dist/esm/files/files.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/files/files.shared.schemas.d.ts +71 -13
- package/dist/esm/files/files.shared.schemas.d.ts.map +1 -1
- package/dist/esm/files/files.shared.schemas.js +110 -35
- package/dist/esm/files/files.shared.schemas.js.map +1 -1
- package/dist/esm/files/files.shared.utils.d.ts +9 -5
- package/dist/esm/files/files.shared.utils.d.ts.map +1 -1
- package/dist/esm/files/files.shared.utils.js +10 -6
- package/dist/esm/files/files.shared.utils.js.map +1 -1
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.d.ts +40 -0
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.js +204 -0
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.d.ts +113 -0
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.js +153 -0
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.d.ts +61 -0
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.js +143 -0
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.schemas.d.ts +77 -0
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.schemas.js +103 -0
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/actors.shared.schemas.d.ts +339 -326
- package/dist/esm/flows-actors/actors.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/actors.shared.schemas.js +29 -6
- package/dist/esm/flows-actors/actors.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.d.ts +237 -0
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.js +152 -0
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/agents.shared.schemas.d.ts +180 -23
- package/dist/esm/flows-actors/agents.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/agents.shared.schemas.js +69 -2
- package/dist/esm/flows-actors/agents.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.d.ts +19 -0
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.d.ts.map +1 -0
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.js +35 -0
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.js.map +1 -0
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.d.ts +29 -45
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.js +2 -34
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.d.ts +2 -2
- package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.js +1 -1
- package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/deliberation.shared.schemas.d.ts +642 -0
- package/dist/esm/flows-actors/deliberation.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/deliberation.shared.schemas.js +604 -0
- package/dist/esm/flows-actors/deliberation.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.d.ts +48 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.js +179 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.d.ts +200 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.js +337 -0
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.d.ts +59 -0
- package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.js +223 -0
- package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/flows-actors/flows-actors-task.shared.schemas.d.ts +426 -0
- package/dist/esm/flows-actors/flows-actors-task.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/flows-actors-task.shared.schemas.js +317 -0
- package/dist/esm/flows-actors/flows-actors-task.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.d.ts +109 -58
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.js +48 -1
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.d.ts +62 -62
- package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.js +2 -2
- package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.d.ts +112 -11
- package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.js +63 -1
- package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.io.shared.schemas.d.ts +60 -20
- package/dist/esm/flows-actors/flows-actors.io.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.io.shared.schemas.js +36 -3
- package/dist/esm/flows-actors/flows-actors.io.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.system.shared.definitions.d.ts +35 -0
- package/dist/esm/flows-actors/flows-actors.system.shared.definitions.d.ts.map +1 -0
- package/dist/esm/flows-actors/flows-actors.system.shared.definitions.js +1 -0
- package/dist/esm/flows-actors/flows-actors.system.shared.definitions.js.map +1 -0
- package/dist/esm/flows-actors/flows-actors.system.shared.schemas.d.ts +88 -63
- package/dist/esm/flows-actors/flows-actors.system.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.system.shared.schemas.js +32 -5
- package/dist/esm/flows-actors/flows-actors.system.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows.shared.schemas.d.ts +63 -49
- package/dist/esm/flows-actors/flows.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows.shared.schemas.js +1 -1
- package/dist/esm/flows-actors/flows.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/meta-workflows/actions.meta-workflows.shared.schemas.d.ts +73 -0
- package/dist/esm/flows-actors/meta-workflows/actions.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/actions.meta-workflows.shared.schemas.js +149 -0
- package/dist/esm/flows-actors/meta-workflows/actions.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.d.ts +20 -0
- package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.js +34 -0
- package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/catalog.meta-workflows.shared.schemas.d.ts +125 -0
- package/dist/esm/flows-actors/meta-workflows/catalog.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/catalog.meta-workflows.shared.schemas.js +136 -0
- package/dist/esm/flows-actors/meta-workflows/catalog.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.d.ts +180 -0
- package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.js +187 -0
- package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.d.ts +28 -0
- package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.js +28 -0
- package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.d.ts +446 -0
- package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.js +678 -0
- package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.d.ts +106 -0
- package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.js +243 -0
- package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.d.ts +29 -0
- package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.js +58 -0
- package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/portable-primitives.meta-workflows.shared.schemas.d.ts +61 -0
- package/dist/esm/flows-actors/meta-workflows/portable-primitives.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/meta-workflows/portable-primitives.meta-workflows.shared.schemas.js +93 -0
- package/dist/esm/flows-actors/meta-workflows/portable-primitives.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/prompt-ir.shared.schemas.d.ts +5 -5
- package/dist/esm/flows-actors/prompt-ir.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/prompt-ir.shared.schemas.js +2 -2
- package/dist/esm/flows-actors/prompt-ir.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.d.ts +81 -0
- package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.js +82 -0
- package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/tasks.actors.shared.schemas.d.ts +257 -194
- package/dist/esm/flows-actors/tasks.actors.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/tasks.actors.shared.schemas.js +28 -2
- package/dist/esm/flows-actors/tasks.actors.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/utils/flow-actors.context-builder.apps-context.shared.utils.d.ts.map +1 -1
- package/dist/esm/flows-actors/utils/flow-actors.context-builder.apps-context.shared.utils.js +1 -1
- package/dist/esm/flows-actors/utils/flow-actors.context-builder.apps-context.shared.utils.js.map +1 -1
- package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.d.ts.map +1 -1
- package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.js +1 -1
- package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.js.map +1 -1
- package/dist/esm/guidance/guidance-flow.shared.schemas.d.ts +51 -89
- package/dist/esm/guidance/guidance-flow.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/guidance-flow.shared.schemas.js +1 -1
- package/dist/esm/guidance/guidance-flow.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.d.ts +22 -19
- package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.js +61 -5
- package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.schemas.d.ts +46 -10
- package/dist/esm/guidance/guidance-state.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.schemas.js +15 -4
- package/dist/esm/guidance/guidance-state.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.utils.d.ts +25 -0
- package/dist/esm/guidance/guidance-state.shared.utils.d.ts.map +1 -0
- package/dist/esm/guidance/guidance-state.shared.utils.js +72 -0
- package/dist/esm/guidance/guidance-state.shared.utils.js.map +1 -0
- package/dist/esm/guidance/lifecycle-config.shared.schemas.d.ts +11 -11
- package/dist/esm/guidance/lifecycle-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/lifecycle-config.shared.schemas.js +1 -1
- package/dist/esm/guidance/lifecycle-config.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.d.ts +28 -25
- package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.js +71 -7
- package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.schemas.d.ts +53 -14
- package/dist/esm/guidance/lifecycle-state.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.schemas.js +26 -25
- package/dist/esm/guidance/lifecycle-state.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/milestone-builders.shared.d.ts +2 -2
- package/dist/esm/guidance/milestone-builders.shared.d.ts.map +1 -1
- package/dist/esm/guidance/milestone-builders.shared.js +1 -1
- package/dist/esm/guidance/milestone-builders.shared.js.map +1 -1
- package/dist/esm/guidance/milestone-definition.shared.schemas.d.ts +2 -2
- package/dist/esm/guidance/milestone-definition.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/milestone-definition.shared.schemas.js +1 -1
- package/dist/esm/guidance/milestone-definition.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/progression-state.shared.resources-config.schemas.d.ts +22 -19
- package/dist/esm/guidance/progression-state.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/progression-state.shared.resources-config.schemas.js +72 -7
- package/dist/esm/guidance/progression-state.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/guidance/progression-state.shared.schemas.d.ts +40 -10
- package/dist/esm/guidance/progression-state.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/progression-state.shared.schemas.js +16 -6
- package/dist/esm/guidance/progression-state.shared.schemas.js.map +1 -1
- package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.d.ts +69 -0
- package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.d.ts.map +1 -0
- package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.js +232 -0
- package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.js.map +1 -0
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.d.ts +566 -0
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.d.ts.map +1 -0
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.js +513 -0
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.js.map +1 -0
- package/dist/esm/i18n/interpolate-label-params.shared.utils.d.ts +52 -0
- package/dist/esm/i18n/interpolate-label-params.shared.utils.d.ts.map +1 -0
- package/dist/esm/i18n/interpolate-label-params.shared.utils.js +63 -0
- package/dist/esm/i18n/interpolate-label-params.shared.utils.js.map +1 -0
- package/dist/esm/i18n/labelling.dto.shared.schemas.d.ts +3 -3
- package/dist/esm/i18n/labelling.dto.shared.schemas.d.ts.map +1 -1
- package/dist/esm/i18n/labelling.dto.shared.schemas.js +1 -1
- package/dist/esm/i18n/labelling.dto.shared.schemas.js.map +1 -1
- package/dist/esm/index.d.ts +277 -200
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +122 -15
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/meta-workflows.exports.d.ts +51 -0
- package/dist/esm/meta-workflows.exports.d.ts.map +1 -0
- package/dist/esm/meta-workflows.exports.js +51 -0
- package/dist/esm/meta-workflows.exports.js.map +1 -0
- package/dist/esm/monitoring/monitoring.shared.schemas.d.ts +16 -16
- package/dist/esm/monitoring/monitoring.shared.schemas.d.ts.map +1 -1
- package/dist/esm/monitoring/monitoring.shared.schemas.js +1 -1
- package/dist/esm/monitoring/monitoring.shared.schemas.js.map +1 -1
- package/dist/esm/notifications/email/email-context.shared.schemas.d.ts +9 -9
- package/dist/esm/notifications/email/email-context.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/email/email-context.shared.schemas.js +8 -3
- package/dist/esm/notifications/email/email-context.shared.schemas.js.map +1 -1
- package/dist/esm/notifications/email/email-template-registry.shared.schemas.d.ts +33 -46
- package/dist/esm/notifications/email/email-template-registry.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/email/email-template-registry.shared.schemas.js +20 -140
- package/dist/esm/notifications/email/email-template-registry.shared.schemas.js.map +1 -1
- package/dist/esm/notifications/email/email-template.shared.enums.d.ts +145 -0
- package/dist/esm/notifications/email/email-template.shared.enums.d.ts.map +1 -0
- package/dist/esm/notifications/email/email-template.shared.enums.js +164 -0
- package/dist/esm/notifications/email/email-template.shared.enums.js.map +1 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.d.ts +43 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.js +231 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.d.ts +159 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.d.ts.map +1 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.js +191 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.js.map +1 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.d.ts +62 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.js +183 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.d.ts +134 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.d.ts.map +1 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.js +159 -0
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.js.map +1 -0
- package/dist/esm/notifications/notification-badges.core.definitions.d.ts +10 -1
- package/dist/esm/notifications/notification-badges.core.definitions.d.ts.map +1 -1
- package/dist/esm/notifications/notification-badges.core.definitions.js +11 -13
- package/dist/esm/notifications/notification-badges.core.definitions.js.map +1 -1
- package/dist/esm/notifications/notification-badges.schemas.d.ts +147 -43
- package/dist/esm/notifications/notification-badges.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/notification-badges.schemas.js +130 -23
- package/dist/esm/notifications/notification-badges.schemas.js.map +1 -1
- package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.d.ts +40 -15
- package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.js +149 -23
- package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/notifications/notifications.shared.schemas.d.ts +352 -25
- package/dist/esm/notifications/notifications.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/notifications.shared.schemas.js +47 -2
- package/dist/esm/notifications/notifications.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-features.shared.resources-config.schemas.d.ts +21 -10
- package/dist/esm/organizations/organization-features.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-features.shared.resources-config.schemas.js +54 -47
- package/dist/esm/organizations/organization-features.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-features.shared.schemas.d.ts +10 -2
- package/dist/esm/organizations/organization-features.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-features.shared.schemas.js +10 -2
- package/dist/esm/organizations/organization-features.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.d.ts +31 -17
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.js +294 -54
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-members.shared.schemas.d.ts +31 -41
- package/dist/esm/organizations/organization-members.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-members.shared.schemas.js +181 -37
- package/dist/esm/organizations/organization-members.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-notifications.shared.resources-config.schemas.d.ts +8 -8
- package/dist/esm/organizations/organization-notifications.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-notifications.shared.resources-config.schemas.js +43 -2
- package/dist/esm/organizations/organization-notifications.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-notifications.shared.schemas.d.ts +25 -4
- package/dist/esm/organizations/organization-notifications.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-notifications.shared.schemas.js +35 -15
- package/dist/esm/organizations/organization-notifications.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-preferences.shared.resources-config.schemas.d.ts +7 -7
- package/dist/esm/organizations/organization-preferences.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-preferences.shared.resources-config.schemas.js +42 -3
- package/dist/esm/organizations/organization-preferences.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-preferences.shared.schemas.d.ts +4 -4
- package/dist/esm/organizations/organization-preferences.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-preferences.shared.schemas.js +17 -4
- package/dist/esm/organizations/organization-preferences.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.d.ts +10 -10
- package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.js +32 -2
- package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-profile.shared.schemas.d.ts +6 -6
- package/dist/esm/organizations/organization-profile.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-profile.shared.schemas.js +28 -2
- package/dist/esm/organizations/organization-profile.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-unit-inheritance.shared.d.ts +94 -0
- package/dist/esm/organizations/organization-unit-inheritance.shared.d.ts.map +1 -0
- package/dist/esm/organizations/organization-unit-inheritance.shared.js +96 -0
- package/dist/esm/organizations/organization-unit-inheritance.shared.js.map +1 -0
- package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.d.ts +30 -0
- package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.js +97 -0
- package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/organizations/organization-unit-members.shared.schemas.d.ts +56 -0
- package/dist/esm/organizations/organization-unit-members.shared.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/organization-unit-members.shared.schemas.js +92 -0
- package/dist/esm/organizations/organization-unit-members.shared.schemas.js.map +1 -0
- package/dist/esm/organizations/organization-unit-narrowing-decision.shared.d.ts +130 -0
- package/dist/esm/organizations/organization-unit-narrowing-decision.shared.d.ts.map +1 -0
- package/dist/esm/organizations/organization-unit-narrowing-decision.shared.js +139 -0
- package/dist/esm/organizations/organization-unit-narrowing-decision.shared.js.map +1 -0
- package/dist/esm/organizations/organization-unit-narrowing.example.d.ts +27 -0
- package/dist/esm/organizations/organization-unit-narrowing.example.d.ts.map +1 -0
- package/dist/esm/organizations/organization-unit-narrowing.example.js +29 -0
- package/dist/esm/organizations/organization-unit-narrowing.example.js.map +1 -0
- package/dist/esm/organizations/organization-unit-narrowing.shared.d.ts +137 -0
- package/dist/esm/organizations/organization-unit-narrowing.shared.d.ts.map +1 -0
- package/dist/esm/organizations/organization-unit-narrowing.shared.js +133 -0
- package/dist/esm/organizations/organization-unit-narrowing.shared.js.map +1 -0
- package/dist/esm/organizations/organization-units.shared.path.d.ts +103 -0
- package/dist/esm/organizations/organization-units.shared.path.d.ts.map +1 -0
- package/dist/esm/organizations/organization-units.shared.path.js +120 -0
- package/dist/esm/organizations/organization-units.shared.path.js.map +1 -0
- package/dist/esm/organizations/organization-units.shared.resources-config.schemas.d.ts +8 -8
- package/dist/esm/organizations/organization-units.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-units.shared.resources-config.schemas.js +1 -1
- package/dist/esm/organizations/organization-units.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-units.shared.schemas.d.ts +69 -8
- package/dist/esm/organizations/organization-units.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-units.shared.schemas.js +89 -5
- package/dist/esm/organizations/organization-units.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.d.ts +46 -11
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.js +505 -34
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organizations.shared.schemas.d.ts +95 -39
- package/dist/esm/organizations/organizations.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organizations.shared.schemas.js +228 -6
- package/dist/esm/organizations/organizations.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/tenant-teardown-config.shared.schemas.d.ts +36 -0
- package/dist/esm/organizations/tenant-teardown-config.shared.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/tenant-teardown-config.shared.schemas.js +66 -0
- package/dist/esm/organizations/tenant-teardown-config.shared.schemas.js.map +1 -0
- package/dist/esm/provider-registration-runtime.exports.d.ts +4 -0
- package/dist/esm/provider-registration-runtime.exports.d.ts.map +1 -0
- package/dist/esm/provider-registration-runtime.exports.js +4 -0
- package/dist/esm/provider-registration-runtime.exports.js.map +1 -0
- package/dist/esm/public-runtime/index.d.ts +164 -0
- package/dist/esm/public-runtime/index.d.ts.map +1 -0
- package/dist/esm/public-runtime/index.js +164 -0
- package/dist/esm/public-runtime/index.js.map +1 -0
- package/dist/esm/queue/jobs.shared.resources-config.schemas.d.ts +4 -4
- package/dist/esm/queue/jobs.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/queue/jobs.shared.resources-config.schemas.js +12 -1
- package/dist/esm/queue/jobs.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/queue/jobs.shared.schemas.d.ts +114 -42
- package/dist/esm/queue/jobs.shared.schemas.d.ts.map +1 -1
- package/dist/esm/queue/jobs.shared.schemas.js +114 -12
- package/dist/esm/queue/jobs.shared.schemas.js.map +1 -1
- package/dist/esm/queue/jobs.shared.utils.d.ts +3 -3
- package/dist/esm/queue/jobs.shared.utils.d.ts.map +1 -1
- package/dist/esm/queue/jobs.shared.utils.js +2 -2
- package/dist/esm/queue/jobs.shared.utils.js.map +1 -1
- package/dist/esm/queue/queues.shared.schemas.d.ts +17 -15
- package/dist/esm/queue/queues.shared.schemas.d.ts.map +1 -1
- package/dist/esm/queue/queues.shared.schemas.js +14 -5
- package/dist/esm/queue/queues.shared.schemas.js.map +1 -1
- package/dist/esm/queue/queues.shared.utils.d.ts +137 -6
- package/dist/esm/queue/queues.shared.utils.d.ts.map +1 -1
- package/dist/esm/queue/queues.shared.utils.js +161 -9
- package/dist/esm/queue/queues.shared.utils.js.map +1 -1
- package/dist/esm/queue/rabbitmq-queue-args.shared.d.ts.map +1 -1
- package/dist/esm/queue/rabbitmq-queue-args.shared.js +1 -1
- package/dist/esm/queue/rabbitmq-queue-args.shared.js.map +1 -1
- package/dist/esm/requests/header-keys.shared.d.ts +23 -1
- package/dist/esm/requests/header-keys.shared.d.ts.map +1 -1
- package/dist/esm/requests/header-keys.shared.js +45 -2
- package/dist/esm/requests/header-keys.shared.js.map +1 -1
- package/dist/esm/requests/http-requests.shared.d.ts +1 -0
- package/dist/esm/requests/http-requests.shared.d.ts.map +1 -1
- package/dist/esm/requests/http-requests.shared.js +2 -1
- package/dist/esm/requests/http-requests.shared.js.map +1 -1
- package/dist/esm/requests/manual-controllers-routes-urls.d.ts +189 -5
- package/dist/esm/requests/manual-controllers-routes-urls.d.ts.map +1 -1
- package/dist/esm/requests/manual-controllers-routes-urls.js +255 -6
- package/dist/esm/requests/manual-controllers-routes-urls.js.map +1 -1
- package/dist/esm/requests/rate-limits.shared.schemas.d.ts +75 -24
- package/dist/esm/requests/rate-limits.shared.schemas.d.ts.map +1 -1
- package/dist/esm/requests/rate-limits.shared.schemas.js +80 -18
- package/dist/esm/requests/rate-limits.shared.schemas.js.map +1 -1
- package/dist/esm/requests/websocket.shared.schemas.d.ts +248 -120
- package/dist/esm/requests/websocket.shared.schemas.d.ts.map +1 -1
- package/dist/esm/requests/websocket.shared.schemas.js +92 -2
- package/dist/esm/requests/websocket.shared.schemas.js.map +1 -1
- package/dist/esm/resources/child-operations.shared.schemas.d.ts +128 -23
- package/dist/esm/resources/child-operations.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/child-operations.shared.schemas.js +147 -11
- package/dist/esm/resources/child-operations.shared.schemas.js.map +1 -1
- package/dist/esm/resources/context-policy.shared.schemas.d.ts +4 -4
- package/dist/esm/resources/context-policy.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/context-policy.shared.schemas.js +1 -1
- package/dist/esm/resources/context-policy.shared.schemas.js.map +1 -1
- package/dist/esm/resources/relationship-display.shared.schemas.d.ts +31 -1352
- package/dist/esm/resources/relationship-display.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/relationship-display.shared.schemas.js +13 -161
- package/dist/esm/resources/relationship-display.shared.schemas.js.map +1 -1
- package/dist/esm/resources/resources-config.shared.factory.d.ts +60 -5
- package/dist/esm/resources/resources-config.shared.factory.d.ts.map +1 -1
- package/dist/esm/resources/resources-config.shared.factory.js +1507 -87
- package/dist/esm/resources/resources-config.shared.factory.js.map +1 -1
- package/dist/esm/resources/resources-config.shared.schemas.d.ts +1638 -43
- package/dist/esm/resources/resources-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/resources-config.shared.schemas.js +478 -13
- package/dist/esm/resources/resources-config.shared.schemas.js.map +1 -1
- package/dist/esm/resources/resources-registry.shared.core.definitions.d.ts +3 -3
- package/dist/esm/resources/resources-registry.shared.core.definitions.d.ts.map +1 -1
- package/dist/esm/resources/resources-registry.shared.core.definitions.js +782 -96
- package/dist/esm/resources/resources-registry.shared.core.definitions.js.map +1 -1
- package/dist/esm/resources/resources-relationships.shared.factory.d.ts +37 -7
- package/dist/esm/resources/resources-relationships.shared.factory.d.ts.map +1 -1
- package/dist/esm/resources/resources-relationships.shared.factory.js +76 -24
- package/dist/esm/resources/resources-relationships.shared.factory.js.map +1 -1
- package/dist/esm/resources/resources-serialization.shared.schemas.d.ts +19 -19
- package/dist/esm/resources/resources-serialization.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/resources-serialization.shared.schemas.js +1 -1
- package/dist/esm/resources/resources-serialization.shared.schemas.js.map +1 -1
- package/dist/esm/resources/resources.shared.core.definitions.d.ts +84 -8
- package/dist/esm/resources/resources.shared.core.definitions.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.core.definitions.js +165 -19
- package/dist/esm/resources/resources.shared.core.definitions.js.map +1 -1
- package/dist/esm/resources/resources.shared.schemas.d.ts +582 -602
- package/dist/esm/resources/resources.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.schemas.js +581 -5
- package/dist/esm/resources/resources.shared.schemas.js.map +1 -1
- package/dist/esm/resources/resources.shared.utils.d.ts +363 -15
- package/dist/esm/resources/resources.shared.utils.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.utils.js +569 -16
- package/dist/esm/resources/resources.shared.utils.js.map +1 -1
- package/dist/esm/resources/utils/collection-export.shared.utils.d.ts +65 -0
- package/dist/esm/resources/utils/collection-export.shared.utils.d.ts.map +1 -0
- package/dist/esm/resources/utils/collection-export.shared.utils.js +150 -0
- package/dist/esm/resources/utils/collection-export.shared.utils.js.map +1 -0
- package/dist/esm/resources/utils/composition-cascade-deletability.validation.d.ts +134 -0
- package/dist/esm/resources/utils/composition-cascade-deletability.validation.d.ts.map +1 -0
- package/dist/esm/resources/utils/composition-cascade-deletability.validation.js +167 -0
- package/dist/esm/resources/utils/composition-cascade-deletability.validation.js.map +1 -0
- package/dist/esm/resources/utils/composition-seedability.validation.d.ts +63 -0
- package/dist/esm/resources/utils/composition-seedability.validation.d.ts.map +1 -0
- package/dist/esm/resources/utils/composition-seedability.validation.js +75 -0
- package/dist/esm/resources/utils/composition-seedability.validation.js.map +1 -0
- package/dist/esm/resources/utils/context-addressed-composition-singleton.shared.utils.d.ts +10 -0
- package/dist/esm/resources/utils/context-addressed-composition-singleton.shared.utils.d.ts.map +1 -0
- package/dist/esm/resources/utils/context-addressed-composition-singleton.shared.utils.js +25 -0
- package/dist/esm/resources/utils/context-addressed-composition-singleton.shared.utils.js.map +1 -0
- package/dist/esm/resources/utils/duplicate-relationship-registration.validation.d.ts +111 -0
- package/dist/esm/resources/utils/duplicate-relationship-registration.validation.d.ts.map +1 -0
- package/dist/esm/resources/utils/duplicate-relationship-registration.validation.js +109 -0
- package/dist/esm/resources/utils/duplicate-relationship-registration.validation.js.map +1 -0
- package/dist/esm/resources/utils/persistence-adapter-discrimination.shared.utils.d.ts +52 -0
- package/dist/esm/resources/utils/persistence-adapter-discrimination.shared.utils.d.ts.map +1 -0
- package/dist/esm/resources/utils/persistence-adapter-discrimination.shared.utils.js +57 -0
- package/dist/esm/resources/utils/persistence-adapter-discrimination.shared.utils.js.map +1 -0
- package/dist/esm/resources/utils/repository-dto-builder.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/repository-dto-builder.utils.js +1 -1
- package/dist/esm/resources/utils/repository-dto-builder.utils.js.map +1 -1
- package/dist/esm/resources/utils/required-fk-fillability.validation.d.ts +108 -0
- package/dist/esm/resources/utils/required-fk-fillability.validation.d.ts.map +1 -0
- package/dist/esm/resources/utils/required-fk-fillability.validation.js +186 -0
- package/dist/esm/resources/utils/required-fk-fillability.validation.js.map +1 -0
- package/dist/esm/resources/utils/resource-operation-type-guards.utils.d.ts +107 -3
- package/dist/esm/resources/utils/resource-operation-type-guards.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-operation-type-guards.utils.js +133 -2
- package/dist/esm/resources/utils/resource-operation-type-guards.utils.js.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.factory.d.ts +39 -31
- package/dist/esm/resources/utils/resource-polymorphism.factory.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.factory.js +9 -9
- package/dist/esm/resources/utils/resource-polymorphism.factory.js.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.relationships.d.ts +7 -7
- package/dist/esm/resources/utils/resource-polymorphism.relationships.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.relationships.js +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.relationships.js.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.schemas.d.ts +139 -5
- package/dist/esm/resources/utils/resource-polymorphism.schemas.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.schemas.js +301 -3
- package/dist/esm/resources/utils/resource-polymorphism.schemas.js.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.utils.d.ts +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.utils.js +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.utils.js.map +1 -1
- package/dist/esm/resources/utils/resource-subtree.utils.d.ts +1 -1
- package/dist/esm/resources/utils/resource-subtree.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-subtree.utils.js +1 -1
- package/dist/esm/resources/utils/resource-subtree.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-context-needs.utils.d.ts +1 -1
- package/dist/esm/resources/utils/resources-config-context-needs.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-context-needs.utils.js +1 -1
- package/dist/esm/resources/utils/resources-config-context-needs.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-naming.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-naming.utils.js +1 -1
- package/dist/esm/resources/utils/resources-config-naming.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.d.ts +256 -39
- package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.js +898 -233
- package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.path.utils.d.ts +16 -6
- package/dist/esm/resources/utils/resources-config-operations.path.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.path.utils.js +35 -10
- package/dist/esm/resources/utils/resources-config-operations.path.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.d.ts +120 -20
- package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.js +394 -81
- package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.utils.d.ts +2 -2
- package/dist/esm/resources/utils/resources-config-operations.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.utils.js +1 -1
- package/dist/esm/resources/utils/resources-config-operations.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-serialization.utils.d.ts +77 -2
- package/dist/esm/resources/utils/resources-serialization.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-serialization.utils.js +80 -1
- package/dist/esm/resources/utils/resources-serialization.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-summary.utils.d.ts +1 -1
- package/dist/esm/resources/utils/resources-summary.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-summary.utils.js +1 -1
- package/dist/esm/resources/utils/resources-summary.utils.js.map +1 -1
- package/dist/esm/resources/utils/schema-family-builder.utils.d.ts +21 -3
- package/dist/esm/resources/utils/schema-family-builder.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/schema-family-builder.utils.js +7 -1
- package/dist/esm/resources/utils/schema-family-builder.utils.js.map +1 -1
- package/dist/esm/resources/utils/schema-type-inference.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/schema-type-inference.utils.js +1 -1
- package/dist/esm/resources/utils/schema-type-inference.utils.js.map +1 -1
- package/dist/esm/resources/utils/schema-type-utils.d.ts +1 -1
- package/dist/esm/resources/utils/schema-type-utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/schema-type-utils.js +1 -1
- package/dist/esm/resources/utils/schema-type-utils.js.map +1 -1
- package/dist/esm/resources/utils/schema-variant-resolver.utils.d.ts +1 -1
- package/dist/esm/resources/utils/schema-variant-resolver.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/schema-variant-resolver.utils.js +1 -1
- package/dist/esm/resources/utils/schema-variant-resolver.utils.js.map +1 -1
- package/dist/esm/resources/utils/shared-persistence-collection.utils.d.ts +203 -0
- package/dist/esm/resources/utils/shared-persistence-collection.utils.d.ts.map +1 -0
- package/dist/esm/resources/utils/shared-persistence-collection.utils.js +284 -0
- package/dist/esm/resources/utils/shared-persistence-collection.utils.js.map +1 -0
- package/dist/esm/resources/utils/templatable-file-fields.shared.utils.d.ts +25 -0
- package/dist/esm/resources/utils/templatable-file-fields.shared.utils.d.ts.map +1 -0
- package/dist/esm/resources/utils/templatable-file-fields.shared.utils.js +322 -0
- package/dist/esm/resources/utils/templatable-file-fields.shared.utils.js.map +1 -0
- package/dist/esm/runtime/domain-module.shared.definitions.d.ts +32 -10
- package/dist/esm/runtime/domain-module.shared.definitions.d.ts.map +1 -1
- package/dist/esm/runtime/domain-module.shared.definitions.js +3 -2
- package/dist/esm/runtime/domain-module.shared.definitions.js.map +1 -1
- package/dist/esm/runtime/execution-context.shared.schemas.d.ts +93 -9
- package/dist/esm/runtime/execution-context.shared.schemas.d.ts.map +1 -1
- package/dist/esm/runtime/execution-context.shared.schemas.js +122 -7
- package/dist/esm/runtime/execution-context.shared.schemas.js.map +1 -1
- package/dist/esm/runtime/runtime.shared.schemas.d.ts.map +1 -1
- package/dist/esm/runtime/runtime.shared.schemas.js +1 -1
- package/dist/esm/runtime/runtime.shared.schemas.js.map +1 -1
- package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.d.ts +14 -11
- package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.js +65 -2
- package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.d.ts +14 -11
- package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.js +162 -1
- package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/api-keys/api-keys.shared.schemas.d.ts +79 -29
- package/dist/esm/security/api-keys/api-keys.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/api-keys/api-keys.shared.schemas.js +87 -6
- package/dist/esm/security/api-keys/api-keys.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/anonymous-session/anonymous-session.shared.contract.d.ts +185 -0
- package/dist/esm/security/authentications/anonymous-session/anonymous-session.shared.contract.d.ts.map +1 -0
- package/dist/esm/security/authentications/anonymous-session/anonymous-session.shared.contract.js +198 -0
- package/dist/esm/security/authentications/anonymous-session/anonymous-session.shared.contract.js.map +1 -0
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.d.ts +307 -149
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.js +177 -27
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.js.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.schemas.d.ts +64 -8
- package/dist/esm/security/authentications/authentication.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.schemas.js +56 -9
- package/dist/esm/security/authentications/authentication.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.utils.d.ts +3 -3
- package/dist/esm/security/authentications/authentication.shared.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.utils.js +1 -1
- package/dist/esm/security/authentications/authentication.shared.utils.js.map +1 -1
- package/dist/esm/security/authentications/consumable-token.shared.schemas.d.ts +103 -5
- package/dist/esm/security/authentications/consumable-token.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/consumable-token.shared.schemas.js +31 -1
- package/dist/esm/security/authentications/consumable-token.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.d.ts +278 -0
- package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.d.ts.map +1 -0
- package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.js +335 -0
- package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.js.map +1 -0
- package/dist/esm/security/authentications/password-reset.shared.dto.schemas.d.ts +6 -6
- package/dist/esm/security/authentications/password-reset.shared.dto.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/password-reset.shared.dto.schemas.js +11 -4
- package/dist/esm/security/authentications/password-reset.shared.dto.schemas.js.map +1 -1
- package/dist/esm/security/authentications/registration.shared.dto.schemas.d.ts +51 -18
- package/dist/esm/security/authentications/registration.shared.dto.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/registration.shared.dto.schemas.js +70 -13
- package/dist/esm/security/authentications/registration.shared.dto.schemas.js.map +1 -1
- package/dist/esm/security/authentications/same-origin-redirect-path.shared.d.ts +69 -0
- package/dist/esm/security/authentications/same-origin-redirect-path.shared.d.ts.map +1 -0
- package/dist/esm/security/authentications/same-origin-redirect-path.shared.js +93 -0
- package/dist/esm/security/authentications/same-origin-redirect-path.shared.js.map +1 -0
- package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.d.ts +91 -0
- package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.d.ts.map +1 -0
- package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.js +91 -0
- package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.js.map +1 -0
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.d.ts +2 -9
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.js +49 -33
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.d.ts +41 -14
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.js +158 -5
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.d.ts +21 -9
- package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.js +92 -18
- package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.d.ts +11 -10
- package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.js +29 -7
- package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.d.ts +12 -5
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.js +81 -5
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.schemas.d.ts +17 -5
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.schemas.js +29 -5
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.d.ts +2 -9
- package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.js +46 -33
- package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.d.ts +34 -9
- package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.js +47 -3
- package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.d.ts +2 -17
- package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.js +55 -53
- package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/sso/sso-config.shared.schemas.d.ts +37 -37
- package/dist/esm/security/authentications/sso/sso-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/sso/sso-config.shared.schemas.js +53 -13
- package/dist/esm/security/authentications/sso/sso-config.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.d.ts +79 -7
- package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.js +157 -14
- package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.d.ts +113 -118
- package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.js +111 -49
- package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.d.ts +57 -0
- package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.d.ts.map +1 -0
- package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.js +58 -0
- package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.js.map +1 -0
- package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.d.ts +35 -0
- package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.js +252 -0
- package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.d.ts +171 -0
- package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.d.ts.map +1 -0
- package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.js +239 -0
- package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.js.map +1 -0
- package/dist/esm/security/authorizations/roles.shared.defaults.d.ts +1 -1
- package/dist/esm/security/authorizations/roles.shared.defaults.d.ts.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.defaults.js +6 -1
- package/dist/esm/security/authorizations/roles.shared.defaults.js.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.d.ts +12 -3
- package/dist/esm/security/authorizations/roles.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.js +15 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.utils.d.ts +133 -0
- package/dist/esm/security/authorizations/roles.shared.utils.d.ts.map +1 -0
- package/dist/esm/security/authorizations/roles.shared.utils.js +218 -0
- package/dist/esm/security/authorizations/roles.shared.utils.js.map +1 -0
- package/dist/esm/security/crypto-keys/crypto-keys.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/crypto-keys/crypto-keys.shared.schemas.js +1 -1
- package/dist/esm/security/crypto-keys/crypto-keys.shared.schemas.js.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.d.ts +47 -0
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.js +228 -0
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.d.ts +46 -0
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.js +365 -0
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.d.ts +192 -0
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.d.ts.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.js +401 -0
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.js.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.d.ts +30 -0
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.js +83 -0
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.d.ts +29 -0
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.d.ts.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.js +53 -0
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.js.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-resource-server.shared.schemas.d.ts +117 -0
- package/dist/esm/security/oauth-clients/oauth-resource-server.shared.schemas.d.ts.map +1 -0
- package/dist/esm/security/oauth-clients/oauth-resource-server.shared.schemas.js +180 -0
- package/dist/esm/security/oauth-clients/oauth-resource-server.shared.schemas.js.map +1 -0
- package/dist/esm/testing/resource-config-builders.d.ts +4 -4
- package/dist/esm/testing/resource-config-builders.d.ts.map +1 -1
- package/dist/esm/testing/resource-config-builders.js +9 -2
- package/dist/esm/testing/resource-config-builders.js.map +1 -1
- package/dist/esm/testing.d.ts +1 -1
- package/dist/esm/testing.d.ts.map +1 -1
- package/dist/esm/testing.js +1 -1
- package/dist/esm/testing.js.map +1 -1
- package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.d.ts +76 -0
- package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.d.ts.map +1 -0
- package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.js +72 -0
- package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.js.map +1 -0
- package/dist/esm/users/anonymous-users.shared.resources-config.schemas.d.ts +28 -17
- package/dist/esm/users/anonymous-users.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/anonymous-users.shared.resources-config.schemas.js +43 -4
- package/dist/esm/users/anonymous-users.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/anonymous-users.shared.schema.d.ts +19 -12
- package/dist/esm/users/anonymous-users.shared.schema.d.ts.map +1 -1
- package/dist/esm/users/anonymous-users.shared.schema.js +68 -4
- package/dist/esm/users/anonymous-users.shared.schema.js.map +1 -1
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.d.ts +52 -0
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.js +153 -0
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/users/inbound-contacts.shared.schemas.d.ts +47 -17
- package/dist/esm/users/inbound-contacts.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/inbound-contacts.shared.schemas.js +123 -9
- package/dist/esm/users/inbound-contacts.shared.schemas.js.map +1 -1
- package/dist/esm/users/user-credentials.shared.resources-config.schemas.d.ts +12 -12
- package/dist/esm/users/user-credentials.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-credentials.shared.resources-config.schemas.js +11 -1
- package/dist/esm/users/user-credentials.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-credentials.shared.schemas.d.ts +15 -10
- package/dist/esm/users/user-credentials.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-credentials.shared.schemas.js +53 -9
- package/dist/esm/users/user-credentials.shared.schemas.js.map +1 -1
- package/dist/esm/users/user-identity-links.shared.resources-config.schemas.d.ts +13 -11
- package/dist/esm/users/user-identity-links.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-identity-links.shared.resources-config.schemas.js +24 -1
- package/dist/esm/users/user-identity-links.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-identity-links.shared.schemas.d.ts +22 -19
- package/dist/esm/users/user-identity-links.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-identity-links.shared.schemas.js +107 -23
- package/dist/esm/users/user-identity-links.shared.schemas.js.map +1 -1
- package/dist/esm/users/user-preferences-reset.shared.utils.d.ts +78 -0
- package/dist/esm/users/user-preferences-reset.shared.utils.d.ts.map +1 -0
- package/dist/esm/users/user-preferences-reset.shared.utils.js +98 -0
- package/dist/esm/users/user-preferences-reset.shared.utils.js.map +1 -0
- package/dist/esm/users/user-preferences.shared.resources-config.schemas.d.ts +31 -61
- package/dist/esm/users/user-preferences.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-preferences.shared.resources-config.schemas.js +34 -203
- package/dist/esm/users/user-preferences.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-profiles.shared.resources-config.schemas.d.ts +13 -14
- package/dist/esm/users/user-profiles.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-profiles.shared.resources-config.schemas.js +66 -31
- package/dist/esm/users/user-profiles.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.d.ts +33 -60
- package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.js +49 -175
- package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.d.ts +13 -21
- package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.js +12 -119
- package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-self.shared.resources-config.schemas.d.ts +12 -16
- package/dist/esm/users/user-self.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-self.shared.resources-config.schemas.js +263 -115
- package/dist/esm/users/user-self.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/users.shared.resources-config.schemas.d.ts +13 -16
- package/dist/esm/users/users.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/users.shared.resources-config.schemas.js +376 -141
- package/dist/esm/users/users.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/users.shared.schemas.d.ts +110 -108
- package/dist/esm/users/users.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/users.shared.schemas.js +215 -19
- package/dist/esm/users/users.shared.schemas.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +54 -27
- package/dist/esm/compliance/compliance-framework/compliance-frameworks.shared.schemas.d.ts +0 -37
- package/dist/esm/compliance/compliance-framework/compliance-frameworks.shared.schemas.d.ts.map +0 -1
- package/dist/esm/compliance/compliance-framework/compliance-frameworks.shared.schemas.js +0 -38
- package/dist/esm/compliance/compliance-framework/compliance-frameworks.shared.schemas.js.map +0 -1
- package/dist/esm/external-providers/feature-bindings-policy.shared.schemas.d.ts +0 -27
- package/dist/esm/external-providers/feature-bindings-policy.shared.schemas.d.ts.map +0 -1
- package/dist/esm/external-providers/feature-bindings-policy.shared.schemas.js +0 -35
- package/dist/esm/external-providers/feature-bindings-policy.shared.schemas.js.map +0 -1
- package/dist/esm/external-providers/feature-mapping.shared.schemas.d.ts +0 -80
- package/dist/esm/external-providers/feature-mapping.shared.schemas.d.ts.map +0 -1
- package/dist/esm/external-providers/feature-mapping.shared.schemas.js +0 -159
- package/dist/esm/external-providers/feature-mapping.shared.schemas.js.map +0 -1
- package/dist/esm/external-providers/wildo-features.shared.schemas.d.ts +0 -102
- package/dist/esm/external-providers/wildo-features.shared.schemas.d.ts.map +0 -1
- package/dist/esm/external-providers/wildo-features.shared.schemas.js +0 -124
- package/dist/esm/external-providers/wildo-features.shared.schemas.js.map +0 -1
- package/dist/esm/features/platform-capability-definitions.shared.d.ts +0 -50
- package/dist/esm/features/platform-capability-definitions.shared.d.ts.map +0 -1
- package/dist/esm/features/platform-capability-definitions.shared.js +0 -30
- package/dist/esm/features/platform-capability-definitions.shared.js.map +0 -1
- package/dist/esm/flows-actors/agents-context.shared.schemas.d.ts +0 -181
- package/dist/esm/flows-actors/agents-context.shared.schemas.d.ts.map +0 -1
- package/dist/esm/flows-actors/agents-context.shared.schemas.js +0 -116
- package/dist/esm/flows-actors/agents-context.shared.schemas.js.map +0 -1
- package/dist/esm/notifications/email/email-header-footer-template.shared.resources-config.schemas.d.ts +0 -39
- package/dist/esm/notifications/email/email-header-footer-template.shared.resources-config.schemas.d.ts.map +0 -1
- package/dist/esm/notifications/email/email-header-footer-template.shared.resources-config.schemas.js +0 -113
- package/dist/esm/notifications/email/email-header-footer-template.shared.resources-config.schemas.js.map +0 -1
- package/dist/esm/notifications/email/email-header-footer-template.shared.schemas.d.ts +0 -63
- package/dist/esm/notifications/email/email-header-footer-template.shared.schemas.d.ts.map +0 -1
- package/dist/esm/notifications/email/email-header-footer-template.shared.schemas.js +0 -110
- package/dist/esm/notifications/email/email-header-footer-template.shared.schemas.js.map +0 -1
- package/dist/esm/notifications/email/email-template.shared.resources-config.schemas.d.ts +0 -62
- package/dist/esm/notifications/email/email-template.shared.resources-config.schemas.d.ts.map +0 -1
- package/dist/esm/notifications/email/email-template.shared.resources-config.schemas.js +0 -112
- package/dist/esm/notifications/email/email-template.shared.resources-config.schemas.js.map +0 -1
- package/dist/esm/notifications/email/email-template.shared.schemas.d.ts +0 -162
- package/dist/esm/notifications/email/email-template.shared.schemas.d.ts.map +0 -1
- package/dist/esm/notifications/email/email-template.shared.schemas.js +0 -189
- package/dist/esm/notifications/email/email-template.shared.schemas.js.map +0 -1
- package/dist/esm/organizations/organization-member-invitations.shared.resources-config.schemas.d.ts +0 -37
- package/dist/esm/organizations/organization-member-invitations.shared.resources-config.schemas.d.ts.map +0 -1
- package/dist/esm/organizations/organization-member-invitations.shared.resources-config.schemas.js +0 -207
- package/dist/esm/organizations/organization-member-invitations.shared.resources-config.schemas.js.map +0 -1
- package/dist/esm/resources/testing/SchemaDecoratorTestUtils.d.ts +0 -91
- package/dist/esm/resources/testing/SchemaDecoratorTestUtils.d.ts.map +0 -1
- package/dist/esm/resources/testing/SchemaDecoratorTestUtils.js +0 -325
- package/dist/esm/resources/testing/SchemaDecoratorTestUtils.js.map +0 -1
- package/dist/esm/runtime/companion-artifact-placement.shared.definitions.d.ts.map +0 -1
- package/dist/esm/runtime/companion-artifact-placement.shared.definitions.js.map +0 -1
- package/dist/esm/security/authentications/policy/auth-policy.shared.resources-config.schemas.d.ts +0 -10
- package/dist/esm/security/authentications/policy/auth-policy.shared.resources-config.schemas.d.ts.map +0 -1
- package/dist/esm/security/authentications/policy/auth-policy.shared.resources-config.schemas.js +0 -52
- package/dist/esm/security/authentications/policy/auth-policy.shared.resources-config.schemas.js.map +0 -1
- package/dist/esm/security/authentications/policy/auth-policy.shared.schemas.d.ts +0 -52
- package/dist/esm/security/authentications/policy/auth-policy.shared.schemas.d.ts.map +0 -1
- package/dist/esm/security/authentications/policy/auth-policy.shared.schemas.js +0 -40
- package/dist/esm/security/authentications/policy/auth-policy.shared.schemas.js.map +0 -1
- package/dist/esm/testing/schema-decorator-utils.d.ts +0 -91
- package/dist/esm/testing/schema-decorator-utils.d.ts.map +0 -1
- package/dist/esm/testing/schema-decorator-utils.js +0 -325
- package/dist/esm/testing/schema-decorator-utils.js.map +0 -1
|
@@ -10,8 +10,59 @@
|
|
|
10
10
|
* @see polymorphic-scope-approach-A-expansion.md — Phase 1
|
|
11
11
|
*/
|
|
12
12
|
import { z } from 'zod';
|
|
13
|
-
import { getZodObjectShape, addDiscriminator, getPolymorphicFkVariants } from '@wildo-ai/zod-decorators';
|
|
13
|
+
import { getZodObjectShape, addDiscriminator, getPolymorphicFkVariants, addDecorators, ZodDecorator, SCHEMA_METADATA, getFieldMetadata } from '@wildo-ai/zod-decorators';
|
|
14
14
|
import { ResourcePolymorphismUtils } from './resource-polymorphism.utils.js';
|
|
15
|
+
/** @wildo_source:part:end saas.models.polymorphism.variant-definition */
|
|
16
|
+
/**
|
|
17
|
+
* @wildo_source:part:start saas.models.polymorphism.optout-business-key facet:layer:shared facet:family:polymorphism
|
|
18
|
+
*
|
|
19
|
+
* Opt out the auto-default that marks the injected `parentFieldIdentifier`
|
|
20
|
+
* as the business key on every `isPrimaryScope: true` variant.
|
|
21
|
+
*
|
|
22
|
+
* Use this on **non-singleton** polymorphic resources (e.g., delivery logs,
|
|
23
|
+
* SSO connections, SIEM DLQ rows, SCIM tokens, billing usage records, credit
|
|
24
|
+
* pools, subscriptions, invoice refs) where the parent FK alone does NOT
|
|
25
|
+
* uniquely identify a row in the collection. Without this opt-out, the
|
|
26
|
+
* polymorphism engine auto-marks the injected scope FK (`organizationId` /
|
|
27
|
+
* `applicationId` / etc.) as the business key. On a multi-row resource that is
|
|
28
|
+
* now TWO bugs, not one:
|
|
29
|
+
* 1. any `upsertByBusinessKey()` call routes every row in the scope onto a
|
|
30
|
+
* single document (silent data corruption); AND
|
|
31
|
+
* 2. the single-field business key is ALSO stamped `.isUnique()` (the
|
|
32
|
+
* singleton ⇒ unique-index convention), so the SECOND row per scope is
|
|
33
|
+
* rejected at insert with a duplicate-key error — a hard, immediate
|
|
34
|
+
* failure. The resource is NOT a singleton, so both are wrong.
|
|
35
|
+
* Opt out and both vanish: the scope FK stays a plain non-unique index with no
|
|
36
|
+
* business-key marker.
|
|
37
|
+
*
|
|
38
|
+
* Contract:
|
|
39
|
+
*
|
|
40
|
+
* - Signature is **per-variant**: `(variantDef) => variantDef`. Apply it
|
|
41
|
+
* to a whole variant array via the standard `Array.prototype.map`:
|
|
42
|
+
* `[...AUTH_SCOPE_VARIANTS].map(optOutPolymorphicAutoBusinessKey)`.
|
|
43
|
+
* Direct per-variant calls are also fine — useful when only one
|
|
44
|
+
* variant in a heterogeneous array needs the opt-out.
|
|
45
|
+
* - The result is a fresh `PolymorphicVariantDefinition` (or array
|
|
46
|
+
* thereof) with `businessKeyFields: []` per variant (the canonical
|
|
47
|
+
* "explicit empty" opt-out — the empty-array branch of the resolution rule
|
|
48
|
+
* documented on `PolymorphicVariantDefinition.businessKeyFields`).
|
|
49
|
+
* - **The helper UNCONDITIONALLY overwrites any pre-existing
|
|
50
|
+
* `businessKeyFields` on the variant** — that is the entire point. If
|
|
51
|
+
* you need to preserve / extend an existing composite key, do NOT pipe
|
|
52
|
+
* through this helper; declare `businessKeyFields` inline on the
|
|
53
|
+
* variant instead.
|
|
54
|
+
*
|
|
55
|
+
* Why a helper instead of inline `.map(v => ({ ...v, businessKeyFields: [] }))`:
|
|
56
|
+
*
|
|
57
|
+
* - Keeps the call-site one-line and self-documenting (the helper name IS
|
|
58
|
+
* the rationale).
|
|
59
|
+
* - Centralizes the `businessKeyFields: []` literal so a future rename or
|
|
60
|
+
* semantic change has one source of truth, not eight inlined copies.
|
|
61
|
+
* - Discoverable via `rg optOutPolymorphicAutoBusinessKey`.
|
|
62
|
+
*/
|
|
63
|
+
export function optOutPolymorphicAutoBusinessKey(variantDef) {
|
|
64
|
+
return { ...variantDef, businessKeyFields: [] };
|
|
65
|
+
}
|
|
15
66
|
// =============================================================================
|
|
16
67
|
// TYPE GUARDS
|
|
17
68
|
// =============================================================================
|
|
@@ -116,6 +167,11 @@ export function declarePolymorphicSchemas(config) {
|
|
|
116
167
|
const parentFkField = z.string().min(1).isForeignKey().isDBIndexed();
|
|
117
168
|
// Compute FK renames for this specific variant
|
|
118
169
|
const fkRenamesForVariant = getFkRenamesForVariant(polymorphicFkRenames, variantDef.parentResourceType);
|
|
170
|
+
// Compute the business-key field names for this variant (A4 hybrid —
|
|
171
|
+
// explicit override wins; isPrimaryScope=true auto-defaults to the
|
|
172
|
+
// injected parent FK; otherwise no marking). See JSDoc on
|
|
173
|
+
// `PolymorphicVariantDefinition.businessKeyFields`.
|
|
174
|
+
const businessKeyFieldNames = computeBusinessKeyFieldNames(variantDef);
|
|
119
175
|
// Extend the schema with the parent FK field
|
|
120
176
|
let variantSchema;
|
|
121
177
|
let variantSchemaFamily;
|
|
@@ -127,6 +183,7 @@ export function declarePolymorphicSchemas(config) {
|
|
|
127
183
|
[variantDef.parentFieldIdentifier]: parentFkField,
|
|
128
184
|
});
|
|
129
185
|
extendedBase = applyFkRenames(extendedBase, fkRenamesForVariant);
|
|
186
|
+
extendedBase = applyBusinessKeyMarkers(extendedBase, businessKeyFieldNames, baseResourceType, variantDef.parentResourceType);
|
|
130
187
|
// Rebuild each variant schema with the parent FK injected + FK renames
|
|
131
188
|
const extendedVariants = {};
|
|
132
189
|
for (const [key, variantSchemaEntry] of Object.entries(family.variants)) {
|
|
@@ -134,6 +191,7 @@ export function declarePolymorphicSchemas(config) {
|
|
|
134
191
|
[variantDef.parentFieldIdentifier]: parentFkField,
|
|
135
192
|
});
|
|
136
193
|
extended = applyFkRenames(extended, fkRenamesForVariant);
|
|
194
|
+
extended = applyBusinessKeyMarkers(extended, businessKeyFieldNames, baseResourceType, variantDef.parentResourceType);
|
|
137
195
|
extendedVariants[key] = extended;
|
|
138
196
|
}
|
|
139
197
|
// Rebuild the discriminated union with parent FK in all branches
|
|
@@ -176,11 +234,12 @@ export function declarePolymorphicSchemas(config) {
|
|
|
176
234
|
variantSchema = union;
|
|
177
235
|
}
|
|
178
236
|
else {
|
|
179
|
-
// Plain ZodObject — simple extend + FK renames
|
|
237
|
+
// Plain ZodObject — simple extend + FK renames + business-key markers
|
|
180
238
|
let extended = rootZodObject.extend({
|
|
181
239
|
[variantDef.parentFieldIdentifier]: parentFkField,
|
|
182
240
|
});
|
|
183
241
|
extended = applyFkRenames(extended, fkRenamesForVariant);
|
|
242
|
+
extended = applyBusinessKeyMarkers(extended, businessKeyFieldNames, baseResourceType, variantDef.parentResourceType);
|
|
184
243
|
variantSchema = extended;
|
|
185
244
|
}
|
|
186
245
|
variantsMap.set(variantDef.parentResourceType, {
|
|
@@ -244,6 +303,51 @@ function getFkRenamesForVariant(renameMap, parentResourceType) {
|
|
|
244
303
|
}
|
|
245
304
|
return result;
|
|
246
305
|
}
|
|
306
|
+
/**
|
|
307
|
+
* Compute the per-variant renamed schema map for a polymorphic base.
|
|
308
|
+
*
|
|
309
|
+
* Exported as the canonical bridge that callers OUTSIDE this module
|
|
310
|
+
* (notably the frontend lib's `createPolymorphicFrontendPreset`, which
|
|
311
|
+
* threads a `FRONTEND_SCHEMA_KEY` per variant for `z_clone`-style UI
|
|
312
|
+
* mutations) use to derive per-variant schemas without having to reach
|
|
313
|
+
* into the private rename helpers.
|
|
314
|
+
*
|
|
315
|
+
* Given a base schema and an array of variant declarations, returns
|
|
316
|
+
* `Map<parentResourceType, ZodObject>` where each value is the base
|
|
317
|
+
* schema with `polymorphicVariants`-marked FK fields renamed to their
|
|
318
|
+
* variant-specific names (e.g. `billingAccountId` →
|
|
319
|
+
* `organizationBillingAccountId` for the ORGANIZATIONS variant).
|
|
320
|
+
*
|
|
321
|
+
* Why this matters: the polymorphic resource factory ALREADY applies
|
|
322
|
+
* these renames to the runtime variant schemas (see `applyFkRenames`
|
|
323
|
+
* call sites above). But callers that take the BASE schema as input
|
|
324
|
+
* and attach it to per-variant artifacts (e.g. the frontend's UI
|
|
325
|
+
* behavior `FRONTEND_SCHEMA_KEY`) bypass the rename and end up
|
|
326
|
+
* replacing the variant's renamed `mainSchema` with the base's
|
|
327
|
+
* un-renamed shape — breaking the registry's FK→parent map. Use this
|
|
328
|
+
* helper to keep that path aligned with the resource factory's
|
|
329
|
+
* rename semantics.
|
|
330
|
+
*
|
|
331
|
+
* `variants` only needs `parentResourceType`; any extra properties on
|
|
332
|
+
* the input objects are ignored. This lets frontend callers pass
|
|
333
|
+
* `PolymorphicFrontendVariant`-shaped values directly without
|
|
334
|
+
* reaching for the backend's full `PolymorphicVariantDefinition`.
|
|
335
|
+
*/
|
|
336
|
+
export function computePolymorphicVariantSchemas(baseSchema, variants) {
|
|
337
|
+
const baseShape = getZodObjectShape(baseSchema);
|
|
338
|
+
// Synthesize minimal variantDefinitions for the renames computer — only
|
|
339
|
+
// `parentResourceType` is read.
|
|
340
|
+
const minimalDefs = variants.map(({ parentResourceType }) => ({
|
|
341
|
+
parentResourceType,
|
|
342
|
+
}));
|
|
343
|
+
const renameMap = computePolymorphicFkRenames(baseShape, minimalDefs);
|
|
344
|
+
const result = new Map();
|
|
345
|
+
for (const { parentResourceType } of variants) {
|
|
346
|
+
const renames = getFkRenamesForVariant(renameMap, parentResourceType);
|
|
347
|
+
result.set(parentResourceType, applyFkRenames(baseSchema, renames));
|
|
348
|
+
}
|
|
349
|
+
return result;
|
|
350
|
+
}
|
|
247
351
|
/**
|
|
248
352
|
* Apply FK renames to a ZodObject: remove original field, add derived field with same schema.
|
|
249
353
|
*/
|
|
@@ -264,4 +368,198 @@ function applyFkRenames(schema, renames) {
|
|
|
264
368
|
}
|
|
265
369
|
return z.object(newShape);
|
|
266
370
|
}
|
|
267
|
-
|
|
371
|
+
// =============================================================================
|
|
372
|
+
// BUSINESS-KEY MARKER HELPERS (A4 hybrid — Decision A of
|
|
373
|
+
// `.cursor/plans/polymorphic-singleton-business-key-support.md`)
|
|
374
|
+
// =============================================================================
|
|
375
|
+
/**
|
|
376
|
+
* Resolve the per-variant business-key field names to mark with
|
|
377
|
+
* `.isBusinessKey()` on the post-injection / post-rename variant shape.
|
|
378
|
+
*
|
|
379
|
+
* Resolution rule (A4 hybrid):
|
|
380
|
+
*
|
|
381
|
+
* 1. Explicit `businessKeyFields` (including `[]` to opt out) → use as-is.
|
|
382
|
+
* 2. `isPrimaryScope: true` AND `businessKeyFields` omitted → auto-default
|
|
383
|
+
* to `[parentFieldIdentifier]` (the canonical singleton-per-scope case).
|
|
384
|
+
* 3. Otherwise → empty array (preserves pre-A4 behaviour for
|
|
385
|
+
* non-singleton polymorphism — no business-key marking applied).
|
|
386
|
+
*
|
|
387
|
+
* Pure function — no schema mutation, no metadata access. Always returns a
|
|
388
|
+
* fresh array (never the caller's `businessKeyFields` reference) so a later
|
|
389
|
+
* mutation by the consumer cannot accidentally rewrite the variant
|
|
390
|
+
* declaration.
|
|
391
|
+
*/
|
|
392
|
+
function computeBusinessKeyFieldNames(variantDef) {
|
|
393
|
+
if (variantDef.businessKeyFields !== undefined) {
|
|
394
|
+
return [...variantDef.businessKeyFields];
|
|
395
|
+
}
|
|
396
|
+
if (variantDef.isPrimaryScope) {
|
|
397
|
+
return [variantDef.parentFieldIdentifier];
|
|
398
|
+
}
|
|
399
|
+
return [];
|
|
400
|
+
}
|
|
401
|
+
/**
|
|
402
|
+
* Minimal prototype-based field clone, designed exclusively for the
|
|
403
|
+
* `addDecorators(clone, [IS_BUSINESS_KEY])` flow inside
|
|
404
|
+
* `applyBusinessKeyMarkers`. NOT a general-purpose schema clone — see
|
|
405
|
+
* `z_clone` (in `@wildo-ai/zod-decorators`) for the full-featured version
|
|
406
|
+
* that deep-clones metadata, reruns `addChainableMethods`, and is the
|
|
407
|
+
* right choice when you need an INDEPENDENT leaf-schema reusable across
|
|
408
|
+
* resources.
|
|
409
|
+
*
|
|
410
|
+
* **Why a separate helper rather than `z_clone`:**
|
|
411
|
+
*
|
|
412
|
+
* - `z_clone` deep-clones metadata and reruns `addChainableMethods`. For
|
|
413
|
+
* the polymorphism engine — which clones a base-shape field once per
|
|
414
|
+
* variant per call to `declarePolymorphicSchemas` — that's more work
|
|
415
|
+
* than necessary, and reruns of `addChainableMethods` on schemas that
|
|
416
|
+
* already have chainable methods are a net no-op (defends via
|
|
417
|
+
* `__metadataWrapped` / `hasOwnProperty` checks).
|
|
418
|
+
* - This helper keeps the contract MINIMAL and INTENTIONAL: only the
|
|
419
|
+
* `SCHEMA_METADATA` Symbol property is given an own-property override
|
|
420
|
+
* (a shallow copy of the source's metadata bag); everything else
|
|
421
|
+
* (Zod 4's `_zod` internals, the prototype chain, instance methods, any
|
|
422
|
+
* future Symbol-keyed framework state) is inherited by setting the
|
|
423
|
+
* source schema as the clone's prototype. The result is structurally
|
|
424
|
+
* indistinguishable from the source for Zod's own validation
|
|
425
|
+
* (`isSchema(clone)` is `true` because `_zod` resolves via prototype
|
|
426
|
+
* lookup), so the clone is safe to re-enter `z.object({...})` as a
|
|
427
|
+
* field — but every metadata mutation lands on the clone alone.
|
|
428
|
+
*
|
|
429
|
+
* **Why a shallow copy of the metadata bag is sufficient HERE:**
|
|
430
|
+
*
|
|
431
|
+
* `applySingleDecorator` mutates only the top-level entries on the bag
|
|
432
|
+
* (`bag[ZodDecorator.IS_BUSINESS_KEY] = true`, etc.). Nested decorator
|
|
433
|
+
* payloads (e.g., `bag[FOREIGN_KEY_SPEC]`) are read-then-deep-merged into
|
|
434
|
+
* a NEW object before being assigned back, so the existing nested
|
|
435
|
+
* references are never mutated in place. For our single-decorator
|
|
436
|
+
* `addDecorators(clone, [IS_BUSINESS_KEY])` call, a shallow copy of the
|
|
437
|
+
* top-level bag is therefore enough to fully isolate the source.
|
|
438
|
+
*
|
|
439
|
+
* **Symbol-keyed properties OTHER than `SCHEMA_METADATA`** (Plan 1 deep-
|
|
440
|
+
* review L-3, 2026-04-14): only `SCHEMA_METADATA` is shallow-copied as
|
|
441
|
+
* an own property. If `addDecorators` ever evolves to mutate a different
|
|
442
|
+
* Symbol-keyed property on the schema instance, this helper MUST be
|
|
443
|
+
* updated to also override that property — otherwise the first mutation
|
|
444
|
+
* on the clone would create an own property on the clone (correct) but
|
|
445
|
+
* later reads on the source would observe stale state (the source's
|
|
446
|
+
* Symbol value never changes). To future-proof, either (a) iterate
|
|
447
|
+
* `Object.getOwnPropertySymbols(value)` and shallow-copy them all, or
|
|
448
|
+
* (b) add a `addDecorators`-side invariant test that asserts
|
|
449
|
+
* `SCHEMA_METADATA` is the only Symbol-keyed mutation surface.
|
|
450
|
+
*
|
|
451
|
+
* **Why this matters at all** — context: when
|
|
452
|
+
* `declarePolymorphicSchemas` builds variants, `ZodObject.extend(...)`
|
|
453
|
+
* creates a fresh wrapper but the base shape's inner field instances are
|
|
454
|
+
* SHARED across every variant iteration. Mutating those shared leaves
|
|
455
|
+
* directly via `addDecorators` would silently propagate the marker onto
|
|
456
|
+
* sibling variants — even ones that explicitly omit the field or opt out
|
|
457
|
+
* via `optOutPolymorphicAutoBusinessKey`. The clone breaks the share.
|
|
458
|
+
*/
|
|
459
|
+
function cloneFieldForBusinessKeyDecoration(value) {
|
|
460
|
+
const clone = Object.create(value);
|
|
461
|
+
const sourceMetadata = value[SCHEMA_METADATA];
|
|
462
|
+
clone[SCHEMA_METADATA] =
|
|
463
|
+
sourceMetadata && typeof sourceMetadata === 'object' ? { ...sourceMetadata } : {};
|
|
464
|
+
return clone;
|
|
465
|
+
}
|
|
466
|
+
/**
|
|
467
|
+
* Apply `.isBusinessKey()` to each named field on a ZodObject and return a
|
|
468
|
+
* new ZodObject with the same shape but the named fields re-decorated.
|
|
469
|
+
*
|
|
470
|
+
* Fail-loud: if a name does not exist on the schema's shape, throw with the
|
|
471
|
+
* full `baseResourceType` + `parentResourceType` context. This catches
|
|
472
|
+
* authoring mistakes (e.g., typo'd field name, or a `businessKeyFields`
|
|
473
|
+
* list that references a field that exists on the base but was renamed by
|
|
474
|
+
* `polymorphicVariants` — the post-rename name is the canonical one).
|
|
475
|
+
*
|
|
476
|
+
* Always returns a fresh `z.object(...)` wrapper — even on the no-op path
|
|
477
|
+
* (`fieldNames.length === 0`) — so callers never observe an aliased input
|
|
478
|
+
* reference (low-risk consistency, see Plan 1 review L-2).
|
|
479
|
+
*
|
|
480
|
+
* Cross-variant leak defence: every field that needs a marker is piped
|
|
481
|
+
* through `cloneFieldForBusinessKeyDecoration(...)` first — see that
|
|
482
|
+
* helper's JSDoc for the full rationale. Without it, an explicit
|
|
483
|
+
* `businessKeyFields` referencing a base-shape field on Variant 1 would
|
|
484
|
+
* silently bleed onto every subsequent variant.
|
|
485
|
+
*
|
|
486
|
+
* **Outer-level metadata contract (Plan 1 deep-review M-2, 2026-04-14)**:
|
|
487
|
+
* because we always return a fresh `z.object(newShape)`, any **outer-level**
|
|
488
|
+
* metadata on the input `schema` (i.e., decorators applied to the OBJECT
|
|
489
|
+
* itself rather than its fields — e.g., a future `addDecorators(zObject,
|
|
490
|
+
* [...])` call setting `bag[ZodDecorator.X]` on the ZodObject) would be
|
|
491
|
+
* silently dropped. Every current call site (lines 333 / 347 / 408) feeds
|
|
492
|
+
* us a fresh `applyFkRenames(...)` output which itself is `z.object(...)`
|
|
493
|
+
* with no outer-level metadata, so this is invisible today. The defensive
|
|
494
|
+
* check below FAILS LOUDLY if a future caller violates this assumption,
|
|
495
|
+
* forcing the change to either (a) propagate the outer metadata explicitly
|
|
496
|
+
* or (b) document why it's safe to drop.
|
|
497
|
+
*
|
|
498
|
+
* @param schema The post-injection, post-rename variant ZodObject.
|
|
499
|
+
* @param fieldNames Field names (post-rename) to mark with `.isBusinessKey()`.
|
|
500
|
+
* @param baseResourceType For error context (the polymorphic base name).
|
|
501
|
+
* @param parentResourceType For error context (the variant's parent type).
|
|
502
|
+
*
|
|
503
|
+
* @throws If the input schema carries outer-level metadata that would be
|
|
504
|
+
* silently lost by the fresh-wrapper rebuild — see contract note above.
|
|
505
|
+
*/
|
|
506
|
+
function applyBusinessKeyMarkers(schema, fieldNames, baseResourceType, parentResourceType) {
|
|
507
|
+
// Outer-level metadata guard — see JSDoc "Outer-level metadata contract".
|
|
508
|
+
// We deliberately do NOT propagate outer metadata onto the new wrapper
|
|
509
|
+
// because no current call site needs it; instead we fail loud so the next
|
|
510
|
+
// caller that DOES need it has to make a deliberate design decision.
|
|
511
|
+
const outerMetadata = getFieldMetadata(schema);
|
|
512
|
+
if (outerMetadata && Object.keys(outerMetadata).length > 0) {
|
|
513
|
+
throw new Error(`[PolymorphicSchemas] baseResourceType="${baseResourceType}" parentResourceType="${parentResourceType}": ` +
|
|
514
|
+
`applyBusinessKeyMarkers received a ZodObject with outer-level metadata ` +
|
|
515
|
+
`(keys: [${Object.keys(outerMetadata).join(', ')}]). The function rebuilds ` +
|
|
516
|
+
`the wrapper via z.object(...), which would silently drop those entries. ` +
|
|
517
|
+
`Either remove the outer metadata before calling, or extend this helper ` +
|
|
518
|
+
`to propagate it (and add a regression test). See JSDoc "Outer-level ` +
|
|
519
|
+
`metadata contract" for the full rationale.`);
|
|
520
|
+
}
|
|
521
|
+
const shape = getZodObjectShape(schema);
|
|
522
|
+
if (fieldNames.length === 0) {
|
|
523
|
+
return z.object({ ...shape });
|
|
524
|
+
}
|
|
525
|
+
for (const fieldName of fieldNames) {
|
|
526
|
+
if (!Object.prototype.hasOwnProperty.call(shape, fieldName)) {
|
|
527
|
+
throw new Error(`[PolymorphicSchemas] baseResourceType="${baseResourceType}" parentResourceType="${parentResourceType}": ` +
|
|
528
|
+
`businessKeyFields references field "${fieldName}" but the post-injection variant shape has no such field. ` +
|
|
529
|
+
`Available fields: [${Object.keys(shape).join(', ')}]. ` +
|
|
530
|
+
`Note: businessKeyFields names refer to the POST-rename shape — if a field was renamed via polymorphicVariants ` +
|
|
531
|
+
`(e.g., billingAccountId → organizationBillingAccountId), use the renamed name.`);
|
|
532
|
+
}
|
|
533
|
+
}
|
|
534
|
+
// A SINGLETON business key (exactly one field — the injected scope FK, e.g.
|
|
535
|
+
// `organizationId` / `applicationId`; the only polymorphic business-key case
|
|
536
|
+
// that exists today) is enforced DB-UNIQUE, not merely marked. `.isBusinessKey()`
|
|
537
|
+
// is a PURE marker with no index (unlike `.isPrimaryKey()`), so without an
|
|
538
|
+
// explicit `.isUnique()` the one-per-scope invariant is unenforced at the DB
|
|
539
|
+
// layer: a raced `createAsSystem` / plain insert can write two rows for the same
|
|
540
|
+
// scope, silently breaking the singleton AND the `upsertByBusinessKey` contract,
|
|
541
|
+
// which ASSUMES the business key uniquely identifies a row. A single-field
|
|
542
|
+
// `.isUnique()` on the scope FK compiles to a Mongo unique index (via the
|
|
543
|
+
// zod→mongoose convertor's `isUnique` path) so a second concurrent insert fails
|
|
544
|
+
// closed with a duplicate-key error instead of duplicating. Mirrors the
|
|
545
|
+
// non-polymorphic singleton pattern (`organizationId: z.string().min(1)
|
|
546
|
+
// .isDBIndexed().isUnique().isForeignKey()` on `organizationPreferences` /
|
|
547
|
+
// `organizationNotifications`).
|
|
548
|
+
//
|
|
549
|
+
// A COMPOSITE business key (>1 field — none exist today) is deliberately left
|
|
550
|
+
// marker-only here: applying per-field `.isUnique()` would wrongly require each
|
|
551
|
+
// field to be INDEPENDENTLY unique rather than the tuple. Composite DB uniqueness
|
|
552
|
+
// is the object-level `.businessKeySet([...])` decorator's job (the convertor
|
|
553
|
+
// materialises it as a compound unique index via `applyBusinessKeyCompoundUniqueIndex`).
|
|
554
|
+
const businessKeyDecorators = fieldNames.length === 1
|
|
555
|
+
? [ZodDecorator.IS_BUSINESS_KEY, ZodDecorator.IS_UNIQUE]
|
|
556
|
+
: [ZodDecorator.IS_BUSINESS_KEY];
|
|
557
|
+
const newShape = {};
|
|
558
|
+
for (const [key, value] of Object.entries(shape)) {
|
|
559
|
+
newShape[key] = fieldNames.includes(key)
|
|
560
|
+
? addDecorators(cloneFieldForBusinessKeyDecoration(value), businessKeyDecorators)
|
|
561
|
+
: value;
|
|
562
|
+
}
|
|
563
|
+
return z.object(newShape);
|
|
564
|
+
}
|
|
565
|
+
//# sourceMappingURL=resource-polymorphism.schemas.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-polymorphism.schemas.js","sourceRoot":"","sources":["../../../../src/resources/utils/resource-polymorphism.schemas.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resource-polymorphism.schemas.js","sourceRoot":"","sources":["../../../../../src/resources/utils/resource-polymorphism.schemas.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Resource Polymorphism — Schema Declaration (Phase 1)\n *\n * Provides `declarePolymorphicSchemas()` which takes a base schema and a list\n * of parent variant definitions, and produces a `PolymorphicSchemaDeclaration`\n * containing pre-computed schemas for each variant (base + injected parent FK).\n *\n * Supports both plain `z.ZodObject` and `SchemaFamily` as base schema input.\n *\n * @see polymorphic-scope-approach-A-expansion.md — Phase 1\n */\n\nimport { z } from 'zod';\nimport { getZodObjectShape, addDiscriminator, getPolymorphicFkVariants, addDecorators, ZodDecorator, SCHEMA_METADATA, getFieldMetadata } from '@wildo-ai/zod-decorators';\nimport { ResourcePolymorphismUtils, type PolymorphicParentVariantDefinition, type PolymorphicVariantNaming } from './resource-polymorphism.utils';\nimport type { SchemaFamily, EnumLikeType, VariantConfig } from './schema-family-builder.utils';\nimport type { ResourceConfiguration_InheritanceSchemaDefinition } from '../resources-config.shared.schemas';\nimport type { ResourceType } from '../resources.shared.core.definitions';\n\n// =============================================================================\n// TYPES\n// =============================================================================\n\n/**\n * @wildo_source:part:start saas.models.polymorphism.variant-definition facet:layer:shared facet:family:polymorphism\n *\n * One entry in the variant list passed to `declarePolymorphicSchemas()` (from\n * `@wildo-ai/saas-models`) — describes ONE scope a polymorphic resource is\n * stamped out for. Besides the two fields below it also carries the inherited\n * `parentResourceType` (the scope entity — e.g. ORGANIZATIONS / APPLICATION /\n * USERS) and `parentFieldIdentifier` (the scope FK the engine injects into the\n * variant schema — e.g. `organizationId` / `applicationId`). The\n * `isPrimaryScope` + `businessKeyFields` pair is the SINGLETON-vs-MULTI-ROW\n * decision: a singleton scope FK becomes a one-per-scope unique business key; a\n * multi-row (collection) resource must opt out via `optOutPolymorphicAutoBusinessKey`.\n */\nexport interface PolymorphicVariantDefinition extends PolymorphicParentVariantDefinition {\n /**\n * Whether this variant's parent is a primary scope entity.\n * - `true`: identity field injected (e.g., `organizationId`), authorization scope-aware\n * - `false`: parent FK injected (e.g., `projectId`), scope inherited from parent chain\n */\n isPrimaryScope: boolean;\n\n /**\n * Optional per-variant business-key declaration.\n *\n * The polymorphism engine cannot honour `.isBusinessKey()` on the base\n * schema for fields that don't yet exist there (the canonical case being\n * a polymorphic singleton whose business key is the *injected* parent FK\n * — `organizationId` for the ORG variant, `applicationId` for the APP\n * variant). This field gives the variant declaration a place to mark\n * those fields per-variant.\n *\n * Resolution rule:\n *\n * 1. If `businessKeyFields` is provided (including an empty array `[]`\n * to *opt out*), apply `.isBusinessKey()` to each named field on the\n * final variant shape. Fail-loud if a name does not exist on the\n * variant shape.\n * 2. Else if `isPrimaryScope: true` and `businessKeyFields` is omitted,\n * auto-mark the injected `parentFieldIdentifier` as the business key\n * (the singleton-per-scope convention).\n * 3. Else (no explicit declaration AND not a primary scope), no\n * business-key marking is added — the framework's pre-A4 behaviour is\n * preserved for non-singleton polymorphism.\n *\n * DB UNIQUENESS: when the resolved business key is a SINGLE field (the\n * singleton case — branch 2, or a one-field branch-1 list), that field is ALSO\n * stamped `.isUnique()`, compiling to a Mongo unique index that enforces\n * one-row-per-scope at the DB layer. `.isBusinessKey()` alone is a PURE marker\n * with no index, so without this a raced insert (e.g. a system lazy-create on\n * two concurrent logins) could duplicate the singleton row. A COMPOSITE\n * (>1-field) business key stays marker-only — declare an object-level\n * `.businessKeySet([...])` for a compound unique index instead. Consequence: a\n * forgotten opt-out on a MULTI-ROW resource is now a hard duplicate-key insert\n * failure (see `optOutPolymorphicAutoBusinessKey`), not just silent\n * `upsertByBusinessKey` misrouting.\n *\n * Field names refer to the **post-injection, post-rename** shape — i.e.,\n * what the field is actually called on the variant schema after\n * polymorphic FK injection and any `polymorphicVariants`-driven renames\n * (e.g., `billingAccountId` → `organizationBillingAccountId`). This is\n * the shape the consumer of `variants[parentResourceType].schema` reads.\n */\n businessKeyFields?: string[];\n}\n/** @wildo_source:part:end saas.models.polymorphism.variant-definition */\n\n/**\n * @wildo_source:part:start saas.models.polymorphism.optout-business-key facet:layer:shared facet:family:polymorphism\n *\n * Opt out the auto-default that marks the injected `parentFieldIdentifier`\n * as the business key on every `isPrimaryScope: true` variant.\n *\n * Use this on **non-singleton** polymorphic resources (e.g., delivery logs,\n * SSO connections, SIEM DLQ rows, SCIM tokens, billing usage records, credit\n * pools, subscriptions, invoice refs) where the parent FK alone does NOT\n * uniquely identify a row in the collection. Without this opt-out, the\n * polymorphism engine auto-marks the injected scope FK (`organizationId` /\n * `applicationId` / etc.) as the business key. On a multi-row resource that is\n * now TWO bugs, not one:\n * 1. any `upsertByBusinessKey()` call routes every row in the scope onto a\n * single document (silent data corruption); AND\n * 2. the single-field business key is ALSO stamped `.isUnique()` (the\n * singleton ⇒ unique-index convention), so the SECOND row per scope is\n * rejected at insert with a duplicate-key error — a hard, immediate\n * failure. The resource is NOT a singleton, so both are wrong.\n * Opt out and both vanish: the scope FK stays a plain non-unique index with no\n * business-key marker.\n *\n * Contract:\n *\n * - Signature is **per-variant**: `(variantDef) => variantDef`. Apply it\n * to a whole variant array via the standard `Array.prototype.map`:\n * `[...AUTH_SCOPE_VARIANTS].map(optOutPolymorphicAutoBusinessKey)`.\n * Direct per-variant calls are also fine — useful when only one\n * variant in a heterogeneous array needs the opt-out.\n * - The result is a fresh `PolymorphicVariantDefinition` (or array\n * thereof) with `businessKeyFields: []` per variant (the canonical\n * \"explicit empty\" opt-out — the empty-array branch of the resolution rule\n * documented on `PolymorphicVariantDefinition.businessKeyFields`).\n * - **The helper UNCONDITIONALLY overwrites any pre-existing\n * `businessKeyFields` on the variant** — that is the entire point. If\n * you need to preserve / extend an existing composite key, do NOT pipe\n * through this helper; declare `businessKeyFields` inline on the\n * variant instead.\n *\n * Why a helper instead of inline `.map(v => ({ ...v, businessKeyFields: [] }))`:\n *\n * - Keeps the call-site one-line and self-documenting (the helper name IS\n * the rationale).\n * - Centralizes the `businessKeyFields: []` literal so a future rename or\n * semantic change has one source of truth, not eight inlined copies.\n * - Discoverable via `rg optOutPolymorphicAutoBusinessKey`.\n */\nexport function optOutPolymorphicAutoBusinessKey(\n variantDef: PolymorphicVariantDefinition,\n): PolymorphicVariantDefinition {\n return { ...variantDef, businessKeyFields: [] };\n}\n/** @wildo_source:part:end saas.models.polymorphism.optout-business-key */\n\n/**\n * A single resolved variant within a polymorphic declaration.\n * Contains all derived naming + the transformed schema.\n */\nexport interface PolymorphicResolvedVariant<TSchema extends z.ZodTypeAny = z.ZodTypeAny> {\n /** The parent resource type this variant is parented to */\n parentResourceType: ResourceType;\n /** The parent's field identifier (e.g., 'organizationId') */\n parentFieldIdentifier: string;\n /** Whether this variant's parent is a primary scope entity */\n isPrimaryScope: boolean;\n /** Derived variant resource type (e.g., 'organizationBillingAccounts') */\n resourceType: string;\n /** Derived variant field identifier (e.g., 'organizationBillingAccountId') */\n fieldIdentifier: string;\n /** Derived collection name (same as resourceType) */\n collectionName: string;\n /** Derived kebab-case route segment */\n routeSegment: string;\n /** Derived CONSTANT_CASE enum key */\n enumKey: string;\n /** Transformed schema: base schema + parent FK field injected */\n schema: TSchema;\n /** If baseSchema was a SchemaFamily, this holds the rebuilt family for this variant */\n schemaFamily?: SchemaFamily<z.ZodObject<z.ZodRawShape>, string, Record<string, VariantConfig<z.ZodObject<z.ZodRawShape>>>>;\n}\n\n/**\n * The output of `declarePolymorphicSchemas()`.\n * Contains the base declaration + pre-computed variants map.\n */\nexport interface PolymorphicSchemaDeclaration<TSchema extends z.ZodTypeAny = z.ZodTypeAny> {\n /** Marker for runtime type checking */\n __polymorphic: true;\n /** Base resource type (e.g., 'billingAccounts') — the abstract logical name */\n baseResourceType: string;\n /** Base field identifier (e.g., 'billingAccountId') */\n baseFieldIdentifier: string;\n /** Base CONSTANT_CASE enum key (e.g., 'BILLING_ACCOUNTS') */\n baseEnumKey: string;\n /** The original base schema (before variant transformation) */\n baseSchema: TSchema;\n /** The original variant definitions as provided by the developer */\n variantDefinitions: PolymorphicVariantDefinition[];\n /** Pre-computed map: parentResourceType → resolved variant (naming + transformed schema) */\n variants: Map<ResourceType, PolymorphicResolvedVariant<TSchema>>;\n}\n\n/**\n * Input configuration for `declarePolymorphicSchemas()`.\n */\nexport interface DeclarePolymorphicSchemasConfig<TSchema extends z.ZodTypeAny> {\n /** Base resource type (e.g., 'billingAccounts') */\n baseResourceType: string;\n /** Base field identifier (e.g., 'billingAccountId') */\n baseFieldIdentifier: string;\n /** Base CONSTANT_CASE enum key (e.g., 'BILLING_ACCOUNTS') */\n baseEnumKey: string;\n /**\n * Base schema — either a plain z.ZodObject or a SchemaFamily result.\n * Must NOT already contain identity fields (organizationId, userId, etc.) — they are injected per variant.\n */\n baseSchema: TSchema;\n /** Variant definitions — one per parent resource */\n variants: PolymorphicVariantDefinition[];\n}\n\n// =============================================================================\n// TYPE GUARDS\n// =============================================================================\n\n/**\n * Check if a value is a SchemaFamily (result of createSchemaFamily()).\n * Duck-types on the presence of `.union`, `.base`, `.discriminatorField`.\n */\nfunction isSchemaFamily(value: unknown): value is SchemaFamily<z.ZodObject<z.ZodRawShape>, string, Record<string, VariantConfig<z.ZodObject<z.ZodRawShape>>>> {\n if (!value || typeof value !== 'object') return false;\n const obj = value as Record<string, unknown>;\n return (\n 'union' in obj &&\n 'base' in obj &&\n 'discriminatorField' in obj &&\n 'variants' in obj &&\n 'inheritenceSchemaDefinition' in obj\n );\n}\n\n/**\n * Check if a schema is a ZodObject (has .shape).\n */\nfunction isZodObject(schema: z.ZodTypeAny): schema is z.ZodObject<z.ZodRawShape> {\n return schema instanceof z.ZodObject;\n}\n\n// =============================================================================\n// MAIN FUNCTION\n// =============================================================================\n\n/**\n * Declare polymorphic schemas for a base resource.\n *\n * For each variant definition, this function:\n * 1. Derives all naming identifiers using `ResourcePolymorphismUtils`\n * 2. Clones the base schema and injects the parent's field identifier as a new FK field\n * 3. If the base schema is a `SchemaFamily`, rebuilds the family per variant\n * 4. Returns a `PolymorphicSchemaDeclaration` with pre-computed variants\n *\n * @example\n * ```typescript\n * // Plain z.ZodObject base:\n * const billingDeclaration = declarePolymorphicSchemas({\n * baseResourceType: 'billingAccounts',\n * baseFieldIdentifier: 'billingAccountId',\n * baseEnumKey: 'BILLING_ACCOUNTS',\n * baseSchema: BillingAccountBaseSchema,\n * variants: [\n * { parentResourceType: 'organizations', parentFieldIdentifier: 'organizationId', isPrimaryScope: true },\n * { parentResourceType: 'users', parentFieldIdentifier: 'userId', isPrimaryScope: true },\n * ],\n * });\n *\n * // SchemaFamily base:\n * const subscriptionDeclaration = declarePolymorphicSchemas({\n * baseResourceType: 'subscriptions',\n * baseFieldIdentifier: 'subscriptionId',\n * baseEnumKey: 'SUBSCRIPTIONS',\n * baseSchema: SubscriptionSchemaFamily, // result of createSchemaFamily()\n * variants: [\n * { parentResourceType: 'organizations', parentFieldIdentifier: 'organizationId', isPrimaryScope: true },\n * ],\n * });\n * ```\n */\nexport function declarePolymorphicSchemas<TSchema extends z.ZodTypeAny>(\n config: DeclarePolymorphicSchemasConfig<TSchema>\n): PolymorphicSchemaDeclaration<TSchema> {\n const { baseResourceType, baseFieldIdentifier, baseEnumKey, baseSchema, variants: variantDefinitions } = config;\n\n // Validation: must have at least one variant\n if (variantDefinitions.length === 0) {\n throw new Error(\n `[PolymorphicSchemas] baseResourceType=\"${baseResourceType}\": must have at least one variant definition.`\n );\n }\n\n // Validation: no duplicate parentResourceType\n const parentTypes = variantDefinitions.map(v => v.parentResourceType);\n const uniqueParentTypes = new Set(parentTypes);\n if (uniqueParentTypes.size !== parentTypes.length) {\n throw new Error(\n `[PolymorphicSchemas] baseResourceType=\"${baseResourceType}\": duplicate parentResourceType in variant definitions.`\n );\n }\n\n // Derive naming for all variants\n const namingKit = ResourcePolymorphismUtils.getVariants(\n baseResourceType,\n baseFieldIdentifier,\n baseEnumKey,\n variantDefinitions.map(v => ({ parentResourceType: v.parentResourceType, parentFieldIdentifier: v.parentFieldIdentifier }))\n );\n\n // Determine the root ZodObject to validate and extend\n const rootZodObject = isSchemaFamily(baseSchema)\n ? (baseSchema as SchemaFamily<z.ZodObject<z.ZodRawShape>, string, Record<string, VariantConfig<z.ZodObject<z.ZodRawShape>>>>).base\n : isZodObject(baseSchema as z.ZodTypeAny) ? (baseSchema as unknown as z.ZodObject<z.ZodRawShape>) : null;\n\n // Validation: base schema must be a ZodObject or SchemaFamily\n if (!rootZodObject) {\n throw new Error(\n `[PolymorphicSchemas] baseResourceType=\"${baseResourceType}\": baseSchema must be a z.object() or a SchemaFamily (result of createSchemaFamily()). Got: ${typeof baseSchema}`\n );\n }\n\n // Validation: base schema should NOT already contain any of the parent FK fields\n const baseShape = getZodObjectShape(rootZodObject);\n for (const variantDef of variantDefinitions) {\n if (baseShape[variantDef.parentFieldIdentifier]) {\n throw new Error(\n `[PolymorphicSchemas] baseResourceType=\"${baseResourceType}\": baseSchema already contains field \"${variantDef.parentFieldIdentifier}\". ` +\n `The polymorphic declaration injects parent FK fields automatically — remove it from the base schema.`\n );\n }\n }\n\n // Pre-compute polymorphic FK renames from the base schema.\n // For each field in the base shape, check if it has `polymorphicVariants` metadata.\n // If so, build a map: fieldName → { parentResourceType → derivedFieldName }.\n const polymorphicFkRenames = computePolymorphicFkRenames(baseShape, variantDefinitions);\n\n // Build the variants map\n const variantsMap = new Map<ResourceType, PolymorphicResolvedVariant<TSchema>>();\n\n for (let i = 0; i < variantDefinitions.length; i++) {\n const variantDef = variantDefinitions[i]!;\n const naming = namingKit[i]!;\n\n // Create the parent FK field: z.string().min(1).isForeignKey().isDBIndexed()\n const parentFkField = z.string().min(1).isForeignKey().isDBIndexed();\n\n // Compute FK renames for this specific variant\n const fkRenamesForVariant = getFkRenamesForVariant(polymorphicFkRenames, variantDef.parentResourceType);\n\n // Compute the business-key field names for this variant (A4 hybrid —\n // explicit override wins; isPrimaryScope=true auto-defaults to the\n // injected parent FK; otherwise no marking). See JSDoc on\n // `PolymorphicVariantDefinition.businessKeyFields`.\n const businessKeyFieldNames = computeBusinessKeyFieldNames(variantDef);\n\n // Extend the schema with the parent FK field\n let variantSchema: z.ZodTypeAny;\n let variantSchemaFamily: SchemaFamily<z.ZodObject<z.ZodRawShape>, string, Record<string, VariantConfig<z.ZodObject<z.ZodRawShape>>>> | undefined;\n\n if (isSchemaFamily(baseSchema)) {\n const family = baseSchema as SchemaFamily<z.ZodObject<z.ZodRawShape>, string, Record<string, VariantConfig<z.ZodObject<z.ZodRawShape>>>>;\n\n // Extend the family's base schema with parent FK + apply FK renames\n // Cast needed: Zod 4's .extend() returns ZodObject<Readonly<...>> which is stricter than ZodRawShape\n let extendedBase = family.base.extend({\n [variantDef.parentFieldIdentifier]: parentFkField,\n }) as z.ZodObject<z.ZodRawShape>;\n extendedBase = applyFkRenames(extendedBase, fkRenamesForVariant);\n extendedBase = applyBusinessKeyMarkers(\n extendedBase,\n businessKeyFieldNames,\n baseResourceType,\n variantDef.parentResourceType,\n );\n\n // Rebuild each variant schema with the parent FK injected + FK renames\n const extendedVariants: Record<string, z.ZodObject<z.ZodRawShape>> = {};\n for (const [key, variantSchemaEntry] of Object.entries(family.variants)) {\n let extended = (variantSchemaEntry as z.ZodObject<z.ZodRawShape>).extend({\n [variantDef.parentFieldIdentifier]: parentFkField,\n }) as z.ZodObject<z.ZodRawShape>;\n extended = applyFkRenames(extended, fkRenamesForVariant);\n extended = applyBusinessKeyMarkers(\n extended,\n businessKeyFieldNames,\n baseResourceType,\n variantDef.parentResourceType,\n );\n extendedVariants[key] = extended;\n }\n\n // Rebuild the discriminated union with parent FK in all branches\n // Use addDiscriminator() to preserve isDiscriminator metadata (matching createSchemaFamily behavior)\n const allUnionSchemas: z.ZodObject<z.ZodRawShape>[] = [];\n\n // Base value schemas (base + parent FK + decorated discriminator)\n for (const baseValue of family.baseValues) {\n const baseWithDiscriminator = extendedBase.extend({\n [family.discriminatorField]: addDiscriminator(z.literal(baseValue), { baseValues: family.baseValues }),\n });\n allUnionSchemas.push(baseWithDiscriminator as z.ZodObject<z.ZodRawShape>);\n }\n\n // Extended variant schemas — re-decorate discriminator to ensure metadata is preserved\n for (const [variantKey, extendedVariantSchema] of Object.entries(extendedVariants)) {\n allUnionSchemas.push(\n extendedVariantSchema.extend({\n [family.discriminatorField]: addDiscriminator(z.literal(variantKey), { baseValues: family.baseValues }),\n }) as z.ZodObject<z.ZodRawShape>\n );\n }\n\n // Create the union\n let union: z.ZodTypeAny;\n if (allUnionSchemas.length >= 2) {\n union = z.discriminatedUnion(\n family.discriminatorField,\n allUnionSchemas as any\n );\n } else if (allUnionSchemas.length === 1) {\n union = allUnionSchemas[0]!;\n } else {\n union = extendedBase;\n }\n\n // Build the rebuilt SchemaFamily for this variant\n variantSchemaFamily = {\n base: extendedBase as z.ZodObject<z.ZodRawShape>,\n discriminatorField: family.discriminatorField,\n baseValues: family.baseValues,\n variants: extendedVariants as any,\n union,\n inheritenceSchemaDefinition: family.inheritenceSchemaDefinition,\n };\n\n // The main schema for the resource config is the union\n variantSchema = union;\n } else {\n // Plain ZodObject — simple extend + FK renames + business-key markers\n let extended = (rootZodObject as z.ZodObject<z.ZodRawShape>).extend({\n [variantDef.parentFieldIdentifier]: parentFkField,\n }) as z.ZodObject<z.ZodRawShape>;\n extended = applyFkRenames(extended, fkRenamesForVariant);\n extended = applyBusinessKeyMarkers(\n extended,\n businessKeyFieldNames,\n baseResourceType,\n variantDef.parentResourceType,\n );\n variantSchema = extended;\n }\n\n variantsMap.set(variantDef.parentResourceType, {\n parentResourceType: variantDef.parentResourceType,\n parentFieldIdentifier: variantDef.parentFieldIdentifier,\n isPrimaryScope: variantDef.isPrimaryScope,\n resourceType: naming.resourceType,\n fieldIdentifier: naming.fieldIdentifier,\n collectionName: naming.collectionName,\n routeSegment: naming.routeSegment,\n enumKey: naming.enumKey,\n schema: variantSchema as TSchema,\n ...(variantSchemaFamily ? { schemaFamily: variantSchemaFamily } : {}),\n });\n }\n\n return {\n __polymorphic: true,\n baseResourceType,\n baseFieldIdentifier,\n baseEnumKey,\n baseSchema,\n variantDefinitions,\n variants: variantsMap,\n };\n}\n\n// =============================================================================\n// FK RENAME HELPERS\n// =============================================================================\n\n/** Map of original field name → per-parentResourceType derived field name */\ntype PolymorphicFkRenameMap = Map<string, Map<string, string>>;\n\n/**\n * Scan the base schema shape for fields with `polymorphicVariants` metadata.\n * Build a rename map: originalFieldName → { parentResourceType → derivedFieldName }.\n */\nfunction computePolymorphicFkRenames(\n baseShape: Record<string, z.ZodTypeAny>,\n variantDefinitions: PolymorphicVariantDefinition[],\n): PolymorphicFkRenameMap {\n const renames: PolymorphicFkRenameMap = new Map();\n\n for (const [fieldName, fieldSchema] of Object.entries(baseShape)) {\n const fkVariants = getPolymorphicFkVariants(fieldSchema);\n if (!fkVariants || fkVariants.length === 0) continue;\n\n const fieldRenames = new Map<string, string>();\n\n for (const variantDef of variantDefinitions) {\n const matchingFkVariant = fkVariants.find(\n fkv => fkv.parentResourceType === variantDef.parentResourceType\n );\n if (matchingFkVariant) {\n const derivedName = ResourcePolymorphismUtils.deriveVariantFieldIdentifier(\n matchingFkVariant.parentFieldIdentifier,\n fieldName,\n );\n fieldRenames.set(variantDef.parentResourceType, derivedName);\n }\n }\n\n if (fieldRenames.size > 0) {\n renames.set(fieldName, fieldRenames);\n }\n }\n\n return renames;\n}\n\n/**\n * Get the FK renames applicable for a specific parent resource type.\n * Returns an array of [originalFieldName, derivedFieldName] pairs.\n */\nfunction getFkRenamesForVariant(\n renameMap: PolymorphicFkRenameMap,\n parentResourceType: string,\n): [string, string][] {\n const result: [string, string][] = [];\n for (const [originalName, perParent] of renameMap) {\n const derived = perParent.get(parentResourceType);\n if (derived) {\n result.push([originalName, derived]);\n }\n }\n return result;\n}\n\n/**\n * Compute the per-variant renamed schema map for a polymorphic base.\n *\n * Exported as the canonical bridge that callers OUTSIDE this module\n * (notably the frontend lib's `createPolymorphicFrontendPreset`, which\n * threads a `FRONTEND_SCHEMA_KEY` per variant for `z_clone`-style UI\n * mutations) use to derive per-variant schemas without having to reach\n * into the private rename helpers.\n *\n * Given a base schema and an array of variant declarations, returns\n * `Map<parentResourceType, ZodObject>` where each value is the base\n * schema with `polymorphicVariants`-marked FK fields renamed to their\n * variant-specific names (e.g. `billingAccountId` →\n * `organizationBillingAccountId` for the ORGANIZATIONS variant).\n *\n * Why this matters: the polymorphic resource factory ALREADY applies\n * these renames to the runtime variant schemas (see `applyFkRenames`\n * call sites above). But callers that take the BASE schema as input\n * and attach it to per-variant artifacts (e.g. the frontend's UI\n * behavior `FRONTEND_SCHEMA_KEY`) bypass the rename and end up\n * replacing the variant's renamed `mainSchema` with the base's\n * un-renamed shape — breaking the registry's FK→parent map. Use this\n * helper to keep that path aligned with the resource factory's\n * rename semantics.\n *\n * `variants` only needs `parentResourceType`; any extra properties on\n * the input objects are ignored. This lets frontend callers pass\n * `PolymorphicFrontendVariant`-shaped values directly without\n * reaching for the backend's full `PolymorphicVariantDefinition`.\n */\nexport function computePolymorphicVariantSchemas(\n baseSchema: z.ZodObject<z.ZodRawShape>,\n variants: ReadonlyArray<{ parentResourceType: string }>,\n): Map<string, z.ZodObject<z.ZodRawShape>> {\n const baseShape = getZodObjectShape(baseSchema) as Record<string, z.ZodTypeAny>;\n // Synthesize minimal variantDefinitions for the renames computer — only\n // `parentResourceType` is read.\n const minimalDefs = variants.map(({ parentResourceType }) => ({\n parentResourceType,\n })) as unknown as PolymorphicVariantDefinition[];\n const renameMap = computePolymorphicFkRenames(baseShape, minimalDefs);\n\n const result = new Map<string, z.ZodObject<z.ZodRawShape>>();\n for (const { parentResourceType } of variants) {\n const renames = getFkRenamesForVariant(renameMap, parentResourceType);\n result.set(parentResourceType, applyFkRenames(baseSchema, renames));\n }\n return result;\n}\n\n/**\n * Apply FK renames to a ZodObject: remove original field, add derived field with same schema.\n */\nfunction applyFkRenames(\n schema: z.ZodObject<z.ZodRawShape>,\n renames: [string, string][],\n): z.ZodObject<z.ZodRawShape> {\n if (renames.length === 0) return schema;\n\n // Cast to mutable shape — getZodObjectShape may return Readonly in Zod 4\n const shape = getZodObjectShape(schema) as Record<string, z.ZodTypeAny>;\n const newShape: Record<string, z.ZodTypeAny> = {};\n\n for (const [key, value] of Object.entries(shape)) {\n const rename = renames.find(([orig]) => orig === key);\n if (rename) {\n newShape[rename[1]] = value;\n } else {\n newShape[key] = value;\n }\n }\n\n return z.object(newShape) as z.ZodObject<z.ZodRawShape>;\n}\n\n// =============================================================================\n// BUSINESS-KEY MARKER HELPERS (A4 hybrid — Decision A of\n// `.cursor/plans/polymorphic-singleton-business-key-support.md`)\n// =============================================================================\n\n/**\n * Resolve the per-variant business-key field names to mark with\n * `.isBusinessKey()` on the post-injection / post-rename variant shape.\n *\n * Resolution rule (A4 hybrid):\n *\n * 1. Explicit `businessKeyFields` (including `[]` to opt out) → use as-is.\n * 2. `isPrimaryScope: true` AND `businessKeyFields` omitted → auto-default\n * to `[parentFieldIdentifier]` (the canonical singleton-per-scope case).\n * 3. Otherwise → empty array (preserves pre-A4 behaviour for\n * non-singleton polymorphism — no business-key marking applied).\n *\n * Pure function — no schema mutation, no metadata access. Always returns a\n * fresh array (never the caller's `businessKeyFields` reference) so a later\n * mutation by the consumer cannot accidentally rewrite the variant\n * declaration.\n */\nfunction computeBusinessKeyFieldNames(variantDef: PolymorphicVariantDefinition): string[] {\n if (variantDef.businessKeyFields !== undefined) {\n return [...variantDef.businessKeyFields];\n }\n if (variantDef.isPrimaryScope) {\n return [variantDef.parentFieldIdentifier];\n }\n return [];\n}\n\n/**\n * Minimal prototype-based field clone, designed exclusively for the\n * `addDecorators(clone, [IS_BUSINESS_KEY])` flow inside\n * `applyBusinessKeyMarkers`. NOT a general-purpose schema clone — see\n * `z_clone` (in `@wildo-ai/zod-decorators`) for the full-featured version\n * that deep-clones metadata, reruns `addChainableMethods`, and is the\n * right choice when you need an INDEPENDENT leaf-schema reusable across\n * resources.\n *\n * **Why a separate helper rather than `z_clone`:**\n *\n * - `z_clone` deep-clones metadata and reruns `addChainableMethods`. For\n * the polymorphism engine — which clones a base-shape field once per\n * variant per call to `declarePolymorphicSchemas` — that's more work\n * than necessary, and reruns of `addChainableMethods` on schemas that\n * already have chainable methods are a net no-op (defends via\n * `__metadataWrapped` / `hasOwnProperty` checks).\n * - This helper keeps the contract MINIMAL and INTENTIONAL: only the\n * `SCHEMA_METADATA` Symbol property is given an own-property override\n * (a shallow copy of the source's metadata bag); everything else\n * (Zod 4's `_zod` internals, the prototype chain, instance methods, any\n * future Symbol-keyed framework state) is inherited by setting the\n * source schema as the clone's prototype. The result is structurally\n * indistinguishable from the source for Zod's own validation\n * (`isSchema(clone)` is `true` because `_zod` resolves via prototype\n * lookup), so the clone is safe to re-enter `z.object({...})` as a\n * field — but every metadata mutation lands on the clone alone.\n *\n * **Why a shallow copy of the metadata bag is sufficient HERE:**\n *\n * `applySingleDecorator` mutates only the top-level entries on the bag\n * (`bag[ZodDecorator.IS_BUSINESS_KEY] = true`, etc.). Nested decorator\n * payloads (e.g., `bag[FOREIGN_KEY_SPEC]`) are read-then-deep-merged into\n * a NEW object before being assigned back, so the existing nested\n * references are never mutated in place. For our single-decorator\n * `addDecorators(clone, [IS_BUSINESS_KEY])` call, a shallow copy of the\n * top-level bag is therefore enough to fully isolate the source.\n *\n * **Symbol-keyed properties OTHER than `SCHEMA_METADATA`** (Plan 1 deep-\n * review L-3, 2026-04-14): only `SCHEMA_METADATA` is shallow-copied as\n * an own property. If `addDecorators` ever evolves to mutate a different\n * Symbol-keyed property on the schema instance, this helper MUST be\n * updated to also override that property — otherwise the first mutation\n * on the clone would create an own property on the clone (correct) but\n * later reads on the source would observe stale state (the source's\n * Symbol value never changes). To future-proof, either (a) iterate\n * `Object.getOwnPropertySymbols(value)` and shallow-copy them all, or\n * (b) add a `addDecorators`-side invariant test that asserts\n * `SCHEMA_METADATA` is the only Symbol-keyed mutation surface.\n *\n * **Why this matters at all** — context: when\n * `declarePolymorphicSchemas` builds variants, `ZodObject.extend(...)`\n * creates a fresh wrapper but the base shape's inner field instances are\n * SHARED across every variant iteration. Mutating those shared leaves\n * directly via `addDecorators` would silently propagate the marker onto\n * sibling variants — even ones that explicitly omit the field or opt out\n * via `optOutPolymorphicAutoBusinessKey`. The clone breaks the share.\n */\nfunction cloneFieldForBusinessKeyDecoration(value: z.ZodTypeAny): z.ZodTypeAny {\n const clone = Object.create(value);\n const sourceMetadata = (value as unknown as Record<symbol, unknown>)[SCHEMA_METADATA];\n (clone as unknown as Record<symbol, unknown>)[SCHEMA_METADATA] =\n sourceMetadata && typeof sourceMetadata === 'object' ? { ...(sourceMetadata as Record<string, unknown>) } : {};\n return clone as z.ZodTypeAny;\n}\n\n/**\n * Apply `.isBusinessKey()` to each named field on a ZodObject and return a\n * new ZodObject with the same shape but the named fields re-decorated.\n *\n * Fail-loud: if a name does not exist on the schema's shape, throw with the\n * full `baseResourceType` + `parentResourceType` context. This catches\n * authoring mistakes (e.g., typo'd field name, or a `businessKeyFields`\n * list that references a field that exists on the base but was renamed by\n * `polymorphicVariants` — the post-rename name is the canonical one).\n *\n * Always returns a fresh `z.object(...)` wrapper — even on the no-op path\n * (`fieldNames.length === 0`) — so callers never observe an aliased input\n * reference (low-risk consistency, see Plan 1 review L-2).\n *\n * Cross-variant leak defence: every field that needs a marker is piped\n * through `cloneFieldForBusinessKeyDecoration(...)` first — see that\n * helper's JSDoc for the full rationale. Without it, an explicit\n * `businessKeyFields` referencing a base-shape field on Variant 1 would\n * silently bleed onto every subsequent variant.\n *\n * **Outer-level metadata contract (Plan 1 deep-review M-2, 2026-04-14)**:\n * because we always return a fresh `z.object(newShape)`, any **outer-level**\n * metadata on the input `schema` (i.e., decorators applied to the OBJECT\n * itself rather than its fields — e.g., a future `addDecorators(zObject,\n * [...])` call setting `bag[ZodDecorator.X]` on the ZodObject) would be\n * silently dropped. Every current call site (lines 333 / 347 / 408) feeds\n * us a fresh `applyFkRenames(...)` output which itself is `z.object(...)`\n * with no outer-level metadata, so this is invisible today. The defensive\n * check below FAILS LOUDLY if a future caller violates this assumption,\n * forcing the change to either (a) propagate the outer metadata explicitly\n * or (b) document why it's safe to drop.\n *\n * @param schema The post-injection, post-rename variant ZodObject.\n * @param fieldNames Field names (post-rename) to mark with `.isBusinessKey()`.\n * @param baseResourceType For error context (the polymorphic base name).\n * @param parentResourceType For error context (the variant's parent type).\n *\n * @throws If the input schema carries outer-level metadata that would be\n * silently lost by the fresh-wrapper rebuild — see contract note above.\n */\nfunction applyBusinessKeyMarkers(\n schema: z.ZodObject<z.ZodRawShape>,\n fieldNames: string[],\n baseResourceType: string,\n parentResourceType: ResourceType,\n): z.ZodObject<z.ZodRawShape> {\n // Outer-level metadata guard — see JSDoc \"Outer-level metadata contract\".\n // We deliberately do NOT propagate outer metadata onto the new wrapper\n // because no current call site needs it; instead we fail loud so the next\n // caller that DOES need it has to make a deliberate design decision.\n const outerMetadata = getFieldMetadata(schema);\n if (outerMetadata && Object.keys(outerMetadata).length > 0) {\n throw new Error(\n `[PolymorphicSchemas] baseResourceType=\"${baseResourceType}\" parentResourceType=\"${parentResourceType}\": ` +\n `applyBusinessKeyMarkers received a ZodObject with outer-level metadata ` +\n `(keys: [${Object.keys(outerMetadata).join(', ')}]). The function rebuilds ` +\n `the wrapper via z.object(...), which would silently drop those entries. ` +\n `Either remove the outer metadata before calling, or extend this helper ` +\n `to propagate it (and add a regression test). See JSDoc \"Outer-level ` +\n `metadata contract\" for the full rationale.`,\n );\n }\n\n const shape = getZodObjectShape(schema) as Record<string, z.ZodTypeAny>;\n\n if (fieldNames.length === 0) {\n return z.object({ ...shape }) as z.ZodObject<z.ZodRawShape>;\n }\n\n for (const fieldName of fieldNames) {\n if (!Object.prototype.hasOwnProperty.call(shape, fieldName)) {\n throw new Error(\n `[PolymorphicSchemas] baseResourceType=\"${baseResourceType}\" parentResourceType=\"${parentResourceType}\": ` +\n `businessKeyFields references field \"${fieldName}\" but the post-injection variant shape has no such field. ` +\n `Available fields: [${Object.keys(shape).join(', ')}]. ` +\n `Note: businessKeyFields names refer to the POST-rename shape — if a field was renamed via polymorphicVariants ` +\n `(e.g., billingAccountId → organizationBillingAccountId), use the renamed name.`,\n );\n }\n }\n\n // A SINGLETON business key (exactly one field — the injected scope FK, e.g.\n // `organizationId` / `applicationId`; the only polymorphic business-key case\n // that exists today) is enforced DB-UNIQUE, not merely marked. `.isBusinessKey()`\n // is a PURE marker with no index (unlike `.isPrimaryKey()`), so without an\n // explicit `.isUnique()` the one-per-scope invariant is unenforced at the DB\n // layer: a raced `createAsSystem` / plain insert can write two rows for the same\n // scope, silently breaking the singleton AND the `upsertByBusinessKey` contract,\n // which ASSUMES the business key uniquely identifies a row. A single-field\n // `.isUnique()` on the scope FK compiles to a Mongo unique index (via the\n // zod→mongoose convertor's `isUnique` path) so a second concurrent insert fails\n // closed with a duplicate-key error instead of duplicating. Mirrors the\n // non-polymorphic singleton pattern (`organizationId: z.string().min(1)\n // .isDBIndexed().isUnique().isForeignKey()` on `organizationPreferences` /\n // `organizationNotifications`).\n //\n // A COMPOSITE business key (>1 field — none exist today) is deliberately left\n // marker-only here: applying per-field `.isUnique()` would wrongly require each\n // field to be INDEPENDENTLY unique rather than the tuple. Composite DB uniqueness\n // is the object-level `.businessKeySet([...])` decorator's job (the convertor\n // materialises it as a compound unique index via `applyBusinessKeyCompoundUniqueIndex`).\n const businessKeyDecorators = fieldNames.length === 1\n ? [ZodDecorator.IS_BUSINESS_KEY, ZodDecorator.IS_UNIQUE]\n : [ZodDecorator.IS_BUSINESS_KEY];\n\n const newShape: Record<string, z.ZodTypeAny> = {};\n for (const [key, value] of Object.entries(shape)) {\n newShape[key] = fieldNames.includes(key)\n ? addDecorators(cloneFieldForBusinessKeyDecoration(value), businessKeyDecorators)\n : value;\n }\n\n return z.object(newShape) as z.ZodObject<z.ZodRawShape>;\n}\n"]}
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
*
|
|
17
17
|
* @see polymorphic-scope-approach-A-expansion.md
|
|
18
18
|
*/
|
|
19
|
-
import type { ResourceType } from '../resources.shared.core.definitions
|
|
19
|
+
import type { ResourceType } from '../resources.shared.core.definitions';
|
|
20
20
|
/**
|
|
21
21
|
* Defines a single parent variant for polymorphic expansion.
|
|
22
22
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-polymorphism.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"resource-polymorphism.utils.d.ts","sourceRoot":"","sources":["../../../../../src/resources/utils/resource-polymorphism.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAMzE;;GAEG;AACH,MAAM,WAAW,kCAAkC;IACjD,sEAAsE;IACtE,kBAAkB,EAAE,YAAY,CAAC;IACjC,6DAA6D;IAC7D,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AAED;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;IACvC,2DAA2D;IAC3D,kBAAkB,EAAE,YAAY,CAAC;IACjC,6DAA6D;IAC7D,qBAAqB,EAAE,MAAM,CAAC;IAC9B,0EAA0E;IAC1E,YAAY,EAAE,MAAM,CAAC;IACrB,8EAA8E;IAC9E,eAAe,EAAE,MAAM,CAAC;IACxB,iGAAiG;IACjG,cAAc,EAAE,MAAM,CAAC;IACvB,+EAA+E;IAC/E,YAAY,EAAE,MAAM,CAAC;IACrB,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAC;CACjB;AAMD,qBAAa,yBAAyB;IAEpC;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,MAAM,GAAG,MAAM;IAI9D;;;;;;;;OAQG;IACH,MAAM,CAAC,yBAAyB,CAAC,qBAAqB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,MAAM;IAMjG;;;;;;;OAOG;IACH,MAAM,CAAC,4BAA4B,CAAC,qBAAqB,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,GAAG,MAAM;IAMvG;;;;;;OAMG;IACH,MAAM,CAAC,oBAAoB,CAAC,qBAAqB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM;IAMvF;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,MAAM,CAAC,WAAW,CAChB,gBAAgB,EAAE,MAAM,EACxB,mBAAmB,EAAE,MAAM,EAC3B,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,kCAAkC,EAAE,GACnD,wBAAwB,EAAE;CAgB9B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-polymorphism.utils.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"resource-polymorphism.utils.js","sourceRoot":"","sources":["../../../../../src/resources/utils/resource-polymorphism.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAuC7E,gFAAgF;AAChF,QAAQ;AACR,gFAAgF;AAEhF,MAAM,OAAO,yBAAyB;IAEpC;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,gBAAgB,CAAC,qBAA6B;QACnD,OAAO,0BAA0B,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC;IAC3E,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,yBAAyB,CAAC,qBAA6B,EAAE,gBAAwB;QACtF,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;QAC5D,MAAM,UAAU,GAAG,0BAA0B,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;QAC7E,OAAO,MAAM,GAAG,UAAU,CAAC;IAC7B,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,4BAA4B,CAAC,qBAA6B,EAAE,mBAA2B;QAC5F,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;QAC5D,MAAM,UAAU,GAAG,0BAA0B,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;QAChF,OAAO,MAAM,GAAG,UAAU,CAAC;IAC7B,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,oBAAoB,CAAC,qBAA6B,EAAE,WAAmB;QAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;QAC5D,MAAM,cAAc,GAAG,0BAA0B,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACzE,OAAO,GAAG,cAAc,IAAI,WAAW,EAAE,CAAC;IAC5C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,MAAM,CAAC,WAAW,CAChB,gBAAwB,EACxB,mBAA2B,EAC3B,WAAmB,EACnB,cAAoD;QAEpD,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,EAAE,EAAE;YAC1E,MAAM,YAAY,GAAG,IAAI,CAAC,yBAAyB,CAAC,qBAAqB,EAAE,gBAAgB,CAAC,CAAC;YAC7F,MAAM,eAAe,GAAG,IAAI,CAAC,4BAA4B,CAAC,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;YACtG,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,qBAAqB,EAAE,WAAW,CAAC,CAAC;YAC9E,OAAO;gBACL,kBAAkB;gBAClB,qBAAqB;gBACrB,YAAY;gBACZ,eAAe;gBACf,cAAc,EAAE,YAAY;gBAC5B,YAAY,EAAE,0BAA0B,CAAC,WAAW,CAAC,YAAY,CAAC;gBAClE,OAAO;aACR,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;CACF","sourcesContent":["/**\n * Resource Polymorphism Utils\n *\n * Naming derivation utilities for polymorphic resource expansion.\n * Given a base resource type and a list of parent variants, derives all\n * identifiers (resource type, field identifier, enum key, collection name,\n * route segment) for each variant.\n *\n * This is a \"developer interface only\" mechanism: the engine expands\n * a single polymorphic declaration into N concrete, fully standard resources\n * at factory time. Zero runtime polymorphism.\n *\n * Works for ANY parent resource type — not tied to ResourcePrimaryScope.\n * The prefix is always derived from the parent's field identifier via\n * ResourcesConfigNamingUtils.extractBaseName().\n *\n * @see polymorphic-scope-approach-A-expansion.md\n */\n\nimport { ResourcesConfigNamingUtils } from './resources-config-naming.utils';\nimport type { ResourceType } from '../resources.shared.core.definitions';\n\n// =============================================================================\n// TYPES\n// =============================================================================\n\n/**\n * Defines a single parent variant for polymorphic expansion.\n */\nexport interface PolymorphicParentVariantDefinition {\n /** The parent resource type (e.g., CoreResourceType.ORGANIZATIONS) */\n parentResourceType: ResourceType;\n /** The parent's field identifier (e.g., 'organizationId') */\n parentFieldIdentifier: string;\n}\n\n/**\n * Full naming kit for a single derived polymorphic variant.\n * All values are deterministically derived from the parent field identifier\n * and the base resource identifiers — nothing is hardcoded.\n */\nexport interface PolymorphicVariantNaming {\n /** The parent resource type this variant is parented to */\n parentResourceType: ResourceType;\n /** The parent's field identifier (e.g., 'organizationId') */\n parentFieldIdentifier: string;\n /** Derived variant resource type (e.g., 'organizationBillingAccounts') */\n resourceType: string;\n /** Derived variant field identifier (e.g., 'organizationBillingAccountId') */\n fieldIdentifier: string;\n /** Derived collection/table name — same as resourceType (e.g., 'organizationBillingAccounts') */\n collectionName: string;\n /** Derived kebab-case route segment (e.g., 'organization-billing-accounts') */\n routeSegment: string;\n /** Derived CONSTANT_CASE enum key (e.g., 'ORGANIZATION_BILLING_ACCOUNTS') */\n enumKey: string;\n}\n\n// =============================================================================\n// UTILS\n// =============================================================================\n\nexport class ResourcePolymorphismUtils {\n\n /**\n * Derive the variant prefix from a parent resource's field identifier.\n * NOT tied to ResourcePrimaryScope — works for ANY parent resource.\n *\n * Uses ResourcesConfigNamingUtils.extractBaseName() — the canonical function\n * for stripping 'Id'/'Ids' suffix from field identifiers.\n *\n * @example\n * 'organizationId' → 'organization'\n * 'userId' → 'user'\n * 'applicationId' → 'application'\n * 'projectId' → 'project'\n * 'teamId' → 'team'\n */\n static getVariantPrefix(parentFieldIdentifier: string): string {\n return ResourcesConfigNamingUtils.extractBaseName(parentFieldIdentifier);\n }\n\n /**\n * Derive variant resource type from parent field identifier + base resource type.\n * Result is camelCase: prefix (from parent) + PascalCase(baseResourceType).\n *\n * @example (base = 'billingAccounts')\n * 'organizationId' → 'organizationBillingAccounts'\n * 'userId' → 'userBillingAccounts'\n * 'projectId' → 'projectBillingAccounts'\n */\n static deriveVariantResourceType(parentFieldIdentifier: string, baseResourceType: string): string {\n const prefix = this.getVariantPrefix(parentFieldIdentifier);\n const pascalBase = ResourcesConfigNamingUtils.toPascalCase(baseResourceType);\n return prefix + pascalBase;\n }\n\n /**\n * Derive variant field identifier (FK name) from parent field identifier + base field identifier.\n * Result is camelCase: prefix (from parent) + PascalCase(baseFieldIdentifier).\n *\n * @example (base = 'billingAccountId')\n * 'organizationId' → 'organizationBillingAccountId'\n * 'userId' → 'userBillingAccountId'\n */\n static deriveVariantFieldIdentifier(parentFieldIdentifier: string, baseFieldIdentifier: string): string {\n const prefix = this.getVariantPrefix(parentFieldIdentifier);\n const pascalBase = ResourcesConfigNamingUtils.toPascalCase(baseFieldIdentifier);\n return prefix + pascalBase;\n }\n\n /**\n * Derive variant CONSTANT_CASE enum key from parent field identifier + base enum key.\n *\n * @example (base = 'BILLING_ACCOUNTS')\n * 'organizationId' → 'ORGANIZATION_BILLING_ACCOUNTS'\n * 'userId' → 'USER_BILLING_ACCOUNTS'\n */\n static deriveVariantEnumKey(parentFieldIdentifier: string, baseEnumKey: string): string {\n const prefix = this.getVariantPrefix(parentFieldIdentifier);\n const constantPrefix = ResourcesConfigNamingUtils.toConstantCase(prefix);\n return `${constantPrefix}_${baseEnumKey}`;\n }\n\n /**\n * Get the full naming kit for all variants of a base resource type.\n * Returns one PolymorphicVariantNaming per parent variant definition.\n * All values are deterministically derived — nothing is hardcoded.\n *\n * @param baseResourceType - The base resource type (e.g., 'billingAccounts')\n * @param baseFieldIdentifier - The base field identifier (e.g., 'billingAccountId')\n * @param baseEnumKey - The base CONSTANT_CASE enum key (e.g., 'BILLING_ACCOUNTS')\n * @param parentVariants - Array of parent variant definitions\n *\n * @example\n * getVariants('billingAccounts', 'billingAccountId', 'BILLING_ACCOUNTS', [\n * { parentResourceType: 'organizations', parentFieldIdentifier: 'organizationId' },\n * { parentResourceType: 'users', parentFieldIdentifier: 'userId' },\n * ])\n * // →\n * // [\n * // { resourceType: 'organizationBillingAccounts', fieldIdentifier: 'organizationBillingAccountId',\n * // collectionName: 'organizationBillingAccounts', routeSegment: 'organization-billing-accounts',\n * // enumKey: 'ORGANIZATION_BILLING_ACCOUNTS', ... },\n * // { resourceType: 'userBillingAccounts', fieldIdentifier: 'userBillingAccountId',\n * // collectionName: 'userBillingAccounts', routeSegment: 'user-billing-accounts',\n * // enumKey: 'USER_BILLING_ACCOUNTS', ... },\n * // ]\n */\n static getVariants(\n baseResourceType: string,\n baseFieldIdentifier: string,\n baseEnumKey: string,\n parentVariants: PolymorphicParentVariantDefinition[]\n ): PolymorphicVariantNaming[] {\n return parentVariants.map(({ parentResourceType, parentFieldIdentifier }) => {\n const resourceType = this.deriveVariantResourceType(parentFieldIdentifier, baseResourceType);\n const fieldIdentifier = this.deriveVariantFieldIdentifier(parentFieldIdentifier, baseFieldIdentifier);\n const enumKey = this.deriveVariantEnumKey(parentFieldIdentifier, baseEnumKey);\n return {\n parentResourceType,\n parentFieldIdentifier,\n resourceType,\n fieldIdentifier,\n collectionName: resourceType,\n routeSegment: ResourcesConfigNamingUtils.toKebabCase(resourceType),\n enumKey,\n };\n });\n }\n}\n"]}
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* Cycles are handled via the `allowCycle` flag — edges with `allowCycle: true`
|
|
11
11
|
* are still traversed, but the visited-set prevents infinite recursion.
|
|
12
12
|
*/
|
|
13
|
-
import type { ResourceRelationship } from '../resources.shared.schemas
|
|
13
|
+
import type { ResourceRelationship } from '../resources.shared.schemas';
|
|
14
14
|
export type SubtreeMap = Map<string, Set<string>>;
|
|
15
15
|
/**
|
|
16
16
|
* Compute the subtree map for all resource types in the relationship graph.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-subtree.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"resource-subtree.utils.d.ts","sourceRoot":"","sources":["../../../../../src/resources/utils/resource-subtree.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAExE,MAAM,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AAqDlD;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,oBAAoB,EAAE,GAAG,UAAU,CAWnF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-subtree.utils.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"resource-subtree.utils.js","sourceRoot":"","sources":["../../../../../src/resources/utils/resource-subtree.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH;;;GAGG;AACH,SAAS,kBAAkB,CAAC,aAAqC;IAC/D,MAAM,GAAG,GAAG,IAAI,GAAG,EAAuB,CAAC;IAE3C,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,IAAI,GAAG,CAAC,UAAU;YAAE,SAAS;QAE7B,MAAM,MAAM,GAAG,GAAG,CAAC,aAAa,CAAC;QACjC,MAAM,KAAK,GAAG,GAAG,CAAC,aAAa,CAAC;QAEhC,IAAI,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC/B,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;YAC7B,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC5B,CAAC;QACD,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;GAGG;AACH,SAAS,kBAAkB,CACzB,IAAY,EACZ,SAAmC;IAEnC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,MAAM,KAAK,GAAa,CAAC,IAAI,CAAC,CAAC;IAE/B,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,EAAG,CAAC;QAC7B,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ;YAAE,SAAS;QAExB,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;YAC7B,IAAI,KAAK,KAAK,IAAI;gBAAE,SAAS;YAC7B,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC;gBAAE,SAAS;YACrC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAAC,aAAqC;IACrE,MAAM,SAAS,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;IACpD,MAAM,UAAU,GAAe,IAAI,GAAG,EAAE,CAAC;IAEzC,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IAE7C,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE,CAAC;QAChC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC","sourcesContent":["/**\n * Resource Subtree Map Utility\n *\n * Computes a pre-built map from each resource type to all its descendants\n * in the relationship graph. Used by the navigation resolver to determine\n * whether a target resource is \"in scope\" of the PRIMARY zone's current\n * content (PROMOTE decision — D23).\n *\n * Convention: resourceType1 = parent, resourceType2 = child.\n * Cycles are handled via the `allowCycle` flag — edges with `allowCycle: true`\n * are still traversed, but the visited-set prevents infinite recursion.\n */\n\nimport type { ResourceRelationship } from '../resources.shared.schemas';\n\nexport type SubtreeMap = Map<string, Set<string>>;\n\n/**\n * Build an adjacency list (parent → children) from flat relationship array.\n * Disabled relationships are excluded.\n */\nfunction buildAdjacencyList(relationships: ResourceRelationship[]): Map<string, Set<string>> {\n const adj = new Map<string, Set<string>>();\n\n for (const rel of relationships) {\n if (rel.isDisabled) continue;\n\n const parent = rel.resourceType1;\n const child = rel.resourceType2;\n\n let children = adj.get(parent);\n if (!children) {\n children = new Set<string>();\n adj.set(parent, children);\n }\n children.add(child);\n }\n\n return adj;\n}\n\n/**\n * Compute transitive descendants for a single resource type via DFS.\n * Returns the set of all resource types reachable as descendants.\n */\nfunction collectDescendants(\n root: string,\n adjacency: Map<string, Set<string>>,\n): Set<string> {\n const descendants = new Set<string>();\n const stack: string[] = [root];\n\n while (stack.length > 0) {\n const current = stack.pop()!;\n const children = adjacency.get(current);\n if (!children) continue;\n\n for (const child of children) {\n if (child === root) continue;\n if (descendants.has(child)) continue;\n descendants.add(child);\n stack.push(child);\n }\n }\n\n return descendants;\n}\n\n/**\n * Compute the subtree map for all resource types in the relationship graph.\n *\n * For each resource type that appears as a parent (resourceType1), computes\n * the full set of transitive descendants. Self-references and cycles are\n * handled by the visited-set guard in `collectDescendants`.\n *\n * @param relationships - All registered resource relationships\n * @returns Map from resource type to the set of all its descendant resource types\n */\nexport function computeSubtreeMap(relationships: ResourceRelationship[]): SubtreeMap {\n const adjacency = buildAdjacencyList(relationships);\n const subtreeMap: SubtreeMap = new Map();\n\n const allParents = new Set(adjacency.keys());\n\n for (const parent of allParents) {\n subtreeMap.set(parent, collectDescendants(parent, adjacency));\n }\n\n return subtreeMap;\n}\n"]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Utilities for extracting context needs from resource configuration functions.
|
|
3
3
|
* Similar to how virtual fields extract needsObjectContext/needsUserContext flags.
|
|
4
4
|
*/
|
|
5
|
-
import type { ResourceConfiguration_FunctionContextNeeds, ResourceConfiguration_FunctionWithContextNeeds } from '../resources-config.shared.schemas
|
|
5
|
+
import type { ResourceConfiguration_FunctionContextNeeds, ResourceConfiguration_FunctionWithContextNeeds } from '../resources-config.shared.schemas';
|
|
6
6
|
/**
|
|
7
7
|
* Extract context needs from a function that may have needsObjectContext/needsUserContext flags.
|
|
8
8
|
* Functions can be either:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resources-config-context-needs.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"resources-config-context-needs.utils.d.ts","sourceRoot":"","sources":["../../../../../src/resources/utils/resources-config-context-needs.utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,0CAA0C,EAAE,8CAA8C,EAAE,MAAM,oCAAoC,CAAC;AAErJ;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,SAAS,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACnF,EAAE,EAAE,8CAA8C,CAAC,SAAS,CAAC,GAAG,SAAS,GAAG,SAAS,GACpF,0CAA0C,CAa5C;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,SAAS,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAClF,EAAE,EAAE,8CAA8C,CAAC,SAAS,CAAC,GAAG,SAAS,GAAG,SAAS,GACpF,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,SAAS,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAChF,EAAE,EAAE,8CAA8C,CAAC,SAAS,CAAC,GAAG,SAAS,GAAG,SAAS,GACpF,OAAO,CAET;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,UAAU,SAAS;IAC9D,gBAAgB,CAAC,EAAE,8CAA8C,CAAC,GAAG,CAAC,CAAC;IACvE,oBAAoB,CAAC,EAAE,8CAA8C,CAAC,GAAG,CAAC,CAAC;CAC5E,EAAE,SAAS,EAAE,UAAU,GAAG,0CAA0C,CAQpE"}
|
|
@@ -44,4 +44,4 @@ export function analyzeOperationContextNeeds(operation) {
|
|
|
44
44
|
needsUserContext: enabledConditionNeeds.needsUserContext || basicPrefixOperationNeeds.needsUserContext,
|
|
45
45
|
};
|
|
46
46
|
}
|
|
47
|
-
//# sourceMappingURL=resources-config-context-needs.utils.js.map
|
|
47
|
+
//# sourceMappingURL=resources-config-context-needs.utils.js.map
|