@feelflow/ffid-sdk 5.0.0 → 5.0.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/README.md CHANGED
@@ -21,19 +21,53 @@ pnpm add @feelflow/ffid-sdk
21
21
 
22
22
  サービスを FFID Platform に統合する詳細なガイドは **[Integration Guide](./docs/INTEGRATION_GUIDE.md)** を参照してください。OAuth フロー、フロントエンド/バックエンド実装パターン、セキュリティチェックリスト、アンチパターン集を網羅しています。
23
23
 
24
+ ### Cookie 同意管理基盤 (v5.0.0+)
25
+
26
+ GDPR / ePrivacy / 改正電気通信事業法 / APPI 準拠の Cookie 同意 UI を **15 分以内** に導入できます (opt-in、v4.x 完全互換)。
27
+
28
+ - **[Cookie Consent Integration Guide](./docs/cookie-consent-guide.md)** — 17 章の詳細統合手順 (App Router / Pages Router / Vite / Consent Mode v2 / Sentry replay / RSC / i18n / A11y / エラーハンドリング)
29
+ - **[v4 → v5 Migration Guide](./docs/MIGRATION_v5.md)** — minimal / full アップグレード手順、自前 gtag からの移譲、Rollback
30
+ - **[Troubleshooting Q&A](./docs/cookie-consent-troubleshooting.md)** — Banner / GA / Cookie / TypeScript / API / Sentry のよくある詰まりポイント
31
+ - **動作サンプル**: [App Router](./examples/cookie-consent/nextjs-app-router/) / [Pages Router](./examples/cookie-consent/nextjs-pages-router/) / [Vite + React](./examples/cookie-consent/vite-react/)
32
+
33
+ ```tsx
34
+ // app/layout.tsx (App Router、最短 3 ステップ)
35
+ import {
36
+ FFIDProvider,
37
+ FFIDAnalyticsProvider,
38
+ FFIDCookieBanner,
39
+ DEFAULT_OAUTH_SCOPES,
40
+ } from '@feelflow/ffid-sdk'
41
+
42
+ export default function RootLayout({ children }) {
43
+ return (
44
+ <FFIDProvider serviceCode="your-service" scope={DEFAULT_OAUTH_SCOPES}>
45
+ <FFIDAnalyticsProvider
46
+ baseUrl={process.env.NEXT_PUBLIC_FFID_BASE_URL!}
47
+ serviceApiKey={process.env.FFID_SERVICE_API_KEY!}
48
+ gaMeasurementId={process.env.NEXT_PUBLIC_GA_ID ?? null}
49
+ >
50
+ {children}
51
+ <FFIDCookieBanner />
52
+ </FFIDAnalyticsProvider>
53
+ </FFIDProvider>
54
+ )
55
+ }
56
+ ```
57
+
24
58
  ## クイックスタート
25
59
 
26
60
  ### 1. プロバイダーを設定(5行で完了!)
27
61
 
28
62
  ```tsx
29
63
  // app/layout.tsx
30
- import { FFIDProvider } from '@feelflow/ffid-sdk'
64
+ import { FFIDProvider, DEFAULT_OAUTH_SCOPES } from '@feelflow/ffid-sdk'
31
65
 
32
66
  export default function RootLayout({ children }: { children: React.ReactNode }) {
33
67
  return (
34
68
  <html lang="ja">
35
69
  <body>
36
- <FFIDProvider serviceCode="chatbot">{children}</FFIDProvider>
70
+ <FFIDProvider serviceCode="chatbot" scope={DEFAULT_OAUTH_SCOPES}>{children}</FFIDProvider>
37
71
  </body>
38
72
  </html>
39
73
  )
@@ -139,13 +173,14 @@ function Header() {
139
173
 
140
174
  ```tsx
141
175
  <FFIDProvider
142
- serviceCode="chatbot" // 必須: サービスコード
143
- apiBaseUrl="..." // オプション: カスタムAPIエンドポイント
144
- debug={true} // オプション: デバッグログ有効化(非推奨、loggerを使用)
145
- logger={customLogger} // オプション: カスタムロガー(下記参照)
146
- refreshInterval={300000} // オプション: セッション更新間隔(ms)
147
- onAuthStateChange={(user) => {}} // オプション: 認証状態変更時コールバック
148
- onError={(error) => {}} // オプション: エラー時コールバック
176
+ serviceCode="chatbot" // 必須: サービスコード
177
+ scope={DEFAULT_OAUTH_SCOPES} // 必須: OAuth scope (v3.0.0+)
178
+ apiBaseUrl="..." // オプション: カスタムAPIエンドポイント
179
+ debug={true} // オプション: デバッグログ有効化(非推奨、loggerを使用)
180
+ logger={customLogger} // オプション: カスタムロガー(下記参照)
181
+ refreshInterval={300000} // オプション: セッション更新間隔(ms)
182
+ onAuthStateChange={(user) => {}} // オプション: 認証状態変更時コールバック
183
+ onError={(error) => {}} // オプション: エラー時コールバック
149
184
  >
150
185
  {children}
151
186
  </FFIDProvider>
@@ -171,7 +206,7 @@ const ffidLogger: FFIDLogger = {
171
206
  }
172
207
 
173
208
  // 使用例
174
- <FFIDProvider serviceCode="chatbot" logger={ffidLogger}>
209
+ <FFIDProvider serviceCode="chatbot" scope={DEFAULT_OAUTH_SCOPES} logger={ffidLogger}>
175
210
  {children}
176
211
  </FFIDProvider>
177
212
  ```
@@ -162,6 +162,13 @@ declare const FFIDConsentCategoryMetadataSchema: z.ZodObject<{
162
162
  }, z.core.$strip>;
163
163
  /**
164
164
  * Cookie policy document — camelCase shape from `getCurrentCookiePolicy()`.
165
+ *
166
+ * `publishedAt` accepts both `Z` suffix and numeric offsets (`+00:00`, `+09:00`)
167
+ * so that consumers tolerate Postgres `timestamptz` raw passthrough as well as
168
+ * `Z`-normalized output. The FFID server normalizes to `Z` since Issue #3244
169
+ * (see `src/lib/cookie-consent/serialize.ts#isoZ`), but third-party / future
170
+ * server paths may emit offsets — tolerant parsing is the defense-in-depth
171
+ * layer specified in Issue #3245.
165
172
  */
