@saasicat/nest 0.22.1 → 0.22.2

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 CHANGED
@@ -14878,6 +14878,9 @@ StaticEntitlementService = _ts_decorate84([
14878
14878
  ])
14879
14879
  ], StaticEntitlementService);
14880
14880
 
14881
+ // src/platform/saas-platform.module.ts
14882
+ var import_core11 = require("@nestjs/core");
14883
+
14881
14884
  // src/platform/feature-guard-coverage.check.ts
14882
14885
  var import_common75 = require("@nestjs/common");
14883
14886
  var import_core7 = require("@nestjs/core");
@@ -15800,6 +15803,7 @@ var SaasPlatformModule = class _SaasPlatformModule {
15800
15803
  lightweightExports.push(PLAN_RESOLVER_PORT_TOKEN, StaticEntitlementService, StaticFeatureGuard, EnforceQuotaInterceptor, QUOTA_PROVIDERS_TOKEN);
15801
15804
  if (options.globalFeatureGuard === false) {
15802
15805
  lightweightProviders.push(FeatureGuardCoverageCheck);
15806
+ imports.push(import_core11.DiscoveryModule);
15803
15807
  }
15804
15808
  } else {
15805
15809
  PLATFORM_LOGGER.warn("No plan resolver configured \u2014 @RequireFeature and @EnforceQuota are INERT. The platform registered neither StaticFeatureGuard nor EnforceQuotaInterceptor, so every annotated route serves unlicensed traffic and every quota is unlimited. Set one of: adapters.planResolver, defaultPlanId, or tenantBilling.");
@@ -60,9 +60,7 @@ import {
60
60
  periodEndWithMinLead,
61
61
  resolveBundleCancelEffectiveAt,
62
62
  resolveBundlePriceNet
63
- } from "../chunk-A7FHAN2I.js";
64
- import "../chunk-VQQWF7MW.js";
65
- import "../chunk-B7NRY2LV.js";
63
+ } from "../chunk-4BSSMDLL.js";
66
64
  import {
67
65
  AUDIT_CONTEXT_RESOLVER_TOKEN,
68
66
  PENDING_PLAN_QUERY_PORT_TOKEN,
@@ -77,13 +75,16 @@ import {
77
75
  classifyBundleVersionDiff,
78
76
  classifyPlanDiff
79
77
  } from "../chunk-WPUVJRIN.js";
80
- import "../chunk-E56W4U2P.js";
81
- import "../chunk-BSK6YBLI.js";
82
- import "../chunk-YSC46BGM.js";
83
78
  import {
84
79
  SUBSCRIPTION_BUNDLE_CONFIG_TOKEN,
85
80
  SUBSCRIPTION_BUNDLE_REPOSITORY_TOKEN
86
- } from "../chunk-NNNXXUPT.js";
81
+ } from "../chunk-NXD7763W.js";
82
+ import "../chunk-WKVBNTYC.js";
83
+ import "../chunk-L4KTQ6CL.js";
84
+ import "../chunk-L4SUWH5B.js";
85
+ import "../chunk-VQQWF7MW.js";
86
+ import "../chunk-E56W4U2P.js";
87
+ import "../chunk-YSC46BGM.js";
87
88
  import {
88
89
  PLAN_CATALOG_READ_SINK_TOKEN,
89
90
  PLAN_CATALOG_TOKEN,
@@ -99,12 +100,11 @@ import {
99
100
  isFeatureInPlan,
100
101
  isFeaturePlannedOnly
101
102
  } from "../chunk-DQKCK7DX.js";
102
- import "../chunk-NYLON2VC.js";
103
103
  import "../chunk-EBJJNTW6.js";
104
- import "../chunk-WKVBNTYC.js";
105
- import "../chunk-L4KTQ6CL.js";
104
+ import "../chunk-B7NRY2LV.js";
105
+ import "../chunk-BSK6YBLI.js";
106
+ import "../chunk-NYLON2VC.js";
106
107
  import "../chunk-SABTXESR.js";
107
- import "../chunk-L4SUWH5B.js";
108
108
  import "../chunk-SHUYVCID.js";
109
109
  export {
110
110
  AUDIT_CONTEXT_RESOLVER_TOKEN,
@@ -6,7 +6,7 @@ import {
6
6
  runSeedGateFromFile,
7
7
  seedGateExitCode,
8
8
  validateSeedAgainstSnapshot
9
- } from "../chunk-7ZPFQXHM.js";
9
+ } from "../chunk-UOWK2HYG.js";
10
10
  import "../chunk-74SCJ4HF.js";
11
11
  import {
12
12
  ADVISORY_STRICT_MODE_CODES,
@@ -56,10 +56,8 @@ import {
56
56
  quotaApprovalSignature,
57
57
  validateBundleDraft,
58
58
  validatePlanDraft
59
- } from "../chunk-7X5MSAIL.js";
59
+ } from "../chunk-QB7MICKQ.js";
60
60
  import "../chunk-WPUVJRIN.js";
61
- import "../chunk-E56W4U2P.js";
62
- import "../chunk-YSC46BGM.js";
63
61
  import "../chunk-5ZXBXYXU.js";
64
62
  import "../chunk-WKVBNTYC.js";
65
63
  import {
@@ -71,8 +69,10 @@ import {
71
69
  PLAN_REPOSITORY_TOKEN,
72
70
  PROMOTION_REPOSITORY_TOKEN
73
71
  } from "../chunk-L4KTQ6CL.js";
74
- import "../chunk-SABTXESR.js";
75
72
  import "../chunk-L4SUWH5B.js";
73
+ import "../chunk-E56W4U2P.js";
74
+ import "../chunk-YSC46BGM.js";
75
+ import "../chunk-SABTXESR.js";
76
76
  import "../chunk-SHUYVCID.js";
77
77
  export {
78
78
  ADVISORY_STRICT_MODE_CODES,
@@ -6,10 +6,10 @@ import {
6
6
  CreateCheckoutOfferDto,
7
7
  UpdateCheckoutOfferDto,
8
8
  buildCheckoutOfferController
9
- } from "../chunk-XTVAFJ3P.js";
10
- import "../chunk-BSK6YBLI.js";
11
- import "../chunk-YSC46BGM.js";
9
+ } from "../chunk-ES5AN53A.js";
12
10
  import "../chunk-L4KTQ6CL.js";
11
+ import "../chunk-YSC46BGM.js";
12
+ import "../chunk-BSK6YBLI.js";
13
13
  import "../chunk-SABTXESR.js";
14
14
  import "../chunk-SHUYVCID.js";
15
15
  export {
@@ -1,9 +1,3 @@
1
- import {
2
- PromoCodesService
3
- } from "./chunk-VQQWF7MW.js";
4
- import {
5
- SubscriptionContractService
6
- } from "./chunk-B7NRY2LV.js";
7
1
  import {
8
2
  AUDIT_CONTEXT_RESOLVER_TOKEN,
9
3
  PENDING_PLAN_QUERY_PORT_TOKEN,
@@ -16,39 +10,45 @@ import {
16
10
  USER_EMAIL_RESOLVER_TOKEN,
17
11
  USER_ID_RESOLVER_TOKEN
18
12
  } from "./chunk-WPUVJRIN.js";
19
- import {
20
- AdminAuditService
21
- } from "./chunk-E56W4U2P.js";
22
- import {
23
- SaaSiCatPublicRoute
24
- } from "./chunk-YSC46BGM.js";
25
13
  import {
26
14
  EntitlementService,
27
15
  SUBSCRIPTION_BUNDLE_CONFIG_TOKEN,
28
16
  SUBSCRIPTION_BUNDLE_REPOSITORY_TOKEN,
29
17
  isLimitExceededError,
30
18
  toEffectiveLimitsSnapshot
31
- } from "./chunk-NNNXXUPT.js";
19
+ } from "./chunk-NXD7763W.js";
20
+ import {
21
+ ENTITLEMENT_SERVICE_TOKEN
22
+ } from "./chunk-WKVBNTYC.js";
23
+ import {
24
+ BUNDLE_REPOSITORY_TOKEN,
25
+ CATALOG_ENTRY_REPOSITORY_TOKEN,
26
+ PLAN_REPOSITORY_TOKEN
27
+ } from "./chunk-L4KTQ6CL.js";
28
+ import {
29
+ PromoCodesService
30
+ } from "./chunk-VQQWF7MW.js";
31
+ import {
32
+ AdminAuditService
33
+ } from "./chunk-E56W4U2P.js";
34
+ import {
35
+ SaaSiCatPublicRoute
36
+ } from "./chunk-YSC46BGM.js";
32
37
  import {
33
38
  PLAN_CATALOG_TOKEN,
34
39
  findPlan,
35
40
  getMarketedPlans,
36
41
  getPlanPriceNet
37
42
  } from "./chunk-DQKCK7DX.js";
38
- import {
39
- SUBSCRIPTION_CONTRACT_REPOSITORY_TOKEN
40
- } from "./chunk-NYLON2VC.js";
41
43
  import {
42
44
  codedError
43
45
  } from "./chunk-EBJJNTW6.js";
44
46
  import {
45
- ENTITLEMENT_SERVICE_TOKEN
46
- } from "./chunk-WKVBNTYC.js";
47
+ SubscriptionContractService
48
+ } from "./chunk-B7NRY2LV.js";
47
49
  import {
48
- BUNDLE_REPOSITORY_TOKEN,
49
- CATALOG_ENTRY_REPOSITORY_TOKEN,
50
- PLAN_REPOSITORY_TOKEN
51
- } from "./chunk-L4KTQ6CL.js";
50
+ SUBSCRIPTION_CONTRACT_REPOSITORY_TOKEN
51
+ } from "./chunk-NYLON2VC.js";
52
52
  import {
53
53
  asProvider
54
54
  } from "./chunk-SABTXESR.js";
@@ -1,15 +1,3 @@
1
- import {
2
- PromoCodesModule
3
- } from "./chunk-4O6R6ARQ.js";
4
- import {
5
- AdminManifestModule,
6
- AdminManifestService,
7
- AdminModule,
8
- AdminResourcesModule,
9
- AdminStatsModule,
10
- MfaService,
11
- SuperAdminGuard
12
- } from "./chunk-SN5UOC43.js";
13
1
  import {
14
2
  FEATURE_GUARD_MARKER,
15
3
  PublicCatalogModule,
@@ -17,26 +5,38 @@ import {
17
5
  SubscriptionBundleModule,
18
6
  TenantBillingModule,
19
7
  isPlatformFeatureGuard
20
- } from "./chunk-A7FHAN2I.js";
8
+ } from "./chunk-4BSSMDLL.js";
21
9
  import {
22
- SubscriptionContractModule
23
- } from "./chunk-B7NRY2LV.js";
10
+ CheckoutOfferModule
11
+ } from "./chunk-ES5AN53A.js";
24
12
  import {
25
13
  CatalogModule
26
- } from "./chunk-7X5MSAIL.js";
27
- import {
28
- CheckoutOfferModule
29
- } from "./chunk-XTVAFJ3P.js";
14
+ } from "./chunk-QB7MICKQ.js";
30
15
  import {
31
- SaaSiCatPublicRoute
32
- } from "./chunk-YSC46BGM.js";
16
+ AdminManifestModule,
17
+ AdminManifestService,
18
+ AdminModule,
19
+ AdminResourcesModule,
20
+ AdminStatsModule,
21
+ MfaService,
22
+ SuperAdminGuard
23
+ } from "./chunk-SN5UOC43.js";
33
24
  import {
34
25
  DiscoveryModule
35
26
  } from "./chunk-6WL6VQ7Z.js";
