autumn-js 0.0.80 → 0.0.82

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 (207) hide show
  1. package/dist/libraries/backend/better-auth.js +18 -2
  2. package/dist/libraries/backend/better-auth.mjs +7 -7
  3. package/dist/libraries/backend/{chunk-6YOFMAEQ.mjs → chunk-52OTZ4SQ.mjs} +16 -6
  4. package/dist/libraries/backend/{chunk-HDGYVYU5.mjs → chunk-A46IKTLH.mjs} +1 -1
  5. package/dist/libraries/backend/{chunk-7NHMUGUP.mjs → chunk-DG3FZZQH.mjs} +1 -1
  6. package/dist/libraries/backend/{chunk-MIWNIVVB.mjs → chunk-J3QM5KFT.mjs} +1 -1
  7. package/dist/libraries/backend/{chunk-PCYIWHGN.mjs → chunk-UJQBHXII.mjs} +1 -1
  8. package/dist/libraries/backend/{chunk-3VWJMYUQ.mjs → chunk-VCEQ3QBX.mjs} +8 -2
  9. package/dist/libraries/backend/{chunk-CPLIRBCA.mjs → chunk-WDRHQJKV.mjs} +1 -1
  10. package/dist/libraries/backend/express.d.mts +1 -1
  11. package/dist/libraries/backend/express.d.ts +1 -1
  12. package/dist/libraries/backend/express.js +18 -2
  13. package/dist/libraries/backend/express.mjs +7 -7
  14. package/dist/libraries/backend/fastify.js +18 -2
  15. package/dist/libraries/backend/fastify.mjs +7 -7
  16. package/dist/libraries/backend/hono.js +18 -2
  17. package/dist/libraries/backend/hono.mjs +7 -7
  18. package/dist/libraries/backend/next.js +18 -2
  19. package/dist/libraries/backend/next.mjs +7 -7
  20. package/dist/libraries/backend/react-router.js +18 -2
  21. package/dist/libraries/backend/react-router.mjs +7 -7
  22. package/dist/libraries/backend/{referralTypes-3L_pJkT7.d.ts → referralTypes-BZ4WOVK5.d.ts} +2 -0
  23. package/dist/libraries/backend/{referralTypes-BOtccenE.d.mts → referralTypes-C6ao6j-_.d.mts} +2 -0
  24. package/dist/libraries/backend/remix_dep.js +18 -2
  25. package/dist/libraries/backend/remix_dep.mjs +7 -7
  26. package/dist/libraries/backend/routes/backendRouter.js +18 -2
  27. package/dist/libraries/backend/routes/backendRouter.mjs +7 -7
  28. package/dist/libraries/backend/routes/entityRoutes.js +8 -2
  29. package/dist/libraries/backend/routes/entityRoutes.mjs +3 -3
  30. package/dist/libraries/backend/routes/genRoutes.js +8 -2
  31. package/dist/libraries/backend/routes/genRoutes.mjs +3 -3
  32. package/dist/libraries/backend/routes/productRoutes.js +8 -2
  33. package/dist/libraries/backend/routes/productRoutes.mjs +3 -3
  34. package/dist/libraries/backend/routes/referralRoutes.js +8 -2
  35. package/dist/libraries/backend/routes/referralRoutes.mjs +3 -3
  36. package/dist/libraries/backend/supabase.js +18 -2
  37. package/dist/libraries/backend/supabase.mjs +7 -7
  38. package/dist/libraries/backend/tanstack.js +18 -2
  39. package/dist/libraries/backend/tanstack.mjs +7 -7
  40. package/dist/libraries/backend/utils/backendRes.js +8 -2
  41. package/dist/libraries/backend/utils/backendRes.mjs +1 -1
  42. package/dist/libraries/backend/utils/withAuth.d.mts +1 -1
  43. package/dist/libraries/backend/utils/withAuth.d.ts +1 -1
  44. package/dist/libraries/backend/utils/withAuth.js +8 -2
  45. package/dist/libraries/backend/utils/withAuth.mjs +2 -2
  46. package/dist/libraries/react/AutumnContext.d.mts +4 -4
  47. package/dist/libraries/react/AutumnContext.d.ts +4 -4
  48. package/dist/libraries/react/AutumnContext.js +83 -5
  49. package/dist/libraries/react/AutumnContext.mjs +6 -6
  50. package/dist/libraries/react/BaseAutumnProvider.d.mts +4 -4
  51. package/dist/libraries/react/BaseAutumnProvider.d.ts +4 -4
  52. package/dist/libraries/react/BaseAutumnProvider.js +229 -5672
  53. package/dist/libraries/react/BaseAutumnProvider.mjs +11 -21
  54. package/dist/libraries/react/{ReactAutumnClient-B-g4zQsF.d.mts → ReactAutumnClient-Cj2h9TXJ.d.mts} +15 -5
  55. package/dist/libraries/react/{ReactAutumnClient-BUIEn-KV.d.ts → ReactAutumnClient-DS-MPWXt.d.ts} +15 -5
  56. package/dist/libraries/react/ReactAutumnProvider.d.mts +1 -1
  57. package/dist/libraries/react/ReactAutumnProvider.d.ts +1 -1
  58. package/dist/libraries/react/ReactAutumnProvider.js +232 -5678
  59. package/dist/libraries/react/ReactAutumnProvider.mjs +12 -21
  60. package/dist/libraries/react/chunk-6ULRUGQO.mjs +20 -0
  61. package/dist/libraries/react/chunk-CQMTU2M4.mjs +170 -0
  62. package/dist/libraries/react/chunk-EWMKQDQ6.mjs +17 -0
  63. package/dist/libraries/react/chunk-GEIECHWI.mjs +77 -0
  64. package/dist/libraries/react/{chunk-JYOLY75Q.mjs → chunk-JOY6LN3M.mjs} +2 -2
  65. package/dist/libraries/react/chunk-JVCOY7ZL.mjs +22 -0
  66. package/dist/libraries/react/chunk-KVGD37VB.mjs +85 -0
  67. package/dist/libraries/react/chunk-L55GLFAX.mjs +83 -0
  68. package/dist/libraries/react/{chunk-WYADGMAH.mjs → chunk-MH2YTNJL.mjs} +1 -1
  69. package/dist/libraries/react/{chunk-3OBQBUE2.mjs → chunk-S4VDT54B.mjs} +2 -2
  70. package/dist/libraries/react/chunk-SCT4E6YW.mjs +17 -0
  71. package/dist/libraries/react/{chunk-RRXCG32N.mjs → chunk-UDRQNZZS.mjs} +255 -48
  72. package/dist/libraries/react/chunk-UO2PX7P3.mjs +46 -0
  73. package/dist/libraries/react/chunk-W2ZI3EI4.mjs +569 -0
  74. package/dist/libraries/react/client/ReactAutumnClient.d.mts +4 -4
  75. package/dist/libraries/react/client/ReactAutumnClient.d.ts +4 -4
  76. package/dist/libraries/react/client/ReactAutumnClient.js +83 -5
  77. package/dist/libraries/react/client/ReactAutumnClient.mjs +5 -5
  78. package/dist/libraries/react/client/clientCompMethods.d.mts +4 -4
  79. package/dist/libraries/react/client/clientCompMethods.d.ts +4 -4
  80. package/dist/libraries/react/client/clientCusMethods.d.mts +4 -4
  81. package/dist/libraries/react/client/clientCusMethods.d.ts +4 -4
  82. package/dist/libraries/react/client/clientEntityMethods.d.mts +4 -4
  83. package/dist/libraries/react/client/clientEntityMethods.d.ts +4 -4
  84. package/dist/libraries/react/client/clientGenMethods.d.mts +4 -4
  85. package/dist/libraries/react/client/clientGenMethods.d.ts +4 -4
  86. package/dist/libraries/react/client/clientProdMethods.d.mts +4 -4
  87. package/dist/libraries/react/client/clientProdMethods.d.ts +4 -4
  88. package/dist/libraries/react/client/clientReferralMethods.d.mts +4 -4
  89. package/dist/libraries/react/client/clientReferralMethods.d.ts +4 -4
  90. package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.d.mts +1 -1
  91. package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.d.ts +1 -1
  92. package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.js +95 -18
  93. package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.mjs +20 -12
  94. package/dist/libraries/react/components/attach-dialog/lib/attach-content.d.mts +1 -1
  95. package/dist/libraries/react/components/attach-dialog/lib/attach-content.d.ts +1 -1
  96. package/dist/libraries/react/components/check-dialog/check-dialog-synced.d.mts +1 -1
  97. package/dist/libraries/react/components/check-dialog/check-dialog-synced.d.ts +1 -1
  98. package/dist/libraries/react/components/check-dialog/lib/check-content.d.mts +1 -1
  99. package/dist/libraries/react/components/check-dialog/lib/check-content.d.ts +1 -1
  100. package/dist/libraries/react/components/pricing-table/pricing-table-synced.d.mts +1 -1
  101. package/dist/libraries/react/components/pricing-table/pricing-table-synced.d.ts +1 -1
  102. package/dist/libraries/react/components/pricing-table/pricing-table-synced.js +2987 -2910
  103. package/dist/libraries/react/components/pricing-table/pricing-table-synced.mjs +20 -12
  104. package/dist/libraries/react/{cusTypes-DSlkhuov.d.ts → cusTypes-CO4FwQ_s.d.mts} +3 -1
  105. package/dist/libraries/react/{cusTypes-DSlkhuov.d.mts → cusTypes-CO4FwQ_s.d.ts} +3 -1
  106. package/dist/libraries/react/{entTypes-Rpnetevb.d.mts → entTypes-DPTZOorv.d.mts} +1 -1
  107. package/dist/libraries/react/{entTypes-CcB_hEh5.d.ts → entTypes-UxZ5bRqE.d.ts} +1 -1
  108. package/dist/libraries/react/errorUtils/logAuthError.d.mts +1 -6
  109. package/dist/libraries/react/errorUtils/logAuthError.d.ts +1 -6
  110. package/dist/libraries/react/errorUtils/logAuthError.js +10 -490
  111. package/dist/libraries/react/errorUtils/logAuthError.mjs +2 -15
  112. package/dist/libraries/react/hooks/handleAllowed.d.mts +2 -2
  113. package/dist/libraries/react/hooks/handleAllowed.d.ts +2 -2
  114. package/dist/libraries/react/hooks/useAutumn.d.mts +2 -2
  115. package/dist/libraries/react/hooks/useAutumn.d.ts +2 -2
  116. package/dist/libraries/react/hooks/useAutumn.js +219 -5779
  117. package/dist/libraries/react/hooks/useAutumn.mjs +9 -22
  118. package/dist/libraries/react/hooks/useAutumnBase.d.mts +4 -4
  119. package/dist/libraries/react/hooks/useAutumnBase.d.ts +4 -4
  120. package/dist/libraries/react/hooks/useAutumnBase.js +215 -5775
  121. package/dist/libraries/react/hooks/useAutumnBase.mjs +8 -22
  122. package/dist/libraries/react/hooks/useCustomer.d.mts +4 -4
  123. package/dist/libraries/react/hooks/useCustomer.d.ts +4 -4
  124. package/dist/libraries/react/hooks/useCustomer.js +223 -5667
  125. package/dist/libraries/react/hooks/useCustomer.mjs +11 -22
  126. package/dist/libraries/react/hooks/useCustomerBase.d.mts +4 -4
  127. package/dist/libraries/react/hooks/useCustomerBase.d.ts +4 -4
  128. package/dist/libraries/react/hooks/useCustomerBase.js +223 -5675
  129. package/dist/libraries/react/hooks/useCustomerBase.mjs +10 -22
  130. package/dist/libraries/react/hooks/useEntity.d.mts +3 -3
  131. package/dist/libraries/react/hooks/useEntity.d.ts +3 -3
  132. package/dist/libraries/react/hooks/useEntity.js +219 -5729
  133. package/dist/libraries/react/hooks/useEntity.mjs +11 -22
  134. package/dist/libraries/react/hooks/useEntityBase.d.mts +4 -4
  135. package/dist/libraries/react/hooks/useEntityBase.d.ts +4 -4
  136. package/dist/libraries/react/hooks/useEntityBase.js +219 -5729
  137. package/dist/libraries/react/hooks/useEntityBase.mjs +10 -22
  138. package/dist/libraries/react/hooks/usePricingTable.d.mts +1 -1
  139. package/dist/libraries/react/hooks/usePricingTable.d.ts +1 -1
  140. package/dist/libraries/react/hooks/usePricingTable.js +83 -5
  141. package/dist/libraries/react/hooks/usePricingTable.mjs +8 -8
  142. package/dist/libraries/react/hooks/usePricingTableBase.d.mts +4 -4
  143. package/dist/libraries/react/hooks/usePricingTableBase.d.ts +4 -4
  144. package/dist/libraries/react/hooks/usePricingTableBase.js +83 -5
  145. package/dist/libraries/react/hooks/usePricingTableBase.mjs +7 -7
  146. package/dist/libraries/react/hooks/useProductsBase.js +83 -5
  147. package/dist/libraries/react/hooks/useProductsBase.mjs +6 -6
  148. package/dist/libraries/react/index.d.ts +2 -0
  149. package/dist/libraries/react/index.js +5521 -5450
  150. package/dist/libraries/react/index.mjs +5519 -5448
  151. package/dist/libraries/react/{response-CTqlSAVK.d.mts → response-CxtkXvb4.d.mts} +2 -2
  152. package/dist/libraries/react/{response-BKKi_PDD.d.ts → response-Z4Yeokd8.d.ts} +2 -2
  153. package/dist/next/{AutumnProvider-CGdXoZNQ.d.mts → AutumnProvider-DPcEuE_Q.d.mts} +2 -0
  154. package/dist/next/{AutumnProvider-CGdXoZNQ.d.ts → AutumnProvider-DPcEuE_Q.d.ts} +2 -0
  155. package/dist/next/AutumnProvider.d.mts +1 -1
  156. package/dist/next/AutumnProvider.d.ts +1 -1
  157. package/dist/next/client/NextAutumnClient.d.mts +15 -5
  158. package/dist/next/client/NextAutumnClient.d.ts +15 -5
  159. package/dist/next/client/NextAutumnProvider.d.mts +1 -1
  160. package/dist/next/client/NextAutumnProvider.d.ts +1 -1
  161. package/dist/next/client/{clientGenTypes-HDbUC8f6.d.ts → clientGenTypes-CAv4hwb4.d.ts} +1 -1
  162. package/dist/next/client/{clientGenTypes-BHrxzZi_.d.mts → clientGenTypes-Dlpw9wy_.d.mts} +1 -1
  163. package/dist/next/client/clientUtils.d.mts +2 -2
  164. package/dist/next/client/clientUtils.d.ts +2 -2
  165. package/dist/next/client/{cusTypes-CSbB7Wu9.d.mts → cusTypes-CJI8rdlY.d.mts} +2 -0
  166. package/dist/next/client/{cusTypes-CSbB7Wu9.d.ts → cusTypes-CJI8rdlY.d.ts} +2 -0
  167. package/dist/next/client/{entTypes-B3R2yjLW.d.ts → entTypes-CqHWTcCX.d.ts} +1 -1
  168. package/dist/next/client/{entTypes-6xEkbn32.d.mts → entTypes-okM0aeOM.d.mts} +1 -1
  169. package/dist/next/client/hooks/useAutumn.d.mts +2 -2
  170. package/dist/next/client/hooks/useAutumn.d.ts +2 -2
  171. package/dist/next/client/hooks/useCustomer.d.mts +3 -3
  172. package/dist/next/client/hooks/useCustomer.d.ts +3 -3
  173. package/dist/next/client/hooks/useEntity.d.mts +3 -3
  174. package/dist/next/client/hooks/useEntity.d.ts +3 -3
  175. package/dist/next/client/hooks/usePricingTable.d.mts +1 -1
  176. package/dist/next/client/hooks/usePricingTable.d.ts +1 -1
  177. package/dist/next/client/types.d.mts +2 -2
  178. package/dist/next/client/types.d.ts +2 -2
  179. package/dist/next/index.d.mts +14 -4
  180. package/dist/next/index.d.ts +14 -4
  181. package/dist/next/server/auth/withNextAuth.d.mts +1 -1
  182. package/dist/next/server/auth/withNextAuth.d.ts +1 -1
  183. package/dist/next/server/componentActions.d.mts +1 -1
  184. package/dist/next/server/componentActions.d.ts +1 -1
  185. package/dist/next/server/cusActions.d.mts +1 -1
  186. package/dist/next/server/cusActions.d.ts +1 -1
  187. package/dist/next/server/{cusTypes-ASrCF4fa.d.mts → cusTypes-DuSwXVmp.d.mts} +2 -0
  188. package/dist/next/server/{cusTypes-ASrCF4fa.d.ts → cusTypes-DuSwXVmp.d.ts} +2 -0
  189. package/dist/next/server/genActions.d.mts +1 -1
  190. package/dist/next/server/genActions.d.ts +1 -1
  191. package/dist/sdk/index.d.mts +4 -1
  192. package/dist/sdk/index.d.ts +4 -1
  193. package/dist/sdk/index.js +8 -2
  194. package/dist/sdk/index.mjs +8 -2
  195. package/dist/utils/encryptUtils.js +8 -2
  196. package/dist/utils/encryptUtils.mjs +8 -2
  197. package/package.json +1 -1
  198. package/dist/libraries/react/BaseAutumnProvider.css +0 -1264
  199. package/dist/libraries/react/ReactAutumnProvider.css +0 -1264
  200. package/dist/libraries/react/chunk-XPGX7SQG.mjs +0 -1014
  201. package/dist/libraries/react/chunk-Y6UVL46W.mjs +0 -152
  202. package/dist/libraries/react/hooks/useAutumn.css +0 -1264
  203. package/dist/libraries/react/hooks/useAutumnBase.css +0 -1264
  204. package/dist/libraries/react/hooks/useCustomer.css +0 -1264
  205. package/dist/libraries/react/hooks/useCustomerBase.css +0 -1264
  206. package/dist/libraries/react/hooks/useEntity.css +0 -1264
  207. package/dist/libraries/react/hooks/useEntityBase.css +0 -1264
