@saasicat/nest 0.27.0 → 1.0.0-rc.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.
Files changed (103) hide show
  1. package/README.md +1 -1
  2. package/dist/.build-stamp +1 -0
  3. package/dist/_entries.cjs +460 -460
  4. package/dist/admin/index.d.cts +6 -6
  5. package/dist/admin/index.d.ts +6 -6
  6. package/dist/admin/index.js +3 -3
  7. package/dist/{admin-audit.service-9IqXMlZm.d.cts → admin-audit.service-4P3Djdxk.d.cts} +1 -1
  8. package/dist/{admin-audit.service-9IqXMlZm.d.ts → admin-audit.service-4P3Djdxk.d.ts} +1 -1
  9. package/dist/{admin-resources.module-DGgGSdzN.d.cts → admin-resources.module-CpvzcfCc.d.cts} +2 -2
  10. package/dist/{admin-resources.module-BY5r_1MG.d.ts → admin-resources.module-DF5_Q7RD.d.ts} +2 -2
  11. package/dist/{admin-stats.service-HUZIU448.d.cts → admin-stats.service-DfKupywR.d.cts} +3 -3
  12. package/dist/{admin-stats.service-Db2exT_d.d.ts → admin-stats.service-TYiSUwIR.d.ts} +3 -3
  13. package/dist/{aggregation-DP5zfKbU.d.ts → aggregation-B3CD0v_d.d.cts} +2 -2
  14. package/dist/{aggregation-mZ7WZROK.d.cts → aggregation-BFzW07DE.d.ts} +2 -2
  15. package/dist/billing/index.d.cts +13 -13
  16. package/dist/billing/index.d.ts +13 -13
  17. package/dist/billing/index.js +15 -15
  18. package/dist/catalog/index.d.cts +17 -5
  19. package/dist/catalog/index.d.ts +17 -5
  20. package/dist/catalog/index.js +12 -10
  21. package/dist/{catalog.module-D-_pQDNA.d.cts → catalog.module-BDDO6iwq.d.cts} +1 -1
  22. package/dist/{catalog.module-CQr1FpkI.d.ts → catalog.module-BTnMsE6u.d.ts} +1 -1
  23. package/dist/checkout-offer/index.d.cts +3 -3
  24. package/dist/checkout-offer/index.d.ts +3 -3
  25. package/dist/checkout-offer/index.js +2 -2
  26. package/dist/{checkout-offer.module-Ca3_TieR.d.ts → checkout-offer.module-CMtiQJTT.d.ts} +1 -1
  27. package/dist/{checkout-offer.module-DmlpPevf.d.cts → checkout-offer.module-CVpWrzbe.d.cts} +1 -1
  28. package/dist/{checkout-offer.service-BX51dljL.d.ts → checkout-offer.service-BLOv2HOo.d.cts} +1 -1
  29. package/dist/{checkout-offer.service-BX51dljL.d.cts → checkout-offer.service-BLOv2HOo.d.ts} +1 -1
  30. package/dist/{chunk-EBJJNTW6.js → chunk-57V6ZTI6.js} +1 -1
  31. package/dist/{chunk-37HEKVDH.js → chunk-7TVZI3KY.js} +11 -11
  32. package/dist/chunk-AOQJEYOL.js +20 -0
  33. package/dist/{chunk-3E6ONOMG.js → chunk-AU3OOREM.js} +2 -2
  34. package/dist/{chunk-H4DOTO7S.js → chunk-BGS4CWV2.js} +5 -5
  35. package/dist/{chunk-YYUXKLXK.js → chunk-I7GTA3RX.js} +2 -2
  36. package/dist/{chunk-7ZPFQXHM.js → chunk-IQTQLQD3.js} +5 -5
  37. package/dist/{chunk-CJFAOD7K.js → chunk-KFT5AIIH.js} +2 -2
  38. package/dist/{chunk-XTVAFJ3P.js → chunk-L23MLBEC.js} +7 -7
  39. package/dist/{chunk-SN5UOC43.js → chunk-LTT736P3.js} +15 -15
  40. package/dist/{chunk-WPUVJRIN.js → chunk-N3L3AICU.js} +11 -11
  41. package/dist/{chunk-MJ32VNZD.js → chunk-NARZ2WWK.js} +22 -22
  42. package/dist/{chunk-E56W4U2P.js → chunk-O2J2HDXA.js} +4 -4
  43. package/dist/{chunk-WKVBNTYC.js → chunk-OUDSQ3PU.js} +6 -6
  44. package/dist/{chunk-F4B2NJUZ.js → chunk-PK6C5R7B.js} +15 -15
  45. package/dist/{chunk-L4SUWH5B.js → chunk-QUZU2M33.js} +2 -2
  46. package/dist/{chunk-NYLON2VC.js → chunk-VBRYPU7V.js} +2 -2
  47. package/dist/{chunk-2JTISFUZ.js → chunk-VG2NU3CG.js} +11 -11
  48. package/dist/{chunk-7X5MSAIL.js → chunk-VNADKD5U.js} +23 -23
  49. package/dist/{chunk-UHD6FJBQ.js → chunk-W6YEIY4R.js} +46 -46
  50. package/dist/{chunk-5ZXBXYXU.js → chunk-WXYJHZCN.js} +3 -3
  51. package/dist/{chunk-6WL6VQ7Z.js → chunk-XBYAFEOR.js} +2 -2
  52. package/dist/{chunk-EHKMPP6J.js → chunk-XMA4XYC5.js} +40 -40
  53. package/dist/{chunk-B6IWLV7R.js → chunk-YZPVQUIW.js} +8 -8
  54. package/dist/{define-saasicat-CFxut1VR.d.cts → define-saasicat-B5RmWiD2.d.cts} +8 -8
  55. package/dist/{define-saasicat-3ois8t8s.d.ts → define-saasicat-DN-dRObd.d.ts} +8 -8
  56. package/dist/discovery/index.d.cts +4 -4
  57. package/dist/discovery/index.d.ts +4 -4
  58. package/dist/discovery/index.js +7 -7
  59. package/dist/{discovery.scanner-DLgEvuoy.d.cts → discovery.scanner-9cMqF95o.d.cts} +1 -1
  60. package/dist/{discovery.scanner-DLgEvuoy.d.ts → discovery.scanner-9cMqF95o.d.ts} +1 -1
  61. package/dist/{enforce-quota.interceptor-N80KC34N.d.cts → enforce-quota.interceptor-CnieZsdB.d.cts} +3 -3
  62. package/dist/{enforce-quota.interceptor-CYDNvAQz.d.ts → enforce-quota.interceptor-Cseo35Ki.d.ts} +3 -3
  63. package/dist/entitlement/index.d.cts +4 -4
  64. package/dist/entitlement/index.d.ts +4 -4
  65. package/dist/entitlement/index.js +8 -8
  66. package/dist/index.d.cts +23 -23
  67. package/dist/index.d.ts +23 -23
  68. package/dist/index.js +137 -136
  69. package/dist/{module-options-klrPnWGF.d.cts → module-options-CjeSSaBf.d.cts} +35 -35
  70. package/dist/{module-options-ByJL7FZm.d.ts → module-options-DtcJqwjv.d.ts} +35 -35
  71. package/dist/{plan-resolution-CFCoUkrE.d.cts → plan-resolution-Cgo_TR1H.d.cts} +1 -1
  72. package/dist/{plan-resolution-CFCoUkrE.d.ts → plan-resolution-Cgo_TR1H.d.ts} +1 -1
  73. package/dist/{plan-versions.service-B-YoE4SZ.d.ts → plan-versions.service-DChhbK6h.d.ts} +2 -2
  74. package/dist/{plan-versions.service-_saKzb50.d.cts → plan-versions.service-TPEtbN0r.d.cts} +2 -2
  75. package/dist/platform/index.d.cts +29 -29
  76. package/dist/platform/index.d.ts +29 -29
  77. package/dist/platform/index.js +32 -33
  78. package/dist/promo/index.d.cts +4 -4
  79. package/dist/promo/index.d.ts +4 -4
  80. package/dist/promo/index.js +4 -4
  81. package/dist/{module-BE17XFLg.d.ts → promo.module-BUKcUWDf.d.ts} +2 -2
  82. package/dist/{module-CHMIyWlf.d.cts → promo.module-BY2YHHLn.d.cts} +2 -2
  83. package/dist/{service-D48clObR.d.cts → promo.service-2qFgqF-a.d.cts} +1 -1
  84. package/dist/{service-D48clObR.d.ts → promo.service-2qFgqF-a.d.ts} +1 -1
  85. package/dist/registration/index.d.cts +3 -3
  86. package/dist/registration/index.d.ts +3 -3
  87. package/dist/registration/index.js +2 -2
  88. package/dist/subscription-contract/index.d.cts +3 -3
  89. package/dist/subscription-contract/index.d.ts +3 -3
  90. package/dist/subscription-contract/index.js +3 -3
  91. package/dist/{subscription-contract.module-B2uNvUJL.d.cts → subscription-contract.module-CEK8HS5-.d.cts} +1 -1
  92. package/dist/{subscription-contract.module-edyhBr4n.d.ts → subscription-contract.module-fDFdQ0jm.d.ts} +1 -1
  93. package/dist/{subscription-contract.service--cm47ZJJ.d.cts → subscription-contract.service-hD87MKyg.d.cts} +1 -1
  94. package/dist/{subscription-contract.service--cm47ZJJ.d.ts → subscription-contract.service-hD87MKyg.d.ts} +1 -1
  95. package/dist/{tenant-billing.controller-CAMMdfn1.d.cts → tenant-billing.controller-B6UTheK_.d.cts} +5 -5
  96. package/dist/{tenant-billing.controller-CYYK0CpT.d.ts → tenant-billing.controller-DpgHCT9r.d.ts} +5 -5
  97. package/dist/{tenant-billing.module-BxJS6fX4.d.cts → tenant-billing.module-BznC3XtW.d.cts} +1 -1
  98. package/dist/{tenant-billing.module-B0stLoJn.d.ts → tenant-billing.module-wUbsQSFG.d.ts} +1 -1
  99. package/dist/testing/index.d.cts +19 -19
  100. package/dist/testing/index.d.ts +19 -19
  101. package/dist/testing/index.js +33 -33
  102. package/package.json +5 -5
  103. package/dist/chunk-L4KTQ6CL.js +0 -20