36
27
  import {
37
28
  EntitlementModule,
38
29
  LimitExceededError
39
- } from "./chunk-NNNXXUPT.js";
30
+ } from "./chunk-NXD7763W.js";
31
+ import {
32
+ ENFORCE_QUOTA_KEY
33
+ } from "./chunk-L4SUWH5B.js";
34
+ import {
35
+ PromoCodesModule
36
+ } from "./chunk-4O6R6ARQ.js";
37
+ import {
38
+ SaaSiCatPublicRoute
39
+ } from "./chunk-YSC46BGM.js";
40
40
  import {
41
41
  PLAN_CATALOG_TOKEN,
42
42
  PlanCatalogModule
@@ -44,12 +44,12 @@ import {
44
44
  import {
45
45
  codedError
46
46
  } from "./chunk-EBJJNTW6.js";
47
+ import {
48
+ SubscriptionContractModule
49
+ } from "./chunk-B7NRY2LV.js";
47
50
  import {
48
51
  asProvider
49
52
  } from "./chunk-SABTXESR.js";
50
- import {
51
- ENFORCE_QUOTA_KEY
52
- } from "./chunk-L4SUWH5B.js";
53
53
  import {
54
54
  __name
55
55
  } from "./chunk-SHUYVCID.js";
@@ -898,6 +898,7 @@ __name(buildTenantManifestController, "buildTenantManifestController");
898
898
  import { Logger as Logger2, Module as Module2 } from "@nestjs/common";
899
899
  import { APP_GUARD, APP_INTERCEPTOR } from "@nestjs/core";
900
900
  import { assertPersistenceCapabilities } from "@saasicat/types";
901
+ import { DiscoveryModule as NestDiscoveryModule } from "@nestjs/core";
901
902
  function _ts_decorate10(decorators, target, key, desc) {
902
903
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
903
904
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -1372,6 +1373,7 @@ var SaasPlatformModule = class _SaasPlatformModule {
1372
1373
  lightweightExports.push(PLAN_RESOLVER_PORT_TOKEN, StaticEntitlementService, StaticFeatureGuard, EnforceQuotaInterceptor, QUOTA_PROVIDERS_TOKEN);
1373
1374
  if (options.globalFeatureGuard === false) {
1374
1375
  lightweightProviders.push(FeatureGuardCoverageCheck);
1376
+ imports.push(NestDiscoveryModule);
1375
1377
  }
1376
1378
  } else {
1377
1379
  PLATFORM_LOGGER.warn("No plan resolver configured \u2014 @RequireFeature and @EnforceQuota are INERT. The platform registered neither StaticFeatureGuard nor EnforceQuotaInterceptor, so every annotated route serves unlicensed traffic and every quota is unlimited. Set one of: adapters.planResolver, defaultPlanId, or tenantBilling.");
@@ -6,7 +6,7 @@ import {
6
6
  ADVISORY_STRICT_MODE_CODES,
7
7
  validateBundleDraft,
8
8
  validatePlanDraft
9
- } from "./chunk-7X5MSAIL.js";
9
+ } from "./chunk-QB7MICKQ.js";
10
10
  import {
11
11
  __name
12
12
  } from "./chunk-SHUYVCID.js";
@@ -19,10 +19,7 @@ import {
19
19
  mergeSubscriptionBundlesIntoLimits,
20
20
  resolveEntitlementPlan,
21
21
  toEffectiveLimitsSnapshot
22
- } from "../chunk-NNNXXUPT.js";
23
- import "../chunk-DQKCK7DX.js";
24
- import "../chunk-NYLON2VC.js";
25
- import "../chunk-EBJJNTW6.js";
22
+ } from "../chunk-NXD7763W.js";
26
23
  import {
27
24
  ENTITLEMENT_RESOLUTION_CONFIG_TOKEN,
28
25
  ENTITLEMENT_SERVICE_TOKEN,
@@ -31,8 +28,11 @@ import {
31
28
  TRANSACTION_RUNNER_TOKEN
32
29
  } from "../chunk-WKVBNTYC.js";
33
30
  import "../chunk-L4KTQ6CL.js";
34
- import "../chunk-SABTXESR.js";
35
31
  import "../chunk-L4SUWH5B.js";
32
+ import "../chunk-DQKCK7DX.js";
33
+ import "../chunk-EBJJNTW6.js";
34
+ import "../chunk-NYLON2VC.js";
35
+ import "../chunk-SABTXESR.js";
36
36
  import "../chunk-SHUYVCID.js";
37
37
  export {
38
38
  ENTITLEMENT_RESOLUTION_CONFIG_TOKEN,
package/dist/index.js CHANGED
@@ -1,44 +1,4 @@
1
- import "./chunk-HWGIMNWR.js";
2
- import {
3
- ACTIVATION_ORCHESTRATOR_TOKEN,
4
- BaseIpRateLimitGuard,
5
- ContinueRegistrationDto,
6
- CronExpression,
7
- PASSWORD_HASHER_TOKEN,
8
- PAYMENT_EVENT_LOG_TOKEN,
9
- PAYMENT_PROVIDER_TOKEN,
10
- PENDING_REGISTRATION_REPOSITORY_TOKEN,
11
- PLAN_CATALOG_LOOKUP_TOKEN,
12
- PaymentWebhookDto,
13
- PendingRegistrationService,
14
- PreviewRegistrationPromoDto,
15
- REGISTRATION_AUDIT_LOGGER_TOKEN,
16
- REGISTRATION_CONFIGURATOR_LOOKUP_TOKEN,
17
- REGISTRATION_CONFIG_TOKEN,
18
- REGISTRATION_OTP_DELIVERY_TOKEN,
19
- REGISTRATION_PROMO_PREVIEW_TOKEN,
20
- REGISTRATION_RESUME_BASE_URL_TOKEN,
21
- REGISTRATION_RESUME_DELIVERY_TOKEN,
22
- REGISTRATION_RESUME_TOKEN_SIGNER_TOKEN,
23
- RegisterStartDto,
24
- RegistrationCleanupCron,
25
- RegistrationModule,
26
- ResendRegistrationOtpDto,
27
- SLUG_AVAILABILITY_CHECK_TOKEN,
28
- SaveRegistrationConfigDto,
29
- SaveRegistrationConfigSelectionDto,
30
- SelectRegistrationPlanDto,
31
- StartRegistrationCheckoutDto,
32
- USER_ACCOUNT_LOOKUP_TOKEN,
33
- VerifyRegistrationOtpDto,
34
- computeBreakdown,
35
- generateOtpCode,
36
- hashOtpCode,
37
- resolveModel,
38
- slugify,
39
- verifyOtpCode
40
- } from "./chunk-MJ32VNZD.js";
41
- import "./chunk-UF53DWWR.js";
1
+ import "./chunk-DBZGV3HC.js";
42
2
  import {
43
3
  formatPreflightReport,
44
4
  formatSeedGateReport,
@@ -47,8 +7,8 @@ import {
47
7
  runSeedGateFromFile,
48
8
  seedGateExitCode,
49
9
  validateSeedAgainstSnapshot
50
- } from "./chunk-7ZPFQXHM.js";
51
- import "./chunk-DBZGV3HC.js";
10
+ } from "./chunk-UOWK2HYG.js";
11
+ import "./chunk-UF53DWWR.js";
52
12
  import {
53
13
  DefinesQuota,
54
14
  EnforceQuota,
@@ -70,46 +30,7 @@ import {
70
30
  SetupController,
71
31
  SetupModule,
72
32
  SetupService
73
- } from "./chunk-LPCUHZWC.js";
74
- import {
75
- CreatePromoCodeDto,
76
- PreviewPromoCodeDto,
77
- PromoCodeExpirer,
78
- PromoCodePublicController,
79
- PromoCodeRateLimitGuard,
80
- PromoCodesModule,
81
- UpdatePromoCodeDto,
82
- buildPromoCodeAdminController,
83
- hashIp,
84
- ipFingerprint
85
- } from "./chunk-4O6R6ARQ.js";
86
- import {
87
- ADMIN_MANIFEST_CONFIG,
88
- ADMIN_RESOURCES_PORT_TOKEN,
89
- ADMIN_STATS_AUDIT_WINDOW_DAYS_TOKEN,
90
- AUDIT_STATS_PORT_TOKEN,
91
- AdminBypassRlsInterceptor,
92
- AdminManifestModule,
93
- AdminManifestService,
94
- AdminModule,
95
- AdminPublicBootController,
96
- AdminResourcesModule,
97
- AdminResourcesService,
98
- AdminStatsController,
99
- AdminStatsModule,
100
- AdminStatsService,
101
- MfaGuard,
102
- MfaService,
103
- PLATFORM_CORE_CONTRIBUTION_TOKEN,
104
- PLATFORM_CORE_MANIFEST_CONTRIBUTION,
105
- PROMO_CODE_STATS_PORT_TOKEN,
106
- REQUIRE_MFA_KEY,
107
- RequireMfa,
108
- SUBSCRIPTION_STATS_PORT_TOKEN,
109
- SuperAdminGuard,
110
- SuspendTenantDto,
111
- buildAdminStatsController
112
- } from "./chunk-SN5UOC43.js";
33
+ } from "./chunk-FPEQPHJE.js";
113
34
  import {
114
35
  CONTRACT_FREEZE_PORT_TOKEN,
115
36
  CONTRACT_FREEZE_PROJECT_KEY_TOKEN,
@@ -172,30 +93,15 @@ import {
172
93
  periodEndWithMinLead,
173
94
  resolveBundleCancelEffectiveAt,
174
95
  resolveBundlePriceNet
175
- } from "./chunk-A7FHAN2I.js";
176
- import {
177
- PROMO_CODE_REDEMPTION_REPOSITORY_TOKEN,
178
- PROMO_CODE_REPOSITORY_TOKEN,
179
- PROMO_CODE_VALIDATION_LOG_REPOSITORY_TOKEN,
180
- PROMO_FIRST_TIME_CUSTOMER_CHECK_TOKEN,
181
- PROMO_REVENUE_DEDUCTION_AGGREGATOR_TOKEN,
182
- PROMO_SERVICE_CONFIG_TOKEN,
183
- PROMO_SUBSCRIPTION_LOOKUP_TOKEN,
184
- PROMO_TRANSACTION_RUNNER_TOKEN,
185
- PromoCodesService,
186
- addCycles,
187
- buildLabel,
188
- computeDiscountGross,
189
- computeDiscountedGross,
190
- computeRegularStartsAt
191
- } from "./chunk-VQQWF7MW.js";
96
+ } from "./chunk-4BSSMDLL.js";
192
97
  import {
193
- SubscriptionContractModule,
194
- SubscriptionContractService,
195
- contractLineItemToInvoiceLineItem,
196
- sortContractLineItemsForInvoice,
197
- subscriptionContractToInvoiceSnapshot
198
- } from "./chunk-B7NRY2LV.js";
98
+ CHECKOUT_OFFER_REPOSITORY_TOKEN,
99
+ CheckoutOfferModule,
100
+ CheckoutOfferService,
101
+ CreateCheckoutOfferDto,
102
+ UpdateCheckoutOfferDto,
103
+ buildCheckoutOfferController
104
+ } from "./chunk-ES5AN53A.js";
199
105
  import {
200
106
  ADVISORY_STRICT_MODE_CODES,
201
107
  BundlesService,
@@ -244,7 +150,7 @@ import {
244
150
  quotaApprovalSignature,
245
151
  validateBundleDraft,
246
152
  validatePlanDraft
247
- } from "./chunk-7X5MSAIL.js";
153
+ } from "./chunk-QB7MICKQ.js";
248
154
  import {
249
155
  AUDIT_CONTEXT_RESOLVER_TOKEN,
250
156
  PENDING_PLAN_QUERY_PORT_TOKEN,
@@ -260,25 +166,32 @@ import {
260
166
  classifyPlanDiff
261
167
  } from "./chunk-WPUVJRIN.js";
262
168
  import {
263
- AUDIT_PORT_TOKEN,
264
- AdminAuditService,
265
- MFA_PORT_TOKEN,
266
- RLS_BYPASS_PORT_TOKEN
267
- } from "./chunk-E56W4U2P.js";
268
- import {
269
- CHECKOUT_OFFER_REPOSITORY_TOKEN,
270
- CheckoutOfferModule,
271
- CheckoutOfferService,
272
- CreateCheckoutOfferDto,
273
- UpdateCheckoutOfferDto,
274
- buildCheckoutOfferController
275
- } from "./chunk-XTVAFJ3P.js";
276
- import "./chunk-BSK6YBLI.js";
277
- import {
278
- SAASICAT_PUBLIC_ROUTE_KEY,
279
- SaaSiCatPublicRoute,
280
- isSaaSiCatPublicRoute
281
- } from "./chunk-YSC46BGM.js";
169
+ ADMIN_MANIFEST_CONFIG,
170
+ ADMIN_RESOURCES_PORT_TOKEN,
171
+ ADMIN_STATS_AUDIT_WINDOW_DAYS_TOKEN,
172
+ AUDIT_STATS_PORT_TOKEN,
173
+ AdminBypassRlsInterceptor,
174
+ AdminManifestModule,
175
+ AdminManifestService,
176
+ AdminModule,
177
+ AdminPublicBootController,
178
+ AdminResourcesModule,
179
+ AdminResourcesService,
180
+ AdminStatsController,
181
+ AdminStatsModule,
182
+ AdminStatsService,
183
+ MfaGuard,
184
+ MfaService,
185
+ PLATFORM_CORE_CONTRIBUTION_TOKEN,
186
+ PLATFORM_CORE_MANIFEST_CONTRIBUTION,
187
+ PROMO_CODE_STATS_PORT_TOKEN,
188
+ REQUIRE_MFA_KEY,
189
+ RequireMfa,
190
+ SUBSCRIPTION_STATS_PORT_TOKEN,
191
+ SuperAdminGuard,
192
+ SuspendTenantDto,
193
+ buildAdminStatsController
194
+ } from "./chunk-SN5UOC43.js";
282
195
  import {
283
196
  DiscoveryModule,
284
197
  buildDiscoveryController
@@ -312,7 +225,70 @@ import {
312
225
  mergeSubscriptionBundlesIntoLimits,
313
226
  resolveEntitlementPlan,
314
227
  toEffectiveLimitsSnapshot
315
- } from "./chunk-NNNXXUPT.js";
228
+ } from "./chunk-NXD7763W.js";
229
+ import {
230
+ ENTITLEMENT_RESOLUTION_CONFIG_TOKEN,
231
+ ENTITLEMENT_SERVICE_TOKEN,
232
+ PLAN_VERSION_REPOSITORY_TOKEN,
233
+ SUBSCRIPTION_REPOSITORY_TOKEN,
234
+ TRANSACTION_RUNNER_TOKEN
235
+ } from "./chunk-WKVBNTYC.js";
236
+ import {
237
+ BUNDLE_REPOSITORY_TOKEN,
238
+ CATALOG_ENTRY_REPOSITORY_TOKEN,
239
+ CATALOG_SERVICE_CONFIG_TOKEN,
240
+ MARKETING_PROJECTION_REPOSITORY_TOKEN,
241
+ MARKETING_SETTINGS_REPOSITORY_TOKEN,
242
+ PLAN_REPOSITORY_TOKEN,
243
+ PROMOTION_REPOSITORY_TOKEN
244
+ } from "./chunk-L4KTQ6CL.js";
245
+ import {
246
+ DEFINES_QUOTA_KEY,
247
+ DISCOVERY_SNAPSHOT_TOKEN,
248
+ ENFORCE_QUOTA_KEY,
249
+ IMPLEMENTS_CAPABILITY_KEY,
250
+ REQUIRES_CAPABILITY_KEY
251
+ } from "./chunk-L4SUWH5B.js";
252
+ import "./chunk-HWGIMNWR.js";
253
+ import {
254
+ CreatePromoCodeDto,
255
+ PreviewPromoCodeDto,
256
+ PromoCodeExpirer,
257
+ PromoCodePublicController,
258
+ PromoCodeRateLimitGuard,
259
+ PromoCodesModule,
260
+ UpdatePromoCodeDto,
261
+ buildPromoCodeAdminController,
262
+ hashIp,
263
+ ipFingerprint
264
+ } from "./chunk-4O6R6ARQ.js";
265
+ import {
266
+ PROMO_CODE_REDEMPTION_REPOSITORY_TOKEN,
267
+ PROMO_CODE_REPOSITORY_TOKEN,
268
+ PROMO_CODE_VALIDATION_LOG_REPOSITORY_TOKEN,
269
+ PROMO_FIRST_TIME_CUSTOMER_CHECK_TOKEN,
270
+ PROMO_REVENUE_DEDUCTION_AGGREGATOR_TOKEN,
271
+ PROMO_SERVICE_CONFIG_TOKEN,
272
+ PROMO_SUBSCRIPTION_LOOKUP_TOKEN,
273
+ PROMO_TRANSACTION_RUNNER_TOKEN,
274
+ PromoCodesService,
275
+ addCycles,
276
+ buildLabel,
277
+ computeDiscountGross,
278
+ computeDiscountedGross,
279
+ computeRegularStartsAt
280
+ } from "./chunk-VQQWF7MW.js";
281
+ import {
282
+ AUDIT_PORT_TOKEN,
283
+ AdminAuditService,
284
+ MFA_PORT_TOKEN,
285
+ RLS_BYPASS_PORT_TOKEN
286
+ } from "./chunk-E56W4U2P.js";
287
+ import {
288
+ SAASICAT_PUBLIC_ROUTE_KEY,
289
+ SaaSiCatPublicRoute,
290
+ isSaaSiCatPublicRoute
291
+ } from "./chunk-YSC46BGM.js";
316
292
  import {
317
293
  PLAN_CATALOG_READ_SINK_TOKEN,
318
294
  PLAN_CATALOG_TOKEN,
@@ -332,37 +308,61 @@ import {
332
308
  round2
333
309
  } from "./chunk-DQKCK7DX.js";
334
310
  import {
335
- SUBSCRIPTION_CONTRACT_REPOSITORY_TOKEN
336
- } from "./chunk-NYLON2VC.js";
311
+ ACTIVATION_ORCHESTRATOR_TOKEN,
312
+ BaseIpRateLimitGuard,
313
+ ContinueRegistrationDto,
314
+ CronExpression,
315
+ PASSWORD_HASHER_TOKEN,
316
+ PAYMENT_EVENT_LOG_TOKEN,
317
+ PAYMENT_PROVIDER_TOKEN,
318
+ PENDING_REGISTRATION_REPOSITORY_TOKEN,
319
+ PLAN_CATALOG_LOOKUP_TOKEN,
320
+ PaymentWebhookDto,
321
+ PendingRegistrationService,
322
+ PreviewRegistrationPromoDto,
323
+ REGISTRATION_AUDIT_LOGGER_TOKEN,
324
+ REGISTRATION_CONFIGURATOR_LOOKUP_TOKEN,
325
+ REGISTRATION_CONFIG_TOKEN,
326
+ REGISTRATION_OTP_DELIVERY_TOKEN,
327
+ REGISTRATION_PROMO_PREVIEW_TOKEN,
328
+ REGISTRATION_RESUME_BASE_URL_TOKEN,
329
+ REGISTRATION_RESUME_DELIVERY_TOKEN,
330
+ REGISTRATION_RESUME_TOKEN_SIGNER_TOKEN,
331
+ RegisterStartDto,
332
+ RegistrationCleanupCron,
333
+ RegistrationModule,
334
+ ResendRegistrationOtpDto,
335
+ SLUG_AVAILABILITY_CHECK_TOKEN,
336
+ SaveRegistrationConfigDto,
337
+ SaveRegistrationConfigSelectionDto,
338
+ SelectRegistrationPlanDto,
339
+ StartRegistrationCheckoutDto,
340
+ USER_ACCOUNT_LOOKUP_TOKEN,
341
+ VerifyRegistrationOtpDto,
342
+ computeBreakdown,
343
+ generateOtpCode,
344
+ hashOtpCode,
345
+ resolveModel,
346
+ slugify,
347
+ verifyOtpCode
348
+ } from "./chunk-MJ32VNZD.js";
337
349
  import {
338
350
  codedError
339
351
  } from "./chunk-EBJJNTW6.js";
340
352
  import {
341
- ENTITLEMENT_RESOLUTION_CONFIG_TOKEN,
342
- ENTITLEMENT_SERVICE_TOKEN,
343
- PLAN_VERSION_REPOSITORY_TOKEN,
344
- SUBSCRIPTION_REPOSITORY_TOKEN,
345
- TRANSACTION_RUNNER_TOKEN
346
- } from "./chunk-WKVBNTYC.js";
353
+ SubscriptionContractModule,
354
+ SubscriptionContractService,
355
+ contractLineItemToInvoiceLineItem,
356
+ sortContractLineItemsForInvoice,
357
+ subscriptionContractToInvoiceSnapshot
358
+ } from "./chunk-B7NRY2LV.js";
359
+ import "./chunk-BSK6YBLI.js";
347
360
  import {
348
- BUNDLE_REPOSITORY_TOKEN,
349
- CATALOG_ENTRY_REPOSITORY_TOKEN,
350
- CATALOG_SERVICE_CONFIG_TOKEN,
351
- MARKETING_PROJECTION_REPOSITORY_TOKEN,
352
- MARKETING_SETTINGS_REPOSITORY_TOKEN,
353
- PLAN_REPOSITORY_TOKEN,
354
- PROMOTION_REPOSITORY_TOKEN
355
- } from "./chunk-L4KTQ6CL.js";
361
+ SUBSCRIPTION_CONTRACT_REPOSITORY_TOKEN
362
+ } from "./chunk-NYLON2VC.js";
356
363
  import {
357
364
  asProvider
358
365
  } from "./chunk-SABTXESR.js";
359
- import {
360
- DEFINES_QUOTA_KEY,
361
- DISCOVERY_SNAPSHOT_TOKEN,
362
- ENFORCE_QUOTA_KEY,
363
- IMPLEMENTS_CAPABILITY_KEY,
364
- REQUIRES_CAPABILITY_KEY
365
- } from "./chunk-L4SUWH5B.js";
366
366
  import "./chunk-SHUYVCID.js";
367
367
  export {
368
368
  ACTIVATION_ORCHESTRATOR_TOKEN,
@@ -17,22 +17,7 @@ import {
17
17
  SubscriptionPlanResolver,
18
18
  TenantManifestService,
19
19
  buildTenantManifestController
20
- } from "../chunk-LPCUHZWC.js";
21
- import {
22
- PromoCodeRateLimitGuard
23
- } from "../chunk-4O6R6ARQ.js";
24
- import {
25
- AdminBypassRlsInterceptor,
26
- AdminManifestModule,
27
- AdminManifestService,
28
- AdminModule,
29
- AdminResourcesService,
30
- AdminStatsModule,
31
- AdminStatsService,
32
- MfaGuard,
33
- MfaService,
34
- SuperAdminGuard
35
- } from "../chunk-SN5UOC43.js";
20
+ } from "../chunk-FPEQPHJE.js";
36
21
  import {
37
22
  ComposedTenantAuthGuard,
38
23
  PendingPlanMaterializationService,
@@ -41,14 +26,11 @@ import {
41
26
  SubscriptionBundlesService,
42
27
  TenantAdminGuard,
43
28
  TenantBillingController
44
- } from "../chunk-A7FHAN2I.js";
45
- import {
46
- PromoCodesService
47
- } from "../chunk-VQQWF7MW.js";
29
+ } from "../chunk-4BSSMDLL.js";
48
30
  import {
49
- SubscriptionContractModule,
50
- SubscriptionContractService
51
- } from "../chunk-B7NRY2LV.js";
31
+ CheckoutOfferModule,
32
+ CheckoutOfferService
33
+ } from "../chunk-ES5AN53A.js";
52
34
  import {
53
35
  BundlesService,
54
36
  CatalogEntriesService,
@@ -58,35 +40,53 @@ import {
58
40
  PlansService,
59
41
  PromotionsService,
60
42
  PublicMarketingCatalogService
61
- } from "../chunk-7X5MSAIL.js";
43
+ } from "../chunk-QB7MICKQ.js";
62
44
  import "../chunk-WPUVJRIN.js";