@@ -2,33 +2,21 @@
2
2
 
3
3
  import {
4
4
  useEntityBase
5
- } from "../chunk-XPGX7SQG.mjs";
6
- import "../chunk-BCMBFJ7E.mjs";
7
- import "../chunk-QBBE72EF.mjs";
8
- import "../chunk-CMO5LYYU.mjs";
9
- import "../chunk-OWFX3JFF.mjs";
10
- import "../chunk-27OTS3Q5.mjs";
11
- import "../chunk-MY2ODATB.mjs";
12
- import "../chunk-P2O4LZFD.mjs";
13
- import "../chunk-5FZ7IV6P.mjs";
14
- import "../chunk-FPI3PLEL.mjs";
15
- import "../chunk-FEFGYFXQ.mjs";
16
- import "../chunk-4J6OC4ZQ.mjs";
17
- import "../chunk-4QPHNIQ7.mjs";
18
- import "../chunk-3OBQBUE2.mjs";
19
- import "../chunk-JYOLY75Q.mjs";
20
- import "../chunk-WYADGMAH.mjs";
21
- import "../chunk-Y6UVL46W.mjs";
5
+ } from "../chunk-L55GLFAX.mjs";
6
+ import "../chunk-JFXBUWKA.mjs";
7
+ import "../chunk-CQMTU2M4.mjs";
8
+ import "../chunk-JOY6LN3M.mjs";
9
+ import "../chunk-MH2YTNJL.mjs";
10
+ import "../chunk-UDRQNZZS.mjs";
11
+ import "../chunk-YUV2Y2RW.mjs";
12
+ import "../chunk-3EYF7OI5.mjs";
13
+ import "../chunk-JVCOY7ZL.mjs";
14
+ import "../chunk-CIBQ4BJU.mjs";
22
15
  import "../chunk-NZ5PEXT2.mjs";