@@ -1,14 +1,14 @@
1
1
  import { Type, DynamicModule, ForwardReference, Provider, CanActivate, FactoryProvider } from '@nestjs/common';
2
- import { SuperAdminProvisioningPort, PlanCatalog, SaasicatPersistenceAdapter, MfaPort, AuditPort, RlsBypassPort, PlanCatalogReadSink, SubscriptionRepository, PlanVersionRepository, TransactionRunner, QuotaProvider, FeatureUiRegistry, SubscriptionUsagePort, UsageSnapshotPort, TenantSubscriptionWritePort, AdminResourcesPort, FirstTimeCustomerCheck } from '@saasicat/types';
2
+ import { SuperAdminProvisioningPort, MfaPort, AuditPort, RlsBypassPort, PlanCatalogReadSink, SubscriptionRepository, PlanVersionRepository, TransactionRunner, AdminResourcesPort, FeatureUiRegistry, PlanCatalog, SaaSiCatPersistenceAdapter, QuotaProvider, SubscriptionUsagePort, UsageSnapshotPort, TenantSubscriptionWritePort, FirstTimeCustomerCheck } from '@saasicat/core';
3
3
  import { P as ProviderSpec } from './di-CcNeq9v-.js';
4
- import { b as AdminManifestConfig, d as AdminResourcesModuleOptions, g as AdminStatsModuleOptions } from './admin-resources.module-BY5r_1MG.js';
5
- import { t as TenantBillingModuleOptions, p as SubscriptionBundleModuleOptions, n as SubscriptionBundleControllerOptions } from './tenant-billing.module-B0stLoJn.js';
6
- import { b as CatalogModuleOptions } from './catalog.module-CQr1FpkI.js';
7
- import { b as DiscoveryAppInfo } from './discovery.scanner-DLgEvuoy.js';
8
- import { E as EntitlementResolutionConfig } from './plan-resolution-CFCoUkrE.js';
9
- import { a as PromoCodesModuleOptions } from './module-BE17XFLg.js';
10
- import { b as CheckoutOfferModuleOptions } from './checkout-offer.module-Ca3_TieR.js';
11
- import { a as SubscriptionContractModuleOptions } from './subscription-contract.module-edyhBr4n.js';
4
+ import { d as AdminResourcesModuleOptions, g as AdminStatsModuleOptions, b as AdminManifestConfig } from './admin-resources.module-DF5_Q7RD.js';
5
+ import { t as TenantBillingModuleOptions, p as SubscriptionBundleModuleOptions, n as SubscriptionBundleControllerOptions } from './tenant-billing.module-wUbsQSFG.js';
6
+ import { b as CatalogModuleOptions } from './catalog.module-BTnMsE6u.js';
7
+ import { b as DiscoveryAppInfo } from './discovery.scanner-9cMqF95o.js';
8
+ import { E as EntitlementResolutionConfig } from './plan-resolution-Cgo_TR1H.js';
9
+ import { a as PromoCodesModuleOptions } from './promo.module-BUKcUWDf.js';
10
+ import { b as CheckoutOfferModuleOptions } from './checkout-offer.module-CMtiQJTT.js';
11
+ import { a as SubscriptionContractModuleOptions } from './subscription-contract.module-fDFdQ0jm.js';
12
12
 