45
+ import {
46
+ AdminBypassRlsInterceptor,
47
+ AdminManifestModule,
48
+ AdminManifestService,
49
+ AdminModule,
50
+ AdminResourcesService,
51
+ AdminStatsModule,
52
+ AdminStatsService,
53
+ MfaGuard,
54
+ MfaService,
55
+ SuperAdminGuard
56
+ } from "../chunk-SN5UOC43.js";
57
+ import "../chunk-6WL6VQ7Z.js";
58
+ import {
59
+ DiscoveryScanner
60
+ } from "../chunk-5ZXBXYXU.js";
61
+ import {
62
+ EntitlementService
63
+ } from "../chunk-NXD7763W.js";
64
+ import "../chunk-WKVBNTYC.js";
65
+ import "../chunk-L4KTQ6CL.js";
66
+ import "../chunk-L4SUWH5B.js";
67
+ import {
68
+ PromoCodeRateLimitGuard
69
+ } from "../chunk-4O6R6ARQ.js";
70
+ import {
71
+ PromoCodesService
72
+ } from "../chunk-VQQWF7MW.js";
63
73
  import {
64
74
  AdminAuditService
65
75
  } from "../chunk-E56W4U2P.js";
66
- import {
67
- CheckoutOfferModule,
68
- CheckoutOfferService
69
- } from "../chunk-XTVAFJ3P.js";
70
- import "../chunk-BSK6YBLI.js";
71
76
  import {
72
77
  SAASICAT_PUBLIC_ROUTE_KEY,
73
78
  SaaSiCatPublicRoute,
74
79
  isSaaSiCatPublicRoute
75
80
  } from "../chunk-YSC46BGM.js";