23
16
  import "../chunk-TGX6UKKS.mjs";
24
17
  import "../chunk-V5PKOA5A.mjs";
25
18
  import "../chunk-JNM4BLTM.mjs";
26
- import "../chunk-YUV2Y2RW.mjs";
27
- import "../chunk-3EYF7OI5.mjs";
28
19
  import "../chunk-KQT5G3HT.mjs";
29
- import "../chunk-RRXCG32N.mjs";
30
- import "../chunk-CIBQ4BJU.mjs";
31
- import "../chunk-JFXBUWKA.mjs";
32
20
  export {
33
21
  useEntityBase
34
22
  };
@@ -1,6 +1,6 @@
1
1
  import * as swr from 'swr';
2
2
  import { A as AutumnError } from '../error-DHbclCVh.mjs';
3
- import { P as Product } from '../cusTypes-DSlkhuov.mjs';
3
+ import { P as Product } from '../cusTypes-CO4FwQ_s.mjs';
4
4
  import { ProductDetails } from '../client/types/clientPricingTableTypes.mjs';
5
5
 
6
6
  declare const usePricingTable: (params?: {
@@ -1,6 +1,6 @@
1
1
  import * as swr from 'swr';
2
2
  import { A as AutumnError } from '../error-DHbclCVh.js';
3
- import { P as Product } from '../cusTypes-DSlkhuov.js';
3
+ import { P as Product } from '../cusTypes-CO4FwQ_s.js';
4
4
  import { ProductDetails } from '../client/types/clientPricingTableTypes.js';
5
5
 
6
6
  declare const usePricingTable: (params?: {
@@ -291,12 +291,18 @@ var redeemReferralCode = async ({
291
291
  };
292
292
 
293
293
  // src/sdk/response.ts
294
- var toContainerResult = async ({ response, logger: logger2 }) => {
294
+ var toContainerResult = async ({
295
+ response,
296
+ logger: logger2,
297
+ logError = true
298
+ }) => {
295
299
  if (response.status < 200 || response.status >= 300) {
296
300
  let error;
297
301
  try {
298
302
  error = await response.json();
299
- logger2.error(`[Autumn] ${error.message}`);
303
+ if (logError) {
304
+ logger2.error(`[Autumn] ${error.message}`);
305
+ }
300
306
  } catch (error2) {
301
307
  throw error2;
302
308
  return {
@@ -510,6 +516,22 @@ var Autumn = class {
510
516
  }
511
517
  };
512
518
 
519
+ // src/libraries/react/errorUtils/logAuthError.ts
520
+ var logAuthError = async (response) => {
521
+ if (response.status === 401) {
522
+ let clonedResponse = response.clone();
523
+ let data = await clonedResponse.json();
524
+ if (data.message.includes("Missing authorization header")) {
525
+ console.error(`[Autumn] Missing authorization header.
526
+
527
+ Use the getBearerToken prop in <AutumnProvider /> to set the authorization header.
528
+ https://docs.useautumn.com/quickstart/quickstart#5-set-up-autumnprovider`);
529
+ return true;
530
+ }
531
+ }
532
+ return false;
533
+ };
534
+
513
535
  // src/libraries/react/errorUtils/logFetchError.ts
514
536
  var logFetchError = ({
515
537
  method,
@@ -642,7 +664,8 @@ var AutumnClient = class {
642
664
  getBearerToken;
643
665
  customerData;
644
666
  includeCredentials;
645
- // protected readonly pathPrefix?: string;
667
+ corsDetected;
668
+ corsSupportsCredentials;
646
669
  constructor({
647
670
  backendUrl,
648
671
  getBearerToken,
@@ -654,6 +677,55 @@ var AutumnClient = class {
654
677
  this.customerData = customerData;
655
678
  this.includeCredentials = includeCredentials;
656
679
  }
680
+ /**
681
+ * Detects if the backend supports CORS credentials by making an OPTIONS request
682
+ */
683
+ async detectCors() {
684
+ const testEndpoint = `${this.backendUrl}/api/autumn/cors`;
685
+ try {
686
+ await fetch(testEndpoint, {
687
+ method: "POST",
688
+ credentials: "include",
689
+ headers: { "Content-Type": "application/json" }
690
+ });
691
+ return { valid: true, includeCredentials: true };
692
+ } catch (error) {
693
+ try {
694
+ await fetch(testEndpoint, {
695
+ method: "POST",
696
+ credentials: "omit",
697
+ headers: { "Content-Type": "application/json" }
698
+ });
699
+ return { valid: true, includeCredentials: false };
700
+ } catch (error2) {
701
+ return { valid: false, includeCredentials: void 0 };
702
+ }
703
+ }
704
+ }
705
+ /**
706
+ * Automatically determines whether to include credentials based on CORS detection
707
+ */
708
+ async shouldIncludeCredentials() {
709
+ if (this.includeCredentials !== void 0) {
710
+ return this.includeCredentials;
711
+ }
712
+ try {
713
+ const corsResult = await this.detectCors();
714
+ if (corsResult.valid) {
715
+ console.warn(
716
+ `[Autumn] Detected CORS credentials: ${corsResult.includeCredentials}`
717
+ );
718
+ console.warn(
719
+ `[Autumn] To disable this warning, you can set includeCredentials={${corsResult.includeCredentials ? "true" : "false"}} in <AutumnProvider />`
720
+ );
721
+ this.includeCredentials = corsResult.includeCredentials;
722
+ }
723
+ return corsResult.includeCredentials || false;
724
+ } catch (error) {
725
+ console.error(`[Autumn] Error detecting CORS: ${error.message}`);
726
+ return false;
727
+ }
728
+ }
657
729
  async getHeaders() {
658
730
  let headers = {
659
731
  "Content-Type": "application/json"
@@ -677,14 +749,20 @@ var AutumnClient = class {
677
749
  ...body,
678
750
  customer_data: this.customerData || void 0
679
751
  }) : void 0;
752
+ const includeCredentials = await this.shouldIncludeCredentials();
680
753
  try {
681
754
  const response = await fetch(`${this.backendUrl}${path}`, {
682
755
  method,
683
756
  body,
684
757
  headers: await this.getHeaders(),
685
- credentials: this.includeCredentials ? "include" : void 0
758
+ credentials: includeCredentials ? "include" : "omit"
759
+ });
760
+ const loggedError = await logAuthError(response);
761
+ return await toContainerResult({
762
+ response,
763
+ logger: console,
764
+ logError: !loggedError
686
765
  });
687
- return await toContainerResult({ response, logger: console });
688
766
  } catch (error) {
689
767
  logFetchError({
690
768
  method,
@@ -2,19 +2,19 @@
2
2
 
3
3
  import {
4
4
  usePricingTable
5
- } from "../chunk-3OBQBUE2.mjs";
6
- import "../chunk-JYOLY75Q.mjs";
7
- import "../chunk-WYADGMAH.mjs";
8
- import "../chunk-Y6UVL46W.mjs";
5
+ } from "../chunk-S4VDT54B.mjs";
6
+ import "../chunk-JOY6LN3M.mjs";
7
+ import "../chunk-MH2YTNJL.mjs";
8
+ import "../chunk-UDRQNZZS.mjs";
9
+ import "../chunk-YUV2Y2RW.mjs";
10
+ import "../chunk-3EYF7OI5.mjs";
11
+ import "../chunk-JVCOY7ZL.mjs";
12
+ import "../chunk-CIBQ4BJU.mjs";
9
13
  import "../chunk-NZ5PEXT2.mjs";
10
14
  import "../chunk-TGX6UKKS.mjs";
11
15
  import "../chunk-V5PKOA5A.mjs";
12
16
  import "../chunk-JNM4BLTM.mjs";
13
- import "../chunk-YUV2Y2RW.mjs";
14
- import "../chunk-3EYF7OI5.mjs";
15
17
  import "../chunk-KQT5G3HT.mjs";
16
- import "../chunk-RRXCG32N.mjs";
17
- import "../chunk-CIBQ4BJU.mjs";
18
18
  export {
19
19
  usePricingTable
20
20
  };
@@ -1,15 +1,15 @@
1
1
  import * as swr from 'swr';
2
2
  import { A as AutumnError } from '../error-DHbclCVh.mjs';
3
- import { P as Product } from '../cusTypes-DSlkhuov.mjs';
3
+ import { P as Product } from '../cusTypes-CO4FwQ_s.mjs';
4
4
  import { ProductDetails } from '../client/types/clientPricingTableTypes.mjs';
5
5
  import { AutumnContextParams } from '../AutumnContext.mjs';
6
6
  import 'react';
7
- import '../ReactAutumnClient-B-g4zQsF.mjs';
7
+ import '../ReactAutumnClient-Cj2h9TXJ.mjs';
8
8
  import '../client/types/clientReferralTypes.mjs';
9
9
  import '../client/types/clientEntTypes.mjs';
10
10
  import '../client/types/clientGenTypes.mjs';
11
- import '../response-CTqlSAVK.mjs';
12
- import '../entTypes-Rpnetevb.mjs';
11
+ import '../response-CxtkXvb4.mjs';
12
+ import '../entTypes-DPTZOorv.mjs';
13
13
 
14
14
  declare const usePricingTableBase: ({ AutumnContext, params, }: {
15
15
  AutumnContext: React.Context<AutumnContextParams>;
@@ -1,15 +1,15 @@
1
1
  import * as swr from 'swr';
2
2
  import { A as AutumnError } from '../error-DHbclCVh.js';
3
- import { P as Product } from '../cusTypes-DSlkhuov.js';
3
+ import { P as Product } from '../cusTypes-CO4FwQ_s.js';
4
4
  import { ProductDetails } from '../client/types/clientPricingTableTypes.js';
5
5
  import { AutumnContextParams } from '../AutumnContext.js';
6
6
  import 'react';
7
- import '../ReactAutumnClient-BUIEn-KV.js';
7
+ import '../ReactAutumnClient-DS-MPWXt.js';
8
8
  import '../client/types/clientReferralTypes.js';
9
9
  import '../client/types/clientEntTypes.js';
10
10
  import '../client/types/clientGenTypes.js';
11
- import '../response-BKKi_PDD.js';
12
- import '../entTypes-CcB_hEh5.js';
11
+ import '../response-Z4Yeokd8.js';
12
+ import '../entTypes-UxZ5bRqE.js';
13
13
 
14
14
  declare const usePricingTableBase: ({ AutumnContext, params, }: {
15
15
  AutumnContext: React.Context<AutumnContextParams>;
@@ -289,12 +289,18 @@ var redeemReferralCode = async ({
289
289
  };
290
290
 
291
291
  // src/sdk/response.ts
292
- var toContainerResult = async ({ response, logger: logger2 }) => {
292
+ var toContainerResult = async ({
293
+ response,
294
+ logger: logger2,
295
+ logError = true
296
+ }) => {
293
297
  if (response.status < 200 || response.status >= 300) {
294
298
  let error;
295
299
  try {
296
300
  error = await response.json();
297
- logger2.error(`[Autumn] ${error.message}`);
301
+ if (logError) {
302
+ logger2.error(`[Autumn] ${error.message}`);
303
+ }
298
304
  } catch (error2) {
299
305
  throw error2;
300
306
  return {
@@ -508,6 +514,22 @@ var Autumn = class {
508
514
  }
509
515
  };
510
516
 
517
+ // src/libraries/react/errorUtils/logAuthError.ts
518
+ var logAuthError = async (response) => {
519
+ if (response.status === 401) {
520
+ let clonedResponse = response.clone();
521
+ let data = await clonedResponse.json();
522
+ if (data.message.includes("Missing authorization header")) {
523
+ console.error(`[Autumn] Missing authorization header.
524
+
525
+ Use the getBearerToken prop in <AutumnProvider /> to set the authorization header.
526
+ https://docs.useautumn.com/quickstart/quickstart#5-set-up-autumnprovider`);
527
+ return true;
528
+ }
529
+ }
530
+ return false;
531
+ };
532
+
511
533
  // src/libraries/react/errorUtils/logFetchError.ts
512
534
  var logFetchError = ({
513
535
  method,
@@ -640,7 +662,8 @@ var AutumnClient = class {
640
662
  getBearerToken;
641
663
  customerData;
642
664
  includeCredentials;
643
- // protected readonly pathPrefix?: string;
665
+ corsDetected;
666
+ corsSupportsCredentials;
644
667
  constructor({
645
668
  backendUrl,
646
669
  getBearerToken,
@@ -652,6 +675,55 @@ var AutumnClient = class {
652
675
  this.customerData = customerData;
653
676
  this.includeCredentials = includeCredentials;
654
677
  }
678
+ /**
679
+ * Detects if the backend supports CORS credentials by making an OPTIONS request
680
+ */
681
+ async detectCors() {
682
+ const testEndpoint = `${this.backendUrl}/api/autumn/cors`;
683
+ try {
684
+ await fetch(testEndpoint, {
685
+ method: "POST",
686
+ credentials: "include",
687
+ headers: { "Content-Type": "application/json" }
688
+ });
689
+ return { valid: true, includeCredentials: true };
690
+ } catch (error) {
691
+ try {
692
+ await fetch(testEndpoint, {
693
+ method: "POST",
694
+ credentials: "omit",
695
+ headers: { "Content-Type": "application/json" }
696
+ });
697
+ return { valid: true, includeCredentials: false };
698
+ } catch (error2) {
699
+ return { valid: false, includeCredentials: void 0 };
700
+ }
701
+ }
702
+ }
703
+ /**
704
+ * Automatically determines whether to include credentials based on CORS detection
705
+ */
706
+ async shouldIncludeCredentials() {
707
+ if (this.includeCredentials !== void 0) {
708
+ return this.includeCredentials;
709
+ }
710
+ try {
711
+ const corsResult = await this.detectCors();
712
+ if (corsResult.valid) {
713
+ console.warn(
714
+ `[Autumn] Detected CORS credentials: ${corsResult.includeCredentials}`
715
+ );
716
+ console.warn(
717
+ `[Autumn] To disable this warning, you can set includeCredentials={${corsResult.includeCredentials ? "true" : "false"}} in <AutumnProvider />`
718
+ );
719
+ this.includeCredentials = corsResult.includeCredentials;
720
+ }
721
+ return corsResult.includeCredentials || false;
722
+ } catch (error) {
723
+ console.error(`[Autumn] Error detecting CORS: ${error.message}`);
724
+ return false;
725
+ }
726
+ }
655
727
  async getHeaders() {
656
728
  let headers = {
657
729
  "Content-Type": "application/json"
@@ -675,14 +747,20 @@ var AutumnClient = class {
675
747
  ...body,
676
748
  customer_data: this.customerData || void 0
677
749
  }) : void 0;
750
+ const includeCredentials = await this.shouldIncludeCredentials();
678
751
  try {
679
752
  const response = await fetch(`${this.backendUrl}${path}`, {
680
753
  method,
681
754
  body,
682
755
  headers: await this.getHeaders(),
683
- credentials: this.includeCredentials ? "include" : void 0
756
+ credentials: includeCredentials ? "include" : "omit"
757
+ });
758
+ const loggedError = await logAuthError(response);
759
+ return await toContainerResult({
760
+ response,
761
+ logger: console,
762
+ logError: !loggedError
684
763
  });
685
- return await toContainerResult({ response, logger: console });
686
764
  } catch (error) {
687
765
  logFetchError({
688
766
  method,
@@ -2,18 +2,18 @@
2
2
 
3
3
  import {
4
4
  usePricingTableBase
5
- } from "../chunk-JYOLY75Q.mjs";
6
- import "../chunk-WYADGMAH.mjs";
7
- import "../chunk-Y6UVL46W.mjs";
5
+ } from "../chunk-JOY6LN3M.mjs";
6
+ import "../chunk-MH2YTNJL.mjs";
7
+ import "../chunk-UDRQNZZS.mjs";
8
+ import "../chunk-YUV2Y2RW.mjs";
9
+ import "../chunk-3EYF7OI5.mjs";
10
+ import "../chunk-JVCOY7ZL.mjs";
11
+ import "../chunk-CIBQ4BJU.mjs";
8
12
  import "../chunk-NZ5PEXT2.mjs";
9
13
  import "../chunk-TGX6UKKS.mjs";
10
14
  import "../chunk-V5PKOA5A.mjs";
11
15
  import "../chunk-JNM4BLTM.mjs";
12
- import "../chunk-YUV2Y2RW.mjs";
13
- import "../chunk-3EYF7OI5.mjs";
14
16
  import "../chunk-KQT5G3HT.mjs";
15
- import "../chunk-RRXCG32N.mjs";
16
- import "../chunk-CIBQ4BJU.mjs";
17
17
  export {
18
18
  usePricingTableBase
19
19
  };
@@ -36,6 +36,22 @@ __export(useProductsBase_exports, {
36
36
  });
37
37
  module.exports = __toCommonJS(useProductsBase_exports);
38
38
 
39
+ // src/libraries/react/errorUtils/logAuthError.ts
40
+ var logAuthError = async (response) => {
41
+ if (response.status === 401) {
42
+ let clonedResponse = response.clone();
43
+ let data = await clonedResponse.json();
44
+ if (data.message.includes("Missing authorization header")) {
45
+ console.error(`[Autumn] Missing authorization header.
46
+
47
+ Use the getBearerToken prop in <AutumnProvider /> to set the authorization header.
48
+ https://docs.useautumn.com/quickstart/quickstart#5-set-up-autumnprovider`);
49
+ return true;
50
+ }
51
+ }
52
+ return false;
53
+ };
54
+
39
55
  // src/sdk/error.ts
40
56
  var AutumnError = class _AutumnError extends Error {
41
57
  message;
@@ -288,12 +304,18 @@ var redeemReferralCode = async ({
288
304
  };
289
305
 
290
306
  // src/sdk/response.ts
291
- var toContainerResult = async ({ response, logger: logger2 }) => {
307
+ var toContainerResult = async ({
308
+ response,
309
+ logger: logger2,
310
+ logError = true
311
+ }) => {
292
312
  if (response.status < 200 || response.status >= 300) {
293
313
  let error;
294
314
  try {
295
315
  error = await response.json();
296
- logger2.error(`[Autumn] ${error.message}`);
316
+ if (logError) {
317
+ logger2.error(`[Autumn] ${error.message}`);
318
+ }
297
319
  } catch (error2) {
298
320
  throw error2;
299
321
  return {
@@ -639,7 +661,8 @@ var AutumnClient = class {
639
661
  getBearerToken;
640
662
  customerData;
641
663
  includeCredentials;
642
- // protected readonly pathPrefix?: string;
664
+ corsDetected;
665
+ corsSupportsCredentials;
643
666
  constructor({
644
667
  backendUrl,
645
668
  getBearerToken,
@@ -651,6 +674,55 @@ var AutumnClient = class {
651
674
  this.customerData = customerData;
652
675
  this.includeCredentials = includeCredentials;
653
676
  }
677
+ /**
678
+ * Detects if the backend supports CORS credentials by making an OPTIONS request
679
+ */
680
+ async detectCors() {
681
+ const testEndpoint = `${this.backendUrl}/api/autumn/cors`;
682
+ try {
683
+ await fetch(testEndpoint, {
684
+ method: "POST",
685
+ credentials: "include",
686
+ headers: { "Content-Type": "application/json" }
687
+ });
688
+ return { valid: true, includeCredentials: true };
689
+ } catch (error) {
690
+ try {
691
+ await fetch(testEndpoint, {
692
+ method: "POST",
693
+ credentials: "omit",
694
+ headers: { "Content-Type": "application/json" }
695
+ });
696
+ return { valid: true, includeCredentials: false };
697
+ } catch (error2) {
698
+ return { valid: false, includeCredentials: void 0 };
699
+ }
700
+ }
701
+ }
702
+ /**
703
+ * Automatically determines whether to include credentials based on CORS detection
704
+ */
705
+ async shouldIncludeCredentials() {
706
+ if (this.includeCredentials !== void 0) {
707
+ return this.includeCredentials;
708
+ }
709
+ try {
710
+ const corsResult = await this.detectCors();
711
+ if (corsResult.valid) {
712
+ console.warn(
713
+ `[Autumn] Detected CORS credentials: ${corsResult.includeCredentials}`
714
+ );
715
+ console.warn(
716
+ `[Autumn] To disable this warning, you can set includeCredentials={${corsResult.includeCredentials ? "true" : "false"}} in <AutumnProvider />`
717
+ );
718
+ this.includeCredentials = corsResult.includeCredentials;
719
+ }
720
+ return corsResult.includeCredentials || false;
721
+ } catch (error) {
722
+ console.error(`[Autumn] Error detecting CORS: ${error.message}`);
723
+ return false;
724
+ }
725
+ }
654
726
  async getHeaders() {
655
727
  let headers = {
656
728
  "Content-Type": "application/json"
@@ -674,14 +746,20 @@ var AutumnClient = class {
674
746
  ...body,
675
747
  customer_data: this.customerData || void 0
676
748
  }) : void 0;
749
+ const includeCredentials = await this.shouldIncludeCredentials();
677
750
  try {
678
751
  const response = await fetch(`${this.backendUrl}${path}`, {
679
752
  method,
680
753
  body,
681
754
  headers: await this.getHeaders(),
682
- credentials: this.includeCredentials ? "include" : void 0
755
+ credentials: includeCredentials ? "include" : "omit"
756
+ });
757
+ const loggedError = await logAuthError(response);
758
+ return await toContainerResult({
759
+ response,
760
+ logger: console,
761
+ logError: !loggedError
683
762
  });
684
- return await toContainerResult({ response, logger: console });
685
763
  } catch (error) {
686
764
  logFetchError({
687
765
  method,
@@ -3,17 +3,17 @@
3
3
  import {
4
4
  AutumnContext,
5
5
  useAutumnContext
6
- } from "../chunk-WYADGMAH.mjs";
7
- import "../chunk-Y6UVL46W.mjs";
6
+ } from "../chunk-MH2YTNJL.mjs";
7
+ import "../chunk-UDRQNZZS.mjs";
8
+ import "../chunk-YUV2Y2RW.mjs";
9
+ import "../chunk-3EYF7OI5.mjs";
10
+ import "../chunk-JVCOY7ZL.mjs";
11
+ import "../chunk-CIBQ4BJU.mjs";
8
12
  import "../chunk-NZ5PEXT2.mjs";
9
13
  import "../chunk-TGX6UKKS.mjs";
10
14
  import "../chunk-V5PKOA5A.mjs";
11
15
  import "../chunk-JNM4BLTM.mjs";
12
- import "../chunk-YUV2Y2RW.mjs";
13
- import "../chunk-3EYF7OI5.mjs";
14
16
  import "../chunk-KQT5G3HT.mjs";
15
- import "../chunk-RRXCG32N.mjs";
16
- import "../chunk-CIBQ4BJU.mjs";
17
17
 
18
18
  // src/libraries/react/hooks/useProductsBase.tsx
19
19
  var useProductsBase = () => {
@@ -113,6 +113,8 @@ interface ProductItem {
113
113
  billing_units?: number;
114
114
  entity_feature_id?: string;
115
115
  reset_usage_when_enabled?: boolean;
116
+ quantity?: number;
117
+ next_cycle_quantity?: number;
116
118
  display?: {
117
119
  primary_text?: string;
118
120
  secondary_text?: string;