13
13
  interface SetupModuleOptions {
14
14
  /**
@@ -46,7 +46,7 @@ interface PlanResolverPort {
46
46
  * for local development and for apps that do not yet have a contract concept.
47
47
  *
48
48
  * The quickstart path uses this implicitly when `adapters.planResolver` is
49
- * not set and `defaultPlanId` was provided in SaasPlatformModule.forRoot().
49
+ * not set and `defaultPlanId` was provided in SaaSiCatModule.forRoot().
50
50
  */
51
51
  declare class StaticPlanResolver implements PlanResolverPort {
52
52
  private readonly planId;
@@ -78,7 +78,7 @@ declare function buildTenantManifestController(options: TenantManifestController
78
78
  * when wiring adapters without a bundle. The module validates that each port
79
79
  * ends up provided by exactly one of the two paths.
80
80
  */
81
- interface SaasPlatformAdapters {
81
+ interface SaaSiCatAdapters {
82
82
  mfa?: ProviderSpec<MfaPort>;
83
83
  audit?: ProviderSpec<AuditPort>;
84
84
  rlsBypass?: ProviderSpec<RlsBypassPort>;
@@ -105,7 +105,7 @@ interface SaasPlatformAdapters {
105
105
  transactionRunner?: ProviderSpec<TransactionRunner>;
106
106
  }
107
107
  type PlatformImports = Array<Type<unknown> | DynamicModule | Promise<DynamicModule> | ForwardReference>;
108
- interface SaasPlatformCatalogOptions extends Pick<CatalogModuleOptions, 'strictModeCheckMode' | 'autoSyncDiscoveryAtBoot' | 'marketedOnlyFeatures' | 'publicMarketingCatalog' | 'extraProviders'> {
108
+ interface SaaSiCatCatalogOptions extends Pick<CatalogModuleOptions, 'strictModeCheckMode' | 'autoSyncDiscoveryAtBoot' | 'marketedOnlyFeatures' | 'publicMarketingCatalog' | 'extraProviders'> {
109
109
  /** Labels/icons used by discovery review and the public catalog. */
110
110
  featureUiRegistry: FeatureUiRegistry;
111
111
  /** Mount the SuperAdmin catalog controllers. Default `true`. */
@@ -115,31 +115,31 @@ interface SaasPlatformCatalogOptions extends Pick<CatalogModuleOptions, 'strictM
115
115
  /** Override the top-level module imports for catalog adapter factories. */
116
116
  imports?: PlatformImports;
117
117
  }
118
- type SaasPlatformTenantAuthGuards = Array<Type<CanActivate>> | ProviderSpec<ReadonlyArray<CanActivate>>;
119
- interface SaasPlatformTenantBillingOptions extends Omit<TenantBillingModuleOptions, 'authGuards' | 'subscriptionUsagePort' | 'usageSnapshotPort' | 'subscriptionWritePort' | 'global'> {
118
+ type SaaSiCatTenantAuthGuards = Array<Type<CanActivate>> | ProviderSpec<ReadonlyArray<CanActivate>>;
119
+ interface SaaSiCatTenantBillingOptions extends Omit<TenantBillingModuleOptions, 'authGuards' | 'subscriptionUsagePort' | 'usageSnapshotPort' | 'subscriptionWritePort' | 'global'> {
120
120
  /**
121
121
  * Tenant guards as classes (the common path) or as a custom provider
122
122
  * factory. Guard classes are resolved from `imports`.
123
123
  */
124
- authGuards: SaasPlatformTenantAuthGuards;
124
+ authGuards: SaaSiCatTenantAuthGuards;
125
125
  /** Optional overrides; otherwise the persistence bundle supplies them. */
126
126
  subscriptionUsagePort?: ProviderSpec<SubscriptionUsagePort>;
127
127
  usageSnapshotPort?: ProviderSpec<UsageSnapshotPort>;
128
128
  subscriptionWritePort?: ProviderSpec<TenantSubscriptionWritePort>;
129
129
  }
130
- interface SaasPlatformSubscriptionBundlesOptions extends Omit<SubscriptionBundleModuleOptions, 'subscriptionBundleRepository' | 'bundleRepository' | 'controller' | 'imports' | 'extraProviders' | 'global'> {
130
+ interface SaaSiCatSubscriptionBundlesOptions extends Omit<SubscriptionBundleModuleOptions, 'subscriptionBundleRepository' | 'bundleRepository' | 'controller' | 'imports' | 'extraProviders' | 'global'> {
131
131
  /** Default mounts the tenant controller and reuses tenant-billing auth. */
132
132
  controller?: false | Omit<SubscriptionBundleControllerOptions, 'authGuards' | 'subscriptionUsagePort'>;
133
133
  imports?: PlatformImports;
134
134
  extraProviders?: Provider[];
135
135
  }
136
- interface SaasPlatformAdminResourcesOptions extends Omit<AdminResourcesModuleOptions, 'resources' | 'guards' | 'global'> {
136
+ interface SaaSiCatAdminResourcesOptions extends Omit<AdminResourcesModuleOptions, 'resources' | 'guards' | 'global'> {
137
137
  /** Override the default controller guards + `SuperAdminGuard` chain. */
138
138
  guards?: Array<Type<CanActivate>>;
139
139
  /** Custom schema override; the persistence bundle supplies the default. */
140
140
  resources?: ProviderSpec<AdminResourcesPort>;
141
141
  }
142
- interface SaasPlatformPromoCodesOptions extends Omit<PromoCodesModuleOptions, 'promoCodeRepository' | 'redemptionRepository' | 'validationLogRepository' | 'subscriptionLookup' | 'revenueAggregator' | 'transactionRunner' | 'firstTimeCustomerCheck' | 'adminController' | 'global'> {
142
+ interface SaaSiCatPromoCodesOptions extends Omit<PromoCodesModuleOptions, 'promoCodeRepository' | 'redemptionRepository' | 'validationLogRepository' | 'subscriptionLookup' | 'revenueAggregator' | 'transactionRunner' | 'firstTimeCustomerCheck' | 'adminController' | 'global'> {
143
143
  /**
144
144
  * Required when the public preview/redeem flow is enabled. Admin-only
145
145
  * setups do not need an app-specific customer-history check.
@@ -158,24 +158,24 @@ interface SaasPlatformPromoCodesOptions extends Omit<PromoCodesModuleOptions, 'p
158
158
  adminController?: false;
159
159
  }
160
160
  /** First-run setup, deriving the provisioning adapter from persistence by default. */
161
- interface SaasPlatformSetupOptions extends Omit<SetupModuleOptions, 'provisioningPort' | 'global'> {
161
+ interface SaaSiCatSetupOptions extends Omit<SetupModuleOptions, 'provisioningPort' | 'global'> {
162
162
  provisioningPort?: SetupModuleOptions['provisioningPort'];
163
163
  }
164
164
  /** Admin dashboard statistics; the audit port can come from persistence. */
165
- interface SaasPlatformAdminStatsOptions extends Omit<AdminStatsModuleOptions, 'auditStatsPort' | 'global'> {
165
+ interface SaaSiCatAdminStatsOptions extends Omit<AdminStatsModuleOptions, 'auditStatsPort' | 'global'> {
166
166
  auditStatsPort?: AdminStatsModuleOptions['auditStatsPort'];
167
167
  }
168
168
  /**
169
169
  * Public checkout-offer flow. Catalog repositories default to the persistence
170
170
  * bundle, while the app still supplies its checkout-offer repository.
171
171
  */
172
- interface SaasPlatformCheckoutOfferOptions extends Omit<CheckoutOfferModuleOptions, 'bundleRepository' | 'planRepository' | 'catalogEntryRepository' | 'global'> {
172
+ interface SaaSiCatCheckoutOfferOptions extends Omit<CheckoutOfferModuleOptions, 'bundleRepository' | 'planRepository' | 'catalogEntryRepository' | 'global'> {
173
173
  bundleRepository?: CheckoutOfferModuleOptions['bundleRepository'];
174
174
  planRepository?: CheckoutOfferModuleOptions['planRepository'];
175
175
  catalogEntryRepository?: CheckoutOfferModuleOptions['catalogEntryRepository'];
176
176
  }
177
177
  /** Subscription-contract service, deriving its repository from persistence by default. */
178
- interface SaasPlatformSubscriptionContractOptions extends Omit<SubscriptionContractModuleOptions, 'subscriptionContractRepository' | 'global'> {
178
+ interface SaaSiCatSubscriptionContractOptions extends Omit<SubscriptionContractModuleOptions, 'subscriptionContractRepository' | 'global'> {
179
179
  subscriptionContractRepository?: SubscriptionContractModuleOptions['subscriptionContractRepository'];
180
180
  }
181
181
  /**
@@ -195,7 +195,7 @@ interface SaasPlatformSubscriptionContractOptions extends Omit<SubscriptionContr
195
195
  * Everything else — an operator creating tenants through the SuperAdmin UI, a
196
196
  * CLI, or your own onboarding form — is composed here.
197
197
  */
198
- interface SaasPlatformModuleOptions {
198
+ interface SaaSiCatModuleOptions {
199
199
  /**
200
200
  * Plan catalog. Either as an already-loaded object (quickstart, comes
201
201
  * directly from `loadPlanCatalogFromFile('config/saas.yaml')`) or via DB
@@ -224,12 +224,12 @@ interface SaasPlatformModuleOptions {
224
224
  * `capabilities` are validated fail-fast against the enabled feature set
225
225
  * (e.g. `entitlement: true` requires transactions + pessimistic locking).
226
226
  */
227
- persistence?: SaasicatPersistenceAdapter;
227
+ persistence?: SaaSiCatPersistenceAdapter;
228
228
  /**
229
229
  * Individual adapter bindings. Optional when `persistence` provides the
230
230
  * respective port; explicit entries take precedence over the bundle.
231
231
  */
232
- adapters?: SaasPlatformAdapters;
232
+ adapters?: SaaSiCatAdapters;
233
233
  /**
234
234
  * Class-level guards for the platform controllers (`GET /admin/discovery`
235
235
  * and `GET /admin/manifest`). REQUIRED — otherwise the platform throws at
@@ -316,43 +316,43 @@ interface SaasPlatformModuleOptions {
316
316
  * Standard DB-backed catalog stack. Repositories are taken from
317
317
  * `persistence.catalog`; no consumer forwarding module is needed.
318
318
  */
319
- catalog?: false | SaasPlatformCatalogOptions;
319
+ catalog?: false | SaaSiCatCatalogOptions;
320
320
  /**
321
321
  * Standard tenant self-service stack. Subscription read/write adapters
322
322
  * come from `persistence.tenantBilling`; usage is derived from
323
323
  * `quotaProviders` unless explicitly overridden.
324
324
  */
325
- tenantBilling?: false | SaasPlatformTenantBillingOptions;
325
+ tenantBilling?: false | SaaSiCatTenantBillingOptions;
326
326
  /**
327
327
  * Add-on bundle service and tenant controller. `true` uses defaults and
328
328
  * reuses tenant-billing auth/usage; an object customizes policy.
329
329
  */
330
- subscriptionBundles?: false | true | SaasPlatformSubscriptionBundlesOptions;
330
+ subscriptionBundles?: false | true | SaaSiCatSubscriptionBundlesOptions;
331
331
  /**
332
332
  * Standard SuperAdmin Tenant/User/Audit/Subscription endpoints. `true`
333
333
  * uses `persistence.adminResources` and the standard guard chain.
334
334
  */
335
- adminResources?: false | true | SaasPlatformAdminResourcesOptions;
335
+ adminResources?: false | true | SaaSiCatAdminResourcesOptions;
336
336
  /**
337
337
  * Promo-code domain and SuperAdmin CRUD. `true` enables the admin API
338
338
  * without the public preview endpoint; pass an object to enable preview.
339
339
  */
340
- promoCodes?: false | true | SaasPlatformPromoCodesOptions;
340
+ promoCodes?: false | true | SaaSiCatPromoCodesOptions;
341
341
  /**
342
342
  * First-run SuperAdmin setup. `true` uses
343
343
  * `persistence.core.superAdminProvisioning`; an object customizes it or
344
344
  * supplies an app-specific provisioning adapter.
345
345
  */
346
- setup?: false | true | SaasPlatformSetupOptions;
346
+ setup?: false | true | SaaSiCatSetupOptions;
347
347
  /** SuperAdmin dashboard statistics with app-specific subscription/promo ports. */
348
- adminStats?: false | SaasPlatformAdminStatsOptions;
348
+ adminStats?: false | SaaSiCatAdminStatsOptions;
349
349
  /** Public checkout-offer flow; catalog repositories reuse `persistence.catalog`. */
350
- checkoutOffer?: false | SaasPlatformCheckoutOfferOptions;
350
+ checkoutOffer?: false | SaaSiCatCheckoutOfferOptions;
351
351
  /**
352
352
  * Subscription-contract service. `true` reuses
353
353
  * `persistence.entitlement.subscriptionContractRepository`.
354
354
  */
355
- subscriptionContract?: false | true | SaasPlatformSubscriptionContractOptions;
355
+ subscriptionContract?: false | true | SaaSiCatSubscriptionContractOptions;
356
356
  /**
357
357
  * Enable the tenant manifest — the app UI gets a filtered manifest per
358
358
  * tenant with features, quotas and visible navigation. Requires that
@@ -403,4 +403,4 @@ interface SaasPlatformModuleOptions {
403
403
  enforcementChainCheck?: boolean;
404
404
  }
405
405
 
406
- export { PLAN_RESOLVER_PORT_TOKEN as P, type SaasPlatformAdapters as S, type TenantManifestControllerOptions as T, type SaasPlatformAdminResourcesOptions as a, type SaasPlatformAdminStatsOptions as b, type SaasPlatformCatalogOptions as c, type SaasPlatformCheckoutOfferOptions as d, type SaasPlatformModuleOptions as e, type SaasPlatformPromoCodesOptions as f, type SaasPlatformSetupOptions as g, type SaasPlatformSubscriptionBundlesOptions as h, type SaasPlatformSubscriptionContractOptions as i, type SaasPlatformTenantAuthGuards as j, type SaasPlatformTenantBillingOptions as k, SetupModule as l, type SetupModuleOptions as m, StaticPlanResolver as n, type PlanResolverPort as o, buildTenantManifestController as p };
406
+ export { PLAN_RESOLVER_PORT_TOKEN as P, type SaaSiCatAdapters as S, type TenantManifestControllerOptions as T, type SaaSiCatAdminResourcesOptions as a, type SaaSiCatAdminStatsOptions as b, type SaaSiCatCatalogOptions as c, type SaaSiCatCheckoutOfferOptions as d, type SaaSiCatModuleOptions as e, type SaaSiCatPromoCodesOptions as f, type SaaSiCatSetupOptions as g, type SaaSiCatSubscriptionBundlesOptions as h, type SaaSiCatSubscriptionContractOptions as i, type SaaSiCatTenantAuthGuards as j, type SaaSiCatTenantBillingOptions as k, SetupModule as l, type SetupModuleOptions as m, StaticPlanResolver as n, type PlanResolverPort as o, buildTenantManifestController as p };
@@ -1,4 +1,4 @@
1
- import { PlanId } from '@saasicat/types';
1
+ import { PlanId } from '@saasicat/core';
2
2
 
3
3
  /** Input shape: only the fields relevant to resolution. */
4
4
  interface EntitlementResolutionInput {
@@ -1,4 +1,4 @@
1
- import { PlanId } from '@saasicat/types';
1
+ import { PlanId } from '@saasicat/core';
2
2
 
3
3
  /** Input shape: only the fields relevant to resolution. */
4
4
  interface EntitlementResolutionInput {
@@ -1,6 +1,6 @@
1
- import { BundleRepository, DiscoverySnapshot, SubscriptionRepository, PlanRepository, CatalogEntryRepository, BundleRow, BundleVersionRow, CreateBundleData, UpdateBundleData, CreateBundleVersionDraftData, BundleVersionMutationResult, UpdateBundleVersionDraftData, PublishBundleVersionData, MarketingProjectionRepository, MarketingProjectionFilter, MarketingProjectionRow, CreateMarketingProjectionData, UpdateMarketingProjectionData, FeatureUiRegistry, CapabilityCatalogEntryRow, FeatureCatalogEntryRow, QuotaCatalogEntryRow, ReviewCatalogEntryData, CatalogEntryI18n, UpdateCatalogEntryBaseData, SyncDiscoveryResult, PromotionRepository, PromotionRow, CreatePromotionData, UpdatePromotionData, MarketingSettingsRepository, MarketingSettingsRow, UpdateMarketingSettingsData, PublicMarketingCatalogResponse, PlanRow, CreatePlanData, UpdatePlanData, PlanVersionRow, CreatePlanVersionDraftData, PlanVersionMutationResult, UpdatePlanVersionDraftData, PublishPlanVersionData } from '@saasicat/types';
1
+ import { BundleRepository, DiscoverySnapshot, SubscriptionRepository, PlanRepository, CatalogEntryRepository, BundleRow, BundleVersionRow, CreateBundleData, UpdateBundleData, CreateBundleVersionDraftData, BundleVersionMutationResult, UpdateBundleVersionDraftData, PublishBundleVersionData, MarketingProjectionRepository, MarketingProjectionFilter, MarketingProjectionRow, CreateMarketingProjectionData, UpdateMarketingProjectionData, FeatureUiRegistry, CapabilityCatalogEntryRow, FeatureCatalogEntryRow, QuotaCatalogEntryRow, ReviewCatalogEntryData, CatalogEntryI18n, UpdateCatalogEntryBaseData, SyncDiscoveryResult, PromotionRepository, PromotionRow, CreatePromotionData, UpdatePromotionData, MarketingSettingsRepository, MarketingSettingsRow, UpdateMarketingSettingsData, PublicMarketingCatalogResponse, PlanRow, CreatePlanData, UpdatePlanData, PlanVersionRow, CreatePlanVersionDraftData, PlanVersionMutationResult, UpdatePlanVersionDraftData, PublishPlanVersionData } from '@saasicat/core';
2
2
  import { OnApplicationBootstrap } from '@nestjs/common';
3
- import { c as DiscoveryScanner } from './discovery.scanner-DLgEvuoy.js';
3
+ import { c as DiscoveryScanner } from './discovery.scanner-9cMqF95o.js';
4
4
 
5
5
  /**
6
6
  * Configuration for the mutating operations.
@@ -1,6 +1,6 @@
1
- import { BundleRepository, DiscoverySnapshot, SubscriptionRepository, PlanRepository, CatalogEntryRepository, BundleRow, BundleVersionRow, CreateBundleData, UpdateBundleData, CreateBundleVersionDraftData, BundleVersionMutationResult, UpdateBundleVersionDraftData, PublishBundleVersionData, MarketingProjectionRepository, MarketingProjectionFilter, MarketingProjectionRow, CreateMarketingProjectionData, UpdateMarketingProjectionData, FeatureUiRegistry, CapabilityCatalogEntryRow, FeatureCatalogEntryRow, QuotaCatalogEntryRow, ReviewCatalogEntryData, CatalogEntryI18n, UpdateCatalogEntryBaseData, SyncDiscoveryResult, PromotionRepository, PromotionRow, CreatePromotionData, UpdatePromotionData, MarketingSettingsRepository, MarketingSettingsRow, UpdateMarketingSettingsData, PublicMarketingCatalogResponse, PlanRow, CreatePlanData, UpdatePlanData, PlanVersionRow, CreatePlanVersionDraftData, PlanVersionMutationResult, UpdatePlanVersionDraftData, PublishPlanVersionData } from '@saasicat/types';
1
+ import { BundleRepository, DiscoverySnapshot, SubscriptionRepository, PlanRepository, CatalogEntryRepository, BundleRow, BundleVersionRow, CreateBundleData, UpdateBundleData, CreateBundleVersionDraftData, BundleVersionMutationResult, UpdateBundleVersionDraftData, PublishBundleVersionData, MarketingProjectionRepository, MarketingProjectionFilter, MarketingProjectionRow, CreateMarketingProjectionData, UpdateMarketingProjectionData, FeatureUiRegistry, CapabilityCatalogEntryRow, FeatureCatalogEntryRow, QuotaCatalogEntryRow, ReviewCatalogEntryData, CatalogEntryI18n, UpdateCatalogEntryBaseData, SyncDiscoveryResult, PromotionRepository, PromotionRow, CreatePromotionData, UpdatePromotionData, MarketingSettingsRepository, MarketingSettingsRow, UpdateMarketingSettingsData, PublicMarketingCatalogResponse, PlanRow, CreatePlanData, UpdatePlanData, PlanVersionRow, CreatePlanVersionDraftData, PlanVersionMutationResult, UpdatePlanVersionDraftData, PublishPlanVersionData } from '@saasicat/core';
2
2
  import { OnApplicationBootstrap } from '@nestjs/common';
3
- import { c as DiscoveryScanner } from './discovery.scanner-DLgEvuoy.cjs';
3
+ import { c as DiscoveryScanner } from './discovery.scanner-9cMqF95o.cjs';
4
4
 
5
5
  /**
6
6
  * Configuration for the mutating operations.
@@ -1,30 +1,30 @@
1
- export { a as SAASICAT_PUBLIC_ROUTE_KEY, d as SaaSiCatModule, e as SaaSiCatPublicRoute, d as SaasPlatformModule, S as SetupService, g as defineSaaSiCat, i as isSaaSiCatPublicRoute } from '../define-saasicat-CFxut1VR.cjs';
1
+ export { a as SAASICAT_PUBLIC_ROUTE_KEY, d as SaaSiCatModule, e as SaaSiCatPublicRoute, S as SetupService, g as defineSaaSiCat, i as isSaaSiCatPublicRoute } from '../define-saasicat-B5RmWiD2.cjs';
2
2
  import { CanActivate, DynamicModule, OnApplicationBootstrap } from '@nestjs/common';
3
- import { SaasicatPersistenceAdapter, SubscriptionUsagePort, SubscriptionRepository, UsageSnapshotPort, QuotaProvider } from '@saasicat/types';
3
+ import { SaaSiCatPersistenceAdapter, SubscriptionUsagePort, SubscriptionRepository, UsageSnapshotPort, QuotaProvider } from '@saasicat/core';
4
4
  import { P as ProviderSpec } from '../di-CcNeq9v-.cjs';
5
- import { b as DiscoveryAppInfo } from '../discovery.scanner-DLgEvuoy.cjs';
6
- export { c as DiscoveryScanner } from '../discovery.scanner-DLgEvuoy.cjs';
7
- import { e as SaasPlatformModuleOptions, S as SaasPlatformAdapters, o as PlanResolverPort } from '../module-options-klrPnWGF.cjs';
8
- export { P as PLAN_RESOLVER_PORT_TOKEN, a as SaasPlatformAdminResourcesOptions, b as SaasPlatformAdminStatsOptions, c as SaasPlatformCatalogOptions, d as SaasPlatformCheckoutOfferOptions, f as SaasPlatformPromoCodesOptions, g as SaasPlatformSetupOptions, h as SaasPlatformSubscriptionBundlesOptions, i as SaasPlatformSubscriptionContractOptions, j as SaasPlatformTenantAuthGuards, k as SaasPlatformTenantBillingOptions, l as SetupModule, m as SetupModuleOptions, n as StaticPlanResolver, T as TenantManifestControllerOptions, p as buildTenantManifestController } from '../module-options-klrPnWGF.cjs';
9
- import { S as StaticEntitlementService } from '../enforce-quota.interceptor-N80KC34N.cjs';
10
- 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-N80KC34N.cjs';
5
+ import { b as DiscoveryAppInfo } from '../discovery.scanner-9cMqF95o.cjs';
6
+ export { c as DiscoveryScanner } from '../discovery.scanner-9cMqF95o.cjs';
7
+ import { e as SaaSiCatModuleOptions, S as SaaSiCatAdapters, o as PlanResolverPort } from '../module-options-CjeSSaBf.cjs';
8
+ export { P as PLAN_RESOLVER_PORT_TOKEN, a as SaaSiCatAdminResourcesOptions, b as SaaSiCatAdminStatsOptions, c as SaaSiCatCatalogOptions, d as SaaSiCatCheckoutOfferOptions, f as SaaSiCatPromoCodesOptions, g as SaaSiCatSetupOptions, h as SaaSiCatSubscriptionBundlesOptions, i as SaaSiCatSubscriptionContractOptions, j as SaaSiCatTenantAuthGuards, k as SaaSiCatTenantBillingOptions, l as SetupModule, m as SetupModuleOptions, n as StaticPlanResolver, T as TenantManifestControllerOptions, p as buildTenantManifestController } from '../module-options-CjeSSaBf.cjs';
9
+ import { S as StaticEntitlementService } from '../enforce-quota.interceptor-CnieZsdB.cjs';
10
+ 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-CnieZsdB.cjs';
11
11
  import { DiscoveryService, MetadataScanner } from '@nestjs/core';
12
- 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';
13
- export { A as AdminAuditService } from '../admin-audit.service-9IqXMlZm.cjs';
14
- export { e as AdminResourcesService, f as AdminStatsModule, g as AdminStatsModuleOptions } from '../admin-resources.module-DGgGSdzN.cjs';
15
- export { c as EntitlementService } from '../aggregation-mZ7WZROK.cjs';
16
- 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-CAMMdfn1.cjs';
17
- 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';
12
+ 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-DfKupywR.cjs';
13
+ export { A as AdminAuditService } from '../admin-audit.service-4P3Djdxk.cjs';
14
+ export { e as AdminResourcesService, f as AdminStatsModule, g as AdminStatsModuleOptions } from '../admin-resources.module-CpvzcfCc.cjs';
15
+ export { c as EntitlementService } from '../aggregation-B3CD0v_d.cjs';
16
+ 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-B6UTheK_.cjs';
17
+ 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-TPEtbN0r.cjs';
18
18
  export { P as PromoCodeRateLimitGuard } from '../rate-limit.guard-dntqAlfZ.cjs';
19
- export { g as PromoCodesService } from '../service-D48clObR.cjs';
20
- export { a as CheckoutOfferModule, b as CheckoutOfferModuleOptions } from '../checkout-offer.module-DmlpPevf.cjs';
21
- export { C as CheckoutOfferService } from '../checkout-offer.service-BX51dljL.cjs';
22
- export { S as SubscriptionContractModule, a as SubscriptionContractModuleOptions } from '../subscription-contract.module-B2uNvUJL.cjs';
23
- export { S as SubscriptionContractService } from '../subscription-contract.service--cm47ZJJ.cjs';
24
- import '../tenant-billing.module-BxJS6fX4.cjs';
25
- import '../catalog.module-D-_pQDNA.cjs';
26
- import '../plan-resolution-CFCoUkrE.cjs';
27
- import '../module-CHMIyWlf.cjs';
19
+ export { g as PromoCodesService } from '../promo.service-2qFgqF-a.cjs';
20
+ export { a as CheckoutOfferModule, b as CheckoutOfferModuleOptions } from '../checkout-offer.module-CVpWrzbe.cjs';
21
+ export { C as CheckoutOfferService } from '../checkout-offer.service-BLOv2HOo.cjs';
22
+ export { S as SubscriptionContractModule, a as SubscriptionContractModuleOptions } from '../subscription-contract.module-CEK8HS5-.cjs';
23
+ export { S as SubscriptionContractService } from '../subscription-contract.service-hD87MKyg.cjs';
24
+ import '../tenant-billing.module-BznC3XtW.cjs';
25
+ import '../catalog.module-BDDO6iwq.cjs';
26
+ import '../plan-resolution-Cgo_TR1H.cjs';
27
+ import '../promo.module-BY2YHHLn.cjs';
28
28
  import 'rxjs';
29
29
 
30
30
  /**
@@ -51,10 +51,10 @@ interface SharedTenantBinding {
51
51
  quotaProvidersHostedByTenantBilling: boolean;
52
52
  }
53
53
  interface CompositionContext {
54
- readonly options: SaasPlatformModuleOptions;
54
+ readonly options: SaaSiCatModuleOptions;
55
55
  /** After the bundle slices and the explicit entries have been merged. */
56
- readonly adapters: SaasPlatformAdapters;
57
- readonly persistence: SaasicatPersistenceAdapter | undefined;
56
+ readonly adapters: SaaSiCatAdapters;
57
+ readonly persistence: SaaSiCatPersistenceAdapter | undefined;
58
58
  /** App key and version, for discovery and the public catalogue. */
59
59
  readonly appInfo: DiscoveryAppInfo;
60
60
  /** Entitlement is needed directly, or by tenant billing / bundles. */
@@ -87,9 +87,9 @@ declare function composeModuleExports(ctx: CompositionContext, ownExports: NonNu
87
87
 
88
88
  /** Everything a rule may look at: the options as given, the adapters as resolved. */
89
89
  interface PlatformConfiguration {
90
- readonly options: SaasPlatformModuleOptions;
90
+ readonly options: SaaSiCatModuleOptions;
91
91
  /** After the bundle slices and the explicit entries have been merged. */
92
- readonly adapters: SaasPlatformAdapters;
92
+ readonly adapters: SaaSiCatAdapters;
93
93
  }
94
94
  interface PlatformRule {
95
95
  /** Stable id — `<area>.<what-it-requires>`. Appears in the boot error. */
@@ -301,4 +301,4 @@ declare class TenantManifestService {
301
301
  getManifest(tenantId: string): Promise<TenantManifest>;
302
302
  }
303
303
 
304
- export { type Composer, type CompositionContext, ENFORCEMENT_CHAIN_STATE_TOKEN, EnforcementChainCheck, type EnforcementChainState, FEATURE_COMPOSERS, MOUNTED_BUT_NOT_EXPORTED, PLATFORM_RULES, PlanResolverPort, type PlatformConfiguration, type PlatformRule, type PlatformViolation, QuotaProvidersUsageSnapshot, SaaSiCatConfigurationError, SaasPlatformAdapters, SaasPlatformModuleOptions, StaticEntitlementService, SubscriptionPlanResolver, type TenantManifest, TenantManifestService, type TenantNavItem, assertConfiguration, composeFeatures, composeModuleExports, docsUrlFor, findViolations, headingSlug };
304
+ export { type Composer, type CompositionContext, ENFORCEMENT_CHAIN_STATE_TOKEN, EnforcementChainCheck, type EnforcementChainState, FEATURE_COMPOSERS, MOUNTED_BUT_NOT_EXPORTED, PLATFORM_RULES, PlanResolverPort, type PlatformConfiguration, type PlatformRule, type PlatformViolation, QuotaProvidersUsageSnapshot, SaaSiCatAdapters, SaaSiCatConfigurationError, SaaSiCatModuleOptions, StaticEntitlementService, SubscriptionPlanResolver, type TenantManifest, TenantManifestService, type TenantNavItem, assertConfiguration, composeFeatures, composeModuleExports, docsUrlFor, findViolations, headingSlug };
@@ -1,30 +1,30 @@
1
- export { a as SAASICAT_PUBLIC_ROUTE_KEY, d as SaaSiCatModule, e as SaaSiCatPublicRoute, d as SaasPlatformModule, S as SetupService, g as defineSaaSiCat, i as isSaaSiCatPublicRoute } from '../define-saasicat-3ois8t8s.js';
1
+ export { a as SAASICAT_PUBLIC_ROUTE_KEY, d as SaaSiCatModule, e as SaaSiCatPublicRoute, S as SetupService, g as defineSaaSiCat, i as isSaaSiCatPublicRoute } from '../define-saasicat-DN-dRObd.js';
2
2
  import { CanActivate, DynamicModule, OnApplicationBootstrap } from '@nestjs/common';
3
- import { SaasicatPersistenceAdapter, SubscriptionUsagePort, SubscriptionRepository, UsageSnapshotPort, QuotaProvider } from '@saasicat/types';
3
+ import { SaaSiCatPersistenceAdapter, SubscriptionUsagePort, SubscriptionRepository, UsageSnapshotPort, QuotaProvider } from '@saasicat/core';
4
4
  import { P as ProviderSpec } from '../di-CcNeq9v-.js';
5
- import { b as DiscoveryAppInfo } from '../discovery.scanner-DLgEvuoy.js';
6
- export { c as DiscoveryScanner } from '../discovery.scanner-DLgEvuoy.js';
7
- import { e as SaasPlatformModuleOptions, S as SaasPlatformAdapters, o as PlanResolverPort } from '../module-options-ByJL7FZm.js';
8
- export { P as PLAN_RESOLVER_PORT_TOKEN, a as SaasPlatformAdminResourcesOptions, b as SaasPlatformAdminStatsOptions, c as SaasPlatformCatalogOptions, d as SaasPlatformCheckoutOfferOptions, f as SaasPlatformPromoCodesOptions, g as SaasPlatformSetupOptions, h as SaasPlatformSubscriptionBundlesOptions, i as SaasPlatformSubscriptionContractOptions, j as SaasPlatformTenantAuthGuards, k as SaasPlatformTenantBillingOptions, l as SetupModule, m as SetupModuleOptions, n as StaticPlanResolver, T as TenantManifestControllerOptions, p as buildTenantManifestController } from '../module-options-ByJL7FZm.js';
9
- import { S as StaticEntitlementService } from '../enforce-quota.interceptor-CYDNvAQz.js';
10
- 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-CYDNvAQz.js';
5
+ import { b as DiscoveryAppInfo } from '../discovery.scanner-9cMqF95o.js';
6
+ export { c as DiscoveryScanner } from '../discovery.scanner-9cMqF95o.js';
7
+ import { e as SaaSiCatModuleOptions, S as SaaSiCatAdapters, o as PlanResolverPort } from '../module-options-DtcJqwjv.js';
8
+ export { P as PLAN_RESOLVER_PORT_TOKEN, a as SaaSiCatAdminResourcesOptions, b as SaaSiCatAdminStatsOptions, c as SaaSiCatCatalogOptions, d as SaaSiCatCheckoutOfferOptions, f as SaaSiCatPromoCodesOptions, g as SaaSiCatSetupOptions, h as SaaSiCatSubscriptionBundlesOptions, i as SaaSiCatSubscriptionContractOptions, j as SaaSiCatTenantAuthGuards, k as SaaSiCatTenantBillingOptions, l as SetupModule, m as SetupModuleOptions, n as StaticPlanResolver, T as TenantManifestControllerOptions, p as buildTenantManifestController } from '../module-options-DtcJqwjv.js';
9
+ import { S as StaticEntitlementService } from '../enforce-quota.interceptor-Cseo35Ki.js';
10
+ 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-Cseo35Ki.js';
11
11
  import { DiscoveryService, MetadataScanner } from '@nestjs/core';
12
- 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';
13
- export { A as AdminAuditService } from '../admin-audit.service-9IqXMlZm.js';
14
- export { e as AdminResourcesService, f as AdminStatsModule, g as AdminStatsModuleOptions } from '../admin-resources.module-BY5r_1MG.js';
15
- export { c as EntitlementService } from '../aggregation-DP5zfKbU.js';
16
- 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-CYYK0CpT.js';
17
- 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';
12
+ 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-TYiSUwIR.js';
13
+ export { A as AdminAuditService } from '../admin-audit.service-4P3Djdxk.js';
14
+ export { e as AdminResourcesService, f as AdminStatsModule, g as AdminStatsModuleOptions } from '../admin-resources.module-DF5_Q7RD.js';
15
+ export { c as EntitlementService } from '../aggregation-BFzW07DE.js';
16
+ 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-DpgHCT9r.js';
17
+ 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-DChhbK6h.js';
18
18
  export { P as PromoCodeRateLimitGuard } from '../rate-limit.guard-dntqAlfZ.js';
19
- export { g as PromoCodesService } from '../service-D48clObR.js';
20
- export { a as CheckoutOfferModule, b as CheckoutOfferModuleOptions } from '../checkout-offer.module-Ca3_TieR.js';
21
- export { C as CheckoutOfferService } from '../checkout-offer.service-BX51dljL.js';
22
- export { S as SubscriptionContractModule, a as SubscriptionContractModuleOptions } from '../subscription-contract.module-edyhBr4n.js';
23
- export { S as SubscriptionContractService } from '../subscription-contract.service--cm47ZJJ.js';
24
- import '../tenant-billing.module-B0stLoJn.js';
25
- import '../catalog.module-CQr1FpkI.js';
26
- import '../plan-resolution-CFCoUkrE.js';
27
- import '../module-BE17XFLg.js';
19
+ export { g as PromoCodesService } from '../promo.service-2qFgqF-a.js';
20
+ export { a as CheckoutOfferModule, b as CheckoutOfferModuleOptions } from '../checkout-offer.module-CMtiQJTT.js';
21
+ export { C as CheckoutOfferService } from '../checkout-offer.service-BLOv2HOo.js';
22
+ export { S as SubscriptionContractModule, a as SubscriptionContractModuleOptions } from '../subscription-contract.module-fDFdQ0jm.js';
23
+ export { S as SubscriptionContractService } from '../subscription-contract.service-hD87MKyg.js';
24
+ import '../tenant-billing.module-wUbsQSFG.js';
25
+ import '../catalog.module-BTnMsE6u.js';
26
+ import '../plan-resolution-Cgo_TR1H.js';
27
+ import '../promo.module-BUKcUWDf.js';
28
28
  import 'rxjs';
29
29
 
30
30
  /**
@@ -51,10 +51,10 @@ interface SharedTenantBinding {
51
51
  quotaProvidersHostedByTenantBilling: boolean;
52
52
  }
53
53
  interface CompositionContext {
54
- readonly options: SaasPlatformModuleOptions;
54
+ readonly options: SaaSiCatModuleOptions;
55
55
  /** After the bundle slices and the explicit entries have been merged. */
56
- readonly adapters: SaasPlatformAdapters;
57
- readonly persistence: SaasicatPersistenceAdapter | undefined;
56
+ readonly adapters: SaaSiCatAdapters;
57
+ readonly persistence: SaaSiCatPersistenceAdapter | undefined;
58
58
  /** App key and version, for discovery and the public catalogue. */
59
59
  readonly appInfo: DiscoveryAppInfo;
60
60
  /** Entitlement is needed directly, or by tenant billing / bundles. */
@@ -87,9 +87,9 @@ declare function composeModuleExports(ctx: CompositionContext, ownExports: NonNu
87
87
 
88
88
  /** Everything a rule may look at: the options as given, the adapters as resolved. */
89
89
  interface PlatformConfiguration {
90
- readonly options: SaasPlatformModuleOptions;
90
+ readonly options: SaaSiCatModuleOptions;
91
91
  /** After the bundle slices and the explicit entries have been merged. */
92
- readonly adapters: SaasPlatformAdapters;
92
+ readonly adapters: SaaSiCatAdapters;
93
93
  }
94
94
  interface PlatformRule {
95
95
  /** Stable id — `<area>.<what-it-requires>`. Appears in the boot error. */
@@ -301,4 +301,4 @@ declare class TenantManifestService {
301
301
  getManifest(tenantId: string): Promise<TenantManifest>;
302
302
  }
303
303
 
304
- export { type Composer, type CompositionContext, ENFORCEMENT_CHAIN_STATE_TOKEN, EnforcementChainCheck, type EnforcementChainState, FEATURE_COMPOSERS, MOUNTED_BUT_NOT_EXPORTED, PLATFORM_RULES, PlanResolverPort, type PlatformConfiguration, type PlatformRule, type PlatformViolation, QuotaProvidersUsageSnapshot, SaaSiCatConfigurationError, SaasPlatformAdapters, SaasPlatformModuleOptions, StaticEntitlementService, SubscriptionPlanResolver, type TenantManifest, TenantManifestService, type TenantNavItem, assertConfiguration, composeFeatures, composeModuleExports, docsUrlFor, findViolations, headingSlug };
304
+ export { type Composer, type CompositionContext, ENFORCEMENT_CHAIN_STATE_TOKEN, EnforcementChainCheck, type EnforcementChainState, FEATURE_COMPOSERS, MOUNTED_BUT_NOT_EXPORTED, PLATFORM_RULES, PlanResolverPort, type PlatformConfiguration, type PlatformRule, type PlatformViolation, QuotaProvidersUsageSnapshot, SaaSiCatAdapters, SaaSiCatConfigurationError, SaaSiCatModuleOptions, StaticEntitlementService, SubscriptionPlanResolver, type TenantManifest, TenantManifestService, type TenantNavItem, assertConfiguration, composeFeatures, composeModuleExports, docsUrlFor, findViolations, headingSlug };
@@ -13,7 +13,7 @@ import {
13
13
  QuotaProvidersUsageSnapshot,
14
14
  STATIC_FEATURE_GUARD_CONFIG_TOKEN,
15
15
  SaaSiCatConfigurationError,
16
- SaasPlatformModule,
16
+ SaaSiCatModule,
17
17
  SetupModule,
18
18
  SetupService,
19
19
  StaticEntitlementService,
@@ -28,13 +28,10 @@ import {
28
28
  docsUrlFor,
29
29
  findViolations,
30
30
  headingSlug
31
- } from "../chunk-EHKMPP6J.js";
32
- import {
33
- PromoCodeRateLimitGuard
34
- } from "../chunk-B6IWLV7R.js";
31
+ } from "../chunk-XMA4XYC5.js";
35
32
  import {
36
33
  SubscriptionContractModule
37
- } from "../chunk-3E6ONOMG.js";
34
+ } from "../chunk-AU3OOREM.js";
38
35
  import {
39
36
  AdminBypassRlsInterceptor,
40
37
  AdminManifestModule,
@@ -46,7 +43,7 @@ import {
46
43
  MfaGuard,
47
44
  MfaService,
48
45
  SuperAdminGuard
49
- } from "../chunk-SN5UOC43.js";
46
+ } from "../chunk-LTT736P3.js";
50
47
  import {
51
48
  ComposedTenantAuthGuard,
52
49
  PendingPlanMaterializationService,
@@ -55,13 +52,10 @@ import {
55
52
  SubscriptionBundlesService,
56
53
  TenantAdminGuard,
57
54
  TenantBillingController
58
- } from "../chunk-UHD6FJBQ.js";
59
- import {
60
- PromoCodesService
61
- } from "../chunk-37HEKVDH.js";
55
+ } from "../chunk-W6YEIY4R.js";
62
56
  import {
63
57
  SubscriptionContractService
64
- } from "../chunk-CJFAOD7K.js";
58
+ } from "../chunk-KFT5AIIH.js";
65
59
  import {
66
60
  BundlesService,
67
61
  CatalogEntriesService,
@@ -71,36 +65,42 @@ import {
71
65
  PlansService,
72
66
  PromotionsService,
73
67
  PublicMarketingCatalogService
74
- } from "../chunk-7X5MSAIL.js";
75
- import "../chunk-WPUVJRIN.js";
76
- import {
77
- AdminAuditService
78
- } from "../chunk-E56W4U2P.js";
68
+ } from "../chunk-VNADKD5U.js";
69
+ import "../chunk-N3L3AICU.js";
79
70
  import {
80
71
  CheckoutOfferModule,
81
72
  CheckoutOfferService
82
- } from "../chunk-XTVAFJ3P.js";
73
+ } from "../chunk-L23MLBEC.js";
83
74
  import "../chunk-BSK6YBLI.js";
75
+ import "../chunk-XBYAFEOR.js";
76
+ import {
77
+ DiscoveryScanner
78
+ } from "../chunk-WXYJHZCN.js";
79
+ import "../chunk-BGS4CWV2.js";
80
+ import {
81
+ EntitlementService
82
+ } from "../chunk-PK6C5R7B.js";
83
+ import "../chunk-VBRYPU7V.js";
84
+ import "../chunk-OUDSQ3PU.js";
85
+ import "../chunk-AOQJEYOL.js";
86
+ import "../chunk-QUZU2M33.js";
87
+ import {
88
+ PromoCodeRateLimitGuard
89
+ } from "../chunk-YZPVQUIW.js";
90
+ import {
91
+ PromoCodesService
92
+ } from "../chunk-7TVZI3KY.js";
93
+ import {
94
+ AdminAuditService
95
+ } from "../chunk-O2J2HDXA.js";
84
96
  import {
85
97
  SAASICAT_PUBLIC_ROUTE_KEY,
86
98
  SaaSiCatPublicRoute,
87
99
  isSaaSiCatPublicRoute
88
100
  } from "../chunk-YSC46BGM.js";
89
- import "../chunk-6WL6VQ7Z.js";
90
- import {
91
- DiscoveryScanner
92
- } from "../chunk-5ZXBXYXU.js";
93
- import "../chunk-H4DOTO7S.js";
94
- import {
95
- EntitlementService
96
- } from "../chunk-F4B2NJUZ.js";
97
101
  import "../chunk-DQKCK7DX.js";
98
- import "../chunk-NYLON2VC.js";
99
- import "../chunk-EBJJNTW6.js";
100
- import "../chunk-WKVBNTYC.js";
101
- import "../chunk-L4KTQ6CL.js";
102
+ import "../chunk-57V6ZTI6.js";
102
103
  import "../chunk-SABTXESR.js";
103
- import "../chunk-L4SUWH5B.js";
104
104
  import "../chunk-SHUYVCID.js";
105
105
  export {
106
106
  AdminAuditService,
@@ -142,9 +142,8 @@ export {
142
142
  SAASICAT_PUBLIC_ROUTE_KEY,
143
143
  STATIC_FEATURE_GUARD_CONFIG_TOKEN,
144
144
  SaaSiCatConfigurationError,
145
- SaasPlatformModule as SaaSiCatModule,
145
+ SaaSiCatModule,
146
146
  SaaSiCatPublicRoute,
147
- SaasPlatformModule,
148
147
  SetupModule,
149
148
  SetupService,
150
149
  StaticEntitlementService,
@@ -1,8 +1,8 @@
1
- import { PromoCodeValueType, PromoCodeDurationType, BillingCycle, PromoCodeRepository, PromoCodeRedemptionRepository } from '@saasicat/types';
2
- import { g as PromoCodesService, d as PreviewResult } from '../service-D48clObR.cjs';
3
- export { a as PreviewInput, b as PreviewInvalid, c as PreviewReason, e as PreviewValid, f as PromoCodeStats, P as PromoServiceConfig, R as RedeemInput } from '../service-D48clObR.cjs';
1
+ import { PromoCodeValueType, PromoCodeDurationType, BillingCycle, PromoCodeRepository, PromoCodeRedemptionRepository } from '@saasicat/core';
2
+ import { g as PromoCodesService, d as PreviewResult } from '../promo.service-2qFgqF-a.cjs';
3
+ export { a as PreviewInput, b as PreviewInvalid, c as PreviewReason, e as PreviewValid, f as PromoCodeStats, P as PromoServiceConfig, R as RedeemInput } from '../promo.service-2qFgqF-a.cjs';
4
4
  export { P as PromoCodeRateLimitGuard, h as hashIp, i as ipFingerprint } from '../rate-limit.guard-dntqAlfZ.cjs';
5
- export { P as PromoCodesModule, a as PromoCodesModuleOptions } from '../module-CHMIyWlf.cjs';
5
+ export { P as PromoCodesModule, a as PromoCodesModuleOptions } from '../promo.module-BY2YHHLn.cjs';
6
6
  import { Type, CanActivate } from '@nestjs/common';
7
7
  import '../di-CcNeq9v-.cjs';
8
8
 
@@ -1,8 +1,8 @@
1
- import { PromoCodeValueType, PromoCodeDurationType, BillingCycle, PromoCodeRepository, PromoCodeRedemptionRepository } from '@saasicat/types';
2
- import { g as PromoCodesService, d as PreviewResult } from '../service-D48clObR.js';
3
- export { a as PreviewInput, b as PreviewInvalid, c as PreviewReason, e as PreviewValid, f as PromoCodeStats, P as PromoServiceConfig, R as RedeemInput } from '../service-D48clObR.js';
1
+ import { PromoCodeValueType, PromoCodeDurationType, BillingCycle, PromoCodeRepository, PromoCodeRedemptionRepository } from '@saasicat/core';
2
+ import { g as PromoCodesService, d as PreviewResult } from '../promo.service-2qFgqF-a.js';
3
+ export { a as PreviewInput, b as PreviewInvalid, c as PreviewReason, e as PreviewValid, f as PromoCodeStats, P as PromoServiceConfig, R as RedeemInput } from '../promo.service-2qFgqF-a.js';
4
4
  export { P as PromoCodeRateLimitGuard, h as hashIp, i as ipFingerprint } from '../rate-limit.guard-dntqAlfZ.js';
5
- export { P as PromoCodesModule, a as PromoCodesModuleOptions } from '../module-BE17XFLg.js';
5
+ export { P as PromoCodesModule, a as PromoCodesModuleOptions } from '../promo.module-BUKcUWDf.js';
6
6
  import { Type, CanActivate } from '@nestjs/common';
7
7
  import '../di-CcNeq9v-.js';
8
8
 
@@ -10,7 +10,7 @@ import {
10
10
  buildPromoCodeAdminController,
11
11
  hashIp,
12
12
  ipFingerprint
13
- } from "../chunk-B6IWLV7R.js";
13
+ } from "../chunk-YZPVQUIW.js";
14
14
  import {
15
15
  PROMO_CODE_REDEMPTION_REPOSITORY_TOKEN,
16
16
  PROMO_CODE_REPOSITORY_TOKEN,
@@ -26,15 +26,15 @@ import {
26
26
  computeDiscountGross,
27
27
  computeDiscountedGross,
28
28
  computeRegularStartsAt
29
- } from "../chunk-37HEKVDH.js";
30
- import "../chunk-E56W4U2P.js";
29
+ } from "../chunk-7TVZI3KY.js";
30
+ import "../chunk-O2J2HDXA.js";
31
31
  import "../chunk-YSC46BGM.js";
32
32
  import {
33
33
  computeIncludedVat,
34
34
  grossFromNet,
35
35
  round2
36
36
  } from "../chunk-DQKCK7DX.js";
37
- import "../chunk-EBJJNTW6.js";
37
+ import "../chunk-57V6ZTI6.js";
38
38
  import "../chunk-SABTXESR.js";
39
39
  import "../chunk-SHUYVCID.js";
40
40
  export {
@@ -1,7 +1,7 @@
1
1
  import { Type, CanActivate, DynamicModule, ForwardReference } from '@nestjs/common';
2
- import { PromoCodeRepository, PromoCodeRedemptionRepository, PromoCodeValidationLogRepository, FirstTimeCustomerCheck, PromoSubscriptionLookup, PromoRevenueDeductionAggregator, TransactionRunner } from '@saasicat/types';
2
+ import { PromoCodeRepository, PromoCodeRedemptionRepository, PromoCodeValidationLogRepository, FirstTimeCustomerCheck, PromoSubscriptionLookup, PromoRevenueDeductionAggregator, TransactionRunner } from '@saasicat/core';
3
3
  import { P as ProviderSpec } from './di-CcNeq9v-.js';
4
- import { P as PromoServiceConfig } from './service-D48clObR.js';
4
+ import { P as PromoServiceConfig } from './promo.service-2qFgqF-a.js';
5
5
 
6
6
  interface PromoCodesModuleOptions {
7
7
  promoCodeRepository: ProviderSpec<PromoCodeRepository>;