@carlonicora/nextjs-jsonapi 6.1.0 → 6.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. package/dist/{AssistantMessageInterface-S7oyERTT.d.mts → AssistantMessageInterface-0ZQ1EJKO.d.mts} +1 -1
  2. package/dist/{AssistantMessageInterface-DHJJO_Z_.d.ts → AssistantMessageInterface-CA-hZ5Wj.d.ts} +1 -1
  3. package/dist/{BlockNoteEditor-SAU3G6H7.js → BlockNoteEditor-CT4XUXPC.js} +19 -19
  4. package/dist/{BlockNoteEditor-SAU3G6H7.js.map → BlockNoteEditor-CT4XUXPC.js.map} +1 -1
  5. package/dist/{BlockNoteEditor-FZNU4YQT.mjs → BlockNoteEditor-M6UQRVRK.mjs} +4 -4
  6. package/dist/{BlockNoteViewer-7BTV7QQA.js → BlockNoteViewer-MFLWF3Y2.js} +3 -3
  7. package/dist/{BlockNoteViewer-7BTV7QQA.js.map → BlockNoteViewer-MFLWF3Y2.js.map} +1 -1
  8. package/dist/{BlockNoteViewer-6XDDVTN6.mjs → BlockNoteViewer-XZJ5Y7WN.mjs} +2 -2
  9. package/dist/{BlogPostInterface-BB_4wcDR.d.mts → BlogPostInterface-BN2mXc46.d.mts} +1 -1
  10. package/dist/{BlogPostInterface-bWAT1rfR.d.ts → BlogPostInterface-CTGfsR1I.d.ts} +1 -1
  11. package/dist/{auth.interface-CSzJ1oP1.d.ts → auth.interface-D5606g19.d.ts} +1 -1
  12. package/dist/{auth.interface-DD4uQv2K.d.mts → auth.interface-tsOuc0Fi.d.mts} +1 -1
  13. package/dist/billing/index.d.mts +3 -3
  14. package/dist/billing/index.d.ts +3 -3
  15. package/dist/billing/index.js +501 -493
  16. package/dist/billing/index.js.map +1 -1
  17. package/dist/billing/index.mjs +13 -5
  18. package/dist/billing/index.mjs.map +1 -1
  19. package/dist/{chunk-USYZNWKS.mjs → chunk-3FD6Y734.mjs} +74 -15
  20. package/dist/chunk-3FD6Y734.mjs.map +1 -0
  21. package/dist/{chunk-F4JB7YAP.js → chunk-DSGP6GC3.js} +8 -8
  22. package/dist/{chunk-F4JB7YAP.js.map → chunk-DSGP6GC3.js.map} +1 -1
  23. package/dist/{chunk-GFGKMUPZ.mjs → chunk-O2TEUH5S.mjs} +2 -2
  24. package/dist/{chunk-MTI2UXDA.js → chunk-QJIDORHM.js} +4 -4
  25. package/dist/{chunk-MTI2UXDA.js.map → chunk-QJIDORHM.js.map} +1 -1
  26. package/dist/{chunk-JVJS5RHB.mjs → chunk-RUJCWOJE.mjs} +2 -2
  27. package/dist/{chunk-U7DR5VDT.mjs → chunk-TIT4CJYQ.mjs} +1233 -1181
  28. package/dist/chunk-TIT4CJYQ.mjs.map +1 -0
  29. package/dist/{chunk-TPZS46IM.js → chunk-V4I3XKOM.js} +3 -3
  30. package/dist/{chunk-TPZS46IM.js.map → chunk-V4I3XKOM.js.map} +1 -1
  31. package/dist/{chunk-T3YQ47EF.js → chunk-XZCCIKX3.js} +152 -93
  32. package/dist/chunk-XZCCIKX3.js.map +1 -0
  33. package/dist/{chunk-IPYXT7MH.js → chunk-Y7JIQNM6.js} +922 -870
  34. package/dist/chunk-Y7JIQNM6.js.map +1 -0
  35. package/dist/{chunk-RYZYKG6W.mjs → chunk-ZDUT5JPT.mjs} +2 -2
  36. package/dist/client/index.d.mts +4 -4
  37. package/dist/client/index.d.ts +4 -4
  38. package/dist/client/index.js +4 -4
  39. package/dist/client/index.mjs +3 -3
  40. package/dist/components/index.d.mts +22 -6
  41. package/dist/components/index.d.ts +22 -6
  42. package/dist/components/index.js +10 -4
  43. package/dist/components/index.js.map +1 -1
  44. package/dist/components/index.mjs +10 -4
  45. package/dist/contexts/index.d.mts +5 -5
  46. package/dist/contexts/index.d.ts +5 -5
  47. package/dist/contexts/index.js +4 -4
  48. package/dist/contexts/index.mjs +3 -3
  49. package/dist/core/index.d.mts +23 -13
  50. package/dist/core/index.d.ts +23 -13
  51. package/dist/core/index.js +8 -2
  52. package/dist/core/index.js.map +1 -1
  53. package/dist/core/index.mjs +7 -1
  54. package/dist/{currency-DrEVd_Xs.d.mts → currency-BhuEoBOn.d.mts} +2 -115
  55. package/dist/{currency-8ErEC39n.d.ts → currency-CBgZkS0u.d.ts} +2 -115
  56. package/dist/email-automations/index.js +92 -92
  57. package/dist/email-automations/index.mjs +3 -3
  58. package/dist/features/analytics/index.d.mts +11 -3
  59. package/dist/features/analytics/index.d.ts +11 -3
  60. package/dist/features/analytics/index.js +129 -127
  61. package/dist/features/analytics/index.js.map +1 -1
  62. package/dist/features/analytics/index.mjs +12 -10
  63. package/dist/features/analytics/index.mjs.map +1 -1
  64. package/dist/features/analytics/server.js +4 -4
  65. package/dist/features/analytics/server.mjs +2 -2
  66. package/dist/features/blog/index.d.mts +4 -4
  67. package/dist/features/blog/index.d.ts +4 -4
  68. package/dist/features/blog/index.js +150 -150
  69. package/dist/features/blog/index.mjs +3 -3
  70. package/dist/features/blog/server.d.mts +4 -4
  71. package/dist/features/blog/server.d.ts +4 -4
  72. package/dist/features/blog/server.js +16 -16
  73. package/dist/features/blog/server.mjs +1 -1
  74. package/dist/features/help/index.js +37 -37
  75. package/dist/features/help/index.mjs +3 -3
  76. package/dist/features/tokenusage/index.js +127 -127
  77. package/dist/features/tokenusage/index.mjs +4 -4
  78. package/dist/index.d.mts +8 -8
  79. package/dist/index.d.ts +8 -8
  80. package/dist/index.js +9 -3
  81. package/dist/index.js.map +1 -1
  82. package/dist/index.mjs +8 -2
  83. package/dist/{notification.interface-BB6GPpZY.d.mts → notification.interface-CF5h90U2.d.mts} +1 -1
  84. package/dist/{notification.interface-CmAGrijJ.d.ts → notification.interface-DQReXAD7.d.ts} +1 -1
  85. package/dist/{s3.service-Bz_K-tjz.d.ts → s3.service-BTCpmp5g.d.ts} +11 -4
  86. package/dist/{s3.service-D5zNCEW3.d.mts → s3.service-CzFBDEuQ.d.mts} +11 -4
  87. package/dist/server/index.d.mts +5 -5
  88. package/dist/server/index.d.ts +5 -5
  89. package/dist/server/index.js +3 -3
  90. package/dist/server/index.mjs +2 -2
  91. package/dist/stripe-price.interface-D6mKjAdr.d.mts +132 -0
  92. package/dist/stripe-price.interface-DGqcklFJ.d.ts +132 -0
  93. package/dist/{useSocket-B0H9pmmH.d.ts → useSocket-BM3q9A0C.d.ts} +1 -1
  94. package/dist/{useSocket-B5RQb6v2.d.mts → useSocket-CwSoq6VS.d.mts} +1 -1
  95. package/dist/{user.interface-CIWGlbqM.d.mts → user.interface-BYnGJ7ss.d.mts} +37 -2
  96. package/dist/{user.interface-C0ZdsBZj.d.ts → user.interface-BqPjVyJI.d.ts} +37 -2
  97. package/messages/en.json +8 -0
  98. package/messages/it.json +8 -0
  99. package/package.json +1 -1
  100. package/src/components/containers/RoundPageContainer.tsx +7 -2
  101. package/src/components/index.ts +5 -0
  102. package/src/features/analytics/components/AnalyticsTracker.tsx +22 -9
  103. package/src/features/analytics/components/__tests__/AnalyticsTracker.spec.tsx +67 -0
  104. package/src/features/analytics/data/__tests__/models.spec.ts +13 -0
  105. package/src/features/analytics/data/analytics-event.ts +1 -0
  106. package/src/features/analytics/data/analytics.types.ts +2 -0
  107. package/src/features/billing/components/containers/BillingDashboardContainer.tsx +20 -3
  108. package/src/features/billing/components/widgets/CreditWarningBanner.tsx +93 -0
  109. package/src/features/billing/data/credit-warning.spec.ts +96 -0
  110. package/src/features/billing/data/credit-warning.ts +57 -0
  111. package/src/features/billing/data/index.ts +3 -0
  112. package/src/features/billing/i18n-keys.ts +6 -0
  113. package/src/features/company/data/company.interface.ts +11 -0
  114. package/src/features/company/data/company.service.ts +17 -0
  115. package/src/features/company/data/company.spec.ts +29 -0
  116. package/src/features/company/data/company.ts +31 -0
  117. package/dist/chunk-IPYXT7MH.js.map +0 -1
  118. package/dist/chunk-T3YQ47EF.js.map +0 -1
  119. package/dist/chunk-U7DR5VDT.mjs.map +0 -1
  120. package/dist/chunk-USYZNWKS.mjs.map +0 -1
  121. package/dist/feature.interface-BO25VLlx.d.ts +0 -19
  122. package/dist/feature.interface-CXb1-vNq.d.mts +0 -19
  123. /package/dist/{BlockNoteEditor-FZNU4YQT.mjs.map → BlockNoteEditor-M6UQRVRK.mjs.map} +0 -0
  124. /package/dist/{BlockNoteViewer-6XDDVTN6.mjs.map → BlockNoteViewer-XZJ5Y7WN.mjs.map} +0 -0
  125. /package/dist/{chunk-GFGKMUPZ.mjs.map → chunk-O2TEUH5S.mjs.map} +0 -0
  126. /package/dist/{chunk-JVJS5RHB.mjs.map → chunk-RUJCWOJE.mjs.map} +0 -0
  127. /package/dist/{chunk-RYZYKG6W.mjs.map → chunk-ZDUT5JPT.mjs.map} +0 -0