76
- import "../chunk-6WL6VQ7Z.js";
77
- import {
78
- DiscoveryScanner
79
- } from "../chunk-5ZXBXYXU.js";
80
- import {
81
- EntitlementService
82
- } from "../chunk-NNNXXUPT.js";
83
81
  import "../chunk-DQKCK7DX.js";
84
- import "../chunk-NYLON2VC.js";
85
82
  import "../chunk-EBJJNTW6.js";
86
- import "../chunk-WKVBNTYC.js";
87
- import "../chunk-L4KTQ6CL.js";
83
+ import {
84
+ SubscriptionContractModule,
85
+ SubscriptionContractService
86
+ } from "../chunk-B7NRY2LV.js";
87
+ import "../chunk-BSK6YBLI.js";
88
+ import "../chunk-NYLON2VC.js";
88
89
  import "../chunk-SABTXESR.js";
89
- import "../chunk-L4SUWH5B.js";
90
90
  import "../chunk-SHUYVCID.js";
91
91
  export {
92
92
  AdminAuditService,
@@ -5,28 +5,28 @@ import {
5
5
  StaticEntitlementService,
6
6
  StaticFeatureGuard,
7
7
  StaticPlanResolver
8
- } from "../chunk-LPCUHZWC.js";
9
- import "../chunk-4O6R6ARQ.js";
8
+ } from "../chunk-FPEQPHJE.js";
9
+ import "../chunk-4BSSMDLL.js";
10
+ import "../chunk-ES5AN53A.js";
11
+ import "../chunk-QB7MICKQ.js";
12
+ import "../chunk-WPUVJRIN.js";
10
13
  import "../chunk-SN5UOC43.js";
