@saasicat/nest 0.21.0 → 0.22.1
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/dist/_entries.cjs +409 -276
- package/dist/admin/index.js +1 -1
- package/dist/{aggregation-o0LMenvl.d.ts → aggregation-DP5zfKbU.d.ts} +3 -3
- package/dist/{aggregation-SKfXu09x.d.cts → aggregation-mZ7WZROK.d.cts} +3 -3
- package/dist/billing/index.d.cts +12 -10
- package/dist/billing/index.d.ts +12 -10
- package/dist/billing/index.js +6 -2
- package/dist/catalog/index.d.cts +10 -10
- package/dist/catalog/index.d.ts +10 -10
- package/dist/catalog/index.js +2 -2
- package/dist/{catalog.module-BKObceo0.d.ts → catalog.module-CQr1FpkI.d.ts} +6 -6
- package/dist/{catalog.module-Dw2Hrbyu.d.cts → catalog.module-D-_pQDNA.d.cts} +6 -6
- package/dist/{chunk-GC5AKN44.js → chunk-7X5MSAIL.js} +7 -7
- package/dist/{chunk-55QGAZRQ.js → chunk-7ZPFQXHM.js} +1 -1
- package/dist/{chunk-NZLAYCEX.js → chunk-A7FHAN2I.js} +17 -3
- package/dist/{chunk-ZH5PYEMI.js → chunk-LPCUHZWC.js} +180 -61
- package/dist/{chunk-3DRZ5GCP.js → chunk-MJ32VNZD.js} +1 -1
- package/dist/{chunk-AGOG5B77.js → chunk-NNNXXUPT.js} +1 -1
- package/dist/{chunk-FYWLPYBK.js → chunk-SN5UOC43.js} +3 -3
- package/dist/{define-saasicat-B20Ms8UC.d.ts → define-saasicat-BK6RRWWG.d.ts} +1 -1
- package/dist/{define-saasicat-Cf9DpEsY.d.cts → define-saasicat-D30I-WET.d.cts} +1 -1
- package/dist/discovery/index.d.cts +2 -2
- package/dist/discovery/index.d.ts +2 -2
- package/dist/{enforce-quota.interceptor-CUyfR4cQ.d.ts → enforce-quota.interceptor-B9QueAFf.d.ts} +4 -1
- package/dist/{enforce-quota.interceptor-Dtg5WdFj.d.cts → enforce-quota.interceptor-DY6CLjoP.d.cts} +4 -1
- package/dist/entitlement/index.d.cts +1 -1
- package/dist/entitlement/index.d.ts +1 -1
- package/dist/entitlement/index.js +1 -1
- package/dist/index.d.cts +8 -8
- package/dist/index.d.ts +8 -8
- package/dist/index.js +12 -8
- package/dist/{plan-versions.service-BB36Q1bg.d.ts → plan-versions.service-B-YoE4SZ.d.ts} +1 -1
- package/dist/{plan-versions.service-CUR2Whyr.d.cts → plan-versions.service-_saKzb50.d.cts} +1 -1
- package/dist/platform/index.d.cts +31 -13
- package/dist/platform/index.d.ts +31 -13
- package/dist/platform/index.js +8 -6
- package/dist/registration/index.d.cts +1 -1
- package/dist/registration/index.d.ts +1 -1
- package/dist/registration/index.js +1 -1
- package/dist/{saas-platform.module-BfaYfL-G.d.cts → saas-platform.module-CgalxzcT.d.cts} +2 -2
- package/dist/{saas-platform.module-DChhDrR-.d.ts → saas-platform.module-D1mUZPrz.d.ts} +2 -2
- package/dist/{subscription-bundles.module-BQmoozm5.d.ts → subscription-bundles.module-BDbODWvA.d.ts} +9 -1
- package/dist/{subscription-bundles.module-DCpV-Pb5.d.cts → subscription-bundles.module-Cfi-lFWF.d.cts} +9 -1
- package/dist/{tenant-billing.controller-DT5UrnDX.d.ts → tenant-billing.controller-BSlpFqVA.d.ts} +3 -3
- package/dist/{tenant-billing.controller-BIF-mstX.d.cts → tenant-billing.controller-DHSUrT_N.d.cts} +3 -3
- package/dist/testing/index.d.cts +5 -5
- package/dist/testing/index.d.ts +5 -5
- package/dist/testing/index.js +6 -6
- package/package.json +3 -3
- /package/dist/{chunk-EWPF57AG.js → chunk-FY4EJTV4.js} +0 -0
package/dist/index.d.cts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { P as ProviderSpec, a as asProvider } from './di-CcNeq9v-.cjs';
|
|
2
|
-
import { S as SetupService } from './define-saasicat-
|
|
3
|
-
export { a as SAASICAT_PUBLIC_ROUTE_KEY, b as SETUP_CONFIG_TOKEN, c as SETUP_PROVISIONING_PORT_TOKEN, d as SaaSiCatPublicRoute, e as SetupConfig, f as defineSaaSiCat, i as isSaaSiCatPublicRoute } from './define-saasicat-
|
|
2
|
+
import { S as SetupService } from './define-saasicat-D30I-WET.cjs';
|
|
3
|
+
export { a as SAASICAT_PUBLIC_ROUTE_KEY, b as SETUP_CONFIG_TOKEN, c as SETUP_PROVISIONING_PORT_TOKEN, d as SaaSiCatPublicRoute, e as SetupConfig, f as defineSaaSiCat, i as isSaaSiCatPublicRoute } from './define-saasicat-D30I-WET.cjs';
|
|
4
4
|
export { CreatePromoCodeDto, PROMO_CODE_REDEMPTION_REPOSITORY_TOKEN, PROMO_CODE_REPOSITORY_TOKEN, PROMO_CODE_VALIDATION_LOG_REPOSITORY_TOKEN, PROMO_FIRST_TIME_CUSTOMER_CHECK_TOKEN, PROMO_REVENUE_DEDUCTION_AGGREGATOR_TOKEN, PROMO_SERVICE_CONFIG_TOKEN, PROMO_SUBSCRIPTION_LOOKUP_TOKEN, PROMO_TRANSACTION_RUNNER_TOKEN, PreviewPromoCodeDto, PromoCodeExpirer, PromoCodeForCalc, PromoCodePublicController, UpdatePromoCodeDto, addCycles, buildLabel, buildPromoCodeAdminController, computeDiscountGross, computeDiscountedGross, computeIncludedVat, computeRegularStartsAt, grossFromNet, round2 } from './promo/index.cjs';
|
|
5
5
|
export { a as PreviewInput, b as PreviewInvalid, c as PreviewReason, d as PreviewResult, e as PreviewValid, f as PromoCodeStats, g as PromoCodesService, P as PromoServiceConfig, R as RedeemInput } from './service-D48clObR.cjs';
|
|
6
6
|
export { P as PromoCodeRateLimitGuard, h as hashIp, i as ipFingerprint } from './rate-limit.guard-dntqAlfZ.cjs';
|
|
@@ -8,22 +8,22 @@ export { P as PromoCodesModule, a as PromoCodesModuleOptions } from './module-CH
|
|
|
8
8
|
export { AjvErrorLike, CatalogBundleUpsellResolver, ConfiguratorCatalogBuilder, FEATURE_GUARD_CONFIG_TOKEN, FEATURE_UI_REGISTRY_TOKEN, FeatureGuard, FeatureGuardConfig, LimitExceededFilter, LoadPlanCatalogOptions, MarketingFields, NextPeriodWindow, PLAN_CATALOG_IMPORT_SINK_TOKEN, PLAN_CATALOG_READ_SINK_TOKEN, PLAN_CATALOG_TOKEN, PUBLIC_CATALOG_BUNDLE_REPOSITORY_TOKEN, PUBLIC_CATALOG_MARKETING_REPOSITORY_TOKEN, PUBLIC_CATALOG_PROJECT_KEY_TOKEN, PeriodRollInput, PlanCatalogBuildSettings, PlanCatalogImportDto, PlanCatalogImporterControllerConfig, PlanCatalogImporterModule, PlanCatalogImporterModuleOptions, PlanCatalogImporterService, PlanCatalogModule, PlanCatalogModuleOptions, PlanCatalogValidationError, PlanResponseEntry, PublicBundleEntry, PublicCatalogController, PublicCatalogModule, PublicCatalogModuleOptions, PublishValidationError, PublishablePlanVersion, REQUIRE_FEATURE_KEY, RenewalDecision, RenewalSubInput, RequireFeature, SUBSCRIPTION_BUNDLE_CONFIG_TOKEN, SUBSCRIPTION_BUNDLE_REPOSITORY_TOKEN, SubscriptionContractFreezeService, UPSELL_OFFER_CURRENCY_TOKEN, UPSELL_OFFER_RESOLVER_TOKEN, assertBaseVersionFresh, assertChangeNote, assertDraftPublishable, assertOptimisticLockHeld, buildPlanCatalogFromSnapshot, buildPlanCatalogImporterController, buildTenantSubscriptionBundlesController, clearPendingPlanVersionFields, computeCarriedTrialEndsAt, computeNextPeriod, decideRenewal, findPlan, getActiveFeatureKeys, getMarketedPlans, getPlanOrThrow, getPlanPriceGross, getPlanPriceNet, getPlanQuota, initialPeriodWindow, isFeatureInPlan, isFeaturePlannedOnly, loadPlanCatalogFromFile, loadPlanCatalogFromString, periodEndAfter, periodEndWithMinLead } from './billing/index.cjs';
|
|
9
9
|
import { SetupStatusResponse, SetupResult, SetupConfirmMfaResponse, PlatformErrorCode, PlatformErrorBody } from '@saasicat/types';
|
|
10
10
|
export { BundleVersionFields, ChangeDirection, DiffResult, DiscoveredCapability, DiscoveredFeature, DiscoveredQuota, DiscoverySnapshot, PasswordHasher, PlanVersionFields, VersionChange, VersionChangeDirection, classifyBundleVersionDiff, classifyPlanDiff } from '@saasicat/types';
|
|
11
|
-
export { A as AUDIT_CONTEXT_RESOLVER_TOKEN, a as AuditContextResolver, b as AuthGuardList, C as CONTRACT_FREEZE_PORT_TOKEN, c as CONTRACT_FREEZE_PROJECT_KEY_TOKEN, d as CONTRACT_FREEZE_SOURCE_PORT_TOKEN, e as ContractFreezeBundleSnapshot, f as ContractFreezePort, g as ContractFreezeSourcePort, D as DuePendingPlanChange, P as PENDING_PLAN_QUERY_PORT_TOKEN, h as PendingPlanQueryPort, S as SELF_SERVICE_BLOCKED_BUNDLES_TOKEN, i as SELF_SERVICE_BLOCKED_PLANS_TOKEN, j as SUBSCRIPTION_USAGE_PORT_TOKEN, k as SUBSCRIPTION_WRITE_PORT_TOKEN, l as SelfServiceBlockedBundles, m as SelfServiceBlockedPlans, n as SubscriptionBundleControllerOptions, o as SubscriptionBundleModule, p as SubscriptionBundleModuleOptions, T as TENANT_AUTH_GUARDS_TOKEN, q as TENANT_ID_RESOLVER_TOKEN, r as TRIAL_PROJECTION_PORT_TOKEN, s as TenantBillingModule, t as TenantBillingModuleOptions, u as TenantIdResolver, v as TrialProjectionInput, w as TrialProjectionPort, U as USAGE_SNAPSHOT_PORT_TOKEN, x as USER_EMAIL_RESOLVER_TOKEN, y as USER_ID_RESOLVER_TOKEN, z as UserEmailResolver, B as UserIdResolver } from './subscription-bundles.module-
|
|
12
|
-
export { A as AddBundleToSubscriptionInput, B as BundlePreviewSnapshot, C as CancelBundleFromSubscriptionInput, a as CancelSubscriptionDto, b as ChangePlanDto, c as CompleteOnboardingSubscriptionDto, d as ComposedTenantAuthGuard, L as LimitsCheckRow, P as PendingPlanMaterializationService, e as PlanChangeContext, f as PlanChangePreviewDto, g as PlanChangePreviewIssue, h as PlanChangePreviewService, i as PlanChangeType, j as PlanSnapshotDto, k as PreviewPlanChangeDto, l as ProrationDto, m as ProrationInput, R as RedundantFeatureHint, S as SubscriptionBundleAddPreviewDto, n as SubscriptionBundleCancelPreviewDto, o as SubscriptionBundleConfig, p as SubscriptionBundlePreviewContext, q as SubscriptionBundlePreviewIssue, r as SubscriptionBundlePreviewService, s as SubscriptionBundlesService, T as TenantAdminGuard, t as TenantBillingController, U as UsageResponse, u as addMonths, v as computeProration, w as resolveBundleCancelEffectiveAt, x as resolveBundlePriceNet } from './tenant-billing.controller-
|
|
13
|
-
export { C as CustomLimitsShape, E as EffectiveLimits, a as EffectiveLimitsSnapshot, b as EnforceLimitInput, c as EntitlementService, P as PlanVersionSnapshot, S as SubscriptionBundleSnapshot, d as SubscriptionLimitsInput, e as aggregateContractLineItemEntitlements, f as aggregateLimits, g as aggregateSubscriptionBundleQuotas, h as applyCustomLimits, i as collectSubscriptionBundleFeatures, j as contractBundleVersionIds, k as contractLimits, l as filterActiveSubscriptionBundles, m as filterPlannedOnlyFeatures, n as hasAnyFeature, o as hasFeature, p as mergeSubscriptionBundlesIntoLimits, t as toEffectiveLimitsSnapshot } from './aggregation-
|
|
11
|
+
export { A as AUDIT_CONTEXT_RESOLVER_TOKEN, a as AuditContextResolver, b as AuthGuardList, C as CONTRACT_FREEZE_PORT_TOKEN, c as CONTRACT_FREEZE_PROJECT_KEY_TOKEN, d as CONTRACT_FREEZE_SOURCE_PORT_TOKEN, e as ContractFreezeBundleSnapshot, f as ContractFreezePort, g as ContractFreezeSourcePort, D as DuePendingPlanChange, F as FEATURE_GUARD_MARKER, M as MarkedFeatureGuard, P as PENDING_PLAN_QUERY_PORT_TOKEN, h as PendingPlanQueryPort, S as SELF_SERVICE_BLOCKED_BUNDLES_TOKEN, i as SELF_SERVICE_BLOCKED_PLANS_TOKEN, j as SUBSCRIPTION_USAGE_PORT_TOKEN, k as SUBSCRIPTION_WRITE_PORT_TOKEN, l as SelfServiceBlockedBundles, m as SelfServiceBlockedPlans, n as SubscriptionBundleControllerOptions, o as SubscriptionBundleModule, p as SubscriptionBundleModuleOptions, T as TENANT_AUTH_GUARDS_TOKEN, q as TENANT_ID_RESOLVER_TOKEN, r as TRIAL_PROJECTION_PORT_TOKEN, s as TenantBillingModule, t as TenantBillingModuleOptions, u as TenantIdResolver, v as TrialProjectionInput, w as TrialProjectionPort, U as USAGE_SNAPSHOT_PORT_TOKEN, x as USER_EMAIL_RESOLVER_TOKEN, y as USER_ID_RESOLVER_TOKEN, z as UserEmailResolver, B as UserIdResolver, E as isPlatformFeatureGuard } from './subscription-bundles.module-Cfi-lFWF.cjs';
|
|
12
|
+
export { A as AddBundleToSubscriptionInput, B as BundlePreviewSnapshot, C as CancelBundleFromSubscriptionInput, a as CancelSubscriptionDto, b as ChangePlanDto, c as CompleteOnboardingSubscriptionDto, d as ComposedTenantAuthGuard, L as LimitsCheckRow, P as PendingPlanMaterializationService, e as PlanChangeContext, f as PlanChangePreviewDto, g as PlanChangePreviewIssue, h as PlanChangePreviewService, i as PlanChangeType, j as PlanSnapshotDto, k as PreviewPlanChangeDto, l as ProrationDto, m as ProrationInput, R as RedundantFeatureHint, S as SubscriptionBundleAddPreviewDto, n as SubscriptionBundleCancelPreviewDto, o as SubscriptionBundleConfig, p as SubscriptionBundlePreviewContext, q as SubscriptionBundlePreviewIssue, r as SubscriptionBundlePreviewService, s as SubscriptionBundlesService, T as TenantAdminGuard, t as TenantBillingController, U as UsageResponse, u as addMonths, v as computeProration, w as resolveBundleCancelEffectiveAt, x as resolveBundlePriceNet } from './tenant-billing.controller-DHSUrT_N.cjs';
|
|
13
|
+
export { C as CustomLimitsShape, E as EffectiveLimits, a as EffectiveLimitsSnapshot, b as EnforceLimitInput, c as EntitlementService, P as PlanVersionSnapshot, S as SubscriptionBundleSnapshot, d as SubscriptionLimitsInput, e as aggregateContractLineItemEntitlements, f as aggregateLimits, g as aggregateSubscriptionBundleQuotas, h as applyCustomLimits, i as collectSubscriptionBundleFeatures, j as contractBundleVersionIds, k as contractLimits, l as filterActiveSubscriptionBundles, m as filterPlannedOnlyFeatures, n as hasAnyFeature, o as hasFeature, p as mergeSubscriptionBundlesIntoLimits, t as toEffectiveLimitsSnapshot } from './aggregation-mZ7WZROK.cjs';
|
|
14
14
|
export { ENTITLEMENT_RESOLUTION_CONFIG_TOKEN, ENTITLEMENT_SERVICE_TOKEN, EntitlementModule, EntitlementModuleOptions, LimitExceededError, PLAN_VERSION_REPOSITORY_TOKEN, ReplacedByIndex, SUBSCRIPTION_REPOSITORY_TOKEN, TRANSACTION_RUNNER_TOKEN, buildReplacedByIndex, expandReplacedFeatures, isLimitExceededError } from './entitlement/index.cjs';
|
|
15
15
|
export { E as EntitlementResolutionConfig, a as EntitlementResolutionInput, r as resolveEntitlementPlan } from './plan-resolution-CFCoUkrE.cjs';
|
|
16
16
|
export { ADMIN_STATS_AUDIT_WINDOW_DAYS_TOKEN, AUDIT_PORT_TOKEN, AUDIT_STATS_PORT_TOKEN, AdminPublicBootController, AdminStatsController, MFA_PORT_TOKEN, PLATFORM_CORE_MANIFEST_CONTRIBUTION, PROMO_CODE_STATS_PORT_TOKEN, RLS_BYPASS_PORT_TOKEN, SUBSCRIPTION_STATS_PORT_TOKEN, buildAdminStatsController } from './admin/index.cjs';
|
|
17
17
|
export { A as AdminBypassRlsInterceptor, a as AdminManifestModule, b as AdminManifestModuleOptions, c as AdminManifestService, d as AdminModule, e as AdminModuleOptions, f as AdminStatsService, g as AdminStatsSnapshot, M as MfaGuard, h as MfaService, P as PLATFORM_CORE_CONTRIBUTION_TOKEN, R as REQUIRE_MFA_KEY, i as RequireMfa, S as SuperAdminGuard, T as TotpSetupResult, V as VerifyTotpInput } from './admin-stats.service-HUZIU448.cjs';
|
|
18
18
|
export { A as AdminAuditService } from './admin-audit.service-9IqXMlZm.cjs';
|
|
19
19
|
export { A as ADMIN_MANIFEST_CONFIG, a as ADMIN_RESOURCES_PORT_TOKEN, b as AdminManifestConfig, c as AdminResourcesModule, d as AdminResourcesModuleOptions, e as AdminResourcesService, f as AdminStatsModule, g as AdminStatsModuleOptions, S as SuspendTenantDto } from './admin-resources.module-DGgGSdzN.cjs';
|
|
20
|
-
export { S as SaaSiCatModule, a as SaasPlatformAdapters, b as SaasPlatformAdminResourcesOptions, c as SaasPlatformAdminStatsOptions, d as SaasPlatformCatalogOptions, e as SaasPlatformCheckoutOfferOptions, S as SaasPlatformModule, f as SaasPlatformModuleOptions, g as SaasPlatformPromoCodesOptions, h as SaasPlatformSetupOptions, i as SaasPlatformSubscriptionBundlesOptions, j as SaasPlatformSubscriptionContractOptions, k as SaasPlatformTenantAuthGuards, l as SaasPlatformTenantBillingOptions, m as SetupModule, n as SetupModuleOptions } from './saas-platform.module-
|
|
20
|
+
export { S as SaaSiCatModule, a as SaasPlatformAdapters, b as SaasPlatformAdminResourcesOptions, c as SaasPlatformAdminStatsOptions, d as SaasPlatformCatalogOptions, e as SaasPlatformCheckoutOfferOptions, S as SaasPlatformModule, f as SaasPlatformModuleOptions, g as SaasPlatformPromoCodesOptions, h as SaasPlatformSetupOptions, i as SaasPlatformSubscriptionBundlesOptions, j as SaasPlatformSubscriptionContractOptions, k as SaasPlatformTenantAuthGuards, l as SaasPlatformTenantBillingOptions, m as SetupModule, n as SetupModuleOptions } from './saas-platform.module-CgalxzcT.cjs';
|
|
21
21
|
export { ACTIVATION_ORCHESTRATOR_TOKEN, BaseIpRateLimitGuard, ContinueRegistrationDto, PASSWORD_HASHER_TOKEN, PAYMENT_EVENT_LOG_TOKEN, PAYMENT_PROVIDER_TOKEN, PENDING_REGISTRATION_REPOSITORY_TOKEN, PLAN_CATALOG_LOOKUP_TOKEN, PaymentWebhookDto, PendingRegistrationService, PreviewRegistrationPromoDto, PromoEvaluation, REGISTRATION_AUDIT_LOGGER_TOKEN, REGISTRATION_CONFIGURATOR_LOOKUP_TOKEN, REGISTRATION_CONFIG_TOKEN, REGISTRATION_OTP_DELIVERY_TOKEN, REGISTRATION_PROMO_PREVIEW_TOKEN, REGISTRATION_RESUME_BASE_URL_TOKEN, REGISTRATION_RESUME_DELIVERY_TOKEN, REGISTRATION_RESUME_TOKEN_SIGNER_TOKEN, RegisterStartDto, RegistrationCleanupCron, RegistrationModule, RegistrationModuleOptions, ResendRegistrationOtpDto, SLUG_AVAILABILITY_CHECK_TOKEN, SaveRegistrationConfigDto, SaveRegistrationConfigSelectionDto, SelectRegistrationPlanDto, StartRegistrationCheckoutDto, USER_ACCOUNT_LOOKUP_TOKEN, VerifyRegistrationOtpDto, computeBreakdown, generateOtpCode, hashOtpCode, resolveModel, slugify, verifyOtpCode } from './registration/index.cjs';
|
|
22
22
|
export { DEFINES_QUOTA_KEY, DISCOVERY_SNAPSHOT_TOKEN, DefinesQuota, DefinesQuotaOptions, DiscoveryControllerConfig, DiscoveryModule, DiscoveryModuleOptions, DiscoverySnapshotNotFoundError, ENFORCE_QUOTA_KEY, EnforceQuota, EnforceQuotaMetadata, EnforceQuotaOptions, HeadlessScanOptions, IMPLEMENTS_CAPABILITY_KEY, ImplementsCapability, ImplementsCapabilityMetadata, ImplementsCapabilityOptions, REQUIRES_CAPABILITY_KEY, RequiresCapability, RequiresCapabilityKeys, buildDiscoveryController, loadDiscoverySnapshotFromFile, runHeadlessDiscoveryScan } from './discovery/index.cjs';
|
|
23
23
|
export { D as DISCOVERY_APP_INFO_TOKEN, a as DISCOVERY_SNAPSHOT_PATH_TOKEN, b as DiscoveryAppInfo, c as DiscoveryScanner, d as computeSnapshotHash } from './discovery.scanner-DLgEvuoy.cjs';
|
|
24
|
-
export { B as BundlesService, C as CatalogEntriesService, a as CatalogServiceConfig, M as MarketingProjectionsService, b as MarketingSettingsService, P as PlanVersionsService, c as PlansService, d as PromotionsService, e as PublicMarketingCatalogService } from './plan-versions.service-
|
|
24
|
+
export { B as BundlesService, C as CatalogEntriesService, a as CatalogServiceConfig, M as MarketingProjectionsService, b as MarketingSettingsService, P as PlanVersionsService, c as PlansService, d as PromotionsService, e as PublicMarketingCatalogService } from './plan-versions.service-_saKzb50.cjs';
|
|
25
25
|
export { ADVISORY_STRICT_MODE_CODES, BUNDLE_REPOSITORY_TOKEN, CATALOG_ENTRY_REPOSITORY_TOKEN, CATALOG_SERVICE_CONFIG_TOKEN, CreateBundleDto, CreateBundleVersionDraftDto, CreateMarketingProjectionDto, CreatePlanDto, CreatePlanVersionDraftDto, CreatePromotionDto, ListCatalogEntriesQueryDto, ListMarketingProjectionsQueryDto, ListMarketingSettingsQueryDto, ListPromotionsQueryDto, MARKETING_PROJECTION_REPOSITORY_TOKEN, MARKETING_SETTINGS_REPOSITORY_TOKEN, PLAN_REPOSITORY_TOKEN, PROMOTION_REPOSITORY_TOKEN, PreflightFinding, PreflightInput, PreflightReport, PublishBundleVersionDto, PublishPlanVersionDto, ReviewCatalogEntryDto, SeedBundleDraft, SeedGateFinding, SeedGateInput, SeedGateMode, SeedGateReport, SeedGateRunOptions, SeedPlanDraft, SyncDiscoveryDto, UpdateBundleDto, UpdateBundleVersionDraftDto, UpdateCatalogEntryI18nDto, UpdateMarketingProjectionDto, UpdateMarketingSettingsDto, UpdatePlanDto, UpdatePlanVersionDraftDto, UpdatePromotionDto, blockingStrictModeWarnings, buildBundleVersionsController, buildBundlesController, buildCatalogEntriesController, buildMarketingProjectionsController, buildMarketingSettingsController, buildPlanVersionsController, buildPlansController, buildPromotionsController, buildPublicMarketingCatalogController, featureApprovalSignature, formatPreflightReport, formatSeedGateReport, loadApprovedCatalogKeys, preflightExitCode, quotaApprovalSignature, runPreflight, runSeedGateFromFile, seedGateExitCode, validateBundleDraft, validatePlanDraft, validateSeedAgainstSnapshot } from './catalog/index.cjs';
|
|
26
|
-
export { C as CatalogControllerConfig, a as CatalogModule, b as CatalogModuleOptions } from './catalog.module-
|
|
26
|
+
export { C as CatalogControllerConfig, a as CatalogModule, b as CatalogModuleOptions } from './catalog.module-D-_pQDNA.cjs';
|
|
27
27
|
export { C as CheckoutOfferService } from './checkout-offer.service-BX51dljL.cjs';
|
|
28
28
|
export { CHECKOUT_OFFER_REPOSITORY_TOKEN, CreateCheckoutOfferDto, UpdateCheckoutOfferDto, buildCheckoutOfferController } from './checkout-offer/index.cjs';
|
|
29
29
|
export { C as CheckoutOfferControllerConfig, a as CheckoutOfferModule, b as CheckoutOfferModuleOptions } from './checkout-offer.module-DmlpPevf.cjs';
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { P as ProviderSpec, a as asProvider } from './di-CcNeq9v-.js';
|
|
2
|
-
import { S as SetupService } from './define-saasicat-
|
|
3
|
-
export { a as SAASICAT_PUBLIC_ROUTE_KEY, b as SETUP_CONFIG_TOKEN, c as SETUP_PROVISIONING_PORT_TOKEN, d as SaaSiCatPublicRoute, e as SetupConfig, f as defineSaaSiCat, i as isSaaSiCatPublicRoute } from './define-saasicat-
|
|
2
|
+
import { S as SetupService } from './define-saasicat-BK6RRWWG.js';
|
|
3
|
+
export { a as SAASICAT_PUBLIC_ROUTE_KEY, b as SETUP_CONFIG_TOKEN, c as SETUP_PROVISIONING_PORT_TOKEN, d as SaaSiCatPublicRoute, e as SetupConfig, f as defineSaaSiCat, i as isSaaSiCatPublicRoute } from './define-saasicat-BK6RRWWG.js';
|
|
4
4
|
export { CreatePromoCodeDto, PROMO_CODE_REDEMPTION_REPOSITORY_TOKEN, PROMO_CODE_REPOSITORY_TOKEN, PROMO_CODE_VALIDATION_LOG_REPOSITORY_TOKEN, PROMO_FIRST_TIME_CUSTOMER_CHECK_TOKEN, PROMO_REVENUE_DEDUCTION_AGGREGATOR_TOKEN, PROMO_SERVICE_CONFIG_TOKEN, PROMO_SUBSCRIPTION_LOOKUP_TOKEN, PROMO_TRANSACTION_RUNNER_TOKEN, PreviewPromoCodeDto, PromoCodeExpirer, PromoCodeForCalc, PromoCodePublicController, UpdatePromoCodeDto, addCycles, buildLabel, buildPromoCodeAdminController, computeDiscountGross, computeDiscountedGross, computeIncludedVat, computeRegularStartsAt, grossFromNet, round2 } from './promo/index.js';
|
|
5
5
|
export { a as PreviewInput, b as PreviewInvalid, c as PreviewReason, d as PreviewResult, e as PreviewValid, f as PromoCodeStats, g as PromoCodesService, P as PromoServiceConfig, R as RedeemInput } from './service-D48clObR.js';
|
|
6
6
|
export { P as PromoCodeRateLimitGuard, h as hashIp, i as ipFingerprint } from './rate-limit.guard-dntqAlfZ.js';
|
|
@@ -8,22 +8,22 @@ export { P as PromoCodesModule, a as PromoCodesModuleOptions } from './module-BE
|
|
|
8
8
|
export { AjvErrorLike, CatalogBundleUpsellResolver, ConfiguratorCatalogBuilder, FEATURE_GUARD_CONFIG_TOKEN, FEATURE_UI_REGISTRY_TOKEN, FeatureGuard, FeatureGuardConfig, LimitExceededFilter, LoadPlanCatalogOptions, MarketingFields, NextPeriodWindow, PLAN_CATALOG_IMPORT_SINK_TOKEN, PLAN_CATALOG_READ_SINK_TOKEN, PLAN_CATALOG_TOKEN, PUBLIC_CATALOG_BUNDLE_REPOSITORY_TOKEN, PUBLIC_CATALOG_MARKETING_REPOSITORY_TOKEN, PUBLIC_CATALOG_PROJECT_KEY_TOKEN, PeriodRollInput, PlanCatalogBuildSettings, PlanCatalogImportDto, PlanCatalogImporterControllerConfig, PlanCatalogImporterModule, PlanCatalogImporterModuleOptions, PlanCatalogImporterService, PlanCatalogModule, PlanCatalogModuleOptions, PlanCatalogValidationError, PlanResponseEntry, PublicBundleEntry, PublicCatalogController, PublicCatalogModule, PublicCatalogModuleOptions, PublishValidationError, PublishablePlanVersion, REQUIRE_FEATURE_KEY, RenewalDecision, RenewalSubInput, RequireFeature, SUBSCRIPTION_BUNDLE_CONFIG_TOKEN, SUBSCRIPTION_BUNDLE_REPOSITORY_TOKEN, SubscriptionContractFreezeService, UPSELL_OFFER_CURRENCY_TOKEN, UPSELL_OFFER_RESOLVER_TOKEN, assertBaseVersionFresh, assertChangeNote, assertDraftPublishable, assertOptimisticLockHeld, buildPlanCatalogFromSnapshot, buildPlanCatalogImporterController, buildTenantSubscriptionBundlesController, clearPendingPlanVersionFields, computeCarriedTrialEndsAt, computeNextPeriod, decideRenewal, findPlan, getActiveFeatureKeys, getMarketedPlans, getPlanOrThrow, getPlanPriceGross, getPlanPriceNet, getPlanQuota, initialPeriodWindow, isFeatureInPlan, isFeaturePlannedOnly, loadPlanCatalogFromFile, loadPlanCatalogFromString, periodEndAfter, periodEndWithMinLead } from './billing/index.js';
|
|
9
9
|
import { SetupStatusResponse, SetupResult, SetupConfirmMfaResponse, PlatformErrorCode, PlatformErrorBody } from '@saasicat/types';
|
|
10
10
|
export { BundleVersionFields, ChangeDirection, DiffResult, DiscoveredCapability, DiscoveredFeature, DiscoveredQuota, DiscoverySnapshot, PasswordHasher, PlanVersionFields, VersionChange, VersionChangeDirection, classifyBundleVersionDiff, classifyPlanDiff } from '@saasicat/types';
|
|
11
|
-
export { A as AUDIT_CONTEXT_RESOLVER_TOKEN, a as AuditContextResolver, b as AuthGuardList, C as CONTRACT_FREEZE_PORT_TOKEN, c as CONTRACT_FREEZE_PROJECT_KEY_TOKEN, d as CONTRACT_FREEZE_SOURCE_PORT_TOKEN, e as ContractFreezeBundleSnapshot, f as ContractFreezePort, g as ContractFreezeSourcePort, D as DuePendingPlanChange, P as PENDING_PLAN_QUERY_PORT_TOKEN, h as PendingPlanQueryPort, S as SELF_SERVICE_BLOCKED_BUNDLES_TOKEN, i as SELF_SERVICE_BLOCKED_PLANS_TOKEN, j as SUBSCRIPTION_USAGE_PORT_TOKEN, k as SUBSCRIPTION_WRITE_PORT_TOKEN, l as SelfServiceBlockedBundles, m as SelfServiceBlockedPlans, n as SubscriptionBundleControllerOptions, o as SubscriptionBundleModule, p as SubscriptionBundleModuleOptions, T as TENANT_AUTH_GUARDS_TOKEN, q as TENANT_ID_RESOLVER_TOKEN, r as TRIAL_PROJECTION_PORT_TOKEN, s as TenantBillingModule, t as TenantBillingModuleOptions, u as TenantIdResolver, v as TrialProjectionInput, w as TrialProjectionPort, U as USAGE_SNAPSHOT_PORT_TOKEN, x as USER_EMAIL_RESOLVER_TOKEN, y as USER_ID_RESOLVER_TOKEN, z as UserEmailResolver, B as UserIdResolver } from './subscription-bundles.module-
|
|
12
|
-
export { A as AddBundleToSubscriptionInput, B as BundlePreviewSnapshot, C as CancelBundleFromSubscriptionInput, a as CancelSubscriptionDto, b as ChangePlanDto, c as CompleteOnboardingSubscriptionDto, d as ComposedTenantAuthGuard, L as LimitsCheckRow, P as PendingPlanMaterializationService, e as PlanChangeContext, f as PlanChangePreviewDto, g as PlanChangePreviewIssue, h as PlanChangePreviewService, i as PlanChangeType, j as PlanSnapshotDto, k as PreviewPlanChangeDto, l as ProrationDto, m as ProrationInput, R as RedundantFeatureHint, S as SubscriptionBundleAddPreviewDto, n as SubscriptionBundleCancelPreviewDto, o as SubscriptionBundleConfig, p as SubscriptionBundlePreviewContext, q as SubscriptionBundlePreviewIssue, r as SubscriptionBundlePreviewService, s as SubscriptionBundlesService, T as TenantAdminGuard, t as TenantBillingController, U as UsageResponse, u as addMonths, v as computeProration, w as resolveBundleCancelEffectiveAt, x as resolveBundlePriceNet } from './tenant-billing.controller-
|
|
13
|
-
export { C as CustomLimitsShape, E as EffectiveLimits, a as EffectiveLimitsSnapshot, b as EnforceLimitInput, c as EntitlementService, P as PlanVersionSnapshot, S as SubscriptionBundleSnapshot, d as SubscriptionLimitsInput, e as aggregateContractLineItemEntitlements, f as aggregateLimits, g as aggregateSubscriptionBundleQuotas, h as applyCustomLimits, i as collectSubscriptionBundleFeatures, j as contractBundleVersionIds, k as contractLimits, l as filterActiveSubscriptionBundles, m as filterPlannedOnlyFeatures, n as hasAnyFeature, o as hasFeature, p as mergeSubscriptionBundlesIntoLimits, t as toEffectiveLimitsSnapshot } from './aggregation-
|
|
11
|
+
export { A as AUDIT_CONTEXT_RESOLVER_TOKEN, a as AuditContextResolver, b as AuthGuardList, C as CONTRACT_FREEZE_PORT_TOKEN, c as CONTRACT_FREEZE_PROJECT_KEY_TOKEN, d as CONTRACT_FREEZE_SOURCE_PORT_TOKEN, e as ContractFreezeBundleSnapshot, f as ContractFreezePort, g as ContractFreezeSourcePort, D as DuePendingPlanChange, F as FEATURE_GUARD_MARKER, M as MarkedFeatureGuard, P as PENDING_PLAN_QUERY_PORT_TOKEN, h as PendingPlanQueryPort, S as SELF_SERVICE_BLOCKED_BUNDLES_TOKEN, i as SELF_SERVICE_BLOCKED_PLANS_TOKEN, j as SUBSCRIPTION_USAGE_PORT_TOKEN, k as SUBSCRIPTION_WRITE_PORT_TOKEN, l as SelfServiceBlockedBundles, m as SelfServiceBlockedPlans, n as SubscriptionBundleControllerOptions, o as SubscriptionBundleModule, p as SubscriptionBundleModuleOptions, T as TENANT_AUTH_GUARDS_TOKEN, q as TENANT_ID_RESOLVER_TOKEN, r as TRIAL_PROJECTION_PORT_TOKEN, s as TenantBillingModule, t as TenantBillingModuleOptions, u as TenantIdResolver, v as TrialProjectionInput, w as TrialProjectionPort, U as USAGE_SNAPSHOT_PORT_TOKEN, x as USER_EMAIL_RESOLVER_TOKEN, y as USER_ID_RESOLVER_TOKEN, z as UserEmailResolver, B as UserIdResolver, E as isPlatformFeatureGuard } from './subscription-bundles.module-BDbODWvA.js';
|
|
12
|
+
export { A as AddBundleToSubscriptionInput, B as BundlePreviewSnapshot, C as CancelBundleFromSubscriptionInput, a as CancelSubscriptionDto, b as ChangePlanDto, c as CompleteOnboardingSubscriptionDto, d as ComposedTenantAuthGuard, L as LimitsCheckRow, P as PendingPlanMaterializationService, e as PlanChangeContext, f as PlanChangePreviewDto, g as PlanChangePreviewIssue, h as PlanChangePreviewService, i as PlanChangeType, j as PlanSnapshotDto, k as PreviewPlanChangeDto, l as ProrationDto, m as ProrationInput, R as RedundantFeatureHint, S as SubscriptionBundleAddPreviewDto, n as SubscriptionBundleCancelPreviewDto, o as SubscriptionBundleConfig, p as SubscriptionBundlePreviewContext, q as SubscriptionBundlePreviewIssue, r as SubscriptionBundlePreviewService, s as SubscriptionBundlesService, T as TenantAdminGuard, t as TenantBillingController, U as UsageResponse, u as addMonths, v as computeProration, w as resolveBundleCancelEffectiveAt, x as resolveBundlePriceNet } from './tenant-billing.controller-BSlpFqVA.js';
|
|
13
|
+
export { C as CustomLimitsShape, E as EffectiveLimits, a as EffectiveLimitsSnapshot, b as EnforceLimitInput, c as EntitlementService, P as PlanVersionSnapshot, S as SubscriptionBundleSnapshot, d as SubscriptionLimitsInput, e as aggregateContractLineItemEntitlements, f as aggregateLimits, g as aggregateSubscriptionBundleQuotas, h as applyCustomLimits, i as collectSubscriptionBundleFeatures, j as contractBundleVersionIds, k as contractLimits, l as filterActiveSubscriptionBundles, m as filterPlannedOnlyFeatures, n as hasAnyFeature, o as hasFeature, p as mergeSubscriptionBundlesIntoLimits, t as toEffectiveLimitsSnapshot } from './aggregation-DP5zfKbU.js';
|
|
14
14
|
export { ENTITLEMENT_RESOLUTION_CONFIG_TOKEN, ENTITLEMENT_SERVICE_TOKEN, EntitlementModule, EntitlementModuleOptions, LimitExceededError, PLAN_VERSION_REPOSITORY_TOKEN, ReplacedByIndex, SUBSCRIPTION_REPOSITORY_TOKEN, TRANSACTION_RUNNER_TOKEN, buildReplacedByIndex, expandReplacedFeatures, isLimitExceededError } from './entitlement/index.js';
|
|
15
15
|
export { E as EntitlementResolutionConfig, a as EntitlementResolutionInput, r as resolveEntitlementPlan } from './plan-resolution-CFCoUkrE.js';
|
|
16
16
|
export { ADMIN_STATS_AUDIT_WINDOW_DAYS_TOKEN, AUDIT_PORT_TOKEN, AUDIT_STATS_PORT_TOKEN, AdminPublicBootController, AdminStatsController, MFA_PORT_TOKEN, PLATFORM_CORE_MANIFEST_CONTRIBUTION, PROMO_CODE_STATS_PORT_TOKEN, RLS_BYPASS_PORT_TOKEN, SUBSCRIPTION_STATS_PORT_TOKEN, buildAdminStatsController } from './admin/index.js';
|
|
17
17
|
export { A as AdminBypassRlsInterceptor, a as AdminManifestModule, b as AdminManifestModuleOptions, c as AdminManifestService, d as AdminModule, e as AdminModuleOptions, f as AdminStatsService, g as AdminStatsSnapshot, M as MfaGuard, h as MfaService, P as PLATFORM_CORE_CONTRIBUTION_TOKEN, R as REQUIRE_MFA_KEY, i as RequireMfa, S as SuperAdminGuard, T as TotpSetupResult, V as VerifyTotpInput } from './admin-stats.service-Db2exT_d.js';
|
|
18
18
|
export { A as AdminAuditService } from './admin-audit.service-9IqXMlZm.js';
|
|
19
19
|
export { A as ADMIN_MANIFEST_CONFIG, a as ADMIN_RESOURCES_PORT_TOKEN, b as AdminManifestConfig, c as AdminResourcesModule, d as AdminResourcesModuleOptions, e as AdminResourcesService, f as AdminStatsModule, g as AdminStatsModuleOptions, S as SuspendTenantDto } from './admin-resources.module-BY5r_1MG.js';
|
|
20
|
-
export { S as SaaSiCatModule, a as SaasPlatformAdapters, b as SaasPlatformAdminResourcesOptions, c as SaasPlatformAdminStatsOptions, d as SaasPlatformCatalogOptions, e as SaasPlatformCheckoutOfferOptions, S as SaasPlatformModule, f as SaasPlatformModuleOptions, g as SaasPlatformPromoCodesOptions, h as SaasPlatformSetupOptions, i as SaasPlatformSubscriptionBundlesOptions, j as SaasPlatformSubscriptionContractOptions, k as SaasPlatformTenantAuthGuards, l as SaasPlatformTenantBillingOptions, m as SetupModule, n as SetupModuleOptions } from './saas-platform.module-
|
|
20
|
+
export { S as SaaSiCatModule, a as SaasPlatformAdapters, b as SaasPlatformAdminResourcesOptions, c as SaasPlatformAdminStatsOptions, d as SaasPlatformCatalogOptions, e as SaasPlatformCheckoutOfferOptions, S as SaasPlatformModule, f as SaasPlatformModuleOptions, g as SaasPlatformPromoCodesOptions, h as SaasPlatformSetupOptions, i as SaasPlatformSubscriptionBundlesOptions, j as SaasPlatformSubscriptionContractOptions, k as SaasPlatformTenantAuthGuards, l as SaasPlatformTenantBillingOptions, m as SetupModule, n as SetupModuleOptions } from './saas-platform.module-D1mUZPrz.js';
|
|
21
21
|
export { ACTIVATION_ORCHESTRATOR_TOKEN, BaseIpRateLimitGuard, ContinueRegistrationDto, PASSWORD_HASHER_TOKEN, PAYMENT_EVENT_LOG_TOKEN, PAYMENT_PROVIDER_TOKEN, PENDING_REGISTRATION_REPOSITORY_TOKEN, PLAN_CATALOG_LOOKUP_TOKEN, PaymentWebhookDto, PendingRegistrationService, PreviewRegistrationPromoDto, PromoEvaluation, REGISTRATION_AUDIT_LOGGER_TOKEN, REGISTRATION_CONFIGURATOR_LOOKUP_TOKEN, REGISTRATION_CONFIG_TOKEN, REGISTRATION_OTP_DELIVERY_TOKEN, REGISTRATION_PROMO_PREVIEW_TOKEN, REGISTRATION_RESUME_BASE_URL_TOKEN, REGISTRATION_RESUME_DELIVERY_TOKEN, REGISTRATION_RESUME_TOKEN_SIGNER_TOKEN, RegisterStartDto, RegistrationCleanupCron, RegistrationModule, RegistrationModuleOptions, ResendRegistrationOtpDto, SLUG_AVAILABILITY_CHECK_TOKEN, SaveRegistrationConfigDto, SaveRegistrationConfigSelectionDto, SelectRegistrationPlanDto, StartRegistrationCheckoutDto, USER_ACCOUNT_LOOKUP_TOKEN, VerifyRegistrationOtpDto, computeBreakdown, generateOtpCode, hashOtpCode, resolveModel, slugify, verifyOtpCode } from './registration/index.js';
|
|
22
22
|
export { DEFINES_QUOTA_KEY, DISCOVERY_SNAPSHOT_TOKEN, DefinesQuota, DefinesQuotaOptions, DiscoveryControllerConfig, DiscoveryModule, DiscoveryModuleOptions, DiscoverySnapshotNotFoundError, ENFORCE_QUOTA_KEY, EnforceQuota, EnforceQuotaMetadata, EnforceQuotaOptions, HeadlessScanOptions, IMPLEMENTS_CAPABILITY_KEY, ImplementsCapability, ImplementsCapabilityMetadata, ImplementsCapabilityOptions, REQUIRES_CAPABILITY_KEY, RequiresCapability, RequiresCapabilityKeys, buildDiscoveryController, loadDiscoverySnapshotFromFile, runHeadlessDiscoveryScan } from './discovery/index.js';
|
|
23
23
|
export { D as DISCOVERY_APP_INFO_TOKEN, a as DISCOVERY_SNAPSHOT_PATH_TOKEN, b as DiscoveryAppInfo, c as DiscoveryScanner, d as computeSnapshotHash } from './discovery.scanner-DLgEvuoy.js';
|
|
24
|
-
export { B as BundlesService, C as CatalogEntriesService, a as CatalogServiceConfig, M as MarketingProjectionsService, b as MarketingSettingsService, P as PlanVersionsService, c as PlansService, d as PromotionsService, e as PublicMarketingCatalogService } from './plan-versions.service-
|
|
24
|
+
export { B as BundlesService, C as CatalogEntriesService, a as CatalogServiceConfig, M as MarketingProjectionsService, b as MarketingSettingsService, P as PlanVersionsService, c as PlansService, d as PromotionsService, e as PublicMarketingCatalogService } from './plan-versions.service-B-YoE4SZ.js';
|
|
25
25
|
export { ADVISORY_STRICT_MODE_CODES, BUNDLE_REPOSITORY_TOKEN, CATALOG_ENTRY_REPOSITORY_TOKEN, CATALOG_SERVICE_CONFIG_TOKEN, CreateBundleDto, CreateBundleVersionDraftDto, CreateMarketingProjectionDto, CreatePlanDto, CreatePlanVersionDraftDto, CreatePromotionDto, ListCatalogEntriesQueryDto, ListMarketingProjectionsQueryDto, ListMarketingSettingsQueryDto, ListPromotionsQueryDto, MARKETING_PROJECTION_REPOSITORY_TOKEN, MARKETING_SETTINGS_REPOSITORY_TOKEN, PLAN_REPOSITORY_TOKEN, PROMOTION_REPOSITORY_TOKEN, PreflightFinding, PreflightInput, PreflightReport, PublishBundleVersionDto, PublishPlanVersionDto, ReviewCatalogEntryDto, SeedBundleDraft, SeedGateFinding, SeedGateInput, SeedGateMode, SeedGateReport, SeedGateRunOptions, SeedPlanDraft, SyncDiscoveryDto, UpdateBundleDto, UpdateBundleVersionDraftDto, UpdateCatalogEntryI18nDto, UpdateMarketingProjectionDto, UpdateMarketingSettingsDto, UpdatePlanDto, UpdatePlanVersionDraftDto, UpdatePromotionDto, blockingStrictModeWarnings, buildBundleVersionsController, buildBundlesController, buildCatalogEntriesController, buildMarketingProjectionsController, buildMarketingSettingsController, buildPlanVersionsController, buildPlansController, buildPromotionsController, buildPublicMarketingCatalogController, featureApprovalSignature, formatPreflightReport, formatSeedGateReport, loadApprovedCatalogKeys, preflightExitCode, quotaApprovalSignature, runPreflight, runSeedGateFromFile, seedGateExitCode, validateBundleDraft, validatePlanDraft, validateSeedAgainstSnapshot } from './catalog/index.js';
|
|
26
|
-
export { C as CatalogControllerConfig, a as CatalogModule, b as CatalogModuleOptions } from './catalog.module-
|
|
26
|
+
export { C as CatalogControllerConfig, a as CatalogModule, b as CatalogModuleOptions } from './catalog.module-CQr1FpkI.js';
|
|
27
27
|
export { C as CheckoutOfferService } from './checkout-offer.service-BX51dljL.js';
|
|
28
28
|
export { CHECKOUT_OFFER_REPOSITORY_TOKEN, CreateCheckoutOfferDto, UpdateCheckoutOfferDto, buildCheckoutOfferController } from './checkout-offer/index.js';
|
|
29
29
|
export { C as CheckoutOfferControllerConfig, a as CheckoutOfferModule, b as CheckoutOfferModuleOptions } from './checkout-offer.module-Ca3_TieR.js';
|
package/dist/index.js
CHANGED
|
@@ -37,7 +37,7 @@ import {
|
|
|
37
37
|
resolveModel,
|
|
38
38
|
slugify,
|
|
39
39
|
verifyOtpCode
|
|
40
|
-
} from "./chunk-
|
|
40
|
+
} from "./chunk-MJ32VNZD.js";
|
|
41
41
|
import "./chunk-UF53DWWR.js";
|
|
42
42
|
import {
|
|
43
43
|
formatPreflightReport,
|
|
@@ -47,7 +47,7 @@ import {
|
|
|
47
47
|
runSeedGateFromFile,
|
|
48
48
|
seedGateExitCode,
|
|
49
49
|
validateSeedAgainstSnapshot
|
|
50
|
-
} from "./chunk-
|
|
50
|
+
} from "./chunk-7ZPFQXHM.js";
|
|
51
51
|
import "./chunk-DBZGV3HC.js";
|
|
52
52
|
import {
|
|
53
53
|
DefinesQuota,
|
|
@@ -62,7 +62,7 @@ import {
|
|
|
62
62
|
} from "./chunk-74SCJ4HF.js";
|
|
63
63
|
import {
|
|
64
64
|
defineSaaSiCat
|
|
65
|
-
} from "./chunk-
|
|
65
|
+
} from "./chunk-FY4EJTV4.js";
|
|
66
66
|
import {
|
|
67
67
|
SETUP_CONFIG_TOKEN,
|
|
68
68
|
SETUP_PROVISIONING_PORT_TOKEN,
|
|
@@ -70,7 +70,7 @@ import {
|
|
|
70
70
|
SetupController,
|
|
71
71
|
SetupModule,
|
|
72
72
|
SetupService
|
|
73
|
-
} from "./chunk-
|
|
73
|
+
} from "./chunk-LPCUHZWC.js";
|
|
74
74
|
import {
|
|
75
75
|
CreatePromoCodeDto,
|
|
76
76
|
PreviewPromoCodeDto,
|
|
@@ -109,7 +109,7 @@ import {
|
|
|
109
109
|
SuperAdminGuard,
|
|
110
110
|
SuspendTenantDto,
|
|
111
111
|
buildAdminStatsController
|
|
112
|
-
} from "./chunk-
|
|
112
|
+
} from "./chunk-SN5UOC43.js";
|
|
113
113
|
import {
|
|
114
114
|
CONTRACT_FREEZE_PORT_TOKEN,
|
|
115
115
|
CONTRACT_FREEZE_PROJECT_KEY_TOKEN,
|
|
@@ -121,6 +121,7 @@ import {
|
|
|
121
121
|
ComposedTenantAuthGuard,
|
|
122
122
|
ConfiguratorCatalogBuilder,
|
|
123
123
|
FEATURE_GUARD_CONFIG_TOKEN,
|
|
124
|
+
FEATURE_GUARD_MARKER,
|
|
124
125
|
FEATURE_UI_REGISTRY_TOKEN,
|
|
125
126
|
FeatureGuard,
|
|
126
127
|
LimitExceededFilter,
|
|
@@ -164,13 +165,14 @@ import {
|
|
|
164
165
|
computeProration,
|
|
165
166
|
decideRenewal,
|
|
166
167
|
initialPeriodWindow,
|
|
168
|
+
isPlatformFeatureGuard,
|
|
167
169
|
loadPlanCatalogFromFile,
|
|
168
170
|
loadPlanCatalogFromString,
|
|
169
171
|
periodEndAfter,
|
|
170
172
|
periodEndWithMinLead,
|
|
171
173
|
resolveBundleCancelEffectiveAt,
|
|
172
174
|
resolveBundlePriceNet
|
|
173
|
-
} from "./chunk-
|
|
175
|
+
} from "./chunk-A7FHAN2I.js";
|
|
174
176
|
import {
|
|
175
177
|
PROMO_CODE_REDEMPTION_REPOSITORY_TOKEN,
|
|
176
178
|
PROMO_CODE_REPOSITORY_TOKEN,
|
|
@@ -242,7 +244,7 @@ import {
|
|
|
242
244
|
quotaApprovalSignature,
|
|
243
245
|
validateBundleDraft,
|
|
244
246
|
validatePlanDraft
|
|
245
|
-
} from "./chunk-
|
|
247
|
+
} from "./chunk-7X5MSAIL.js";
|
|
246
248
|
import {
|
|
247
249
|
AUDIT_CONTEXT_RESOLVER_TOKEN,
|
|
248
250
|
PENDING_PLAN_QUERY_PORT_TOKEN,
|
|
@@ -310,7 +312,7 @@ import {
|
|
|
310
312
|
mergeSubscriptionBundlesIntoLimits,
|
|
311
313
|
resolveEntitlementPlan,
|
|
312
314
|
toEffectiveLimitsSnapshot
|
|
313
|
-
} from "./chunk-
|
|
315
|
+
} from "./chunk-NNNXXUPT.js";
|
|
314
316
|
import {
|
|
315
317
|
PLAN_CATALOG_READ_SINK_TOKEN,
|
|
316
318
|
PLAN_CATALOG_TOKEN,
|
|
@@ -426,6 +428,7 @@ export {
|
|
|
426
428
|
EntitlementModule,
|
|
427
429
|
EntitlementService,
|
|
428
430
|
FEATURE_GUARD_CONFIG_TOKEN,
|
|
431
|
+
FEATURE_GUARD_MARKER,
|
|
429
432
|
FEATURE_UI_REGISTRY_TOKEN,
|
|
430
433
|
FeatureGuard,
|
|
431
434
|
IMPLEMENTS_CAPABILITY_KEY,
|
|
@@ -644,6 +647,7 @@ export {
|
|
|
644
647
|
isFeatureInPlan,
|
|
645
648
|
isFeaturePlannedOnly,
|
|
646
649
|
isLimitExceededError,
|
|
650
|
+
isPlatformFeatureGuard,
|
|
647
651
|
isSaaSiCatPublicRoute,
|
|
648
652
|
loadApprovedCatalogKeys,
|
|
649
653
|
loadDiscoverySnapshotFromFile,
|
|
@@ -82,7 +82,7 @@ declare class BundlesService {
|
|
|
82
82
|
* Publishes a draft version atomically. Steps:
|
|
83
83
|
* 1. Strict check on the draft definition (warn-only or blocking)
|
|
84
84
|
* 2. Enforce validFrom requirement + ordering against the predecessor
|
|
85
|
-
* (
|
|
85
|
+
* (analogous to PlanVersion)
|
|
86
86
|
* 3. Compute the diff against the predecessor version (latest live) →
|
|
87
87
|
* `publishedChanges` + `nonRegressive` via `classifyBundleVersionDiff`
|
|
88
88
|
* 4. Call Repository.publishDraft with the diff result + validity dates
|
|
@@ -82,7 +82,7 @@ declare class BundlesService {
|
|
|
82
82
|
* Publishes a draft version atomically. Steps:
|
|
83
83
|
* 1. Strict check on the draft definition (warn-only or blocking)
|
|
84
84
|
* 2. Enforce validFrom requirement + ordering against the predecessor
|
|
85
|
-
* (
|
|
85
|
+
* (analogous to PlanVersion)
|
|
86
86
|
* 3. Compute the diff against the predecessor version (latest live) →
|
|
87
87
|
* `publishedChanges` + `nonRegressive` via `classifyBundleVersionDiff`
|
|
88
88
|
* 4. Call Repository.publishDraft with the diff result + validity dates
|
|
@@ -1,15 +1,17 @@
|
|
|
1
|
-
import { p as PlanResolverPort } from '../saas-platform.module-
|
|
2
|
-
export { P as PLAN_RESOLVER_PORT_TOKEN, S as SaaSiCatModule, a as SaasPlatformAdapters, b as SaasPlatformAdminResourcesOptions, c as SaasPlatformAdminStatsOptions, d as SaasPlatformCatalogOptions, e as SaasPlatformCheckoutOfferOptions, S as SaasPlatformModule, f as SaasPlatformModuleOptions, g as SaasPlatformPromoCodesOptions, h as SaasPlatformSetupOptions, i as SaasPlatformSubscriptionBundlesOptions, j as SaasPlatformSubscriptionContractOptions, k as SaasPlatformTenantAuthGuards, l as SaasPlatformTenantBillingOptions, m as SetupModule, n as SetupModuleOptions, o as StaticPlanResolver, T as TenantManifestControllerOptions, q as buildTenantManifestController } from '../saas-platform.module-
|
|
3
|
-
export { a as SAASICAT_PUBLIC_ROUTE_KEY, d as SaaSiCatPublicRoute, S as SetupService, f as defineSaaSiCat, i as isSaaSiCatPublicRoute } from '../define-saasicat-
|
|
1
|
+
import { p as PlanResolverPort } from '../saas-platform.module-CgalxzcT.cjs';
|
|
2
|
+
export { P as PLAN_RESOLVER_PORT_TOKEN, S as SaaSiCatModule, a as SaasPlatformAdapters, b as SaasPlatformAdminResourcesOptions, c as SaasPlatformAdminStatsOptions, d as SaasPlatformCatalogOptions, e as SaasPlatformCheckoutOfferOptions, S as SaasPlatformModule, f as SaasPlatformModuleOptions, g as SaasPlatformPromoCodesOptions, h as SaasPlatformSetupOptions, i as SaasPlatformSubscriptionBundlesOptions, j as SaasPlatformSubscriptionContractOptions, k as SaasPlatformTenantAuthGuards, l as SaasPlatformTenantBillingOptions, m as SetupModule, n as SetupModuleOptions, o as StaticPlanResolver, T as TenantManifestControllerOptions, q as buildTenantManifestController } from '../saas-platform.module-CgalxzcT.cjs';
|
|
3
|
+
export { a as SAASICAT_PUBLIC_ROUTE_KEY, d as SaaSiCatPublicRoute, S as SetupService, f as defineSaaSiCat, i as isSaaSiCatPublicRoute } from '../define-saasicat-D30I-WET.cjs';
|
|
4
4
|
import { SubscriptionRepository, UsageSnapshotPort, QuotaProvider } from '@saasicat/types';
|
|
5
|
-
import { S as StaticEntitlementService } from '../enforce-quota.interceptor-
|
|
6
|
-
export { E as EnforceQuotaInterceptor, Q as QUOTA_PROVIDERS_TOKEN, b as STATIC_FEATURE_GUARD_CONFIG_TOKEN, c as StaticEntitlementSnapshot, a as StaticFeatureGuard, d as StaticFeatureGuardConfig } from '../enforce-quota.interceptor-
|
|
5
|
+
import { S as StaticEntitlementService } from '../enforce-quota.interceptor-DY6CLjoP.cjs';
|
|
6
|
+
export { E as EnforceQuotaInterceptor, Q as QUOTA_PROVIDERS_TOKEN, b as STATIC_FEATURE_GUARD_CONFIG_TOKEN, c as StaticEntitlementSnapshot, a as StaticFeatureGuard, d as StaticFeatureGuardConfig } from '../enforce-quota.interceptor-DY6CLjoP.cjs';
|
|
7
|
+
import { OnApplicationBootstrap } from '@nestjs/common';
|
|
8
|
+
import { DiscoveryService, MetadataScanner } from '@nestjs/core';
|
|
7
9
|
export { A as AdminBypassRlsInterceptor, a as AdminManifestModule, b as AdminManifestModuleOptions, c as AdminManifestService, d as AdminModule, e as AdminModuleOptions, f as AdminStatsService, M as MfaGuard, h as MfaService, S as SuperAdminGuard } from '../admin-stats.service-HUZIU448.cjs';
|
|
8
10
|
export { A as AdminAuditService } from '../admin-audit.service-9IqXMlZm.cjs';
|
|
9
11
|
export { e as AdminResourcesService, f as AdminStatsModule, g as AdminStatsModuleOptions } from '../admin-resources.module-DGgGSdzN.cjs';
|
|
10
|
-
export { c as EntitlementService } from '../aggregation-
|
|
11
|
-
export { d as ComposedTenantAuthGuard, P as PendingPlanMaterializationService, h as PlanChangePreviewService, r as SubscriptionBundlePreviewService, s as SubscriptionBundlesService, T as TenantAdminGuard, t as TenantBillingController } from '../tenant-billing.controller-
|
|
12
|
-
export { B as BundlesService, C as CatalogEntriesService, M as MarketingProjectionsService, b as MarketingSettingsService, P as PlanVersionsService, c as PlansService, d as PromotionsService, e as PublicMarketingCatalogService } from '../plan-versions.service-
|
|
12
|
+
export { c as EntitlementService } from '../aggregation-mZ7WZROK.cjs';
|
|
13
|
+
export { d as ComposedTenantAuthGuard, P as PendingPlanMaterializationService, h as PlanChangePreviewService, r as SubscriptionBundlePreviewService, s as SubscriptionBundlesService, T as TenantAdminGuard, t as TenantBillingController } from '../tenant-billing.controller-DHSUrT_N.cjs';
|
|
14
|
+
export { B as BundlesService, C as CatalogEntriesService, M as MarketingProjectionsService, b as MarketingSettingsService, P as PlanVersionsService, c as PlansService, d as PromotionsService, e as PublicMarketingCatalogService } from '../plan-versions.service-_saKzb50.cjs';
|
|
13
15
|
export { c as DiscoveryScanner } from '../discovery.scanner-DLgEvuoy.cjs';
|
|
14
16
|
export { P as PromoCodeRateLimitGuard } from '../rate-limit.guard-dntqAlfZ.cjs';
|
|
15
17
|
export { g as PromoCodesService } from '../service-D48clObR.cjs';
|
|
@@ -17,13 +19,11 @@ export { a as CheckoutOfferModule, b as CheckoutOfferModuleOptions } from '../ch
|
|
|
17
19
|
export { C as CheckoutOfferService } from '../checkout-offer.service-BX51dljL.cjs';
|
|
18
20
|
export { S as SubscriptionContractModule, a as SubscriptionContractModuleOptions } from '../subscription-contract.module-B2uNvUJL.cjs';
|
|
19
21
|
export { S as SubscriptionContractService } from '../subscription-contract.service--cm47ZJJ.cjs';
|
|
20
|
-
import '@nestjs/common';
|
|
21
22
|
import '../di-CcNeq9v-.cjs';
|
|
22
23
|
import '../plan-resolution-CFCoUkrE.cjs';
|
|
23
24
|
import '../module-CHMIyWlf.cjs';
|
|
24
|
-
import '../catalog.module-
|
|
25
|
-
import '../subscription-bundles.module-
|
|
26
|
-
import '@nestjs/core';
|
|
25
|
+
import '../catalog.module-D-_pQDNA.cjs';
|
|
26
|
+
import '../subscription-bundles.module-Cfi-lFWF.cjs';
|
|
27
27
|
import 'rxjs';
|
|
28
28
|
|
|
29
29
|
/**
|
|
@@ -48,6 +48,24 @@ declare class QuotaProvidersUsageSnapshot implements UsageSnapshotPort {
|
|
|
48
48
|
snapshot(tenantId: string): Promise<Record<string, number>>;
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
+
declare class FeatureGuardCoverageCheck implements OnApplicationBootstrap {
|
|
52
|
+
private readonly discoveryService;
|
|
53
|
+
private readonly metadataScanner;
|
|
54
|
+
private readonly logger;
|
|
55
|
+
constructor(discoveryService: DiscoveryService, metadataScanner: MetadataScanner);
|
|
56
|
+
onApplicationBootstrap(): void;
|
|
57
|
+
/**
|
|
58
|
+
* Annotated handlers whose own guards and whose controller's guards contain
|
|
59
|
+
* no recognisable feature guard.
|
|
60
|
+
*
|
|
61
|
+
* Deliberately conservative in one direction only: an unrecognised wrapper
|
|
62
|
+
* is reported (and the message says so) rather than assumed safe, because
|
|
63
|
+
* the named route is cheap to check. The reverse — staying silent about a
|
|
64
|
+
* route with no guard at all — is the failure this exists to prevent.
|
|
65
|
+
*/
|
|
66
|
+
private findUncoveredRoutes;
|
|
67
|
+
}
|
|
68
|
+
|
|
51
69
|
interface TenantNavItem {
|
|
52
70
|
/** Unique slug, e.g. "notes", "billing", "settings". */
|
|
53
71
|
id: string;
|
|
@@ -101,4 +119,4 @@ declare class TenantManifestService {
|
|
|
101
119
|
getManifest(tenantId: string): Promise<TenantManifest>;
|
|
102
120
|
}
|
|
103
121
|
|
|
104
|
-
export { PlanResolverPort, QuotaProvidersUsageSnapshot, StaticEntitlementService, SubscriptionPlanResolver, type TenantManifest, TenantManifestService, type TenantNavItem };
|
|
122
|
+
export { FeatureGuardCoverageCheck, PlanResolverPort, QuotaProvidersUsageSnapshot, StaticEntitlementService, SubscriptionPlanResolver, type TenantManifest, TenantManifestService, type TenantNavItem };
|
package/dist/platform/index.d.ts
CHANGED
|
@@ -1,15 +1,17 @@
|
|
|
1
|
-
import { p as PlanResolverPort } from '../saas-platform.module-
|
|
2
|
-
export { P as PLAN_RESOLVER_PORT_TOKEN, S as SaaSiCatModule, a as SaasPlatformAdapters, b as SaasPlatformAdminResourcesOptions, c as SaasPlatformAdminStatsOptions, d as SaasPlatformCatalogOptions, e as SaasPlatformCheckoutOfferOptions, S as SaasPlatformModule, f as SaasPlatformModuleOptions, g as SaasPlatformPromoCodesOptions, h as SaasPlatformSetupOptions, i as SaasPlatformSubscriptionBundlesOptions, j as SaasPlatformSubscriptionContractOptions, k as SaasPlatformTenantAuthGuards, l as SaasPlatformTenantBillingOptions, m as SetupModule, n as SetupModuleOptions, o as StaticPlanResolver, T as TenantManifestControllerOptions, q as buildTenantManifestController } from '../saas-platform.module-
|
|
3
|
-
export { a as SAASICAT_PUBLIC_ROUTE_KEY, d as SaaSiCatPublicRoute, S as SetupService, f as defineSaaSiCat, i as isSaaSiCatPublicRoute } from '../define-saasicat-
|
|
1
|
+
import { p as PlanResolverPort } from '../saas-platform.module-D1mUZPrz.js';
|
|
2
|
+
export { P as PLAN_RESOLVER_PORT_TOKEN, S as SaaSiCatModule, a as SaasPlatformAdapters, b as SaasPlatformAdminResourcesOptions, c as SaasPlatformAdminStatsOptions, d as SaasPlatformCatalogOptions, e as SaasPlatformCheckoutOfferOptions, S as SaasPlatformModule, f as SaasPlatformModuleOptions, g as SaasPlatformPromoCodesOptions, h as SaasPlatformSetupOptions, i as SaasPlatformSubscriptionBundlesOptions, j as SaasPlatformSubscriptionContractOptions, k as SaasPlatformTenantAuthGuards, l as SaasPlatformTenantBillingOptions, m as SetupModule, n as SetupModuleOptions, o as StaticPlanResolver, T as TenantManifestControllerOptions, q as buildTenantManifestController } from '../saas-platform.module-D1mUZPrz.js';
|
|
3
|
+
export { a as SAASICAT_PUBLIC_ROUTE_KEY, d as SaaSiCatPublicRoute, S as SetupService, f as defineSaaSiCat, i as isSaaSiCatPublicRoute } from '../define-saasicat-BK6RRWWG.js';
|
|
4
4
|
import { SubscriptionRepository, UsageSnapshotPort, QuotaProvider } from '@saasicat/types';
|
|
5
|
-
import { S as StaticEntitlementService } from '../enforce-quota.interceptor-
|
|
6
|
-
export { E as EnforceQuotaInterceptor, Q as QUOTA_PROVIDERS_TOKEN, b as STATIC_FEATURE_GUARD_CONFIG_TOKEN, c as StaticEntitlementSnapshot, a as StaticFeatureGuard, d as StaticFeatureGuardConfig } from '../enforce-quota.interceptor-
|
|
5
|
+
import { S as StaticEntitlementService } from '../enforce-quota.interceptor-B9QueAFf.js';
|
|
6
|
+
export { E as EnforceQuotaInterceptor, Q as QUOTA_PROVIDERS_TOKEN, b as STATIC_FEATURE_GUARD_CONFIG_TOKEN, c as StaticEntitlementSnapshot, a as StaticFeatureGuard, d as StaticFeatureGuardConfig } from '../enforce-quota.interceptor-B9QueAFf.js';
|
|
7
|
+
import { OnApplicationBootstrap } from '@nestjs/common';
|
|
8
|
+
import { DiscoveryService, MetadataScanner } from '@nestjs/core';
|
|
7
9
|
export { A as AdminBypassRlsInterceptor, a as AdminManifestModule, b as AdminManifestModuleOptions, c as AdminManifestService, d as AdminModule, e as AdminModuleOptions, f as AdminStatsService, M as MfaGuard, h as MfaService, S as SuperAdminGuard } from '../admin-stats.service-Db2exT_d.js';
|
|
8
10
|
export { A as AdminAuditService } from '../admin-audit.service-9IqXMlZm.js';
|
|
9
11
|
export { e as AdminResourcesService, f as AdminStatsModule, g as AdminStatsModuleOptions } from '../admin-resources.module-BY5r_1MG.js';
|
|
10
|
-
export { c as EntitlementService } from '../aggregation-
|
|
11
|
-
export { d as ComposedTenantAuthGuard, P as PendingPlanMaterializationService, h as PlanChangePreviewService, r as SubscriptionBundlePreviewService, s as SubscriptionBundlesService, T as TenantAdminGuard, t as TenantBillingController } from '../tenant-billing.controller-
|
|
12
|
-
export { B as BundlesService, C as CatalogEntriesService, M as MarketingProjectionsService, b as MarketingSettingsService, P as PlanVersionsService, c as PlansService, d as PromotionsService, e as PublicMarketingCatalogService } from '../plan-versions.service-
|
|
12
|
+
export { c as EntitlementService } from '../aggregation-DP5zfKbU.js';
|
|
13
|
+
export { d as ComposedTenantAuthGuard, P as PendingPlanMaterializationService, h as PlanChangePreviewService, r as SubscriptionBundlePreviewService, s as SubscriptionBundlesService, T as TenantAdminGuard, t as TenantBillingController } from '../tenant-billing.controller-BSlpFqVA.js';
|
|
14
|
+
export { B as BundlesService, C as CatalogEntriesService, M as MarketingProjectionsService, b as MarketingSettingsService, P as PlanVersionsService, c as PlansService, d as PromotionsService, e as PublicMarketingCatalogService } from '../plan-versions.service-B-YoE4SZ.js';
|
|
13
15
|
export { c as DiscoveryScanner } from '../discovery.scanner-DLgEvuoy.js';
|
|
14
16
|
export { P as PromoCodeRateLimitGuard } from '../rate-limit.guard-dntqAlfZ.js';
|
|
15
17
|
export { g as PromoCodesService } from '../service-D48clObR.js';
|
|
@@ -17,13 +19,11 @@ export { a as CheckoutOfferModule, b as CheckoutOfferModuleOptions } from '../ch
|
|
|
17
19
|
export { C as CheckoutOfferService } from '../checkout-offer.service-BX51dljL.js';
|
|
18
20
|
export { S as SubscriptionContractModule, a as SubscriptionContractModuleOptions } from '../subscription-contract.module-edyhBr4n.js';
|
|
19
21
|
export { S as SubscriptionContractService } from '../subscription-contract.service--cm47ZJJ.js';
|
|
20
|
-
import '@nestjs/common';
|
|
21
22
|
import '../di-CcNeq9v-.js';
|
|
22
23
|
import '../plan-resolution-CFCoUkrE.js';
|
|
23
24
|
import '../module-BE17XFLg.js';
|
|
24
|
-
import '../catalog.module-
|
|
25
|
-
import '../subscription-bundles.module-
|
|
26
|
-
import '@nestjs/core';
|
|
25
|
+
import '../catalog.module-CQr1FpkI.js';
|
|
26
|
+
import '../subscription-bundles.module-BDbODWvA.js';
|
|
27
27
|
import 'rxjs';
|
|
28
28
|
|
|
29
29
|
/**
|
|
@@ -48,6 +48,24 @@ declare class QuotaProvidersUsageSnapshot implements UsageSnapshotPort {
|
|
|
48
48
|
snapshot(tenantId: string): Promise<Record<string, number>>;
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
+
declare class FeatureGuardCoverageCheck implements OnApplicationBootstrap {
|
|
52
|
+
private readonly discoveryService;
|
|
53
|
+
private readonly metadataScanner;
|
|
54
|
+
private readonly logger;
|
|
55
|
+
constructor(discoveryService: DiscoveryService, metadataScanner: MetadataScanner);
|
|
56
|
+
onApplicationBootstrap(): void;
|
|
57
|
+
/**
|
|
58
|
+
* Annotated handlers whose own guards and whose controller's guards contain
|
|
59
|
+
* no recognisable feature guard.
|
|
60
|
+
*
|
|
61
|
+
* Deliberately conservative in one direction only: an unrecognised wrapper
|
|
62
|
+
* is reported (and the message says so) rather than assumed safe, because
|
|
63
|
+
* the named route is cheap to check. The reverse — staying silent about a
|
|
64
|
+
* route with no guard at all — is the failure this exists to prevent.
|
|
65
|
+
*/
|
|
66
|
+
private findUncoveredRoutes;
|
|
67
|
+
}
|
|
68
|
+
|
|
51
69
|
interface TenantNavItem {
|
|
52
70
|
/** Unique slug, e.g. "notes", "billing", "settings". */
|
|
53
71
|
id: string;
|
|
@@ -101,4 +119,4 @@ declare class TenantManifestService {
|
|
|
101
119
|
getManifest(tenantId: string): Promise<TenantManifest>;
|
|
102
120
|
}
|
|
103
121
|
|
|
104
|
-
export { PlanResolverPort, QuotaProvidersUsageSnapshot, StaticEntitlementService, SubscriptionPlanResolver, type TenantManifest, TenantManifestService, type TenantNavItem };
|
|
122
|
+
export { FeatureGuardCoverageCheck, PlanResolverPort, QuotaProvidersUsageSnapshot, StaticEntitlementService, SubscriptionPlanResolver, type TenantManifest, TenantManifestService, type TenantNavItem };
|
package/dist/platform/index.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
defineSaaSiCat
|
|
3
|
-
} from "../chunk-
|
|
3
|
+
} from "../chunk-FY4EJTV4.js";
|
|
4
4
|
import {
|
|
5
5
|
EnforceQuotaInterceptor,
|
|
6
|
+
FeatureGuardCoverageCheck,
|
|
6
7
|
PLAN_RESOLVER_PORT_TOKEN,
|
|
7
8
|
QUOTA_PROVIDERS_TOKEN,
|
|
8
9
|
QuotaProvidersUsageSnapshot,
|
|
@@ -16,7 +17,7 @@ import {
|
|
|
16
17
|
SubscriptionPlanResolver,
|
|
17
18
|
TenantManifestService,
|
|
18
19
|
buildTenantManifestController
|
|
19
|
-
} from "../chunk-
|
|
20
|
+
} from "../chunk-LPCUHZWC.js";
|
|
20
21
|
import {
|
|
21
22
|
PromoCodeRateLimitGuard
|
|
22
23
|
} from "../chunk-4O6R6ARQ.js";
|
|
@@ -31,7 +32,7 @@ import {
|
|
|
31
32
|
MfaGuard,
|
|
32
33
|
MfaService,
|
|
33
34
|
SuperAdminGuard
|
|
34
|
-
} from "../chunk-
|
|
35
|
+
} from "../chunk-SN5UOC43.js";
|
|
35
36
|
import {
|
|
36
37
|
ComposedTenantAuthGuard,
|
|
37
38
|
PendingPlanMaterializationService,
|
|
@@ -40,7 +41,7 @@ import {
|
|
|
40
41
|
SubscriptionBundlesService,
|
|
41
42
|
TenantAdminGuard,
|
|
42
43
|
TenantBillingController
|
|
43
|
-
} from "../chunk-
|
|
44
|
+
} from "../chunk-A7FHAN2I.js";
|
|
44
45
|
import {
|
|
45
46
|
PromoCodesService
|
|
46
47
|
} from "../chunk-VQQWF7MW.js";
|
|
@@ -57,7 +58,7 @@ import {
|
|
|
57
58
|
PlansService,
|
|
58
59
|
PromotionsService,
|
|
59
60
|
PublicMarketingCatalogService
|
|
60
|
-
} from "../chunk-
|
|
61
|
+
} from "../chunk-7X5MSAIL.js";
|
|
61
62
|
import "../chunk-WPUVJRIN.js";
|
|
62
63
|
import {
|
|
63
64
|
AdminAuditService
|
|
@@ -78,7 +79,7 @@ import {
|
|
|
78
79
|
} from "../chunk-5ZXBXYXU.js";
|
|
79
80
|
import {
|
|
80
81
|
EntitlementService
|
|
81
|
-
} from "../chunk-
|
|
82
|
+
} from "../chunk-NNNXXUPT.js";
|
|
82
83
|
import "../chunk-DQKCK7DX.js";
|
|
83
84
|
import "../chunk-NYLON2VC.js";
|
|
84
85
|
import "../chunk-EBJJNTW6.js";
|
|
@@ -104,6 +105,7 @@ export {
|
|
|
104
105
|
DiscoveryScanner,
|
|
105
106
|
EnforceQuotaInterceptor,
|
|
106
107
|
EntitlementService,
|
|
108
|
+
FeatureGuardCoverageCheck,
|
|
107
109
|
MarketingProjectionsService,
|
|
108
110
|
MarketingSettingsService,
|
|
109
111
|
MfaGuard,
|
|
@@ -377,7 +377,7 @@ declare class SaveRegistrationConfigSelectionDto {
|
|
|
377
377
|
billingCycle: 'MONTHLY' | 'YEARLY';
|
|
378
378
|
appliedPromoCode?: string | null;
|
|
379
379
|
/**
|
|
380
|
-
*
|
|
380
|
+
* — Bundle consistency. ID of the `CheckoutOffer` that was
|
|
381
381
|
* created on the pricing page (`<app>/register?offer=<id>`). Passed
|
|
382
382
|
* through unchanged in `configJson`; the ActivationOrchestrator freezes it
|
|
383
383
|
* as `packageSnapshot` when the subscription is created and sets the offer
|
|
@@ -377,7 +377,7 @@ declare class SaveRegistrationConfigSelectionDto {
|
|
|
377
377
|
billingCycle: 'MONTHLY' | 'YEARLY';
|
|
378
378
|
appliedPromoCode?: string | null;
|
|
379
379
|
/**
|
|
380
|
-
*
|
|
380
|
+
* — Bundle consistency. ID of the `CheckoutOffer` that was
|
|
381
381
|
* created on the pricing page (`<app>/register?offer=<id>`). Passed
|
|
382
382
|
* through unchanged in `configJson`; the ActivationOrchestrator freezes it
|
|
383
383
|
* as `packageSnapshot` when the subscription is created and sets the offer
|
|
@@ -6,9 +6,9 @@ import { E as EntitlementResolutionConfig } from './plan-resolution-CFCoUkrE.cjs
|
|
|
6
6
|
import { a as SubscriptionContractModuleOptions } from './subscription-contract.module-B2uNvUJL.cjs';
|
|
7
7
|
import { a as PromoCodesModuleOptions } from './module-CHMIyWlf.cjs';
|
|
8
8
|
import { b as DiscoveryAppInfo } from './discovery.scanner-DLgEvuoy.cjs';
|
|
9
|
-
import { b as CatalogModuleOptions } from './catalog.module-
|
|
9
|
+
import { b as CatalogModuleOptions } from './catalog.module-D-_pQDNA.cjs';
|
|
10
10
|
import { b as CheckoutOfferModuleOptions } from './checkout-offer.module-DmlpPevf.cjs';
|
|
11
|
-
import { t as TenantBillingModuleOptions, p as SubscriptionBundleModuleOptions, n as SubscriptionBundleControllerOptions } from './subscription-bundles.module-
|
|
11
|
+
import { t as TenantBillingModuleOptions, p as SubscriptionBundleModuleOptions, n as SubscriptionBundleControllerOptions } from './subscription-bundles.module-Cfi-lFWF.cjs';
|
|
12
12
|
|
|
13
13
|
interface SetupModuleOptions {
|
|
14
14
|
/**
|
|
@@ -6,9 +6,9 @@ import { E as EntitlementResolutionConfig } from './plan-resolution-CFCoUkrE.js'
|
|
|
6
6
|
import { a as SubscriptionContractModuleOptions } from './subscription-contract.module-edyhBr4n.js';
|
|
7
7
|
import { a as PromoCodesModuleOptions } from './module-BE17XFLg.js';
|
|
8
8
|
import { b as DiscoveryAppInfo } from './discovery.scanner-DLgEvuoy.js';
|
|
9
|
-
import { b as CatalogModuleOptions } from './catalog.module-
|
|
9
|
+
import { b as CatalogModuleOptions } from './catalog.module-CQr1FpkI.js';
|
|
10
10
|
import { b as CheckoutOfferModuleOptions } from './checkout-offer.module-Ca3_TieR.js';
|
|
11
|
-
import { t as TenantBillingModuleOptions, p as SubscriptionBundleModuleOptions, n as SubscriptionBundleControllerOptions } from './subscription-bundles.module-
|
|
11
|
+
import { t as TenantBillingModuleOptions, p as SubscriptionBundleModuleOptions, n as SubscriptionBundleControllerOptions } from './subscription-bundles.module-BDbODWvA.js';
|
|
12
12
|
|
|
13
13
|
interface SetupModuleOptions {
|
|
14
14
|
/**
|
package/dist/{subscription-bundles.module-BQmoozm5.d.ts → subscription-bundles.module-BDbODWvA.d.ts}
RENAMED
|
@@ -2,6 +2,14 @@ import { CanActivate, Type, DynamicModule, ForwardReference, Provider } from '@n
|
|
|
2
2
|
import { P as ProviderSpec } from './di-CcNeq9v-.js';
|
|
3
3
|
import { NewContractLineItemData, BillingCycle, SubscriptionUsagePort, UsageSnapshotPort, TenantSubscriptionWritePort, SubscriptionContractRepository, SubscriptionBundleRepository, BundleRepository } from '@saasicat/types';
|
|
4
4
|
|
|
5
|
+
declare const FEATURE_GUARD_MARKER: unique symbol;
|
|
6
|
+
/** A guard class or instance carrying the platform's marker. */
|
|
7
|
+
interface MarkedFeatureGuard {
|
|
8
|
+
[FEATURE_GUARD_MARKER]: true;
|
|
9
|
+
}
|
|
10
|
+
/** True when `target` is one of the platform's entitlement guards. */
|
|
11
|
+
declare function isPlatformFeatureGuard(target: unknown): boolean;
|
|
12
|
+
|
|
5
13
|
/**
|
|
6
14
|
* List of all auth guards the platform controller should iterate in order
|
|
7
15
|
* (analogous to `@UseGuards(JwtAuthGuard, TenantGuard, RolesGuard)`).
|
|
@@ -288,4 +296,4 @@ declare class SubscriptionBundleModule {
|
|
|
288
296
|
static forRoot(options: SubscriptionBundleModuleOptions): DynamicModule;
|
|
289
297
|
}
|
|
290
298
|
|
|
291
|
-
export { AUDIT_CONTEXT_RESOLVER_TOKEN as A, type UserIdResolver as B, CONTRACT_FREEZE_PORT_TOKEN as C, type DuePendingPlanChange as D, PENDING_PLAN_QUERY_PORT_TOKEN as P, SELF_SERVICE_BLOCKED_BUNDLES_TOKEN as S, TENANT_AUTH_GUARDS_TOKEN as T, USAGE_SNAPSHOT_PORT_TOKEN as U, type AuditContextResolver as a, type AuthGuardList as b, CONTRACT_FREEZE_PROJECT_KEY_TOKEN as c, CONTRACT_FREEZE_SOURCE_PORT_TOKEN as d, type ContractFreezeBundleSnapshot as e, type ContractFreezePort as f, type ContractFreezeSourcePort as g, type PendingPlanQueryPort as h, SELF_SERVICE_BLOCKED_PLANS_TOKEN as i, SUBSCRIPTION_USAGE_PORT_TOKEN as j, SUBSCRIPTION_WRITE_PORT_TOKEN as k, type SelfServiceBlockedBundles as l, type SelfServiceBlockedPlans as m, type SubscriptionBundleControllerOptions as n, SubscriptionBundleModule as o, type SubscriptionBundleModuleOptions as p, TENANT_ID_RESOLVER_TOKEN as q, TRIAL_PROJECTION_PORT_TOKEN as r, TenantBillingModule as s, type TenantBillingModuleOptions as t, type TenantIdResolver as u, type TrialProjectionInput as v, type TrialProjectionPort as w, USER_EMAIL_RESOLVER_TOKEN as x, USER_ID_RESOLVER_TOKEN as y, type UserEmailResolver as z };
|
|
299
|
+
export { AUDIT_CONTEXT_RESOLVER_TOKEN as A, type UserIdResolver as B, CONTRACT_FREEZE_PORT_TOKEN as C, type DuePendingPlanChange as D, isPlatformFeatureGuard as E, FEATURE_GUARD_MARKER as F, type MarkedFeatureGuard as M, PENDING_PLAN_QUERY_PORT_TOKEN as P, SELF_SERVICE_BLOCKED_BUNDLES_TOKEN as S, TENANT_AUTH_GUARDS_TOKEN as T, USAGE_SNAPSHOT_PORT_TOKEN as U, type AuditContextResolver as a, type AuthGuardList as b, CONTRACT_FREEZE_PROJECT_KEY_TOKEN as c, CONTRACT_FREEZE_SOURCE_PORT_TOKEN as d, type ContractFreezeBundleSnapshot as e, type ContractFreezePort as f, type ContractFreezeSourcePort as g, type PendingPlanQueryPort as h, SELF_SERVICE_BLOCKED_PLANS_TOKEN as i, SUBSCRIPTION_USAGE_PORT_TOKEN as j, SUBSCRIPTION_WRITE_PORT_TOKEN as k, type SelfServiceBlockedBundles as l, type SelfServiceBlockedPlans as m, type SubscriptionBundleControllerOptions as n, SubscriptionBundleModule as o, type SubscriptionBundleModuleOptions as p, TENANT_ID_RESOLVER_TOKEN as q, TRIAL_PROJECTION_PORT_TOKEN as r, TenantBillingModule as s, type TenantBillingModuleOptions as t, type TenantIdResolver as u, type TrialProjectionInput as v, type TrialProjectionPort as w, USER_EMAIL_RESOLVER_TOKEN as x, USER_ID_RESOLVER_TOKEN as y, type UserEmailResolver as z };
|
|
@@ -2,6 +2,14 @@ import { CanActivate, Type, DynamicModule, ForwardReference, Provider } from '@n
|
|
|
2
2
|
import { P as ProviderSpec } from './di-CcNeq9v-.cjs';
|
|
3
3
|
import { NewContractLineItemData, BillingCycle, SubscriptionUsagePort, UsageSnapshotPort, TenantSubscriptionWritePort, SubscriptionContractRepository, SubscriptionBundleRepository, BundleRepository } from '@saasicat/types';
|
|
4
4
|
|
|
5
|
+
declare const FEATURE_GUARD_MARKER: unique symbol;
|
|
6
|
+
/** A guard class or instance carrying the platform's marker. */
|
|
7
|
+
interface MarkedFeatureGuard {
|
|
8
|
+
[FEATURE_GUARD_MARKER]: true;
|
|
9
|
+
}
|
|
10
|
+
/** True when `target` is one of the platform's entitlement guards. */
|
|
11
|
+
declare function isPlatformFeatureGuard(target: unknown): boolean;
|
|
12
|
+
|
|
5
13
|
/**
|
|
6
14
|
* List of all auth guards the platform controller should iterate in order
|
|
7
15
|
* (analogous to `@UseGuards(JwtAuthGuard, TenantGuard, RolesGuard)`).
|
|
@@ -288,4 +296,4 @@ declare class SubscriptionBundleModule {
|
|
|
288
296
|
static forRoot(options: SubscriptionBundleModuleOptions): DynamicModule;
|
|
289
297
|
}
|
|
290
298
|
|
|
291
|
-
export { AUDIT_CONTEXT_RESOLVER_TOKEN as A, type UserIdResolver as B, CONTRACT_FREEZE_PORT_TOKEN as C, type DuePendingPlanChange as D, PENDING_PLAN_QUERY_PORT_TOKEN as P, SELF_SERVICE_BLOCKED_BUNDLES_TOKEN as S, TENANT_AUTH_GUARDS_TOKEN as T, USAGE_SNAPSHOT_PORT_TOKEN as U, type AuditContextResolver as a, type AuthGuardList as b, CONTRACT_FREEZE_PROJECT_KEY_TOKEN as c, CONTRACT_FREEZE_SOURCE_PORT_TOKEN as d, type ContractFreezeBundleSnapshot as e, type ContractFreezePort as f, type ContractFreezeSourcePort as g, type PendingPlanQueryPort as h, SELF_SERVICE_BLOCKED_PLANS_TOKEN as i, SUBSCRIPTION_USAGE_PORT_TOKEN as j, SUBSCRIPTION_WRITE_PORT_TOKEN as k, type SelfServiceBlockedBundles as l, type SelfServiceBlockedPlans as m, type SubscriptionBundleControllerOptions as n, SubscriptionBundleModule as o, type SubscriptionBundleModuleOptions as p, TENANT_ID_RESOLVER_TOKEN as q, TRIAL_PROJECTION_PORT_TOKEN as r, TenantBillingModule as s, type TenantBillingModuleOptions as t, type TenantIdResolver as u, type TrialProjectionInput as v, type TrialProjectionPort as w, USER_EMAIL_RESOLVER_TOKEN as x, USER_ID_RESOLVER_TOKEN as y, type UserEmailResolver as z };
|
|
299
|
+
export { AUDIT_CONTEXT_RESOLVER_TOKEN as A, type UserIdResolver as B, CONTRACT_FREEZE_PORT_TOKEN as C, type DuePendingPlanChange as D, isPlatformFeatureGuard as E, FEATURE_GUARD_MARKER as F, type MarkedFeatureGuard as M, PENDING_PLAN_QUERY_PORT_TOKEN as P, SELF_SERVICE_BLOCKED_BUNDLES_TOKEN as S, TENANT_AUTH_GUARDS_TOKEN as T, USAGE_SNAPSHOT_PORT_TOKEN as U, type AuditContextResolver as a, type AuthGuardList as b, CONTRACT_FREEZE_PROJECT_KEY_TOKEN as c, CONTRACT_FREEZE_SOURCE_PORT_TOKEN as d, type ContractFreezeBundleSnapshot as e, type ContractFreezePort as f, type ContractFreezeSourcePort as g, type PendingPlanQueryPort as h, SELF_SERVICE_BLOCKED_PLANS_TOKEN as i, SUBSCRIPTION_USAGE_PORT_TOKEN as j, SUBSCRIPTION_WRITE_PORT_TOKEN as k, type SelfServiceBlockedBundles as l, type SelfServiceBlockedPlans as m, type SubscriptionBundleControllerOptions as n, SubscriptionBundleModule as o, type SubscriptionBundleModuleOptions as p, TENANT_ID_RESOLVER_TOKEN as q, TRIAL_PROJECTION_PORT_TOKEN as r, TenantBillingModule as s, type TenantBillingModuleOptions as t, type TenantIdResolver as u, type TrialProjectionInput as v, type TrialProjectionPort as w, USER_EMAIL_RESOLVER_TOKEN as x, USER_ID_RESOLVER_TOKEN as y, type UserEmailResolver as z };
|
package/dist/{tenant-billing.controller-DT5UrnDX.d.ts → tenant-billing.controller-BSlpFqVA.d.ts}
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { CanActivate, ExecutionContext } from '@nestjs/common';
|
|
2
|
-
import { b as AuthGuardList, m as SelfServiceBlockedPlans, w as TrialProjectionPort, h as PendingPlanQueryPort, f as ContractFreezePort, l as SelfServiceBlockedBundles, u as TenantIdResolver, B as UserIdResolver, z as UserEmailResolver, a as AuditContextResolver } from './subscription-bundles.module-
|
|
2
|
+
import { b as AuthGuardList, m as SelfServiceBlockedPlans, w as TrialProjectionPort, h as PendingPlanQueryPort, f as ContractFreezePort, l as SelfServiceBlockedBundles, u as TenantIdResolver, B as UserIdResolver, z as UserEmailResolver, a as AuditContextResolver } from './subscription-bundles.module-BDbODWvA.js';
|
|
3
3
|
import { PlanCatalog, SubscriptionUsagePort, UsageSnapshotPort, TenantSubscriptionWritePort, SubscriptionBundleRepository, BundleRepository, SubscriptionBundleView, SubscriptionBundleRecord, PlanRepository, CatalogEntryRepository, BundleVersionRow, SubscriptionUsageRecord, OnboardingSelectionResponse } from '@saasicat/types';
|
|
4
|
-
import { c as EntitlementService, a as EffectiveLimitsSnapshot, t as toEffectiveLimitsSnapshot } from './aggregation-
|
|
4
|
+
import { c as EntitlementService, a as EffectiveLimitsSnapshot, t as toEffectiveLimitsSnapshot } from './aggregation-DP5zfKbU.js';
|
|
5
5
|
import { g as PromoCodesService } from './service-D48clObR.js';
|
|
6
6
|
import { A as AdminAuditService } from './admin-audit.service-9IqXMlZm.js';
|
|
7
7
|
|
|
@@ -357,7 +357,7 @@ interface UsageResponse {
|
|
|
357
357
|
limits: ReturnType<typeof toEffectiveLimitsSnapshot>;
|
|
358
358
|
usage: Record<string, number>;
|
|
359
359
|
/**
|
|
360
|
-
* P11.4
|
|
360
|
+
* P11.4: Frozen package snapshot from the
|
|
361
361
|
* `CheckoutOffer` that was activated during onboarding. Read-only
|
|
362
362
|
* for the tenant self-service UI. `null` for subscriptions without
|
|
363
363
|
* a CheckoutOffer origin.
|