@@ -3631,6 +3631,39 @@ var Billing = class extends AbstractApiData {
3631
3631
  }
3632
3632
  };
3633
3633
 
3634
+ // src/features/billing/stripe-subscription/data/stripe-subscription.interface.ts
3635
+ var SubscriptionStatus = /* @__PURE__ */ ((SubscriptionStatus2) => {
3636
+ SubscriptionStatus2["ACTIVE"] = "active";
3637
+ SubscriptionStatus2["PAST_DUE"] = "past_due";
3638
+ SubscriptionStatus2["UNPAID"] = "unpaid";
3639
+ SubscriptionStatus2["CANCELED"] = "canceled";
3640
+ SubscriptionStatus2["INCOMPLETE"] = "incomplete";
3641
+ SubscriptionStatus2["INCOMPLETE_EXPIRED"] = "incomplete_expired";
3642
+ SubscriptionStatus2["TRIALING"] = "trialing";
3643
+ SubscriptionStatus2["PAUSED"] = "paused";
3644
+ return SubscriptionStatus2;
3645
+ })(SubscriptionStatus || {});
3646
+
3647
+ // src/features/billing/data/credit-warning.ts
3648
+ var CREDIT_WARNING_DISMISS_SEGMENT = "credit-warning/dismiss";
3649
+ function isCreditWarningActive(company, thresholdPercent) {
3650
+ if (!company.aiEnabled || !company.isActiveSubscription) return false;
3651
+ if (!company.creditWarningSentAt || company.creditWarningDismissedAt) return false;
3652
+ const granted = company.creditsGrantedThisPeriod;
3653
+ if (granted === void 0 || granted <= 0) return false;
3654
+ const monthly = company.availableMonthlyCredits;
3655
+ const extra = company.availableExtraCredits;
3656
+ if (!(monthly > 0 || extra > 0)) return false;
3657
+ return monthly + extra <= granted * (100 - thresholdPercent) / 100;
3658
+ }
3659
+ __name(isCreditWarningActive, "isCreditWarningActive");
3660
+ function resolveChangePlanTarget(subscriptions) {
3661
+ return subscriptions.find(
3662
+ (sub) => (sub.status === "active" /* ACTIVE */ || sub.status === "trialing" /* TRIALING */) && sub.price?.priceType === "recurring"
3663
+ );
3664
+ }
3665
+ __name(resolveChangePlanTarget, "resolveChangePlanTarget");
3666
+
3634
3667
  // src/features/billing/modules/billing.module.ts