11
- import "../chunk-A7FHAN2I.js";
14
+ import "../chunk-6WL6VQ7Z.js";
15
+ import "../chunk-5ZXBXYXU.js";
16
+ import "../chunk-NXD7763W.js";
17
+ import "../chunk-WKVBNTYC.js";
18
+ import "../chunk-L4KTQ6CL.js";
19
+ import "../chunk-L4SUWH5B.js";
20
+ import "../chunk-4O6R6ARQ.js";
12
21
  import "../chunk-VQQWF7MW.js";
13
- import "../chunk-B7NRY2LV.js";
14
- import "../chunk-7X5MSAIL.js";
15
- import "../chunk-WPUVJRIN.js";
16
22
  import "../chunk-E56W4U2P.js";
17
- import "../chunk-XTVAFJ3P.js";
18
- import "../chunk-BSK6YBLI.js";
19
23
  import "../chunk-YSC46BGM.js";
20
- import "../chunk-6WL6VQ7Z.js";
21
- import "../chunk-5ZXBXYXU.js";
22
- import "../chunk-NNNXXUPT.js";
23
24
  import "../chunk-DQKCK7DX.js";
24
- import "../chunk-NYLON2VC.js";
25
25
  import "../chunk-EBJJNTW6.js";
26
- import "../chunk-WKVBNTYC.js";
27
- import "../chunk-L4KTQ6CL.js";
26
+ import "../chunk-B7NRY2LV.js";
27
+ import "../chunk-BSK6YBLI.js";
28
+ import "../chunk-NYLON2VC.js";
28
29
  import "../chunk-SABTXESR.js";