166
173
  declare const FFIDCookiePolicySchema: z.ZodObject<{
167
174
  id: z.ZodString;
@@ -679,9 +686,23 @@ interface FFIDConsentContextValue {
679
686
  withdraw: () => Promise<FFIDConsentResult<FFIDConsentState>>;
680
687
  refresh: () => Promise<void>;
681
688
  /**
682
- * @internal Exposed so the gtag bridge tests / FFIDProvider can observe
683
- * login transitions and trigger sync. Consumers should NOT call directly —
684
- * the SDK will invoke this automatically on login.
689
+ * @internal Reconcile local cookie state with server-side via `POST /sync`.
690
+ *
691
+ * Consumers integrating FFID auth should call this **from their OAuth
692
+ * callback handler** so that the freshly-issued Bearer token can be merged
693
+ * with the pre-login device-scoped consent row. The SDK does NOT subscribe
694
+ * to auth state internally — it has no portable way to detect login
695
+ * events across framework conventions (Next.js Middleware, OAuth flows,
696
+ * etc.). Pattern:
697
+ *
698
+ * ```ts
699
+ * import { useContext } from 'react'
700
+ * import { FFIDConsentContext } from '@feelflow/ffid-sdk/consent'
701
+ * function OAuthCallback() {
702
+ * const ctx = useContext(FFIDConsentContext)
703
+ * useEffect(() => { void ctx.syncWithUser() }, [ctx])
704
+ * }
705
+ * ```
685
706
  */
686
707
  syncWithUser: () => Promise<FFIDConsentResult<FFIDConsentSyncResult>>;
687
708
  }
@@ -162,6 +162,13 @@ declare const FFIDConsentCategoryMetadataSchema: z.ZodObject<{
162
162
  }, z.core.$strip>;
163
163
  /**
164
164
  * Cookie policy document — camelCase shape from `getCurrentCookiePolicy()`.
165
+ *
166
+ * `publishedAt` accepts both `Z` suffix and numeric offsets (`+00:00`, `+09:00`)
167
+ * so that consumers tolerate Postgres `timestamptz` raw passthrough as well as
168
+ * `Z`-normalized output. The FFID server normalizes to `Z` since Issue #3244
169
+ * (see `src/lib/cookie-consent/serialize.ts#isoZ`), but third-party / future
170
+ * server paths may emit offsets — tolerant parsing is the defense-in-depth
171
+ * layer specified in Issue #3245.
165
172
  */
166
173
  declare const FFIDCookiePolicySchema: z.ZodObject<{
167
174
  id: z.ZodString;
@@ -679,9 +686,23 @@ interface FFIDConsentContextValue {
679
686
  withdraw: () => Promise<FFIDConsentResult<FFIDConsentState>>;
680
687
  refresh: () => Promise<void>;
681
688
  /**
682
- * @internal Exposed so the gtag bridge tests / FFIDProvider can observe
683
- * login transitions and trigger sync. Consumers should NOT call directly —
684
- * the SDK will invoke this automatically on login.
689
+ * @internal Reconcile local cookie state with server-side via `POST /sync`.
690
+ *
691
+ * Consumers integrating FFID auth should call this **from their OAuth
692
+ * callback handler** so that the freshly-issued Bearer token can be merged
693
+ * with the pre-login device-scoped consent row. The SDK does NOT subscribe
694
+ * to auth state internally — it has no portable way to detect login
695
+ * events across framework conventions (Next.js Middleware, OAuth flows,
696
+ * etc.). Pattern:
697
+ *
698
+ * ```ts
699
+ * import { useContext } from 'react'
700
+ * import { FFIDConsentContext } from '@feelflow/ffid-sdk/consent'
701
+ * function OAuthCallback() {
702
+ * const ctx = useContext(FFIDConsentContext)
703
+ * useEffect(() => { void ctx.syncWithUser() }, [ctx])
704
+ * }
705
+ * ```
685
706
  */
686
707
  syncWithUser: () => Promise<FFIDConsentResult<FFIDConsentSyncResult>>;
687
708
  }
@@ -838,7 +838,7 @@ function createProfileMethods(deps) {
838
838
  }
839
839
 
840
840
  // src/client/version-check.ts
841
- var SDK_VERSION = "5.0.0";
841
+ var SDK_VERSION = "5.0.2";
842
842
  var SDK_USER_AGENT = `FFID-SDK/${SDK_VERSION} (TypeScript)`;
843
843
  var SDK_VERSION_HEADER = "X-FFID-SDK-Version";
844
844
  function sdkHeaders() {
@@ -840,7 +840,7 @@ function createProfileMethods(deps) {
840
840
  }
841
841
 
842
842
  // src/client/version-check.ts
843
- var SDK_VERSION = "5.0.0";
843
+ var SDK_VERSION = "5.0.2";
844
844
  var SDK_USER_AGENT = `FFID-SDK/${SDK_VERSION} (TypeScript)`;
845
845
  var SDK_VERSION_HEADER = "X-FFID-SDK-Version";
846
846
  function sdkHeaders() {
@@ -82,7 +82,7 @@ var FFIDCookiePolicySchema = zod.z.object({
82
82
  summary: zod.z.string(),
83
83
  content: zod.z.string(),
84
84
  effectiveDate: zod.z.iso.date(),
85
- publishedAt: zod.z.iso.datetime()
85
+ publishedAt: zod.z.iso.datetime({ offset: true })
86
86
  });
87
87
  var PostConsentRequestSchema = zod.z.object({
88
88
  categories: zod.z.object({
@@ -108,7 +108,9 @@ var ConsentRowWireSchema = zod.z.object({
108
108
  analytics: zod.z.boolean(),
109
109
  marketing: zod.z.boolean(),
110
110
  cookie_policy_version: zod.z.string().min(1),
111
- decided_at: zod.z.iso.datetime()
111
+ // `decided_at` accepts both `Z` and offset forms — same rationale as
112
+ // `FFIDCookiePolicySchema.publishedAt` above (Issue #3245 / #3244).
113
+ decided_at: zod.z.iso.datetime({ offset: true })
112
114
  });
113
115
  var ConsentRowWithIdWireSchema = ConsentRowWireSchema.extend({
114
116
  id: UuidLikeSchema
@@ -1483,6 +1485,7 @@ function FFIDCookieBanner({
1483
1485
  }
1484
1486
  );
1485
1487
  }
1488
+ var FOCUSABLE_SELECTOR = 'a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])';
1486
1489
  var DEFAULT_BACKDROP_STYLE = {
1487
1490
  position: "fixed",
1488
1491
  inset: 0,
@@ -1518,7 +1521,7 @@ function FFIDCookieSettings({
1518
1521
  open,
1519
1522
  showWithdrawButton = true
1520
1523
  }) {
1521
- const { isPreferencesOpen, closePreferences } = useFFIDConsent();
1524
+ const { isPreferencesOpen, closePreferences, error } = useFFIDConsent();
1522
1525
  const { state, categoryMetadata, save, withdraw } = useFFIDConsentPreferences();
1523
1526
  const visible = open ?? isPreferencesOpen;
1524
1527
  const [draft, setDraft] = react.useState({
@@ -1538,17 +1541,53 @@ function FFIDCookieSettings({
1538
1541
  state.categories.marketing
1539
1542
  ]);
1540
1543
  const openerRef = react.useRef(null);
1544
+ const modalRef = react.useRef(null);
1541
1545
  react.useEffect(() => {
1542
1546
  if (!visible) return;
1543
1547
  if (typeof document === "undefined") return;
1544
1548
  openerRef.current = document.activeElement;
1549
+ const getFocusables = () => {
1550
+ const root = modalRef.current;
1551
+ if (!root) return [];
1552
+ const nodes = root.querySelectorAll(FOCUSABLE_SELECTOR);
1553
+ return Array.from(nodes).filter(
1554
+ (el) => el.offsetParent !== null || el === document.activeElement
1555
+ );
1556
+ };
1557
+ let microtaskCancelled = false;
1558
+ void Promise.resolve().then(() => {
1559
+ if (microtaskCancelled) return;
1560
+ const focusables = getFocusables();
1561
+ focusables[0]?.focus();
1562
+ });
1545
1563
  const onKey = (e) => {
1546
- if (e.key === "Escape") closePreferences();
1564
+ if (e.key === "Escape") {
1565
+ e.stopPropagation();
1566
+ closePreferences();
1567
+ return;
1568
+ }
1569
+ if (e.key !== "Tab") return;
1570
+ const focusables = getFocusables();
1571
+ if (focusables.length === 0) return;
1572
+ const first = focusables[0];
1573
+ const last = focusables[focusables.length - 1];
1574
+ const active = document.activeElement instanceof HTMLElement ? document.activeElement : null;
1575
+ if (!e.shiftKey && active === last) {
1576
+ e.preventDefault();
1577
+ first?.focus();
1578
+ } else if (e.shiftKey && active === first) {
1579
+ e.preventDefault();
1580
+ last?.focus();
1581
+ } else if (active && !modalRef.current?.contains(active)) {
1582
+ e.preventDefault();
1583
+ first?.focus();
1584
+ }
1547
1585
  };
1548
1586
  document.addEventListener("keydown", onKey);
1549
1587
  return () => {
1588
+ microtaskCancelled = true;
1550
1589
  document.removeEventListener("keydown", onKey);
1551
- openerRef.current?.focus?.();
1590
+ openerRef.current?.focus();
1552
1591
  };
1553
1592
  }, [visible, closePreferences]);
1554
1593
  if (!visible) return null;
@@ -1571,6 +1610,7 @@ function FFIDCookieSettings({
1571
1610
  className: className ?? classNames?.root,
1572
1611
  style: DEFAULT_MODAL_STYLE,
1573
1612
  "data-testid": "ffid-cookie-settings",
1613
+ ref: modalRef,
1574
1614
  children: [
1575
1615
  /* @__PURE__ */ jsxRuntime.jsx("header", { className: classNames?.header, children: /* @__PURE__ */ jsxRuntime.jsx("h2", { style: { margin: 0, fontSize: "18px" }, children: "Cookie \u8A2D\u5B9A" }) }),
1576
1616
  /* @__PURE__ */ jsxRuntime.jsx("div", { children: (categoryMetadata ?? FALLBACK_CATEGORIES).map((cat) => {
@@ -1607,6 +1647,15 @@ function FFIDCookieSettings({
1607
1647
  cat.code
1608
1648
  );
1609
1649
  }) }),
1650
+ error ? /* @__PURE__ */ jsxRuntime.jsx(
1651
+ "p",
1652
+ {
1653
+ role: "alert",
1654
+ style: { margin: 0, color: "#dc2626", fontSize: "13px" },
1655
+ "data-testid": "ffid-cookie-settings-error",
1656
+ children: error.message
1657
+ }
1658
+ ) : null,
1610
1659
  /* @__PURE__ */ jsxRuntime.jsxs(
1611
1660
  "div",
1612
1661
  {
@@ -1617,8 +1666,9 @@ function FFIDCookieSettings({
1617
1666
  {
1618
1667
  type: "button",
1619
1668
  className: classNames?.secondaryButton,
1620
- onClick: () => {
1621
- void withdraw().then(() => closePreferences());
1669
+ onClick: async () => {
1670
+ const result = await withdraw();
1671
+ if (result.ok) closePreferences();
1622
1672
  },
1623
1673
  style: {
1624
1674
  padding: "10px 16px",
@@ -1636,8 +1686,9 @@ function FFIDCookieSettings({
1636
1686
  {
1637
1687
  type: "button",
1638
1688
  className: classNames?.primaryButton,
1639
- onClick: () => {
1640
- void save(draft).then(() => closePreferences());
1689
+ onClick: async () => {
1690
+ const result = await save(draft);
1691
+ if (result.ok) closePreferences();
1641
1692
  },
1642
1693
  style: {
1643
1694
  padding: "10px 16px",
@@ -80,7 +80,7 @@ var FFIDCookiePolicySchema = z.object({
80
80
  summary: z.string(),
81
81
  content: z.string(),
82
82
  effectiveDate: z.iso.date(),
83
- publishedAt: z.iso.datetime()
83
+ publishedAt: z.iso.datetime({ offset: true })
84
84
  });
85
85
  var PostConsentRequestSchema = z.object({
86
86
  categories: z.object({
@@ -106,7 +106,9 @@ var ConsentRowWireSchema = z.object({
106
106
  analytics: z.boolean(),
107
107
  marketing: z.boolean(),
108
108
  cookie_policy_version: z.string().min(1),
109
- decided_at: z.iso.datetime()
109
+ // `decided_at` accepts both `Z` and offset forms — same rationale as
110
+ // `FFIDCookiePolicySchema.publishedAt` above (Issue #3245 / #3244).
111
+ decided_at: z.iso.datetime({ offset: true })
110
112
  });
111
113
  var ConsentRowWithIdWireSchema = ConsentRowWireSchema.extend({
112
114
  id: UuidLikeSchema
@@ -1481,6 +1483,7 @@ function FFIDCookieBanner({
1481
1483
  }
1482
1484
  );
1483
1485
  }
1486
+ var FOCUSABLE_SELECTOR = 'a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])';
1484
1487
  var DEFAULT_BACKDROP_STYLE = {
1485
1488
  position: "fixed",
1486
1489
  inset: 0,
@@ -1516,7 +1519,7 @@ function FFIDCookieSettings({
1516
1519
  open,
1517
1520
  showWithdrawButton = true
1518
1521
  }) {
1519
- const { isPreferencesOpen, closePreferences } = useFFIDConsent();
1522
+ const { isPreferencesOpen, closePreferences, error } = useFFIDConsent();
1520
1523
  const { state, categoryMetadata, save, withdraw } = useFFIDConsentPreferences();
1521
1524
  const visible = open ?? isPreferencesOpen;
1522
1525
  const [draft, setDraft] = useState({
@@ -1536,17 +1539,53 @@ function FFIDCookieSettings({
1536
1539
  state.categories.marketing
1537
1540
  ]);
1538
1541
  const openerRef = useRef(null);
1542
+ const modalRef = useRef(null);
1539
1543
  useEffect(() => {
1540
1544
  if (!visible) return;
1541
1545
  if (typeof document === "undefined") return;
1542
1546
  openerRef.current = document.activeElement;
1547
+ const getFocusables = () => {
1548
+ const root = modalRef.current;
1549
+ if (!root) return [];
1550
+ const nodes = root.querySelectorAll(FOCUSABLE_SELECTOR);
1551
+ return Array.from(nodes).filter(
1552
+ (el) => el.offsetParent !== null || el === document.activeElement
1553
+ );
1554
+ };
1555
+ let microtaskCancelled = false;
1556
+ void Promise.resolve().then(() => {
1557
+ if (microtaskCancelled) return;
1558
+ const focusables = getFocusables();
1559
+ focusables[0]?.focus();
1560
+ });
1543
1561
  const onKey = (e) => {
1544
- if (e.key === "Escape") closePreferences();
1562
+ if (e.key === "Escape") {
1563
+ e.stopPropagation();
1564
+ closePreferences();
1565
+ return;
1566
+ }
1567
+ if (e.key !== "Tab") return;
1568
+ const focusables = getFocusables();
1569
+ if (focusables.length === 0) return;
1570
+ const first = focusables[0];
1571
+ const last = focusables[focusables.length - 1];
1572
+ const active = document.activeElement instanceof HTMLElement ? document.activeElement : null;
1573
+ if (!e.shiftKey && active === last) {
1574
+ e.preventDefault();
1575
+ first?.focus();
1576
+ } else if (e.shiftKey && active === first) {
1577
+ e.preventDefault();
1578
+ last?.focus();
1579
+ } else if (active && !modalRef.current?.contains(active)) {
1580
+ e.preventDefault();
1581
+ first?.focus();
1582
+ }
1545
1583
  };
1546
1584
  document.addEventListener("keydown", onKey);
1547
1585
  return () => {
1586
+ microtaskCancelled = true;
1548
1587
  document.removeEventListener("keydown", onKey);
1549
- openerRef.current?.focus?.();
1588
+ openerRef.current?.focus();
1550
1589
  };
1551
1590
  }, [visible, closePreferences]);
1552
1591
  if (!visible) return null;
@@ -1569,6 +1608,7 @@ function FFIDCookieSettings({
1569
1608
  className: className ?? classNames?.root,
1570
1609
  style: DEFAULT_MODAL_STYLE,
1571
1610
  "data-testid": "ffid-cookie-settings",
1611
+ ref: modalRef,
1572
1612
  children: [
1573
1613
  /* @__PURE__ */ jsx("header", { className: classNames?.header, children: /* @__PURE__ */ jsx("h2", { style: { margin: 0, fontSize: "18px" }, children: "Cookie \u8A2D\u5B9A" }) }),
1574
1614
  /* @__PURE__ */ jsx("div", { children: (categoryMetadata ?? FALLBACK_CATEGORIES).map((cat) => {
@@ -1605,6 +1645,15 @@ function FFIDCookieSettings({
1605
1645
  cat.code
1606
1646
  );
1607
1647
  }) }),
1648
+ error ? /* @__PURE__ */ jsx(
1649
+ "p",
1650
+ {
1651
+ role: "alert",
1652
+ style: { margin: 0, color: "#dc2626", fontSize: "13px" },
1653
+ "data-testid": "ffid-cookie-settings-error",
1654
+ children: error.message
1655
+ }
1656
+ ) : null,
1608
1657
  /* @__PURE__ */ jsxs(
1609
1658
  "div",
1610
1659
  {
@@ -1615,8 +1664,9 @@ function FFIDCookieSettings({
1615
1664
  {
1616
1665
  type: "button",
1617
1666
  className: classNames?.secondaryButton,
1618
- onClick: () => {
1619
- void withdraw().then(() => closePreferences());
1667
+ onClick: async () => {
1668
+ const result = await withdraw();
1669
+ if (result.ok) closePreferences();
1620
1670
  },
1621
1671
  style: {
1622
1672
  padding: "10px 16px",
@@ -1634,8 +1684,9 @@ function FFIDCookieSettings({
1634
1684
  {
1635
1685
  type: "button",
1636
1686
  className: classNames?.primaryButton,
1637
- onClick: () => {
1638
- void save(draft).then(() => closePreferences());
1687
+ onClick: async () => {
1688
+ const result = await save(draft);
1689
+ if (result.ok) closePreferences();
1639
1690
  },
1640
1691
  style: {
1641
1692
  padding: "10px 16px",
@@ -1,34 +1,34 @@
1
1
  'use strict';
2
2
 
3
- var chunkCJA3XQUF_cjs = require('../chunk-CJA3XQUF.cjs');
3
+ var chunkWZ6LF34H_cjs = require('../chunk-WZ6LF34H.cjs');
4
4
 
5
5
 
6
6
 
7
7
  Object.defineProperty(exports, "FFIDAnnouncementBadge", {
8
8
  enumerable: true,
9
- get: function () { return chunkCJA3XQUF_cjs.FFIDAnnouncementBadge; }
9
+ get: function () { return chunkWZ6LF34H_cjs.FFIDAnnouncementBadge; }
10
10
  });
11
11
  Object.defineProperty(exports, "FFIDAnnouncementList", {
12
12
  enumerable: true,
13
- get: function () { return chunkCJA3XQUF_cjs.FFIDAnnouncementList; }
13
+ get: function () { return chunkWZ6LF34H_cjs.FFIDAnnouncementList; }
14
14
  });
15
15
  Object.defineProperty(exports, "FFIDInquiryForm", {
16
16
  enumerable: true,
17
- get: function () { return chunkCJA3XQUF_cjs.FFIDInquiryForm; }
17
+ get: function () { return chunkWZ6LF34H_cjs.FFIDInquiryForm; }
18
18
  });
19
19
  Object.defineProperty(exports, "FFIDLoginButton", {
20
20
  enumerable: true,
21
- get: function () { return chunkCJA3XQUF_cjs.FFIDLoginButton; }
21
+ get: function () { return chunkWZ6LF34H_cjs.FFIDLoginButton; }
22
22
  });
23
23
  Object.defineProperty(exports, "FFIDOrganizationSwitcher", {
24
24
  enumerable: true,
25
- get: function () { return chunkCJA3XQUF_cjs.FFIDOrganizationSwitcher; }
25
+ get: function () { return chunkWZ6LF34H_cjs.FFIDOrganizationSwitcher; }
26
26
  });
27
27
  Object.defineProperty(exports, "FFIDSubscriptionBadge", {
28
28
  enumerable: true,
29
- get: function () { return chunkCJA3XQUF_cjs.FFIDSubscriptionBadge; }
29
+ get: function () { return chunkWZ6LF34H_cjs.FFIDSubscriptionBadge; }
30
30
  });
31
31
  Object.defineProperty(exports, "FFIDUserMenu", {
32
32
  enumerable: true,
33
- get: function () { return chunkCJA3XQUF_cjs.FFIDUserMenu; }
33
+ get: function () { return chunkWZ6LF34H_cjs.FFIDUserMenu; }
34
34
  });
@@ -1 +1 @@
1
- export { FFIDAnnouncementBadge, FFIDAnnouncementList, FFIDInquiryForm, FFIDLoginButton, FFIDOrganizationSwitcher, FFIDSubscriptionBadge, FFIDUserMenu } from '../chunk-XAPFTOZN.js';
1
+ export { FFIDAnnouncementBadge, FFIDAnnouncementList, FFIDInquiryForm, FFIDLoginButton, FFIDOrganizationSwitcher, FFIDSubscriptionBadge, FFIDUserMenu } from '../chunk-QYKYTZA6.js';
@@ -1,242 +1,242 @@
1
1
  'use strict';
2
2
 
3
- var chunkPAQ4GZXN_cjs = require('../chunk-PAQ4GZXN.cjs');
3
+ var chunkXPSWABVY_cjs = require('../chunk-XPSWABVY.cjs');
4
4
 
5
5
 
6
6
 
7
7
  Object.defineProperty(exports, "ALL_DENIED_EXCEPT_NECESSARY", {
8
8
  enumerable: true,
9
- get: function () { return chunkPAQ4GZXN_cjs.ALL_DENIED_EXCEPT_NECESSARY; }
9
+ get: function () { return chunkXPSWABVY_cjs.ALL_DENIED_EXCEPT_NECESSARY; }
10
10
  });
11
11
  Object.defineProperty(exports, "CONSENT_COOKIE_MAX_AGE_SEC", {
12
12
  enumerable: true,
13
- get: function () { return chunkPAQ4GZXN_cjs.CONSENT_COOKIE_MAX_AGE_SEC; }
13
+ get: function () { return chunkXPSWABVY_cjs.CONSENT_COOKIE_MAX_AGE_SEC; }
14
14
  });
15
15
  Object.defineProperty(exports, "CONSENT_COOKIE_NAME", {
16
16
  enumerable: true,
17
- get: function () { return chunkPAQ4GZXN_cjs.CONSENT_COOKIE_NAME; }
17
+ get: function () { return chunkXPSWABVY_cjs.CONSENT_COOKIE_NAME; }
18
18
  });
19
19
  Object.defineProperty(exports, "CONSENT_SESSION_STORAGE_KEY", {
20
20
  enumerable: true,
21
- get: function () { return chunkPAQ4GZXN_cjs.CONSENT_SESSION_STORAGE_KEY; }
21
+ get: function () { return chunkXPSWABVY_cjs.CONSENT_SESSION_STORAGE_KEY; }
22
22
  });
23
23
  Object.defineProperty(exports, "COOKIE_VERSION", {
24
24
  enumerable: true,
25
- get: function () { return chunkPAQ4GZXN_cjs.COOKIE_VERSION; }
25
+ get: function () { return chunkXPSWABVY_cjs.COOKIE_VERSION; }
26
26
  });
27
27
  Object.defineProperty(exports, "DEFAULT_CONSENT_ERROR_MESSAGES", {
28
28
  enumerable: true,
29
- get: function () { return chunkPAQ4GZXN_cjs.DEFAULT_CONSENT_ERROR_MESSAGES; }
29
+ get: function () { return chunkXPSWABVY_cjs.DEFAULT_CONSENT_ERROR_MESSAGES; }
30
30
  });
31
31
  Object.defineProperty(exports, "DEFAULT_MERGE_WARNING_MESSAGES", {
32
32
  enumerable: true,
33
- get: function () { return chunkPAQ4GZXN_cjs.DEFAULT_MERGE_WARNING_MESSAGES; }
33
+ get: function () { return chunkXPSWABVY_cjs.DEFAULT_MERGE_WARNING_MESSAGES; }
34
34
  });
35
35
  Object.defineProperty(exports, "DEVICE_ID_LOCAL_STORAGE_KEY", {
36
36
  enumerable: true,
37
- get: function () { return chunkPAQ4GZXN_cjs.DEVICE_ID_LOCAL_STORAGE_KEY; }
37
+ get: function () { return chunkXPSWABVY_cjs.DEVICE_ID_LOCAL_STORAGE_KEY; }
38
38
  });
39
39
  Object.defineProperty(exports, "DEVICE_ID_SESSION_STORAGE_KEY", {
40
40
  enumerable: true,
41
- get: function () { return chunkPAQ4GZXN_cjs.DEVICE_ID_SESSION_STORAGE_KEY; }
41
+ get: function () { return chunkXPSWABVY_cjs.DEVICE_ID_SESSION_STORAGE_KEY; }
42
42
  });
43
43
  Object.defineProperty(exports, "DeviceIdSchema", {
44
44
  enumerable: true,
45
- get: function () { return chunkPAQ4GZXN_cjs.DeviceIdSchema; }
45
+ get: function () { return chunkXPSWABVY_cjs.DeviceIdSchema; }
46
46
  });
47
47
  Object.defineProperty(exports, "FFIDAnalyticsProvider", {
48
48
  enumerable: true,
49
- get: function () { return chunkPAQ4GZXN_cjs.FFIDAnalyticsProvider; }
49
+ get: function () { return chunkXPSWABVY_cjs.FFIDAnalyticsProvider; }
50
50
  });
51
51
  Object.defineProperty(exports, "FFIDConsentCategoriesSchema", {
52
52
  enumerable: true,
53
- get: function () { return chunkPAQ4GZXN_cjs.FFIDConsentCategoriesSchema; }
53
+ get: function () { return chunkXPSWABVY_cjs.FFIDConsentCategoriesSchema; }
54
54
  });
55
55
  Object.defineProperty(exports, "FFIDConsentCategoryCodeSchema", {
56
56
  enumerable: true,
57
- get: function () { return chunkPAQ4GZXN_cjs.FFIDConsentCategoryCodeSchema; }
57
+ get: function () { return chunkXPSWABVY_cjs.FFIDConsentCategoryCodeSchema; }
58
58
  });
59
59
  Object.defineProperty(exports, "FFIDConsentCategoryMetadataSchema", {
60
60
  enumerable: true,
61
- get: function () { return chunkPAQ4GZXN_cjs.FFIDConsentCategoryMetadataSchema; }
61
+ get: function () { return chunkXPSWABVY_cjs.FFIDConsentCategoryMetadataSchema; }
62
62
  });
63
63
  Object.defineProperty(exports, "FFIDConsentContext", {
64
64
  enumerable: true,
65
- get: function () { return chunkPAQ4GZXN_cjs.FFIDConsentContext; }
65
+ get: function () { return chunkXPSWABVY_cjs.FFIDConsentContext; }
66
66
  });
67
67
  Object.defineProperty(exports, "FFIDConsentError", {
68
68
  enumerable: true,
69
- get: function () { return chunkPAQ4GZXN_cjs.FFIDConsentError; }
69
+ get: function () { return chunkXPSWABVY_cjs.FFIDConsentError; }
70
70
  });
71
71
  Object.defineProperty(exports, "FFIDConsentMergeStrategySchema", {
72
72
  enumerable: true,
73
- get: function () { return chunkPAQ4GZXN_cjs.FFIDConsentMergeStrategySchema; }
73
+ get: function () { return chunkXPSWABVY_cjs.FFIDConsentMergeStrategySchema; }
74
74
  });
75
75
  Object.defineProperty(exports, "FFIDConsentMergeWarningSchema", {
76
76
  enumerable: true,
77
- get: function () { return chunkPAQ4GZXN_cjs.FFIDConsentMergeWarningSchema; }
77
+ get: function () { return chunkXPSWABVY_cjs.FFIDConsentMergeWarningSchema; }
78
78
  });
79
79
  Object.defineProperty(exports, "FFIDConsentSourceSchema", {
80
80
  enumerable: true,
81
- get: function () { return chunkPAQ4GZXN_cjs.FFIDConsentSourceSchema; }
81
+ get: function () { return chunkXPSWABVY_cjs.FFIDConsentSourceSchema; }
82
82
  });
83
83
  Object.defineProperty(exports, "FFIDConsentStateSchema", {
84
84
  enumerable: true,
85
- get: function () { return chunkPAQ4GZXN_cjs.FFIDConsentStateSchema; }
85
+ get: function () { return chunkXPSWABVY_cjs.FFIDConsentStateSchema; }
86
86
  });
87
87
  Object.defineProperty(exports, "FFIDConsentUpdateSchema", {
88
88
  enumerable: true,
89
- get: function () { return chunkPAQ4GZXN_cjs.FFIDConsentUpdateSchema; }
89
+ get: function () { return chunkXPSWABVY_cjs.FFIDConsentUpdateSchema; }
90
90
  });
91
91
  Object.defineProperty(exports, "FFIDCookieBanner", {
92
92
  enumerable: true,
93
- get: function () { return chunkPAQ4GZXN_cjs.FFIDCookieBanner; }
93
+ get: function () { return chunkXPSWABVY_cjs.FFIDCookieBanner; }
94
94
  });
95
95
  Object.defineProperty(exports, "FFIDCookieLink", {
96
96
  enumerable: true,
97
- get: function () { return chunkPAQ4GZXN_cjs.FFIDCookieLink; }
97
+ get: function () { return chunkXPSWABVY_cjs.FFIDCookieLink; }
98
98
  });
99
99
  Object.defineProperty(exports, "FFIDCookiePolicySchema", {
100
100
  enumerable: true,
101
- get: function () { return chunkPAQ4GZXN_cjs.FFIDCookiePolicySchema; }
101
+ get: function () { return chunkXPSWABVY_cjs.FFIDCookiePolicySchema; }
102
102
  });
103
103
  Object.defineProperty(exports, "FFIDCookieSettings", {
104
104
  enumerable: true,
105
- get: function () { return chunkPAQ4GZXN_cjs.FFIDCookieSettings; }
105
+ get: function () { return chunkXPSWABVY_cjs.FFIDCookieSettings; }
106
106
  });
107
107
  Object.defineProperty(exports, "FFIDInternalConsentSourceSchema", {
108
108
  enumerable: true,
109
- get: function () { return chunkPAQ4GZXN_cjs.FFIDInternalConsentSourceSchema; }
109
+ get: function () { return chunkXPSWABVY_cjs.FFIDInternalConsentSourceSchema; }
110
110
  });
111
111
  Object.defineProperty(exports, "FFIDPublicConsentSourceSchema", {
112
112
  enumerable: true,
113
- get: function () { return chunkPAQ4GZXN_cjs.FFIDPublicConsentSourceSchema; }
113
+ get: function () { return chunkXPSWABVY_cjs.FFIDPublicConsentSourceSchema; }
114
114
  });
115
115
  Object.defineProperty(exports, "FFID_CONSENT_ERROR_CODES", {
116
116
  enumerable: true,
117
- get: function () { return chunkPAQ4GZXN_cjs.FFID_CONSENT_ERROR_CODES; }
117
+ get: function () { return chunkXPSWABVY_cjs.FFID_CONSENT_ERROR_CODES; }
118
118
  });
119
119
  Object.defineProperty(exports, "FFID_CONSENT_NOT_DECIDED_STATE", {
120
120
  enumerable: true,
121
- get: function () { return chunkPAQ4GZXN_cjs.FFID_CONSENT_NOT_DECIDED_STATE; }
121
+ get: function () { return chunkXPSWABVY_cjs.FFID_CONSENT_NOT_DECIDED_STATE; }
122
122
  });
123
123
  Object.defineProperty(exports, "GetCategoriesWireSchema", {
124
124
  enumerable: true,
125
- get: function () { return chunkPAQ4GZXN_cjs.GetCategoriesWireSchema; }
125
+ get: function () { return chunkXPSWABVY_cjs.GetCategoriesWireSchema; }
126
126
  });
127
127
  Object.defineProperty(exports, "GetConsentMeWireSchema", {
128
128
  enumerable: true,
129
- get: function () { return chunkPAQ4GZXN_cjs.GetConsentMeWireSchema; }
129
+ get: function () { return chunkXPSWABVY_cjs.GetConsentMeWireSchema; }
130
130
  });
131
131
  Object.defineProperty(exports, "GetDocumentWireSchema", {
132
132
  enumerable: true,
133
- get: function () { return chunkPAQ4GZXN_cjs.GetDocumentWireSchema; }
133
+ get: function () { return chunkXPSWABVY_cjs.GetDocumentWireSchema; }
134
134
  });
135
135
  Object.defineProperty(exports, "PostConsentRequestSchema", {
136
136
  enumerable: true,
137
- get: function () { return chunkPAQ4GZXN_cjs.PostConsentRequestSchema; }
137
+ get: function () { return chunkXPSWABVY_cjs.PostConsentRequestSchema; }
138
138
  });
139
139
  Object.defineProperty(exports, "PostConsentWireSchema", {
140
140
  enumerable: true,
141
- get: function () { return chunkPAQ4GZXN_cjs.PostConsentWireSchema; }
141
+ get: function () { return chunkXPSWABVY_cjs.PostConsentWireSchema; }
142
142
  });
143
143
  Object.defineProperty(exports, "PostSyncRequestSchema", {
144
144
  enumerable: true,
145
- get: function () { return chunkPAQ4GZXN_cjs.PostSyncRequestSchema; }
145
+ get: function () { return chunkXPSWABVY_cjs.PostSyncRequestSchema; }
146
146
  });
147
147
  Object.defineProperty(exports, "PostSyncWireSchema", {
148
148
  enumerable: true,
149
- get: function () { return chunkPAQ4GZXN_cjs.PostSyncWireSchema; }
149
+ get: function () { return chunkXPSWABVY_cjs.PostSyncWireSchema; }
150
150
  });
151
151
  Object.defineProperty(exports, "PostWithdrawWireSchema", {
152
152
  enumerable: true,
153
- get: function () { return chunkPAQ4GZXN_cjs.PostWithdrawWireSchema; }
153
+ get: function () { return chunkXPSWABVY_cjs.PostWithdrawWireSchema; }
154
154
  });
155
155
  Object.defineProperty(exports, "clearConsentSessionMirror", {
156
156
  enumerable: true,
157
- get: function () { return chunkPAQ4GZXN_cjs.clearConsentSessionMirror; }
157
+ get: function () { return chunkXPSWABVY_cjs.clearConsentSessionMirror; }
158
158
  });
159
159
  Object.defineProperty(exports, "clearDeviceId", {
160
160
  enumerable: true,
161
- get: function () { return chunkPAQ4GZXN_cjs.clearDeviceId; }
161
+ get: function () { return chunkXPSWABVY_cjs.clearDeviceId; }
162
162
  });
163
163
  Object.defineProperty(exports, "createConsentClient", {
164
164
  enumerable: true,
165
- get: function () { return chunkPAQ4GZXN_cjs.createConsentClient; }
165
+ get: function () { return chunkXPSWABVY_cjs.createConsentClient; }
166
166
  });
167
167
  Object.defineProperty(exports, "createGtagBridge", {
168
168
  enumerable: true,
169
- get: function () { return chunkPAQ4GZXN_cjs.createGtagBridge; }
169
+ get: function () { return chunkXPSWABVY_cjs.createGtagBridge; }
170
170
  });
171
171
  Object.defineProperty(exports, "decodeConsentCookie", {
172
172
  enumerable: true,
173
- get: function () { return chunkPAQ4GZXN_cjs.decodeConsentCookie; }
173
+ get: function () { return chunkXPSWABVY_cjs.decodeConsentCookie; }
174
174
  });
175
175
  Object.defineProperty(exports, "deleteConsentCookie", {
176
176
  enumerable: true,
177
- get: function () { return chunkPAQ4GZXN_cjs.deleteConsentCookie; }
177
+ get: function () { return chunkXPSWABVY_cjs.deleteConsentCookie; }
178
178
  });
179
179
  Object.defineProperty(exports, "encodeConsentCookie", {
180
180
  enumerable: true,
181
- get: function () { return chunkPAQ4GZXN_cjs.encodeConsentCookie; }
181
+ get: function () { return chunkXPSWABVY_cjs.encodeConsentCookie; }
182
182
  });
183
183
  Object.defineProperty(exports, "generateDeviceId", {
184
184
  enumerable: true,
185
- get: function () { return chunkPAQ4GZXN_cjs.generateDeviceId; }
185
+ get: function () { return chunkXPSWABVY_cjs.generateDeviceId; }
186
186
  });
187
187
  Object.defineProperty(exports, "getOrCreateDeviceId", {
188
188
  enumerable: true,
189
- get: function () { return chunkPAQ4GZXN_cjs.getOrCreateDeviceId; }
189
+ get: function () { return chunkXPSWABVY_cjs.getOrCreateDeviceId; }
190
190
  });
191
191
  Object.defineProperty(exports, "isUuidV7", {
192
192
  enumerable: true,
193
- get: function () { return chunkPAQ4GZXN_cjs.isUuidV7; }
193
+ get: function () { return chunkXPSWABVY_cjs.isUuidV7; }
194
194
  });
195
195
  Object.defineProperty(exports, "isValidDeviceId", {
196
196
  enumerable: true,
197
- get: function () { return chunkPAQ4GZXN_cjs.isValidDeviceId; }
197
+ get: function () { return chunkXPSWABVY_cjs.isValidDeviceId; }
198
198
  });
199
199
  Object.defineProperty(exports, "mapCategoriesToGtagParams", {
200
200
  enumerable: true,
201
- get: function () { return chunkPAQ4GZXN_cjs.mapCategoriesToGtagParams; }
201
+ get: function () { return chunkXPSWABVY_cjs.mapCategoriesToGtagParams; }
202
202
  });
203
203
  Object.defineProperty(exports, "mapConsentWireToState", {
204
204
  enumerable: true,
205
- get: function () { return chunkPAQ4GZXN_cjs.mapConsentWireToState; }
205
+ get: function () { return chunkXPSWABVY_cjs.mapConsentWireToState; }
206
206
  });
207
207
  Object.defineProperty(exports, "mapMeWireToState", {
208
208
  enumerable: true,
209
- get: function () { return chunkPAQ4GZXN_cjs.mapMeWireToState; }
209
+ get: function () { return chunkXPSWABVY_cjs.mapMeWireToState; }
210
210
  });
211
211
  Object.defineProperty(exports, "mapSyncWireToResult", {
212
212
  enumerable: true,
213
- get: function () { return chunkPAQ4GZXN_cjs.mapSyncWireToResult; }
213
+ get: function () { return chunkXPSWABVY_cjs.mapSyncWireToResult; }
214
214
  });
215
215
  Object.defineProperty(exports, "mapWithdrawWireToState", {
216
216
  enumerable: true,
217
- get: function () { return chunkPAQ4GZXN_cjs.mapWithdrawWireToState; }
217
+ get: function () { return chunkXPSWABVY_cjs.mapWithdrawWireToState; }
218
218
  });
219
219
  Object.defineProperty(exports, "readConsentCookie", {
220
220
  enumerable: true,
221
- get: function () { return chunkPAQ4GZXN_cjs.readConsentCookie; }
221
+ get: function () { return chunkXPSWABVY_cjs.readConsentCookie; }
222
222
  });
223
223
  Object.defineProperty(exports, "readConsentSessionMirror", {
224
224
  enumerable: true,
225
- get: function () { return chunkPAQ4GZXN_cjs.readConsentSessionMirror; }
225
+ get: function () { return chunkXPSWABVY_cjs.readConsentSessionMirror; }
226
226
  });
227
227
  Object.defineProperty(exports, "useFFIDConsent", {
228
228
  enumerable: true,
229
- get: function () { return chunkPAQ4GZXN_cjs.useFFIDConsent; }
229
+ get: function () { return chunkXPSWABVY_cjs.useFFIDConsent; }
230
230
  });
231
231
  Object.defineProperty(exports, "useFFIDConsentPreferences", {
232
232
  enumerable: true,
233
- get: function () { return chunkPAQ4GZXN_cjs.useFFIDConsentPreferences; }
233
+ get: function () { return chunkXPSWABVY_cjs.useFFIDConsentPreferences; }
234
234
  });
235
235
  Object.defineProperty(exports, "writeConsentCookie", {
236
236
  enumerable: true,
237
- get: function () { return chunkPAQ4GZXN_cjs.writeConsentCookie; }
237
+ get: function () { return chunkXPSWABVY_cjs.writeConsentCookie; }
238
238
  });
239
239
  Object.defineProperty(exports, "writeConsentSessionMirror", {
240
240
  enumerable: true,
241
- get: function () { return chunkPAQ4GZXN_cjs.writeConsentSessionMirror; }
241
+ get: function () { return chunkXPSWABVY_cjs.writeConsentSessionMirror; }
242
242
  });
@@ -1,5 +1,5 @@
1
- import { F as FFIDConsentResult, a as FFIDConsentState, b as FFIDConsentUpdate, c as FFIDConsentCategories, d as FFIDConsentSyncResult, e as FFIDConsentCategoryMetadata, f as FFIDCookiePolicy, P as PostConsentWire, G as GetConsentMeWire, g as PostSyncWire, h as PostWithdrawWire } from '../FFIDCookieLink-B-9ggxsL.cjs';
2
- export { A as ALL_DENIED_EXCEPT_NECESSARY, C as CONSENT_COOKIE_MAX_AGE_SEC, i as CONSENT_COOKIE_NAME, j as CONSENT_SESSION_STORAGE_KEY, k as COOKIE_VERSION, D as DEFAULT_CONSENT_ERROR_MESSAGES, l as DEFAULT_MERGE_WARNING_MESSAGES, m as DeviceIdSchema, n as FFIDAnalyticsProvider, o as FFIDAnalyticsProviderProps, p as FFIDConsentCategoriesSchema, q as FFIDConsentCategoryCode, r as FFIDConsentCategoryCodeSchema, s as FFIDConsentCategoryMetadataSchema, t as FFIDConsentContext, u as FFIDConsentContextValue, v as FFIDConsentError, w as FFIDConsentErrorCode, x as FFIDConsentMergeStrategy, y as FFIDConsentMergeStrategySchema, z as FFIDConsentMergeWarning, B as FFIDConsentMergeWarningSchema, E as FFIDConsentSource, H as FFIDConsentSourceSchema, I as FFIDConsentStateSchema, J as FFIDConsentUpdateSchema, K as FFIDCookieBanner, L as FFIDCookieBannerClassNames, M as FFIDCookieBannerProps, N as FFIDCookieLink, O as FFIDCookieLinkProps, Q as FFIDCookiePolicySchema, R as FFIDCookieSettings, S as FFIDCookieSettingsClassNames, T as FFIDCookieSettingsProps, U as FFIDInternalConsentSource, V as FFIDInternalConsentSourceSchema, W as FFIDPublicConsentSource, X as FFIDPublicConsentSourceSchema, Y as FFID_CONSENT_ERROR_CODES, Z as FFID_CONSENT_NOT_DECIDED_STATE, _ as GetCategoriesWire, $ as GetCategoriesWireSchema, a0 as GetConsentMeWireSchema, a1 as GetDocumentWire, a2 as GetDocumentWireSchema, a3 as GtagBridge, a4 as GtagBridgeOptions, a5 as PostConsentRequest, a6 as PostConsentRequestSchema, a7 as PostConsentWireSchema, a8 as PostSyncRequest, a9 as PostSyncRequestSchema, aa as PostSyncWireSchema, ab as PostWithdrawWireSchema, ac as UseFFIDConsentPreferencesReturn, ad as UseFFIDConsentReturn, ae as clearConsentSessionMirror, af as createGtagBridge, ag as decodeConsentCookie, ah as deleteConsentCookie, ai as encodeConsentCookie, aj as mapCategoriesToGtagParams, ak as readConsentCookie, al as readConsentSessionMirror, am as useFFIDConsent, an as useFFIDConsentPreferences, ao as writeConsentCookie, ap as writeConsentSessionMirror } from '../FFIDCookieLink-B-9ggxsL.cjs';
1
+ import { F as FFIDConsentResult, a as FFIDConsentState, b as FFIDConsentUpdate, c as FFIDConsentCategories, d as FFIDConsentSyncResult, e as FFIDConsentCategoryMetadata, f as FFIDCookiePolicy, P as PostConsentWire, G as GetConsentMeWire, g as PostSyncWire, h as PostWithdrawWire } from '../FFIDCookieLink-Buh84sTc.cjs';
2
+ export { A as ALL_DENIED_EXCEPT_NECESSARY, C as CONSENT_COOKIE_MAX_AGE_SEC, i as CONSENT_COOKIE_NAME, j as CONSENT_SESSION_STORAGE_KEY, k as COOKIE_VERSION, D as DEFAULT_CONSENT_ERROR_MESSAGES, l as DEFAULT_MERGE_WARNING_MESSAGES, m as DeviceIdSchema, n as FFIDAnalyticsProvider, o as FFIDAnalyticsProviderProps, p as FFIDConsentCategoriesSchema, q as FFIDConsentCategoryCode, r as FFIDConsentCategoryCodeSchema, s as FFIDConsentCategoryMetadataSchema, t as FFIDConsentContext, u as FFIDConsentContextValue, v as FFIDConsentError, w as FFIDConsentErrorCode, x as FFIDConsentMergeStrategy, y as FFIDConsentMergeStrategySchema, z as FFIDConsentMergeWarning, B as FFIDConsentMergeWarningSchema, E as FFIDConsentSource, H as FFIDConsentSourceSchema, I as FFIDConsentStateSchema, J as FFIDConsentUpdateSchema, K as FFIDCookieBanner, L as FFIDCookieBannerClassNames, M as FFIDCookieBannerProps, N as FFIDCookieLink, O as FFIDCookieLinkProps, Q as FFIDCookiePolicySchema, R as FFIDCookieSettings, S as FFIDCookieSettingsClassNames, T as FFIDCookieSettingsProps, U as FFIDInternalConsentSource, V as FFIDInternalConsentSourceSchema, W as FFIDPublicConsentSource, X as FFIDPublicConsentSourceSchema, Y as FFID_CONSENT_ERROR_CODES, Z as FFID_CONSENT_NOT_DECIDED_STATE, _ as GetCategoriesWire, $ as GetCategoriesWireSchema, a0 as GetConsentMeWireSchema, a1 as GetDocumentWire, a2 as GetDocumentWireSchema, a3 as GtagBridge, a4 as GtagBridgeOptions, a5 as PostConsentRequest, a6 as PostConsentRequestSchema, a7 as PostConsentWireSchema, a8 as PostSyncRequest, a9 as PostSyncRequestSchema, aa as PostSyncWireSchema, ab as PostWithdrawWireSchema, ac as UseFFIDConsentPreferencesReturn, ad as UseFFIDConsentReturn, ae as clearConsentSessionMirror, af as createGtagBridge, ag as decodeConsentCookie, ah as deleteConsentCookie, ai as encodeConsentCookie, aj as mapCategoriesToGtagParams, ak as readConsentCookie, al as readConsentSessionMirror, am as useFFIDConsent, an as useFFIDConsentPreferences, ao as writeConsentCookie, ap as writeConsentSessionMirror } from '../FFIDCookieLink-Buh84sTc.cjs';
3
3
  import 'react';
4
4
  import 'zod';
5
5
 
@@ -1,5 +1,5 @@
1
- import { F as FFIDConsentResult, a as FFIDConsentState, b as FFIDConsentUpdate, c as FFIDConsentCategories, d as FFIDConsentSyncResult, e as FFIDConsentCategoryMetadata, f as FFIDCookiePolicy, P as PostConsentWire, G as GetConsentMeWire, g as PostSyncWire, h as PostWithdrawWire } from '../FFIDCookieLink-B-9ggxsL.js';
2
- export { A as ALL_DENIED_EXCEPT_NECESSARY, C as CONSENT_COOKIE_MAX_AGE_SEC, i as CONSENT_COOKIE_NAME, j as CONSENT_SESSION_STORAGE_KEY, k as COOKIE_VERSION, D as DEFAULT_CONSENT_ERROR_MESSAGES, l as DEFAULT_MERGE_WARNING_MESSAGES, m as DeviceIdSchema, n as FFIDAnalyticsProvider, o as FFIDAnalyticsProviderProps, p as FFIDConsentCategoriesSchema, q as FFIDConsentCategoryCode, r as FFIDConsentCategoryCodeSchema, s as FFIDConsentCategoryMetadataSchema, t as FFIDConsentContext, u as FFIDConsentContextValue, v as FFIDConsentError, w as FFIDConsentErrorCode, x as FFIDConsentMergeStrategy, y as FFIDConsentMergeStrategySchema, z as FFIDConsentMergeWarning, B as FFIDConsentMergeWarningSchema, E as FFIDConsentSource, H as FFIDConsentSourceSchema, I as FFIDConsentStateSchema, J as FFIDConsentUpdateSchema, K as FFIDCookieBanner, L as FFIDCookieBannerClassNames, M as FFIDCookieBannerProps, N as FFIDCookieLink, O as FFIDCookieLinkProps, Q as FFIDCookiePolicySchema, R as FFIDCookieSettings, S as FFIDCookieSettingsClassNames, T as FFIDCookieSettingsProps, U as FFIDInternalConsentSource, V as FFIDInternalConsentSourceSchema, W as FFIDPublicConsentSource, X as FFIDPublicConsentSourceSchema, Y as FFID_CONSENT_ERROR_CODES, Z as FFID_CONSENT_NOT_DECIDED_STATE, _ as GetCategoriesWire, $ as GetCategoriesWireSchema, a0 as GetConsentMeWireSchema, a1 as GetDocumentWire, a2 as GetDocumentWireSchema, a3 as GtagBridge, a4 as GtagBridgeOptions, a5 as PostConsentRequest, a6 as PostConsentRequestSchema, a7 as PostConsentWireSchema, a8 as PostSyncRequest, a9 as PostSyncRequestSchema, aa as PostSyncWireSchema, ab as PostWithdrawWireSchema, ac as UseFFIDConsentPreferencesReturn, ad as UseFFIDConsentReturn, ae as clearConsentSessionMirror, af as createGtagBridge, ag as decodeConsentCookie, ah as deleteConsentCookie, ai as encodeConsentCookie, aj as mapCategoriesToGtagParams, ak as readConsentCookie, al as readConsentSessionMirror, am as useFFIDConsent, an as useFFIDConsentPreferences, ao as writeConsentCookie, ap as writeConsentSessionMirror } from '../FFIDCookieLink-B-9ggxsL.js';
1
+ import { F as FFIDConsentResult, a as FFIDConsentState, b as FFIDConsentUpdate, c as FFIDConsentCategories, d as FFIDConsentSyncResult, e as FFIDConsentCategoryMetadata, f as FFIDCookiePolicy, P as PostConsentWire, G as GetConsentMeWire, g as PostSyncWire, h as PostWithdrawWire } from '../FFIDCookieLink-Buh84sTc.js';
2
+ export { A as ALL_DENIED_EXCEPT_NECESSARY, C as CONSENT_COOKIE_MAX_AGE_SEC, i as CONSENT_COOKIE_NAME, j as CONSENT_SESSION_STORAGE_KEY, k as COOKIE_VERSION, D as DEFAULT_CONSENT_ERROR_MESSAGES, l as DEFAULT_MERGE_WARNING_MESSAGES, m as DeviceIdSchema, n as FFIDAnalyticsProvider, o as FFIDAnalyticsProviderProps, p as FFIDConsentCategoriesSchema, q as FFIDConsentCategoryCode, r as FFIDConsentCategoryCodeSchema, s as FFIDConsentCategoryMetadataSchema, t as FFIDConsentContext, u as FFIDConsentContextValue, v as FFIDConsentError, w as FFIDConsentErrorCode, x as FFIDConsentMergeStrategy, y as FFIDConsentMergeStrategySchema, z as FFIDConsentMergeWarning, B as FFIDConsentMergeWarningSchema, E as FFIDConsentSource, H as FFIDConsentSourceSchema, I as FFIDConsentStateSchema, J as FFIDConsentUpdateSchema, K as FFIDCookieBanner, L as FFIDCookieBannerClassNames, M as FFIDCookieBannerProps, N as FFIDCookieLink, O as FFIDCookieLinkProps, Q as FFIDCookiePolicySchema, R as FFIDCookieSettings, S as FFIDCookieSettingsClassNames, T as FFIDCookieSettingsProps, U as FFIDInternalConsentSource, V as FFIDInternalConsentSourceSchema, W as FFIDPublicConsentSource, X as FFIDPublicConsentSourceSchema, Y as FFID_CONSENT_ERROR_CODES, Z as FFID_CONSENT_NOT_DECIDED_STATE, _ as GetCategoriesWire, $ as GetCategoriesWireSchema, a0 as GetConsentMeWireSchema, a1 as GetDocumentWire, a2 as GetDocumentWireSchema, a3 as GtagBridge, a4 as GtagBridgeOptions, a5 as PostConsentRequest, a6 as PostConsentRequestSchema, a7 as PostConsentWireSchema, a8 as PostSyncRequest, a9 as PostSyncRequestSchema, aa as PostSyncWireSchema, ab as PostWithdrawWireSchema, ac as UseFFIDConsentPreferencesReturn, ad as UseFFIDConsentReturn, ae as clearConsentSessionMirror, af as createGtagBridge, ag as decodeConsentCookie, ah as deleteConsentCookie, ai as encodeConsentCookie, aj as mapCategoriesToGtagParams, ak as readConsentCookie, al as readConsentSessionMirror, am as useFFIDConsent, an as useFFIDConsentPreferences, ao as writeConsentCookie, ap as writeConsentSessionMirror } from '../FFIDCookieLink-Buh84sTc.js';
3
3
  import 'react';
4
4
  import 'zod';
5
5
 
@@ -1 +1 @@
1
- export { ALL_DENIED_EXCEPT_NECESSARY, CONSENT_COOKIE_MAX_AGE_SEC, CONSENT_COOKIE_NAME, CONSENT_SESSION_STORAGE_KEY, COOKIE_VERSION, DEFAULT_CONSENT_ERROR_MESSAGES, DEFAULT_MERGE_WARNING_MESSAGES, DEVICE_ID_LOCAL_STORAGE_KEY, DEVICE_ID_SESSION_STORAGE_KEY, DeviceIdSchema, FFIDAnalyticsProvider, FFIDConsentCategoriesSchema, FFIDConsentCategoryCodeSchema, FFIDConsentCategoryMetadataSchema, FFIDConsentContext, FFIDConsentError, FFIDConsentMergeStrategySchema, FFIDConsentMergeWarningSchema, FFIDConsentSourceSchema, FFIDConsentStateSchema, FFIDConsentUpdateSchema, FFIDCookieBanner, FFIDCookieLink, FFIDCookiePolicySchema, FFIDCookieSettings, FFIDInternalConsentSourceSchema, FFIDPublicConsentSourceSchema, FFID_CONSENT_ERROR_CODES, FFID_CONSENT_NOT_DECIDED_STATE, GetCategoriesWireSchema, GetConsentMeWireSchema, GetDocumentWireSchema, PostConsentRequestSchema, PostConsentWireSchema, PostSyncRequestSchema, PostSyncWireSchema, PostWithdrawWireSchema, clearConsentSessionMirror, clearDeviceId, createConsentClient, createGtagBridge, decodeConsentCookie, deleteConsentCookie, encodeConsentCookie, generateDeviceId, getOrCreateDeviceId, isUuidV7, isValidDeviceId, mapCategoriesToGtagParams, mapConsentWireToState, mapMeWireToState, mapSyncWireToResult, mapWithdrawWireToState, readConsentCookie, readConsentSessionMirror, useFFIDConsent, useFFIDConsentPreferences, writeConsentCookie, writeConsentSessionMirror } from '../chunk-CISVLEY5.js';
1
+ export { ALL_DENIED_EXCEPT_NECESSARY, CONSENT_COOKIE_MAX_AGE_SEC, CONSENT_COOKIE_NAME, CONSENT_SESSION_STORAGE_KEY, COOKIE_VERSION, DEFAULT_CONSENT_ERROR_MESSAGES, DEFAULT_MERGE_WARNING_MESSAGES, DEVICE_ID_LOCAL_STORAGE_KEY, DEVICE_ID_SESSION_STORAGE_KEY, DeviceIdSchema, FFIDAnalyticsProvider, FFIDConsentCategoriesSchema, FFIDConsentCategoryCodeSchema, FFIDConsentCategoryMetadataSchema, FFIDConsentContext, FFIDConsentError, FFIDConsentMergeStrategySchema, FFIDConsentMergeWarningSchema, FFIDConsentSourceSchema, FFIDConsentStateSchema, FFIDConsentUpdateSchema, FFIDCookieBanner, FFIDCookieLink, FFIDCookiePolicySchema, FFIDCookieSettings, FFIDInternalConsentSourceSchema, FFIDPublicConsentSourceSchema, FFID_CONSENT_ERROR_CODES, FFID_CONSENT_NOT_DECIDED_STATE, GetCategoriesWireSchema, GetConsentMeWireSchema, GetDocumentWireSchema, PostConsentRequestSchema, PostConsentWireSchema, PostSyncRequestSchema, PostSyncWireSchema, PostWithdrawWireSchema, clearConsentSessionMirror, clearDeviceId, createConsentClient, createGtagBridge, decodeConsentCookie, deleteConsentCookie, encodeConsentCookie, generateDeviceId, getOrCreateDeviceId, isUuidV7, isValidDeviceId, mapCategoriesToGtagParams, mapConsentWireToState, mapMeWireToState, mapSyncWireToResult, mapWithdrawWireToState, readConsentCookie, readConsentSessionMirror, useFFIDConsent, useFFIDConsentPreferences, writeConsentCookie, writeConsentSessionMirror } from '../chunk-ZM53LRXW.js';
package/dist/index.cjs CHANGED
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var chunkCJA3XQUF_cjs = require('./chunk-CJA3XQUF.cjs');
4
- var chunkPAQ4GZXN_cjs = require('./chunk-PAQ4GZXN.cjs');
3
+ var chunkWZ6LF34H_cjs = require('./chunk-WZ6LF34H.cjs');
4
+ var chunkXPSWABVY_cjs = require('./chunk-XPSWABVY.cjs');
5
5
  var react = require('react');
6
6
  var jsxRuntime = require('react/jsx-runtime');
7
7
 
@@ -54,8 +54,8 @@ function defaultRedirect(url) {
54
54
  }
55
55
  function useRequireActiveSubscription(options) {
56
56
  const { redirectTo, allowGrace = true, onRedirect } = options;
57
- const { isLoading, error } = chunkCJA3XQUF_cjs.useFFIDContext();
58
- const { effectiveStatus, isBlocked, isGrace } = chunkCJA3XQUF_cjs.useSubscription();
57
+ const { isLoading, error } = chunkWZ6LF34H_cjs.useFFIDContext();
58
+ const { effectiveStatus, isBlocked, isGrace } = chunkWZ6LF34H_cjs.useSubscription();
59
59
  const hasFetchError = error !== null && effectiveStatus === null;
60
60
  const shouldRedirect = !isLoading && !hasFetchError && (isBlocked || !allowGrace && isGrace || effectiveStatus === null);
61
61
  react.useEffect(() => {
@@ -76,7 +76,7 @@ function useRequireActiveSubscription(options) {
76
76
  }
77
77
  function withFFIDAuth(Component, options = {}) {
78
78
  const WrappedComponent = (props) => {
79
- const { isLoading, isAuthenticated, login } = chunkCJA3XQUF_cjs.useFFIDContext();
79
+ const { isLoading, isAuthenticated, login } = chunkWZ6LF34H_cjs.useFFIDContext();
80
80
  const hasRedirected = react.useRef(false);
81
81
  react.useEffect(() => {
82
82
  if (!isLoading && !isAuthenticated && options.redirectToLogin && !hasRedirected.current) {
@@ -105,179 +105,179 @@ var FFID_NEWSLETTER_DISPATCH_MAX_RECIPIENTS = 1e3;
105
105
 
106
106
  Object.defineProperty(exports, "DEFAULT_API_BASE_URL", {
107
107
  enumerable: true,
108
- get: function () { return chunkCJA3XQUF_cjs.DEFAULT_API_BASE_URL; }
108
+ get: function () { return chunkWZ6LF34H_cjs.DEFAULT_API_BASE_URL; }
109
109
  });
110
110
  Object.defineProperty(exports, "DEFAULT_OAUTH_SCOPES", {
111
111
  enumerable: true,
112
- get: function () { return chunkCJA3XQUF_cjs.DEFAULT_OAUTH_SCOPES; }
112
+ get: function () { return chunkWZ6LF34H_cjs.DEFAULT_OAUTH_SCOPES; }
113
113
  });
114
114
  Object.defineProperty(exports, "FFIDAnnouncementBadge", {
115
115
  enumerable: true,
116
- get: function () { return chunkCJA3XQUF_cjs.FFIDAnnouncementBadge; }
116
+ get: function () { return chunkWZ6LF34H_cjs.FFIDAnnouncementBadge; }
117
117
  });
118
118
  Object.defineProperty(exports, "FFIDAnnouncementList", {
119
119
  enumerable: true,
120
- get: function () { return chunkCJA3XQUF_cjs.FFIDAnnouncementList; }
120
+ get: function () { return chunkWZ6LF34H_cjs.FFIDAnnouncementList; }
121
121
  });
122
122
  Object.defineProperty(exports, "FFIDInquiryForm", {
123
123
  enumerable: true,
124
- get: function () { return chunkCJA3XQUF_cjs.FFIDInquiryForm; }
124
+ get: function () { return chunkWZ6LF34H_cjs.FFIDInquiryForm; }
125
125
  });
126
126
  Object.defineProperty(exports, "FFIDLoginButton", {
127
127
  enumerable: true,
128
- get: function () { return chunkCJA3XQUF_cjs.FFIDLoginButton; }
128
+ get: function () { return chunkWZ6LF34H_cjs.FFIDLoginButton; }
129
129
  });
130
130
  Object.defineProperty(exports, "FFIDOrganizationSwitcher", {
131
131
  enumerable: true,
132
- get: function () { return chunkCJA3XQUF_cjs.FFIDOrganizationSwitcher; }
132
+ get: function () { return chunkWZ6LF34H_cjs.FFIDOrganizationSwitcher; }
133
133
  });
134
134
  Object.defineProperty(exports, "FFIDProvider", {
135
135
  enumerable: true,
136
- get: function () { return chunkCJA3XQUF_cjs.FFIDProvider; }
136
+ get: function () { return chunkWZ6LF34H_cjs.FFIDProvider; }
137
137
  });
138
138
  Object.defineProperty(exports, "FFIDSDKError", {
139
139
  enumerable: true,
140
- get: function () { return chunkCJA3XQUF_cjs.FFIDSDKError; }
140
+ get: function () { return chunkWZ6LF34H_cjs.FFIDSDKError; }
141
141
  });
142
142
  Object.defineProperty(exports, "FFIDSubscriptionBadge", {
143
143
  enumerable: true,
144
- get: function () { return chunkCJA3XQUF_cjs.FFIDSubscriptionBadge; }
144
+ get: function () { return chunkWZ6LF34H_cjs.FFIDSubscriptionBadge; }
145
145
  });
146
146
  Object.defineProperty(exports, "FFIDUserMenu", {
147
147
  enumerable: true,
148
- get: function () { return chunkCJA3XQUF_cjs.FFIDUserMenu; }
148
+ get: function () { return chunkWZ6LF34H_cjs.FFIDUserMenu; }
149
149
  });
150
150
  Object.defineProperty(exports, "FFID_ANNOUNCEMENTS_ERROR_CODES", {
151
151
  enumerable: true,
152
- get: function () { return chunkCJA3XQUF_cjs.FFID_ANNOUNCEMENTS_ERROR_CODES; }
152
+ get: function () { return chunkWZ6LF34H_cjs.FFID_ANNOUNCEMENTS_ERROR_CODES; }
153
153
  });
154
154
  Object.defineProperty(exports, "FFID_INQUIRY_CATEGORIES", {
155
155
  enumerable: true,
156
- get: function () { return chunkCJA3XQUF_cjs.FFID_INQUIRY_CATEGORIES; }
156
+ get: function () { return chunkWZ6LF34H_cjs.FFID_INQUIRY_CATEGORIES; }
157
157
  });
158
158
  Object.defineProperty(exports, "FFID_INQUIRY_CATEGORIES_SITE_2026", {
159
159
  enumerable: true,
160
- get: function () { return chunkCJA3XQUF_cjs.FFID_INQUIRY_CATEGORIES_SITE_2026; }
160
+ get: function () { return chunkWZ6LF34H_cjs.FFID_INQUIRY_CATEGORIES_SITE_2026; }
161
161
  });
162
162
  Object.defineProperty(exports, "computeEffectiveStatusFromSession", {
163
163
  enumerable: true,
164
- get: function () { return chunkCJA3XQUF_cjs.computeEffectiveStatusFromSession; }
164
+ get: function () { return chunkWZ6LF34H_cjs.computeEffectiveStatusFromSession; }
165
165
  });
166
166
  Object.defineProperty(exports, "createFFIDAnnouncementsClient", {
167
167
  enumerable: true,
168
- get: function () { return chunkCJA3XQUF_cjs.createFFIDAnnouncementsClient; }
168
+ get: function () { return chunkWZ6LF34H_cjs.createFFIDAnnouncementsClient; }
169
169
  });
170
170
  Object.defineProperty(exports, "createFFIDClient", {
171
171
  enumerable: true,
172
- get: function () { return chunkCJA3XQUF_cjs.createFFIDClient; }
172
+ get: function () { return chunkWZ6LF34H_cjs.createFFIDClient; }
173
173
  });
174
174
  Object.defineProperty(exports, "createTokenStore", {
175
175
  enumerable: true,
176
- get: function () { return chunkCJA3XQUF_cjs.createTokenStore; }
176
+ get: function () { return chunkWZ6LF34H_cjs.createTokenStore; }
177
177
  });
178
178
  Object.defineProperty(exports, "generateCodeChallenge", {
179
179
  enumerable: true,
180
- get: function () { return chunkCJA3XQUF_cjs.generateCodeChallenge; }
180
+ get: function () { return chunkWZ6LF34H_cjs.generateCodeChallenge; }
181
181
  });
182
182
  Object.defineProperty(exports, "generateCodeVerifier", {
183
183
  enumerable: true,
184
- get: function () { return chunkCJA3XQUF_cjs.generateCodeVerifier; }
184
+ get: function () { return chunkWZ6LF34H_cjs.generateCodeVerifier; }
185
185
  });
186
186
  Object.defineProperty(exports, "isFFIDInquiryCategorySite2026", {
187
187
  enumerable: true,
188
- get: function () { return chunkCJA3XQUF_cjs.isFFIDInquiryCategorySite2026; }
188
+ get: function () { return chunkWZ6LF34H_cjs.isFFIDInquiryCategorySite2026; }
189
189
  });
190
190
  Object.defineProperty(exports, "normalizeRedirectUri", {
191
191
  enumerable: true,
192
- get: function () { return chunkCJA3XQUF_cjs.normalizeRedirectUri; }
192
+ get: function () { return chunkWZ6LF34H_cjs.normalizeRedirectUri; }
193
193
  });
194
194
  Object.defineProperty(exports, "retrieveCodeVerifier", {
195
195
  enumerable: true,
196
- get: function () { return chunkCJA3XQUF_cjs.retrieveCodeVerifier; }
196
+ get: function () { return chunkWZ6LF34H_cjs.retrieveCodeVerifier; }
197
197
  });
198
198
  Object.defineProperty(exports, "storeCodeVerifier", {
199
199
  enumerable: true,
200
- get: function () { return chunkCJA3XQUF_cjs.storeCodeVerifier; }
200
+ get: function () { return chunkWZ6LF34H_cjs.storeCodeVerifier; }
201
201
  });
202
202
  Object.defineProperty(exports, "useFFID", {
203
203
  enumerable: true,
204
- get: function () { return chunkCJA3XQUF_cjs.useFFID; }
204
+ get: function () { return chunkWZ6LF34H_cjs.useFFID; }
205
205
  });
206
206
  Object.defineProperty(exports, "useFFIDAnnouncements", {
207
207
  enumerable: true,
208
- get: function () { return chunkCJA3XQUF_cjs.useFFIDAnnouncements; }
208
+ get: function () { return chunkWZ6LF34H_cjs.useFFIDAnnouncements; }
209
209
  });
210
210
  Object.defineProperty(exports, "useSubscription", {
211
211
  enumerable: true,
212
- get: function () { return chunkCJA3XQUF_cjs.useSubscription; }
212
+ get: function () { return chunkWZ6LF34H_cjs.useSubscription; }
213
213
  });
214
214
  Object.defineProperty(exports, "withSubscription", {
215
215
  enumerable: true,
216
- get: function () { return chunkCJA3XQUF_cjs.withSubscription; }
216
+ get: function () { return chunkWZ6LF34H_cjs.withSubscription; }
217
217
  });
218
218
  Object.defineProperty(exports, "ALL_DENIED_EXCEPT_NECESSARY", {
219
219
  enumerable: true,
220
- get: function () { return chunkPAQ4GZXN_cjs.ALL_DENIED_EXCEPT_NECESSARY; }
220
+ get: function () { return chunkXPSWABVY_cjs.ALL_DENIED_EXCEPT_NECESSARY; }
221
221
  });
222
222
  Object.defineProperty(exports, "CONSENT_COOKIE_NAME", {
223
223
  enumerable: true,
224
- get: function () { return chunkPAQ4GZXN_cjs.CONSENT_COOKIE_NAME; }
224
+ get: function () { return chunkXPSWABVY_cjs.CONSENT_COOKIE_NAME; }
225
225
  });
226
226
  Object.defineProperty(exports, "COOKIE_VERSION", {
227
227
  enumerable: true,
228
- get: function () { return chunkPAQ4GZXN_cjs.COOKIE_VERSION; }
228
+ get: function () { return chunkXPSWABVY_cjs.COOKIE_VERSION; }
229
229
  });
230
230
  Object.defineProperty(exports, "DEFAULT_CONSENT_ERROR_MESSAGES", {
231
231
  enumerable: true,
232
- get: function () { return chunkPAQ4GZXN_cjs.DEFAULT_CONSENT_ERROR_MESSAGES; }
232
+ get: function () { return chunkXPSWABVY_cjs.DEFAULT_CONSENT_ERROR_MESSAGES; }
233
233
  });
234
234
  Object.defineProperty(exports, "FFIDAnalyticsProvider", {
235
235
  enumerable: true,
236
- get: function () { return chunkPAQ4GZXN_cjs.FFIDAnalyticsProvider; }
236
+ get: function () { return chunkXPSWABVY_cjs.FFIDAnalyticsProvider; }
237
237
  });
238
238
  Object.defineProperty(exports, "FFIDConsentError", {
239
239
  enumerable: true,
240
- get: function () { return chunkPAQ4GZXN_cjs.FFIDConsentError; }
240
+ get: function () { return chunkXPSWABVY_cjs.FFIDConsentError; }
241
241
  });
242
242
  Object.defineProperty(exports, "FFIDCookieBanner", {
243
243
  enumerable: true,
244
- get: function () { return chunkPAQ4GZXN_cjs.FFIDCookieBanner; }
244
+ get: function () { return chunkXPSWABVY_cjs.FFIDCookieBanner; }
245
245
  });
246
246
  Object.defineProperty(exports, "FFIDCookieLink", {
247
247
  enumerable: true,
248
- get: function () { return chunkPAQ4GZXN_cjs.FFIDCookieLink; }
248
+ get: function () { return chunkXPSWABVY_cjs.FFIDCookieLink; }
249
249
  });
250
250
  Object.defineProperty(exports, "FFIDCookieSettings", {
251
251
  enumerable: true,
252
- get: function () { return chunkPAQ4GZXN_cjs.FFIDCookieSettings; }
252
+ get: function () { return chunkXPSWABVY_cjs.FFIDCookieSettings; }
253
253
  });
254
254
  Object.defineProperty(exports, "FFID_CONSENT_ERROR_CODES", {
255
255
  enumerable: true,
256
- get: function () { return chunkPAQ4GZXN_cjs.FFID_CONSENT_ERROR_CODES; }
256
+ get: function () { return chunkXPSWABVY_cjs.FFID_CONSENT_ERROR_CODES; }
257
257
  });
258
258
  Object.defineProperty(exports, "decodeConsentCookie", {
259
259
  enumerable: true,
260
- get: function () { return chunkPAQ4GZXN_cjs.decodeConsentCookie; }
260
+ get: function () { return chunkXPSWABVY_cjs.decodeConsentCookie; }
261
261
  });
262
262
  Object.defineProperty(exports, "encodeConsentCookie", {
263
263
  enumerable: true,
264
- get: function () { return chunkPAQ4GZXN_cjs.encodeConsentCookie; }
264
+ get: function () { return chunkXPSWABVY_cjs.encodeConsentCookie; }
265
265
  });
266
266
  Object.defineProperty(exports, "readConsentCookie", {
267
267
  enumerable: true,
268
- get: function () { return chunkPAQ4GZXN_cjs.readConsentCookie; }
268
+ get: function () { return chunkXPSWABVY_cjs.readConsentCookie; }
269
269
  });
270
270
  Object.defineProperty(exports, "useFFIDConsent", {
271
271
  enumerable: true,
272
- get: function () { return chunkPAQ4GZXN_cjs.useFFIDConsent; }
272
+ get: function () { return chunkXPSWABVY_cjs.useFFIDConsent; }
273
273
  });
274
274
  Object.defineProperty(exports, "useFFIDConsentPreferences", {
275
275
  enumerable: true,
276
- get: function () { return chunkPAQ4GZXN_cjs.useFFIDConsentPreferences; }
276
+ get: function () { return chunkXPSWABVY_cjs.useFFIDConsentPreferences; }
277
277
  });
278
278
  Object.defineProperty(exports, "writeConsentCookie", {
279
279
  enumerable: true,
280
- get: function () { return chunkPAQ4GZXN_cjs.writeConsentCookie; }
280
+ get: function () { return chunkXPSWABVY_cjs.writeConsentCookie; }
281
281
  });
282
282
  exports.FFID_NEWSLETTER_DISPATCH_MAX_RECIPIENTS = FFID_NEWSLETTER_DISPATCH_MAX_RECIPIENTS;
283
283
  exports.FFID_NEWSLETTER_TYPES = FFID_NEWSLETTER_TYPES;
package/dist/index.d.cts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { F as FFIDSubscriptionStatus, a as FFIDConfig, b as FFIDApiResponse, c as FFIDSessionResponse, d as FFIDRedirectResult, e as FFIDError, f as FFIDSubscriptionCheckResponse, g as FFIDCheckServiceAccessParams, h as FFIDServiceAccessDecision, i as FFIDListMembersResponse, j as FFIDAddMemberParams, k as FFIDAddMemberResponse, l as FFIDAddMemberRequest, m as FFIDMemberRole, n as FFIDUpdateMemberRoleResponse, o as FFIDRemoveMemberResponse, p as FFIDProfileCallOptions, q as FFIDUserProfile, r as FFIDUpdateUserProfileRequest, s as FFIDAnalyticsConfig, t as FFIDCreateCheckoutParams, u as FFIDCheckoutSessionResponse, v as FFIDCreatePortalParams, w as FFIDPortalSessionResponse, x as FFIDVerifyAccessTokenOptions, y as FFIDOAuthUserInfo, z as FFIDInquiryCreateParams, A as FFIDInquiryCreateResponse, B as FFIDAuthMode, C as FFIDLogger, D as FFIDCacheAdapter, E as FFIDUser, G as FFIDOrganization, H as FFIDSubscription, I as FFIDSubscriptionContextValue, J as EffectiveSubscriptionStatus, K as FFIDAnnouncementsClientConfig, L as ListAnnouncementsOptions, M as FFIDAnnouncementsApiResponse, N as AnnouncementListResponse, O as FFIDAnnouncementsLogger } from './index-CInGR4I9.cjs';
2
2
  export { P as Announcement, Q as AnnouncementStatus, R as AnnouncementType, S as FFIDAnnouncementBadge, T as FFIDAnnouncementList, U as FFIDAnnouncementsError, V as FFIDAnnouncementsErrorCode, W as FFIDAnnouncementsServerResponse, X as FFIDAssignableMemberRole, Y as FFIDCacheConfig, Z as FFIDContextValue, _ as FFIDInquiryCategory, $ as FFIDInquiryCategorySite2026, a0 as FFIDInquiryForm, a1 as FFIDInquiryFormCategoryItem, a2 as FFIDInquiryFormClassNames, a3 as FFIDInquiryFormLegalLayout, a4 as FFIDInquiryFormOrganization, a5 as FFIDInquiryFormPlaceholderContext, a6 as FFIDInquiryFormPrefill, a7 as FFIDInquiryFormProps, a8 as FFIDInquiryFormSubmitData, a9 as FFIDInquiryFormSubmitResult, aa as FFIDJwtClaims, ab as FFIDLoginButton, ac as FFIDMemberStatus, ad as FFIDOAuthTokenResponse, ae as FFIDOAuthUserInfoMemberRole, af as FFIDOAuthUserInfoSubscription, ag as FFIDOrganizationMember, ah as FFIDOrganizationSwitcher, ai as FFIDRedirectErrorCode, aj as FFIDSeatModel, ak as FFIDServiceAccessDenialReason, al as FFIDServiceAccessFailPolicy, am as FFIDSubscriptionBadge, an as FFIDTokenIntrospectionResponse, ao as FFIDUserMenu, ap as FFID_INQUIRY_CATEGORIES, aq as FFID_INQUIRY_CATEGORIES_SITE_2026, ar as UseFFIDAnnouncementsOptions, as as UseFFIDAnnouncementsReturn, at as isFFIDInquiryCategorySite2026, au as useFFIDAnnouncements } from './index-CInGR4I9.cjs';
3
- export { A as ALL_DENIED_EXCEPT_NECESSARY, i as CONSENT_COOKIE_NAME, k as COOKIE_VERSION, D as DEFAULT_CONSENT_ERROR_MESSAGES, n as FFIDAnalyticsProvider, o as FFIDAnalyticsProviderProps, c as FFIDConsentCategories, q as FFIDConsentCategoryCode, e as FFIDConsentCategoryMetadata, v as FFIDConsentError, w as FFIDConsentErrorCode, x as FFIDConsentMergeStrategy, z as FFIDConsentMergeWarning, F as FFIDConsentResult, E as FFIDConsentSource, a as FFIDConsentState, d as FFIDConsentSyncResult, K as FFIDCookieBanner, L as FFIDCookieBannerClassNames, M as FFIDCookieBannerProps, N as FFIDCookieLink, O as FFIDCookieLinkProps, f as FFIDCookiePolicy, R as FFIDCookieSettings, S as FFIDCookieSettingsClassNames, T as FFIDCookieSettingsProps, Y as FFID_CONSENT_ERROR_CODES, ac as UseFFIDConsentPreferencesReturn, ad as UseFFIDConsentReturn, ag as decodeConsentCookie, ai as encodeConsentCookie, ak as readConsentCookie, am as useFFIDConsent, an as useFFIDConsentPreferences, ao as writeConsentCookie } from './FFIDCookieLink-B-9ggxsL.cjs';
3
+ export { A as ALL_DENIED_EXCEPT_NECESSARY, i as CONSENT_COOKIE_NAME, k as COOKIE_VERSION, D as DEFAULT_CONSENT_ERROR_MESSAGES, n as FFIDAnalyticsProvider, o as FFIDAnalyticsProviderProps, c as FFIDConsentCategories, q as FFIDConsentCategoryCode, e as FFIDConsentCategoryMetadata, v as FFIDConsentError, w as FFIDConsentErrorCode, x as FFIDConsentMergeStrategy, z as FFIDConsentMergeWarning, F as FFIDConsentResult, E as FFIDConsentSource, a as FFIDConsentState, d as FFIDConsentSyncResult, K as FFIDCookieBanner, L as FFIDCookieBannerClassNames, M as FFIDCookieBannerProps, N as FFIDCookieLink, O as FFIDCookieLinkProps, f as FFIDCookiePolicy, R as FFIDCookieSettings, S as FFIDCookieSettingsClassNames, T as FFIDCookieSettingsProps, Y as FFID_CONSENT_ERROR_CODES, ac as UseFFIDConsentPreferencesReturn, ad as UseFFIDConsentReturn, ag as decodeConsentCookie, ai as encodeConsentCookie, ak as readConsentCookie, am as useFFIDConsent, an as useFFIDConsentPreferences, ao as writeConsentCookie } from './FFIDCookieLink-Buh84sTc.cjs';
4
4
  import * as react_jsx_runtime from 'react/jsx-runtime';
5
5
  import { ReactNode, ComponentType, FC } from 'react';
6
6
  import 'zod';
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { F as FFIDSubscriptionStatus, a as FFIDConfig, b as FFIDApiResponse, c as FFIDSessionResponse, d as FFIDRedirectResult, e as FFIDError, f as FFIDSubscriptionCheckResponse, g as FFIDCheckServiceAccessParams, h as FFIDServiceAccessDecision, i as FFIDListMembersResponse, j as FFIDAddMemberParams, k as FFIDAddMemberResponse, l as FFIDAddMemberRequest, m as FFIDMemberRole, n as FFIDUpdateMemberRoleResponse, o as FFIDRemoveMemberResponse, p as FFIDProfileCallOptions, q as FFIDUserProfile, r as FFIDUpdateUserProfileRequest, s as FFIDAnalyticsConfig, t as FFIDCreateCheckoutParams, u as FFIDCheckoutSessionResponse, v as FFIDCreatePortalParams, w as FFIDPortalSessionResponse, x as FFIDVerifyAccessTokenOptions, y as FFIDOAuthUserInfo, z as FFIDInquiryCreateParams, A as FFIDInquiryCreateResponse, B as FFIDAuthMode, C as FFIDLogger, D as FFIDCacheAdapter, E as FFIDUser, G as FFIDOrganization, H as FFIDSubscription, I as FFIDSubscriptionContextValue, J as EffectiveSubscriptionStatus, K as FFIDAnnouncementsClientConfig, L as ListAnnouncementsOptions, M as FFIDAnnouncementsApiResponse, N as AnnouncementListResponse, O as FFIDAnnouncementsLogger } from './index-CInGR4I9.js';
2
2
  export { P as Announcement, Q as AnnouncementStatus, R as AnnouncementType, S as FFIDAnnouncementBadge, T as FFIDAnnouncementList, U as FFIDAnnouncementsError, V as FFIDAnnouncementsErrorCode, W as FFIDAnnouncementsServerResponse, X as FFIDAssignableMemberRole, Y as FFIDCacheConfig, Z as FFIDContextValue, _ as FFIDInquiryCategory, $ as FFIDInquiryCategorySite2026, a0 as FFIDInquiryForm, a1 as FFIDInquiryFormCategoryItem, a2 as FFIDInquiryFormClassNames, a3 as FFIDInquiryFormLegalLayout, a4 as FFIDInquiryFormOrganization, a5 as FFIDInquiryFormPlaceholderContext, a6 as FFIDInquiryFormPrefill, a7 as FFIDInquiryFormProps, a8 as FFIDInquiryFormSubmitData, a9 as FFIDInquiryFormSubmitResult, aa as FFIDJwtClaims, ab as FFIDLoginButton, ac as FFIDMemberStatus, ad as FFIDOAuthTokenResponse, ae as FFIDOAuthUserInfoMemberRole, af as FFIDOAuthUserInfoSubscription, ag as FFIDOrganizationMember, ah as FFIDOrganizationSwitcher, ai as FFIDRedirectErrorCode, aj as FFIDSeatModel, ak as FFIDServiceAccessDenialReason, al as FFIDServiceAccessFailPolicy, am as FFIDSubscriptionBadge, an as FFIDTokenIntrospectionResponse, ao as FFIDUserMenu, ap as FFID_INQUIRY_CATEGORIES, aq as FFID_INQUIRY_CATEGORIES_SITE_2026, ar as UseFFIDAnnouncementsOptions, as as UseFFIDAnnouncementsReturn, at as isFFIDInquiryCategorySite2026, au as useFFIDAnnouncements } from './index-CInGR4I9.js';
3
- export { A as ALL_DENIED_EXCEPT_NECESSARY, i as CONSENT_COOKIE_NAME, k as COOKIE_VERSION, D as DEFAULT_CONSENT_ERROR_MESSAGES, n as FFIDAnalyticsProvider, o as FFIDAnalyticsProviderProps, c as FFIDConsentCategories, q as FFIDConsentCategoryCode, e as FFIDConsentCategoryMetadata, v as FFIDConsentError, w as FFIDConsentErrorCode, x as FFIDConsentMergeStrategy, z as FFIDConsentMergeWarning, F as FFIDConsentResult, E as FFIDConsentSource, a as FFIDConsentState, d as FFIDConsentSyncResult, K as FFIDCookieBanner, L as FFIDCookieBannerClassNames, M as FFIDCookieBannerProps, N as FFIDCookieLink, O as FFIDCookieLinkProps, f as FFIDCookiePolicy, R as FFIDCookieSettings, S as FFIDCookieSettingsClassNames, T as FFIDCookieSettingsProps, Y as FFID_CONSENT_ERROR_CODES, ac as UseFFIDConsentPreferencesReturn, ad as UseFFIDConsentReturn, ag as decodeConsentCookie, ai as encodeConsentCookie, ak as readConsentCookie, am as useFFIDConsent, an as useFFIDConsentPreferences, ao as writeConsentCookie } from './FFIDCookieLink-B-9ggxsL.js';
3
+ export { A as ALL_DENIED_EXCEPT_NECESSARY, i as CONSENT_COOKIE_NAME, k as COOKIE_VERSION, D as DEFAULT_CONSENT_ERROR_MESSAGES, n as FFIDAnalyticsProvider, o as FFIDAnalyticsProviderProps, c as FFIDConsentCategories, q as FFIDConsentCategoryCode, e as FFIDConsentCategoryMetadata, v as FFIDConsentError, w as FFIDConsentErrorCode, x as FFIDConsentMergeStrategy, z as FFIDConsentMergeWarning, F as FFIDConsentResult, E as FFIDConsentSource, a as FFIDConsentState, d as FFIDConsentSyncResult, K as FFIDCookieBanner, L as FFIDCookieBannerClassNames, M as FFIDCookieBannerProps, N as FFIDCookieLink, O as FFIDCookieLinkProps, f as FFIDCookiePolicy, R as FFIDCookieSettings, S as FFIDCookieSettingsClassNames, T as FFIDCookieSettingsProps, Y as FFID_CONSENT_ERROR_CODES, ac as UseFFIDConsentPreferencesReturn, ad as UseFFIDConsentReturn, ag as decodeConsentCookie, ai as encodeConsentCookie, ak as readConsentCookie, am as useFFIDConsent, an as useFFIDConsentPreferences, ao as writeConsentCookie } from './FFIDCookieLink-Buh84sTc.js';
4
4
  import * as react_jsx_runtime from 'react/jsx-runtime';
5
5
  import { ReactNode, ComponentType, FC } from 'react';
6
6
  import 'zod';
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
- import { useFFIDContext, useSubscription } from './chunk-XAPFTOZN.js';
2
- export { DEFAULT_API_BASE_URL, DEFAULT_OAUTH_SCOPES, FFIDAnnouncementBadge, FFIDAnnouncementList, FFIDInquiryForm, FFIDLoginButton, FFIDOrganizationSwitcher, FFIDProvider, FFIDSDKError, FFIDSubscriptionBadge, FFIDUserMenu, FFID_ANNOUNCEMENTS_ERROR_CODES, FFID_INQUIRY_CATEGORIES, FFID_INQUIRY_CATEGORIES_SITE_2026, computeEffectiveStatusFromSession, createFFIDAnnouncementsClient, createFFIDClient, createTokenStore, generateCodeChallenge, generateCodeVerifier, isFFIDInquiryCategorySite2026, normalizeRedirectUri, retrieveCodeVerifier, storeCodeVerifier, useFFID, useFFIDAnnouncements, useSubscription, withSubscription } from './chunk-XAPFTOZN.js';
3
- export { ALL_DENIED_EXCEPT_NECESSARY, CONSENT_COOKIE_NAME, COOKIE_VERSION, DEFAULT_CONSENT_ERROR_MESSAGES, FFIDAnalyticsProvider, FFIDConsentError, FFIDCookieBanner, FFIDCookieLink, FFIDCookieSettings, FFID_CONSENT_ERROR_CODES, decodeConsentCookie, encodeConsentCookie, readConsentCookie, useFFIDConsent, useFFIDConsentPreferences, writeConsentCookie } from './chunk-CISVLEY5.js';
1
+ import { useFFIDContext, useSubscription } from './chunk-QYKYTZA6.js';
2
+ export { DEFAULT_API_BASE_URL, DEFAULT_OAUTH_SCOPES, FFIDAnnouncementBadge, FFIDAnnouncementList, FFIDInquiryForm, FFIDLoginButton, FFIDOrganizationSwitcher, FFIDProvider, FFIDSDKError, FFIDSubscriptionBadge, FFIDUserMenu, FFID_ANNOUNCEMENTS_ERROR_CODES, FFID_INQUIRY_CATEGORIES, FFID_INQUIRY_CATEGORIES_SITE_2026, computeEffectiveStatusFromSession, createFFIDAnnouncementsClient, createFFIDClient, createTokenStore, generateCodeChallenge, generateCodeVerifier, isFFIDInquiryCategorySite2026, normalizeRedirectUri, retrieveCodeVerifier, storeCodeVerifier, useFFID, useFFIDAnnouncements, useSubscription, withSubscription } from './chunk-QYKYTZA6.js';
3
+ export { ALL_DENIED_EXCEPT_NECESSARY, CONSENT_COOKIE_NAME, COOKIE_VERSION, DEFAULT_CONSENT_ERROR_MESSAGES, FFIDAnalyticsProvider, FFIDConsentError, FFIDCookieBanner, FFIDCookieLink, FFIDCookieSettings, FFID_CONSENT_ERROR_CODES, decodeConsentCookie, encodeConsentCookie, readConsentCookie, useFFIDConsent, useFFIDConsentPreferences, writeConsentCookie } from './chunk-ZM53LRXW.js';
4
4
  import { useEffect, useRef } from 'react';
5
5
  import { jsx, Fragment } from 'react/jsx-runtime';
6
6
 
@@ -835,7 +835,7 @@ function createProfileMethods(deps) {
835
835
  }
836
836
 
837
837
  // src/client/version-check.ts
838
- var SDK_VERSION = "5.0.0";
838
+ var SDK_VERSION = "5.0.2";
839
839
  var SDK_USER_AGENT = `FFID-SDK/${SDK_VERSION} (TypeScript)`;
840
840
  var SDK_VERSION_HEADER = "X-FFID-SDK-Version";
841
841
  function sdkHeaders() {
@@ -834,7 +834,7 @@ function createProfileMethods(deps) {
834
834
  }
835
835
 
836
836
  // src/client/version-check.ts
837
- var SDK_VERSION = "5.0.0";
837
+ var SDK_VERSION = "5.0.2";
838
838
  var SDK_USER_AGENT = `FFID-SDK/${SDK_VERSION} (TypeScript)`;
839
839
  var SDK_VERSION_HEADER = "X-FFID-SDK-Version";
840
840
  function sdkHeaders() {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@feelflow/ffid-sdk",
3
- "version": "5.0.0",
3
+ "version": "5.0.2",
4
4
  "description": "FeelFlow ID Platform SDK for React/Next.js applications",
5
5
  "keywords": [
6
6
  "feelflow",