3635
3668
  var BillingModule = /* @__PURE__ */ __name((factory) => factory({
3636
3669
  name: "billing",
@@ -4673,19 +4706,6 @@ var StripeSubscription = class extends AbstractApiData {
4673
4706
  }
4674
4707
  };
4675
4708
 
4676
- // src/features/billing/stripe-subscription/data/stripe-subscription.interface.ts
4677
- var SubscriptionStatus = /* @__PURE__ */ ((SubscriptionStatus2) => {
4678
- SubscriptionStatus2["ACTIVE"] = "active";
4679
- SubscriptionStatus2["PAST_DUE"] = "past_due";
4680
- SubscriptionStatus2["UNPAID"] = "unpaid";
4681
- SubscriptionStatus2["CANCELED"] = "canceled";
4682
- SubscriptionStatus2["INCOMPLETE"] = "incomplete";
4683
- SubscriptionStatus2["INCOMPLETE_EXPIRED"] = "incomplete_expired";
4684
- SubscriptionStatus2["TRIALING"] = "trialing";
4685
- SubscriptionStatus2["PAUSED"] = "paused";
4686
- return SubscriptionStatus2;
4687
- })(SubscriptionStatus || {});
4688
-
4689
4709
  // src/features/billing/stripe-subscription/data/stripe-subscription.service.ts
4690
4710
  var StripeSubscriptionService = class extends AbstractService {
4691
4711
  static {
@@ -6140,6 +6160,10 @@ var Company = class extends AbstractApiData {
6140
6160
  _availableMonthlyCredits = 0;
6141
6161
  _availableExtraCredits = 0;
6142
6162
  _aiEnabled;
6163
+ _creditsGrantedThisPeriod;
6164
+ _creditWarningSentAt;
6165
+ _creditWarningDismissedAt;
6166
+ _creditWarningOffer;
6143
6167
  _features;
6144
6168
  _modules;
6145
6169
  _legal_address;
@@ -6177,6 +6201,18 @@ var Company = class extends AbstractApiData {
6177
6201
  get aiEnabled() {
6178
6202
  return this._aiEnabled ?? true;
6179
6203
  }
6204
+ get creditsGrantedThisPeriod() {
6205
+ return this._creditsGrantedThisPeriod;
6206
+ }
6207
+ get creditWarningSentAt() {
6208
+ return this._creditWarningSentAt;
6209
+ }
6210
+ get creditWarningDismissedAt() {
6211
+ return this._creditWarningDismissedAt;
6212
+ }
6213
+ get creditWarningOffer() {
6214
+ return this._creditWarningOffer;
6215
+ }
6180
6216
  get features() {
6181
6217
  return this._features ?? [];
6182
6218
  }
@@ -6227,6 +6263,10 @@ var Company = class extends AbstractApiData {
6227
6263
  this._availableMonthlyCredits = data.jsonApi.attributes.availableMonthlyCredits ?? 0;
6228
6264
  this._availableExtraCredits = data.jsonApi.attributes.availableExtraCredits ?? 0;
6229
6265
  this._aiEnabled = data.jsonApi.attributes.aiEnabled ?? true;
6266
+ this._creditsGrantedThisPeriod = data.jsonApi.attributes.creditsGrantedThisPeriod ?? void 0;
6267
+ this._creditWarningSentAt = data.jsonApi.attributes.creditWarningSentAt ? new Date(data.jsonApi.attributes.creditWarningSentAt) : void 0;
6268
+ this._creditWarningDismissedAt = data.jsonApi.attributes.creditWarningDismissedAt ? new Date(data.jsonApi.attributes.creditWarningDismissedAt) : void 0;
6269
+ this._creditWarningOffer = data.jsonApi.attributes.creditWarningOffer ?? void 0;
6230
6270
  this._legal_address = data.jsonApi.attributes.legal_address;
6231
6271
  this._street_number = data.jsonApi.attributes.street_number;
6232
6272
  this._street = data.jsonApi.attributes.street;
@@ -6376,6 +6416,21 @@ var CompanyService = class extends AbstractService {
6376
6416
  input: params
6377
6417
  });
6378
6418
  }
6419
+ /**
6420
+ * Dismisses this period's credit warning for the company. The request has no
6421
+ * body: the server stamps the dismissal itself and answers 204.
6422
+ */
6423
+ static async dismissCreditWarning(params) {
6424
+ await this.callApi({
6425
+ type: Modules.Company,
6426
+ method: "POST" /* POST */,
6427
+ endpoint: new EndpointCreator({
6428
+ endpoint: Modules.Company,
6429
+ id: params.companyId,
6430
+ childEndpoint: CREDIT_WARNING_DISMISS_SEGMENT
6431
+ }).generate()
6432
+ });
6433
+ }
6379
6434
  };
6380
6435
 
6381
6436
  // src/features/company/data/entity-ai-status.ts
@@ -11603,6 +11658,7 @@ var AnalyticsEvent = class extends AbstractApiData {
11603
11658
  if (data.utmContent !== void 0) response.data.attributes.utmContent = data.utmContent;
11604
11659
  if (data.visitorId !== void 0) response.data.attributes.visitorId = data.visitorId;
11605
11660
  if (data.screenWidth !== void 0) response.data.attributes.screenWidth = data.screenWidth;
11661
+ if (data.consentGranted !== void 0) response.data.attributes.consentGranted = data.consentGranted;
11606
11662
  return response;
11607
11663
  }
11608
11664
  };
@@ -12128,6 +12184,10 @@ export {
12128
12184
  TwoFactorStatusModule,
12129
12185
  BillingService,
12130
12186
  Billing,
12187
+ SubscriptionStatus,
12188
+ CREDIT_WARNING_DISMISS_SEGMENT,
12189
+ isCreditWarningActive,
12190
+ resolveChangePlanTarget,
12131
12191
  BillingModule,
12132
12192
  PaymentMethod,
12133
12193
  StripeCustomer,
@@ -12147,7 +12207,6 @@ export {
12147
12207
  StripeProductService,
12148
12208
  StripeProductModule,
12149
12209
  StripeSubscription,
12150
- SubscriptionStatus,
12151
12210
  StripeSubscriptionService,
12152
12211
  StripeSubscriptionModule,
12153
12212
  StripeUsage,
@@ -12333,4 +12392,4 @@ export {
12333
12392
  AuditLogService,
12334
12393
  AuditLogModule
12335
12394
  };
12336
- //# sourceMappingURL=chunk-USYZNWKS.mjs.map
12395
+ //# sourceMappingURL=chunk-3FD6Y734.mjs.map