29
- import "../chunk-L4SUWH5B.js";
30
30
  import {
31
31
  __name
32
32
  } from "../chunk-SHUYVCID.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@saasicat/nest",
3
- "version": "0.22.1",
3
+ "version": "0.22.2",
4
4
  "description": "NestJS implementation of SaaSiCat: capability discovery, catalog packaging, contracts, entitlement enforcement, billing and admin APIs.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -137,8 +137,8 @@
137
137
  "js-yaml": "^4.3.1",
138
138
  "otplib": "^13.4.1",
139
139
  "qrcode": "^1.5.4",
140
- "@saasicat/spec": "^0.22.1",
141
- "@saasicat/types": "^0.22.1"
140
+ "@saasicat/spec": "^0.22.2",
141
+ "@saasicat/types": "^0.22.2"
142
142
  },
143
143
  "peerDependencies": {
144
144
  "@nestjs/common": "^11.0.0",
@@ -1,14 +1,14 @@
1
- import {
2
- appendImplicitDiscountLineItem
3
- } from "./chunk-BSK6YBLI.js";
4
- import {
5
- SaaSiCatPublicRoute
6
- } from "./chunk-YSC46BGM.js";
7
1
  import {
8
2
  BUNDLE_REPOSITORY_TOKEN,
9
3
  CATALOG_ENTRY_REPOSITORY_TOKEN,
10
4
  PLAN_REPOSITORY_TOKEN
11
5
  } from "./chunk-L4KTQ6CL.js";
6
+ import {
7
+ SaaSiCatPublicRoute
8
+ } from "./chunk-YSC46BGM.js";
9
+ import {
10
+ appendImplicitDiscountLineItem
11
+ } from "./chunk-BSK6YBLI.js";
12
12
  import {
13
13
  asProvider
14
14
  } from "./chunk-SABTXESR.js";
@@ -1,13 +1,3 @@
1
- import {
2
- PLAN_CATALOG_TOKEN,
3
- isFeaturePlannedOnly
4
- } from "./chunk-DQKCK7DX.js";
5
- import {
6
- SUBSCRIPTION_CONTRACT_REPOSITORY_TOKEN
7
- } from "./chunk-NYLON2VC.js";
8
- import {
9
- codedError
10
- } from "./chunk-EBJJNTW6.js";
11
1
  import {
12
2
  ENTITLEMENT_RESOLUTION_CONFIG_TOKEN,
13
3
  ENTITLEMENT_SERVICE_TOKEN,
@@ -18,12 +8,22 @@ import {
18
8
  import {
19
9
  BUNDLE_REPOSITORY_TOKEN
20
10
  } from "./chunk-L4KTQ6CL.js";
21
- import {
22
- asProvider
23
- } from "./chunk-SABTXESR.js";
24
11
  import {
25
12
  DISCOVERY_SNAPSHOT_TOKEN
26
13
  } from "./chunk-L4SUWH5B.js";
14
+ import {
15
+ PLAN_CATALOG_TOKEN,
16
+ isFeaturePlannedOnly
17
+ } from "./chunk-DQKCK7DX.js";
18
+ import {
19
+ codedError
20
+ } from "./chunk-EBJJNTW6.js";
21
+ import {
22
+ SUBSCRIPTION_CONTRACT_REPOSITORY_TOKEN
23
+ } from "./chunk-NYLON2VC.js";
24
+ import {
25
+ asProvider
26
+ } from "./chunk-SABTXESR.js";
27
27
  import {
28
28
  __name
29
29
  } from "./chunk-SHUYVCID.js";
@@ -5,12 +5,6 @@ import {
5
5
  classifyBundleVersionDiff,
6
6
  classifyPlanDiff
7
7
  } from "./chunk-WPUVJRIN.js";
8
- import {
9
- AdminAuditService
10
- } from "./chunk-E56W4U2P.js";
11
- import {
12
- SaaSiCatPublicRoute
13
- } from "./chunk-YSC46BGM.js";
14
8
  import {
15
9
  DiscoveryScanner
16
10
  } from "./chunk-5ZXBXYXU.js";
@@ -27,12 +21,18 @@ import {
27
21
  PLAN_REPOSITORY_TOKEN,
28
22
  PROMOTION_REPOSITORY_TOKEN
29
23
  } from "./chunk-L4KTQ6CL.js";
30
- import {
31
- asProvider
32
- } from "./chunk-SABTXESR.js";
33
24
  import {
34
25
  DISCOVERY_SNAPSHOT_TOKEN
35
26
  } from "./chunk-L4SUWH5B.js";
27
+ import {
28
+ AdminAuditService
29
+ } from "./chunk-E56W4U2P.js";
30
+ import {
31
+ SaaSiCatPublicRoute
32
+ } from "./chunk-YSC46BGM.js";
33
+ import {
34
+ asProvider
35
+ } from "./chunk-SABTXESR.js";
36
36
  import {
37
37
  __name
38
38
  } from "./chunk-SHUYVCID.js";