@whop/embedded-components-react-js 0.0.5-beta.5 → 0.0.5-beta.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-NSSMTXJJ.mjs +9 -0
- package/dist/chunk-NSSMTXJJ.mjs.map +1 -0
- package/dist/index.d.ts +18 -0
- package/dist/index.js +21 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +3 -0
- package/dist/index.mjs.map +1 -0
- package/dist/lib/use-element-snapshot.d.ts +5 -0
- package/dist/lib/use-element-snapshot.js +64 -0
- package/dist/lib/use-element-snapshot.js.map +1 -0
- package/dist/lib/use-element-snapshot.mjs +41 -0
- package/dist/lib/use-element-snapshot.mjs.map +1 -0
- package/dist/payouts/elements/balance.d.ts +16 -0
- package/dist/payouts/elements/balance.js +86 -0
- package/dist/payouts/elements/balance.js.map +1 -0
- package/dist/payouts/elements/balance.mjs +56 -0
- package/dist/payouts/elements/balance.mjs.map +1 -0
- package/dist/payouts/elements/bnpl-reserve-balance-breakdown.d.ts +16 -0
- package/dist/payouts/elements/bnpl-reserve-balance-breakdown.js +86 -0
- package/dist/payouts/elements/bnpl-reserve-balance-breakdown.js.map +1 -0
- package/dist/payouts/elements/bnpl-reserve-balance-breakdown.mjs +56 -0
- package/dist/payouts/elements/bnpl-reserve-balance-breakdown.mjs.map +1 -0
- package/dist/payouts/elements/change-account-country.d.ts +16 -0
- package/dist/payouts/elements/change-account-country.js +86 -0
- package/dist/payouts/elements/change-account-country.js.map +1 -0
- package/dist/payouts/elements/change-account-country.mjs +56 -0
- package/dist/payouts/elements/change-account-country.mjs.map +1 -0
- package/dist/payouts/elements/generate-withdrawal-receipt.d.ts +16 -0
- package/dist/payouts/elements/generate-withdrawal-receipt.js +86 -0
- package/dist/payouts/elements/generate-withdrawal-receipt.js.map +1 -0
- package/dist/payouts/elements/generate-withdrawal-receipt.mjs +56 -0
- package/dist/payouts/elements/generate-withdrawal-receipt.mjs.map +1 -0
- package/dist/payouts/elements/index.d.ts +15 -0
- package/dist/payouts/elements/index.js +31 -0
- package/dist/payouts/elements/index.js.map +1 -0
- package/dist/payouts/elements/index.mjs +13 -0
- package/dist/payouts/elements/index.mjs.map +1 -0
- package/dist/payouts/elements/pending-balance-breakdown.d.ts +16 -0
- package/dist/payouts/elements/pending-balance-breakdown.js +86 -0
- package/dist/payouts/elements/pending-balance-breakdown.js.map +1 -0
- package/dist/payouts/elements/pending-balance-breakdown.mjs +56 -0
- package/dist/payouts/elements/pending-balance-breakdown.mjs.map +1 -0
- package/dist/payouts/elements/regular-reserve-balance-breakdown.d.ts +16 -0
- package/dist/payouts/elements/regular-reserve-balance-breakdown.js +86 -0
- package/dist/payouts/elements/regular-reserve-balance-breakdown.js.map +1 -0
- package/dist/payouts/elements/regular-reserve-balance-breakdown.mjs +56 -0
- package/dist/payouts/elements/regular-reserve-balance-breakdown.mjs.map +1 -0
- package/dist/payouts/elements/reset-account.d.ts +16 -0
- package/dist/payouts/elements/reset-account.js +86 -0
- package/dist/payouts/elements/reset-account.js.map +1 -0
- package/dist/payouts/elements/reset-account.mjs +56 -0
- package/dist/payouts/elements/reset-account.mjs.map +1 -0
- package/dist/payouts/elements/status-banner.d.ts +18 -0
- package/dist/payouts/elements/status-banner.js +102 -0
- package/dist/payouts/elements/status-banner.js.map +1 -0
- package/dist/payouts/elements/status-banner.mjs +76 -0
- package/dist/payouts/elements/status-banner.mjs.map +1 -0
- package/dist/payouts/elements/total-balance-breakdown.d.ts +16 -0
- package/dist/payouts/elements/total-balance-breakdown.js +86 -0
- package/dist/payouts/elements/total-balance-breakdown.js.map +1 -0
- package/dist/payouts/elements/total-balance-breakdown.mjs +56 -0
- package/dist/payouts/elements/total-balance-breakdown.mjs.map +1 -0
- package/dist/payouts/elements/verify.d.ts +16 -0
- package/dist/payouts/elements/verify.js +83 -0
- package/dist/payouts/elements/verify.js.map +1 -0
- package/dist/payouts/elements/verify.mjs +56 -0
- package/dist/payouts/elements/verify.mjs.map +1 -0
- package/dist/payouts/elements/withdraw-button.d.ts +16 -0
- package/dist/payouts/elements/withdraw-button.js +86 -0
- package/dist/payouts/elements/withdraw-button.js.map +1 -0
- package/dist/payouts/elements/withdraw-button.mjs +56 -0
- package/dist/payouts/elements/withdraw-button.mjs.map +1 -0
- package/dist/payouts/elements/withdrawal-breakdown.d.ts +16 -0
- package/dist/payouts/elements/withdrawal-breakdown.js +86 -0
- package/dist/payouts/elements/withdrawal-breakdown.js.map +1 -0
- package/dist/payouts/elements/withdrawal-breakdown.mjs +56 -0
- package/dist/payouts/elements/withdrawal-breakdown.mjs.map +1 -0
- package/dist/payouts/elements/withdrawals.d.ts +16 -0
- package/dist/payouts/elements/withdrawals.js +86 -0
- package/dist/payouts/elements/withdrawals.js.map +1 -0
- package/dist/payouts/elements/withdrawals.mjs +56 -0
- package/dist/payouts/elements/withdrawals.mjs.map +1 -0
- package/dist/payouts/index.d.ts +16 -0
- package/dist/payouts/index.js +20 -0
- package/dist/payouts/index.js.map +1 -0
- package/dist/payouts/index.mjs +2 -0
- package/dist/payouts/index.mjs.map +1 -0
- package/dist/payouts/session.d.ts +11 -0
- package/dist/payouts/session.js +84 -0
- package/dist/payouts/session.js.map +1 -0
- package/dist/payouts/session.mjs +55 -0
- package/dist/payouts/session.mjs.map +1 -0
- package/dist/payouts/use-session-ref.d.ts +8 -0
- package/dist/payouts/use-session-ref.js +29 -0
- package/dist/payouts/use-session-ref.js.map +1 -0
- package/dist/payouts/use-session-ref.mjs +7 -0
- package/dist/payouts/use-session-ref.mjs.map +1 -0
- package/dist/provider.d.ts +11 -0
- package/dist/provider.js +116 -0
- package/dist/provider.js.map +1 -0
- package/dist/provider.mjs +87 -0
- package/dist/provider.mjs.map +1 -0
- package/package.json +2 -2
- package/package.json.temp +0 -44
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
"use client";
|
|
3
|
+
var __create = Object.create;
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
8
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
+
var __export = (target, all) => {
|
|
10
|
+
for (var name in all)
|
|
11
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from))
|
|
16
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
17
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
18
|
+
}
|
|
19
|
+
return to;
|
|
20
|
+
};
|
|
21
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
22
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
23
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
24
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
25
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
26
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
27
|
+
mod
|
|
28
|
+
));
|
|
29
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
30
|
+
var regular_reserve_balance_breakdown_exports = {};
|
|
31
|
+
__export(regular_reserve_balance_breakdown_exports, {
|
|
32
|
+
RegularReserveBalanceBreakdownElement: () => RegularReserveBalanceBreakdownElement
|
|
33
|
+
});
|
|
34
|
+
module.exports = __toCommonJS(regular_reserve_balance_breakdown_exports);
|
|
35
|
+
var import_react = __toESM(require("react"));
|
|
36
|
+
var import_use_element_snapshot = require("../../lib/use-element-snapshot");
|
|
37
|
+
var import_session = require("../session");
|
|
38
|
+
function RegularReserveBalanceBreakdownElement({
|
|
39
|
+
options = {},
|
|
40
|
+
className,
|
|
41
|
+
style,
|
|
42
|
+
onReady,
|
|
43
|
+
fallback
|
|
44
|
+
}) {
|
|
45
|
+
const payoutsSession = (0, import_session.usePayoutsSession)();
|
|
46
|
+
const ref = (0, import_react.useRef)(null);
|
|
47
|
+
const element = (0, import_react.useMemo)(() => {
|
|
48
|
+
if (!payoutsSession) return null;
|
|
49
|
+
const createdElement = payoutsSession.createElement(
|
|
50
|
+
RegularReserveBalanceBreakdownElement,
|
|
51
|
+
options
|
|
52
|
+
);
|
|
53
|
+
return createdElement;
|
|
54
|
+
}, [payoutsSession]);
|
|
55
|
+
const elementSnapshot = (0, import_use_element_snapshot.useElementSnapshot)(element);
|
|
56
|
+
const isReady = elementSnapshot?.state === "ready";
|
|
57
|
+
(0, import_react.useEffect)(() => {
|
|
58
|
+
if (!element) return;
|
|
59
|
+
element.updateOptions(options);
|
|
60
|
+
}, [options, element]);
|
|
61
|
+
(0, import_react.useEffect)(() => {
|
|
62
|
+
if (!element || !onReady) return;
|
|
63
|
+
element.on("ready", onReady);
|
|
64
|
+
return () => {
|
|
65
|
+
element.off("ready", onReady);
|
|
66
|
+
};
|
|
67
|
+
}, [element, onReady]);
|
|
68
|
+
(0, import_react.useLayoutEffect)(() => {
|
|
69
|
+
if (!element || !ref.current) return;
|
|
70
|
+
element.mount(ref.current);
|
|
71
|
+
return () => {
|
|
72
|
+
element.unmount();
|
|
73
|
+
};
|
|
74
|
+
}, [element, ref.current]);
|
|
75
|
+
return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(
|
|
76
|
+
"div",
|
|
77
|
+
{
|
|
78
|
+
style: { ...style, visibility: isReady ? void 0 : "hidden" },
|
|
79
|
+
className,
|
|
80
|
+
ref
|
|
81
|
+
}
|
|
82
|
+
), !isReady && (fallback ?? null));
|
|
83
|
+
}
|
|
84
|
+
RegularReserveBalanceBreakdownElement.displayName = "RegularReserveBalanceBreakdownElement";
|
|
85
|
+
RegularReserveBalanceBreakdownElement.type = "regular-reserve-balance-breakdown-element";
|
|
86
|
+
//# sourceMappingURL=regular-reserve-balance-breakdown.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/payouts/elements/regular-reserve-balance-breakdown.tsx"],"sourcesContent":["\"use client\";\n\nimport type { RegularReserveBalanceBreakdownElementOptions } from \"@whop/embedded-components-vanilla-js/types\";\n\nimport React, { useEffect, useLayoutEffect, useMemo, useRef } from \"react\";\nimport { useElementSnapshot } from \"../../lib/use-element-snapshot\";\nimport { usePayoutsSession } from \"../session\";\n\nexport function RegularReserveBalanceBreakdownElement({\n\toptions = {},\n\tclassName,\n\tstyle,\n\tonReady,\n\tfallback,\n}: {\n\toptions?: RegularReserveBalanceBreakdownElementOptions;\n\tclassName?: string;\n\tstyle?: React.CSSProperties;\n\tonReady?: () => void;\n\tfallback?: React.ReactNode;\n}) {\n\tconst payoutsSession = usePayoutsSession();\n\tconst ref = useRef<HTMLDivElement>(null);\n\tconst element = useMemo(() => {\n\t\tif (!payoutsSession) return null;\n\t\tconst createdElement = payoutsSession.createElement(\n\t\t\tRegularReserveBalanceBreakdownElement,\n\t\t\toptions,\n\t\t);\n\t\treturn createdElement;\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [payoutsSession]);\n\n\tconst elementSnapshot = useElementSnapshot(element);\n\n\tconst isReady = elementSnapshot?.state === \"ready\";\n\n\tuseEffect(() => {\n\t\tif (!element) return;\n\t\telement.updateOptions(options);\n\t}, [options, element]);\n\n\tuseEffect(() => {\n\t\tif (!element || !onReady) return;\n\t\telement.on(\"ready\", onReady);\n\t\treturn () => {\n\t\t\telement.off(\"ready\", onReady);\n\t\t};\n\t}, [element, onReady]);\n\n\tuseLayoutEffect(() => {\n\t\tif (!element || !ref.current) return;\n\t\telement.mount(ref.current);\n\t\treturn () => {\n\t\t\telement.unmount();\n\t\t};\n\t}, [element, ref.current]);\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\tstyle={{ ...style, visibility: isReady ? undefined : \"hidden\" }}\n\t\t\t\tclassName={className}\n\t\t\t\tref={ref}\n\t\t\t/>\n\t\t\t{!isReady && (fallback ?? null)}\n\t\t</>\n\t);\n}\n\nRegularReserveBalanceBreakdownElement.displayName =\n\t\"RegularReserveBalanceBreakdownElement\";\nRegularReserveBalanceBreakdownElement.type =\n\t\"regular-reserve-balance-breakdown-element\" as const;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,mBAAmE;AACnE,kCAAmC;AACnC,qBAAkC;AAE3B,SAAS,sCAAsC;AAAA,EACrD,UAAU,CAAC;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAMG;AACF,QAAM,qBAAiB,kCAAkB;AACzC,QAAM,UAAM,qBAAuB,IAAI;AACvC,QAAM,cAAU,sBAAQ,MAAM;AAC7B,QAAI,CAAC,eAAgB,QAAO;AAC5B,UAAM,iBAAiB,eAAe;AAAA,MACrC;AAAA,MACA;AAAA,IACD;AACA,WAAO;AAAA,EAER,GAAG,CAAC,cAAc,CAAC;AAEnB,QAAM,sBAAkB,gDAAmB,OAAO;AAElD,QAAM,UAAU,iBAAiB,UAAU;AAE3C,8BAAU,MAAM;AACf,QAAI,CAAC,QAAS;AACd,YAAQ,cAAc,OAAO;AAAA,EAC9B,GAAG,CAAC,SAAS,OAAO,CAAC;AAErB,8BAAU,MAAM;AACf,QAAI,CAAC,WAAW,CAAC,QAAS;AAC1B,YAAQ,GAAG,SAAS,OAAO;AAC3B,WAAO,MAAM;AACZ,cAAQ,IAAI,SAAS,OAAO;AAAA,IAC7B;AAAA,EACD,GAAG,CAAC,SAAS,OAAO,CAAC;AAErB,oCAAgB,MAAM;AACrB,QAAI,CAAC,WAAW,CAAC,IAAI,QAAS;AAC9B,YAAQ,MAAM,IAAI,OAAO;AACzB,WAAO,MAAM;AACZ,cAAQ,QAAQ;AAAA,IACjB;AAAA,EACD,GAAG,CAAC,SAAS,IAAI,OAAO,CAAC;AAEzB,SACC,6BAAAA,QAAA,2BAAAA,QAAA,gBACC,6BAAAA,QAAA;AAAA,IAAC;AAAA;AAAA,MACA,OAAO,EAAE,GAAG,OAAO,YAAY,UAAU,SAAY,SAAS;AAAA,MAC9D;AAAA,MACA;AAAA;AAAA,EACD,GACC,CAAC,YAAY,YAAY,KAC3B;AAEF;AAEA,sCAAsC,cACrC;AACD,sCAAsC,OACrC;","names":["React"]}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import "../../chunk-NSSMTXJJ.mjs";
|
|
3
|
+
import React, { useEffect, useLayoutEffect, useMemo, useRef } from "react";
|
|
4
|
+
import { useElementSnapshot } from "../../lib/use-element-snapshot.mjs";
|
|
5
|
+
import { usePayoutsSession } from "../session.mjs";
|
|
6
|
+
function RegularReserveBalanceBreakdownElement({ options = {}, className, style, onReady, fallback }) {
|
|
7
|
+
const payoutsSession = usePayoutsSession();
|
|
8
|
+
const ref = useRef(null);
|
|
9
|
+
const element = useMemo(()=>{
|
|
10
|
+
if (!payoutsSession) return null;
|
|
11
|
+
const createdElement = payoutsSession.createElement(RegularReserveBalanceBreakdownElement, options);
|
|
12
|
+
return createdElement;
|
|
13
|
+
}, [
|
|
14
|
+
payoutsSession
|
|
15
|
+
]);
|
|
16
|
+
const elementSnapshot = useElementSnapshot(element);
|
|
17
|
+
const isReady = elementSnapshot?.state === "ready";
|
|
18
|
+
useEffect(()=>{
|
|
19
|
+
if (!element) return;
|
|
20
|
+
element.updateOptions(options);
|
|
21
|
+
}, [
|
|
22
|
+
options,
|
|
23
|
+
element
|
|
24
|
+
]);
|
|
25
|
+
useEffect(()=>{
|
|
26
|
+
if (!element || !onReady) return;
|
|
27
|
+
element.on("ready", onReady);
|
|
28
|
+
return ()=>{
|
|
29
|
+
element.off("ready", onReady);
|
|
30
|
+
};
|
|
31
|
+
}, [
|
|
32
|
+
element,
|
|
33
|
+
onReady
|
|
34
|
+
]);
|
|
35
|
+
useLayoutEffect(()=>{
|
|
36
|
+
if (!element || !ref.current) return;
|
|
37
|
+
element.mount(ref.current);
|
|
38
|
+
return ()=>{
|
|
39
|
+
element.unmount();
|
|
40
|
+
};
|
|
41
|
+
}, [
|
|
42
|
+
element,
|
|
43
|
+
ref.current
|
|
44
|
+
]);
|
|
45
|
+
return React.createElement(React.Fragment, null, React.createElement("div", {
|
|
46
|
+
style: {
|
|
47
|
+
...style,
|
|
48
|
+
visibility: isReady ? void 0 : "hidden"
|
|
49
|
+
},
|
|
50
|
+
className,
|
|
51
|
+
ref
|
|
52
|
+
}), !isReady && (fallback ?? null));
|
|
53
|
+
}
|
|
54
|
+
RegularReserveBalanceBreakdownElement.displayName = "RegularReserveBalanceBreakdownElement";
|
|
55
|
+
RegularReserveBalanceBreakdownElement.type = "regular-reserve-balance-breakdown-element";
|
|
56
|
+
export { RegularReserveBalanceBreakdownElement };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/payouts/elements/regular-reserve-balance-breakdown.tsx"],"sourcesContent":["\"use client\";\n\nimport type { RegularReserveBalanceBreakdownElementOptions } from \"@whop/embedded-components-vanilla-js/types\";\n\nimport React, { useEffect, useLayoutEffect, useMemo, useRef } from \"react\";\nimport { useElementSnapshot } from \"../../lib/use-element-snapshot\";\nimport { usePayoutsSession } from \"../session\";\n\nexport function RegularReserveBalanceBreakdownElement({\n\toptions = {},\n\tclassName,\n\tstyle,\n\tonReady,\n\tfallback,\n}: {\n\toptions?: RegularReserveBalanceBreakdownElementOptions;\n\tclassName?: string;\n\tstyle?: React.CSSProperties;\n\tonReady?: () => void;\n\tfallback?: React.ReactNode;\n}) {\n\tconst payoutsSession = usePayoutsSession();\n\tconst ref = useRef<HTMLDivElement>(null);\n\tconst element = useMemo(() => {\n\t\tif (!payoutsSession) return null;\n\t\tconst createdElement = payoutsSession.createElement(\n\t\t\tRegularReserveBalanceBreakdownElement,\n\t\t\toptions,\n\t\t);\n\t\treturn createdElement;\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [payoutsSession]);\n\n\tconst elementSnapshot = useElementSnapshot(element);\n\n\tconst isReady = elementSnapshot?.state === \"ready\";\n\n\tuseEffect(() => {\n\t\tif (!element) return;\n\t\telement.updateOptions(options);\n\t}, [options, element]);\n\n\tuseEffect(() => {\n\t\tif (!element || !onReady) return;\n\t\telement.on(\"ready\", onReady);\n\t\treturn () => {\n\t\t\telement.off(\"ready\", onReady);\n\t\t};\n\t}, [element, onReady]);\n\n\tuseLayoutEffect(() => {\n\t\tif (!element || !ref.current) return;\n\t\telement.mount(ref.current);\n\t\treturn () => {\n\t\t\telement.unmount();\n\t\t};\n\t}, [element, ref.current]);\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\tstyle={{ ...style, visibility: isReady ? undefined : \"hidden\" }}\n\t\t\t\tclassName={className}\n\t\t\t\tref={ref}\n\t\t\t/>\n\t\t\t{!isReady && (fallback ?? null)}\n\t\t</>\n\t);\n}\n\nRegularReserveBalanceBreakdownElement.displayName =\n\t\"RegularReserveBalanceBreakdownElement\";\nRegularReserveBalanceBreakdownElement.type =\n\t\"regular-reserve-balance-breakdown-element\" as const;\n"],"mappings":";;AAIA,OAAO,SAAS,WAAW,iBAAiB,SAAS,cAAc;AACnE,SAAS,0BAA0B;AACnC,SAAS,yBAAyB;AAE3B,SAAS,sCAAsC;AAAA,EACrD,UAAU,CAAC;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAMG;AACF,QAAM,iBAAiB,kBAAkB;AACzC,QAAM,MAAM,OAAuB,IAAI;AACvC,QAAM,UAAU,QAAQ,MAAM;AAC7B,QAAI,CAAC,eAAgB,QAAO;AAC5B,UAAM,iBAAiB,eAAe;AAAA,MACrC;AAAA,MACA;AAAA,IACD;AACA,WAAO;AAAA,EAER,GAAG,CAAC,cAAc,CAAC;AAEnB,QAAM,kBAAkB,mBAAmB,OAAO;AAElD,QAAM,UAAU,iBAAiB,UAAU;AAE3C,YAAU,MAAM;AACf,QAAI,CAAC,QAAS;AACd,YAAQ,cAAc,OAAO;AAAA,EAC9B,GAAG,CAAC,SAAS,OAAO,CAAC;AAErB,YAAU,MAAM;AACf,QAAI,CAAC,WAAW,CAAC,QAAS;AAC1B,YAAQ,GAAG,SAAS,OAAO;AAC3B,WAAO,MAAM;AACZ,cAAQ,IAAI,SAAS,OAAO;AAAA,IAC7B;AAAA,EACD,GAAG,CAAC,SAAS,OAAO,CAAC;AAErB,kBAAgB,MAAM;AACrB,QAAI,CAAC,WAAW,CAAC,IAAI,QAAS;AAC9B,YAAQ,MAAM,IAAI,OAAO;AACzB,WAAO,MAAM;AACZ,cAAQ,QAAQ;AAAA,IACjB;AAAA,EACD,GAAG,CAAC,SAAS,IAAI,OAAO,CAAC;AAEzB,SACC,0DACC;AAAA,IAAC;AAAA;AAAA,MACA,OAAO,EAAE,GAAG,OAAO,YAAY,UAAU,SAAY,SAAS;AAAA,MAC9D;AAAA,MACA;AAAA;AAAA,EACD,GACC,CAAC,YAAY,YAAY,KAC3B;AAEF;AAEA,sCAAsC,cACrC;AACD,sCAAsC,OACrC;","names":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ResetAccountElementOptions } from '@whop/embedded-components-vanilla-js/types';
|
|
2
|
+
import React__default from 'react';
|
|
3
|
+
|
|
4
|
+
declare function ResetAccountElement({ options, className, style, onReady, fallback, }: {
|
|
5
|
+
options?: ResetAccountElementOptions;
|
|
6
|
+
className?: string;
|
|
7
|
+
style?: React__default.CSSProperties;
|
|
8
|
+
onReady?: () => void;
|
|
9
|
+
fallback?: React__default.ReactNode;
|
|
10
|
+
}): React__default.JSX.Element;
|
|
11
|
+
declare namespace ResetAccountElement {
|
|
12
|
+
var displayName: string;
|
|
13
|
+
var type: "reset-account-element";
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export { ResetAccountElement };
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
"use client";
|
|
3
|
+
var __create = Object.create;
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
8
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
+
var __export = (target, all) => {
|
|
10
|
+
for (var name in all)
|
|
11
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from))
|
|
16
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
17
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
18
|
+
}
|
|
19
|
+
return to;
|
|
20
|
+
};
|
|
21
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
22
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
23
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
24
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
25
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
26
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
27
|
+
mod
|
|
28
|
+
));
|
|
29
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
30
|
+
var reset_account_exports = {};
|
|
31
|
+
__export(reset_account_exports, {
|
|
32
|
+
ResetAccountElement: () => ResetAccountElement
|
|
33
|
+
});
|
|
34
|
+
module.exports = __toCommonJS(reset_account_exports);
|
|
35
|
+
var import_react = __toESM(require("react"));
|
|
36
|
+
var import_use_element_snapshot = require("../../lib/use-element-snapshot");
|
|
37
|
+
var import_session = require("../session");
|
|
38
|
+
function ResetAccountElement({
|
|
39
|
+
options = {},
|
|
40
|
+
className,
|
|
41
|
+
style,
|
|
42
|
+
onReady,
|
|
43
|
+
fallback
|
|
44
|
+
}) {
|
|
45
|
+
const payoutsSession = (0, import_session.usePayoutsSession)();
|
|
46
|
+
const ref = (0, import_react.useRef)(null);
|
|
47
|
+
const element = (0, import_react.useMemo)(() => {
|
|
48
|
+
if (!payoutsSession) return null;
|
|
49
|
+
const createdElement = payoutsSession.createElement(
|
|
50
|
+
ResetAccountElement,
|
|
51
|
+
options
|
|
52
|
+
);
|
|
53
|
+
return createdElement;
|
|
54
|
+
}, [payoutsSession]);
|
|
55
|
+
const elementSnapshot = (0, import_use_element_snapshot.useElementSnapshot)(element);
|
|
56
|
+
const isReady = elementSnapshot?.state === "ready";
|
|
57
|
+
(0, import_react.useEffect)(() => {
|
|
58
|
+
if (!element) return;
|
|
59
|
+
element.updateOptions(options);
|
|
60
|
+
}, [options, element]);
|
|
61
|
+
(0, import_react.useEffect)(() => {
|
|
62
|
+
if (!element || !onReady) return;
|
|
63
|
+
element.on("ready", onReady);
|
|
64
|
+
return () => {
|
|
65
|
+
element.off("ready", onReady);
|
|
66
|
+
};
|
|
67
|
+
}, [element, onReady]);
|
|
68
|
+
(0, import_react.useLayoutEffect)(() => {
|
|
69
|
+
if (!element || !ref.current) return;
|
|
70
|
+
element.mount(ref.current);
|
|
71
|
+
return () => {
|
|
72
|
+
element.unmount();
|
|
73
|
+
};
|
|
74
|
+
}, [element, ref.current]);
|
|
75
|
+
return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(
|
|
76
|
+
"div",
|
|
77
|
+
{
|
|
78
|
+
style: { ...style, visibility: isReady ? void 0 : "hidden" },
|
|
79
|
+
className,
|
|
80
|
+
ref
|
|
81
|
+
}
|
|
82
|
+
), !isReady && (fallback ?? null));
|
|
83
|
+
}
|
|
84
|
+
ResetAccountElement.displayName = "ResetAccountElement";
|
|
85
|
+
ResetAccountElement.type = "reset-account-element";
|
|
86
|
+
//# sourceMappingURL=reset-account.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/payouts/elements/reset-account.tsx"],"sourcesContent":["\"use client\";\n\nimport type { ResetAccountElementOptions } from \"@whop/embedded-components-vanilla-js/types\";\n\nimport React, { useEffect, useLayoutEffect, useMemo, useRef } from \"react\";\nimport { useElementSnapshot } from \"../../lib/use-element-snapshot\";\nimport { usePayoutsSession } from \"../session\";\n\nexport function ResetAccountElement({\n\toptions = {},\n\tclassName,\n\tstyle,\n\tonReady,\n\tfallback,\n}: {\n\toptions?: ResetAccountElementOptions;\n\tclassName?: string;\n\tstyle?: React.CSSProperties;\n\tonReady?: () => void;\n\tfallback?: React.ReactNode;\n}) {\n\tconst payoutsSession = usePayoutsSession();\n\tconst ref = useRef<HTMLDivElement>(null);\n\tconst element = useMemo(() => {\n\t\tif (!payoutsSession) return null;\n\t\tconst createdElement = payoutsSession.createElement(\n\t\t\tResetAccountElement,\n\t\t\toptions,\n\t\t);\n\t\treturn createdElement;\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [payoutsSession]);\n\n\tconst elementSnapshot = useElementSnapshot(element);\n\n\tconst isReady = elementSnapshot?.state === \"ready\";\n\n\tuseEffect(() => {\n\t\tif (!element) return;\n\t\telement.updateOptions(options);\n\t}, [options, element]);\n\n\tuseEffect(() => {\n\t\tif (!element || !onReady) return;\n\t\telement.on(\"ready\", onReady);\n\t\treturn () => {\n\t\t\telement.off(\"ready\", onReady);\n\t\t};\n\t}, [element, onReady]);\n\n\tuseLayoutEffect(() => {\n\t\tif (!element || !ref.current) return;\n\t\telement.mount(ref.current);\n\t\treturn () => {\n\t\t\telement.unmount();\n\t\t};\n\t}, [element, ref.current]);\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\tstyle={{ ...style, visibility: isReady ? undefined : \"hidden\" }}\n\t\t\t\tclassName={className}\n\t\t\t\tref={ref}\n\t\t\t/>\n\t\t\t{!isReady && (fallback ?? null)}\n\t\t</>\n\t);\n}\n\nResetAccountElement.displayName = \"ResetAccountElement\";\nResetAccountElement.type = \"reset-account-element\" as const;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,mBAAmE;AACnE,kCAAmC;AACnC,qBAAkC;AAE3B,SAAS,oBAAoB;AAAA,EACnC,UAAU,CAAC;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAMG;AACF,QAAM,qBAAiB,kCAAkB;AACzC,QAAM,UAAM,qBAAuB,IAAI;AACvC,QAAM,cAAU,sBAAQ,MAAM;AAC7B,QAAI,CAAC,eAAgB,QAAO;AAC5B,UAAM,iBAAiB,eAAe;AAAA,MACrC;AAAA,MACA;AAAA,IACD;AACA,WAAO;AAAA,EAER,GAAG,CAAC,cAAc,CAAC;AAEnB,QAAM,sBAAkB,gDAAmB,OAAO;AAElD,QAAM,UAAU,iBAAiB,UAAU;AAE3C,8BAAU,MAAM;AACf,QAAI,CAAC,QAAS;AACd,YAAQ,cAAc,OAAO;AAAA,EAC9B,GAAG,CAAC,SAAS,OAAO,CAAC;AAErB,8BAAU,MAAM;AACf,QAAI,CAAC,WAAW,CAAC,QAAS;AAC1B,YAAQ,GAAG,SAAS,OAAO;AAC3B,WAAO,MAAM;AACZ,cAAQ,IAAI,SAAS,OAAO;AAAA,IAC7B;AAAA,EACD,GAAG,CAAC,SAAS,OAAO,CAAC;AAErB,oCAAgB,MAAM;AACrB,QAAI,CAAC,WAAW,CAAC,IAAI,QAAS;AAC9B,YAAQ,MAAM,IAAI,OAAO;AACzB,WAAO,MAAM;AACZ,cAAQ,QAAQ;AAAA,IACjB;AAAA,EACD,GAAG,CAAC,SAAS,IAAI,OAAO,CAAC;AAEzB,SACC,6BAAAA,QAAA,2BAAAA,QAAA,gBACC,6BAAAA,QAAA;AAAA,IAAC;AAAA;AAAA,MACA,OAAO,EAAE,GAAG,OAAO,YAAY,UAAU,SAAY,SAAS;AAAA,MAC9D;AAAA,MACA;AAAA;AAAA,EACD,GACC,CAAC,YAAY,YAAY,KAC3B;AAEF;AAEA,oBAAoB,cAAc;AAClC,oBAAoB,OAAO;","names":["React"]}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import "../../chunk-NSSMTXJJ.mjs";
|
|
3
|
+
import React, { useEffect, useLayoutEffect, useMemo, useRef } from "react";
|
|
4
|
+
import { useElementSnapshot } from "../../lib/use-element-snapshot.mjs";
|
|
5
|
+
import { usePayoutsSession } from "../session.mjs";
|
|
6
|
+
function ResetAccountElement({ options = {}, className, style, onReady, fallback }) {
|
|
7
|
+
const payoutsSession = usePayoutsSession();
|
|
8
|
+
const ref = useRef(null);
|
|
9
|
+
const element = useMemo(()=>{
|
|
10
|
+
if (!payoutsSession) return null;
|
|
11
|
+
const createdElement = payoutsSession.createElement(ResetAccountElement, options);
|
|
12
|
+
return createdElement;
|
|
13
|
+
}, [
|
|
14
|
+
payoutsSession
|
|
15
|
+
]);
|
|
16
|
+
const elementSnapshot = useElementSnapshot(element);
|
|
17
|
+
const isReady = elementSnapshot?.state === "ready";
|
|
18
|
+
useEffect(()=>{
|
|
19
|
+
if (!element) return;
|
|
20
|
+
element.updateOptions(options);
|
|
21
|
+
}, [
|
|
22
|
+
options,
|
|
23
|
+
element
|
|
24
|
+
]);
|
|
25
|
+
useEffect(()=>{
|
|
26
|
+
if (!element || !onReady) return;
|
|
27
|
+
element.on("ready", onReady);
|
|
28
|
+
return ()=>{
|
|
29
|
+
element.off("ready", onReady);
|
|
30
|
+
};
|
|
31
|
+
}, [
|
|
32
|
+
element,
|
|
33
|
+
onReady
|
|
34
|
+
]);
|
|
35
|
+
useLayoutEffect(()=>{
|
|
36
|
+
if (!element || !ref.current) return;
|
|
37
|
+
element.mount(ref.current);
|
|
38
|
+
return ()=>{
|
|
39
|
+
element.unmount();
|
|
40
|
+
};
|
|
41
|
+
}, [
|
|
42
|
+
element,
|
|
43
|
+
ref.current
|
|
44
|
+
]);
|
|
45
|
+
return React.createElement(React.Fragment, null, React.createElement("div", {
|
|
46
|
+
style: {
|
|
47
|
+
...style,
|
|
48
|
+
visibility: isReady ? void 0 : "hidden"
|
|
49
|
+
},
|
|
50
|
+
className,
|
|
51
|
+
ref
|
|
52
|
+
}), !isReady && (fallback ?? null));
|
|
53
|
+
}
|
|
54
|
+
ResetAccountElement.displayName = "ResetAccountElement";
|
|
55
|
+
ResetAccountElement.type = "reset-account-element";
|
|
56
|
+
export { ResetAccountElement };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/payouts/elements/reset-account.tsx"],"sourcesContent":["\"use client\";\n\nimport type { ResetAccountElementOptions } from \"@whop/embedded-components-vanilla-js/types\";\n\nimport React, { useEffect, useLayoutEffect, useMemo, useRef } from \"react\";\nimport { useElementSnapshot } from \"../../lib/use-element-snapshot\";\nimport { usePayoutsSession } from \"../session\";\n\nexport function ResetAccountElement({\n\toptions = {},\n\tclassName,\n\tstyle,\n\tonReady,\n\tfallback,\n}: {\n\toptions?: ResetAccountElementOptions;\n\tclassName?: string;\n\tstyle?: React.CSSProperties;\n\tonReady?: () => void;\n\tfallback?: React.ReactNode;\n}) {\n\tconst payoutsSession = usePayoutsSession();\n\tconst ref = useRef<HTMLDivElement>(null);\n\tconst element = useMemo(() => {\n\t\tif (!payoutsSession) return null;\n\t\tconst createdElement = payoutsSession.createElement(\n\t\t\tResetAccountElement,\n\t\t\toptions,\n\t\t);\n\t\treturn createdElement;\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [payoutsSession]);\n\n\tconst elementSnapshot = useElementSnapshot(element);\n\n\tconst isReady = elementSnapshot?.state === \"ready\";\n\n\tuseEffect(() => {\n\t\tif (!element) return;\n\t\telement.updateOptions(options);\n\t}, [options, element]);\n\n\tuseEffect(() => {\n\t\tif (!element || !onReady) return;\n\t\telement.on(\"ready\", onReady);\n\t\treturn () => {\n\t\t\telement.off(\"ready\", onReady);\n\t\t};\n\t}, [element, onReady]);\n\n\tuseLayoutEffect(() => {\n\t\tif (!element || !ref.current) return;\n\t\telement.mount(ref.current);\n\t\treturn () => {\n\t\t\telement.unmount();\n\t\t};\n\t}, [element, ref.current]);\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\tstyle={{ ...style, visibility: isReady ? undefined : \"hidden\" }}\n\t\t\t\tclassName={className}\n\t\t\t\tref={ref}\n\t\t\t/>\n\t\t\t{!isReady && (fallback ?? null)}\n\t\t</>\n\t);\n}\n\nResetAccountElement.displayName = \"ResetAccountElement\";\nResetAccountElement.type = \"reset-account-element\" as const;\n"],"mappings":";;AAIA,OAAO,SAAS,WAAW,iBAAiB,SAAS,cAAc;AACnE,SAAS,0BAA0B;AACnC,SAAS,yBAAyB;AAE3B,SAAS,oBAAoB;AAAA,EACnC,UAAU,CAAC;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAMG;AACF,QAAM,iBAAiB,kBAAkB;AACzC,QAAM,MAAM,OAAuB,IAAI;AACvC,QAAM,UAAU,QAAQ,MAAM;AAC7B,QAAI,CAAC,eAAgB,QAAO;AAC5B,UAAM,iBAAiB,eAAe;AAAA,MACrC;AAAA,MACA;AAAA,IACD;AACA,WAAO;AAAA,EAER,GAAG,CAAC,cAAc,CAAC;AAEnB,QAAM,kBAAkB,mBAAmB,OAAO;AAElD,QAAM,UAAU,iBAAiB,UAAU;AAE3C,YAAU,MAAM;AACf,QAAI,CAAC,QAAS;AACd,YAAQ,cAAc,OAAO;AAAA,EAC9B,GAAG,CAAC,SAAS,OAAO,CAAC;AAErB,YAAU,MAAM;AACf,QAAI,CAAC,WAAW,CAAC,QAAS;AAC1B,YAAQ,GAAG,SAAS,OAAO;AAC3B,WAAO,MAAM;AACZ,cAAQ,IAAI,SAAS,OAAO;AAAA,IAC7B;AAAA,EACD,GAAG,CAAC,SAAS,OAAO,CAAC;AAErB,kBAAgB,MAAM;AACrB,QAAI,CAAC,WAAW,CAAC,IAAI,QAAS;AAC9B,YAAQ,MAAM,IAAI,OAAO;AACzB,WAAO,MAAM;AACZ,cAAQ,QAAQ;AAAA,IACjB;AAAA,EACD,GAAG,CAAC,SAAS,IAAI,OAAO,CAAC;AAEzB,SACC,0DACC;AAAA,IAAC;AAAA;AAAA,MACA,OAAO,EAAE,GAAG,OAAO,YAAY,UAAU,SAAY,SAAS;AAAA,MAC9D;AAAA,MACA;AAAA;AAAA,EACD,GACC,CAAC,YAAY,YAAY,KAC3B;AAEF;AAEA,oBAAoB,cAAc;AAClC,oBAAoB,OAAO;","names":[]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { StatusBannerElementOptions, StatusBannerType } from '@whop/embedded-components-vanilla-js/types';
|
|
2
|
+
import React__default from 'react';
|
|
3
|
+
|
|
4
|
+
declare function StatusBannerElement({ options, className, style, onReady, onVerifyClick, onBannerChange, fallback, }: {
|
|
5
|
+
options?: StatusBannerElementOptions;
|
|
6
|
+
className?: string;
|
|
7
|
+
style?: React__default.CSSProperties;
|
|
8
|
+
onReady?: () => void;
|
|
9
|
+
onVerifyClick?: (ev: CustomEvent) => void;
|
|
10
|
+
onBannerChange?: (ev: CustomEvent, bannerType: StatusBannerType) => void;
|
|
11
|
+
fallback?: React__default.ReactNode;
|
|
12
|
+
}): React__default.JSX.Element;
|
|
13
|
+
declare namespace StatusBannerElement {
|
|
14
|
+
var displayName: string;
|
|
15
|
+
var type: "status-banner-element";
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export { StatusBannerElement };
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
"use client";
|
|
3
|
+
var __create = Object.create;
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
8
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
+
var __export = (target, all) => {
|
|
10
|
+
for (var name in all)
|
|
11
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from))
|
|
16
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
17
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
18
|
+
}
|
|
19
|
+
return to;
|
|
20
|
+
};
|
|
21
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
22
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
23
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
24
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
25
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
26
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
27
|
+
mod
|
|
28
|
+
));
|
|
29
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
30
|
+
var status_banner_exports = {};
|
|
31
|
+
__export(status_banner_exports, {
|
|
32
|
+
StatusBannerElement: () => StatusBannerElement
|
|
33
|
+
});
|
|
34
|
+
module.exports = __toCommonJS(status_banner_exports);
|
|
35
|
+
var import_react = __toESM(require("react"));
|
|
36
|
+
var import_use_element_snapshot = require("../../lib/use-element-snapshot");
|
|
37
|
+
var import_session = require("../session");
|
|
38
|
+
function StatusBannerElement({
|
|
39
|
+
options = {},
|
|
40
|
+
className,
|
|
41
|
+
style,
|
|
42
|
+
onReady,
|
|
43
|
+
onVerifyClick,
|
|
44
|
+
onBannerChange,
|
|
45
|
+
fallback
|
|
46
|
+
}) {
|
|
47
|
+
const payoutsSession = (0, import_session.usePayoutsSession)();
|
|
48
|
+
const ref = (0, import_react.useRef)(null);
|
|
49
|
+
const element = (0, import_react.useMemo)(() => {
|
|
50
|
+
if (!payoutsSession) return null;
|
|
51
|
+
const createdElement = payoutsSession.createElement(
|
|
52
|
+
StatusBannerElement,
|
|
53
|
+
options
|
|
54
|
+
);
|
|
55
|
+
return createdElement;
|
|
56
|
+
}, [payoutsSession]);
|
|
57
|
+
const elementSnapshot = (0, import_use_element_snapshot.useElementSnapshot)(element);
|
|
58
|
+
const isReady = elementSnapshot?.state === "ready";
|
|
59
|
+
(0, import_react.useEffect)(() => {
|
|
60
|
+
if (!element) return;
|
|
61
|
+
element.updateOptions(options);
|
|
62
|
+
}, [options, element]);
|
|
63
|
+
(0, import_react.useEffect)(() => {
|
|
64
|
+
if (!element || !onReady) return;
|
|
65
|
+
element.on("ready", onReady);
|
|
66
|
+
return () => {
|
|
67
|
+
element.off("ready", onReady);
|
|
68
|
+
};
|
|
69
|
+
}, [element, onReady]);
|
|
70
|
+
(0, import_react.useEffect)(() => {
|
|
71
|
+
if (!element || !onVerifyClick) return;
|
|
72
|
+
element.on("verifyClick", onVerifyClick);
|
|
73
|
+
return () => {
|
|
74
|
+
element.off("verifyClick", onVerifyClick);
|
|
75
|
+
};
|
|
76
|
+
}, [element, onVerifyClick]);
|
|
77
|
+
(0, import_react.useEffect)(() => {
|
|
78
|
+
if (!element || !onBannerChange) return;
|
|
79
|
+
element.on("bannerChange", onBannerChange);
|
|
80
|
+
return () => {
|
|
81
|
+
element.off("bannerChange", onBannerChange);
|
|
82
|
+
};
|
|
83
|
+
}, [element, onBannerChange]);
|
|
84
|
+
(0, import_react.useLayoutEffect)(() => {
|
|
85
|
+
if (!element || !ref.current) return;
|
|
86
|
+
element.mount(ref.current);
|
|
87
|
+
return () => {
|
|
88
|
+
element.unmount();
|
|
89
|
+
};
|
|
90
|
+
}, [element, ref.current]);
|
|
91
|
+
return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(
|
|
92
|
+
"div",
|
|
93
|
+
{
|
|
94
|
+
style: { ...style, visibility: isReady ? void 0 : "hidden" },
|
|
95
|
+
className,
|
|
96
|
+
ref
|
|
97
|
+
}
|
|
98
|
+
), !isReady && (fallback ?? null));
|
|
99
|
+
}
|
|
100
|
+
StatusBannerElement.displayName = "StatusBannerElement";
|
|
101
|
+
StatusBannerElement.type = "status-banner-element";
|
|
102
|
+
//# sourceMappingURL=status-banner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/payouts/elements/status-banner.tsx"],"sourcesContent":["\"use client\";\n\nimport type {\n\tStatusBannerElementOptions,\n\tStatusBannerType,\n} from \"@whop/embedded-components-vanilla-js/types\";\n\nimport React, { useEffect, useLayoutEffect, useMemo, useRef } from \"react\";\nimport { useElementSnapshot } from \"../../lib/use-element-snapshot\";\nimport { usePayoutsSession } from \"../session\";\n\nexport function StatusBannerElement({\n\toptions = {},\n\tclassName,\n\tstyle,\n\tonReady,\n\tonVerifyClick,\n\tonBannerChange,\n\tfallback,\n}: {\n\toptions?: StatusBannerElementOptions;\n\tclassName?: string;\n\tstyle?: React.CSSProperties;\n\tonReady?: () => void;\n\tonVerifyClick?: (ev: CustomEvent) => void;\n\tonBannerChange?: (ev: CustomEvent, bannerType: StatusBannerType) => void;\n\tfallback?: React.ReactNode;\n}) {\n\tconst payoutsSession = usePayoutsSession();\n\tconst ref = useRef<HTMLDivElement>(null);\n\tconst element = useMemo(() => {\n\t\tif (!payoutsSession) return null;\n\t\tconst createdElement = payoutsSession.createElement(\n\t\t\tStatusBannerElement,\n\t\t\toptions,\n\t\t);\n\t\treturn createdElement;\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [payoutsSession]);\n\n\tconst elementSnapshot = useElementSnapshot(element);\n\n\tconst isReady = elementSnapshot?.state === \"ready\";\n\n\tuseEffect(() => {\n\t\tif (!element) return;\n\t\telement.updateOptions(options);\n\t}, [options, element]);\n\n\tuseEffect(() => {\n\t\tif (!element || !onReady) return;\n\t\telement.on(\"ready\", onReady);\n\t\treturn () => {\n\t\t\telement.off(\"ready\", onReady);\n\t\t};\n\t}, [element, onReady]);\n\n\tuseEffect(() => {\n\t\tif (!element || !onVerifyClick) return;\n\t\telement.on(\"verifyClick\", onVerifyClick);\n\t\treturn () => {\n\t\t\telement.off(\"verifyClick\", onVerifyClick);\n\t\t};\n\t}, [element, onVerifyClick]);\n\n\tuseEffect(() => {\n\t\tif (!element || !onBannerChange) return;\n\t\telement.on(\"bannerChange\", onBannerChange);\n\t\treturn () => {\n\t\t\telement.off(\"bannerChange\", onBannerChange);\n\t\t};\n\t}, [element, onBannerChange]);\n\n\tuseLayoutEffect(() => {\n\t\tif (!element || !ref.current) return;\n\t\telement.mount(ref.current);\n\t\treturn () => {\n\t\t\telement.unmount();\n\t\t};\n\t}, [element, ref.current]);\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\tstyle={{ ...style, visibility: isReady ? undefined : \"hidden\" }}\n\t\t\t\tclassName={className}\n\t\t\t\tref={ref}\n\t\t\t/>\n\t\t\t{!isReady && (fallback ?? null)}\n\t\t</>\n\t);\n}\n\nStatusBannerElement.displayName = \"StatusBannerElement\";\nStatusBannerElement.type = \"status-banner-element\" as const;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,mBAAmE;AACnE,kCAAmC;AACnC,qBAAkC;AAE3B,SAAS,oBAAoB;AAAA,EACnC,UAAU,CAAC;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAQG;AACF,QAAM,qBAAiB,kCAAkB;AACzC,QAAM,UAAM,qBAAuB,IAAI;AACvC,QAAM,cAAU,sBAAQ,MAAM;AAC7B,QAAI,CAAC,eAAgB,QAAO;AAC5B,UAAM,iBAAiB,eAAe;AAAA,MACrC;AAAA,MACA;AAAA,IACD;AACA,WAAO;AAAA,EAER,GAAG,CAAC,cAAc,CAAC;AAEnB,QAAM,sBAAkB,gDAAmB,OAAO;AAElD,QAAM,UAAU,iBAAiB,UAAU;AAE3C,8BAAU,MAAM;AACf,QAAI,CAAC,QAAS;AACd,YAAQ,cAAc,OAAO;AAAA,EAC9B,GAAG,CAAC,SAAS,OAAO,CAAC;AAErB,8BAAU,MAAM;AACf,QAAI,CAAC,WAAW,CAAC,QAAS;AAC1B,YAAQ,GAAG,SAAS,OAAO;AAC3B,WAAO,MAAM;AACZ,cAAQ,IAAI,SAAS,OAAO;AAAA,IAC7B;AAAA,EACD,GAAG,CAAC,SAAS,OAAO,CAAC;AAErB,8BAAU,MAAM;AACf,QAAI,CAAC,WAAW,CAAC,cAAe;AAChC,YAAQ,GAAG,eAAe,aAAa;AACvC,WAAO,MAAM;AACZ,cAAQ,IAAI,eAAe,aAAa;AAAA,IACzC;AAAA,EACD,GAAG,CAAC,SAAS,aAAa,CAAC;AAE3B,8BAAU,MAAM;AACf,QAAI,CAAC,WAAW,CAAC,eAAgB;AACjC,YAAQ,GAAG,gBAAgB,cAAc;AACzC,WAAO,MAAM;AACZ,cAAQ,IAAI,gBAAgB,cAAc;AAAA,IAC3C;AAAA,EACD,GAAG,CAAC,SAAS,cAAc,CAAC;AAE5B,oCAAgB,MAAM;AACrB,QAAI,CAAC,WAAW,CAAC,IAAI,QAAS;AAC9B,YAAQ,MAAM,IAAI,OAAO;AACzB,WAAO,MAAM;AACZ,cAAQ,QAAQ;AAAA,IACjB;AAAA,EACD,GAAG,CAAC,SAAS,IAAI,OAAO,CAAC;AAEzB,SACC,6BAAAA,QAAA,2BAAAA,QAAA,gBACC,6BAAAA,QAAA;AAAA,IAAC;AAAA;AAAA,MACA,OAAO,EAAE,GAAG,OAAO,YAAY,UAAU,SAAY,SAAS;AAAA,MAC9D;AAAA,MACA;AAAA;AAAA,EACD,GACC,CAAC,YAAY,YAAY,KAC3B;AAEF;AAEA,oBAAoB,cAAc;AAClC,oBAAoB,OAAO;","names":["React"]}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import "../../chunk-NSSMTXJJ.mjs";
|
|
3
|
+
import React, { useEffect, useLayoutEffect, useMemo, useRef } from "react";
|
|
4
|
+
import { useElementSnapshot } from "../../lib/use-element-snapshot.mjs";
|
|
5
|
+
import { usePayoutsSession } from "../session.mjs";
|
|
6
|
+
function StatusBannerElement({ options = {}, className, style, onReady, onVerifyClick, onBannerChange, fallback }) {
|
|
7
|
+
const payoutsSession = usePayoutsSession();
|
|
8
|
+
const ref = useRef(null);
|
|
9
|
+
const element = useMemo(()=>{
|
|
10
|
+
if (!payoutsSession) return null;
|
|
11
|
+
const createdElement = payoutsSession.createElement(StatusBannerElement, options);
|
|
12
|
+
return createdElement;
|
|
13
|
+
}, [
|
|
14
|
+
payoutsSession
|
|
15
|
+
]);
|
|
16
|
+
const elementSnapshot = useElementSnapshot(element);
|
|
17
|
+
const isReady = elementSnapshot?.state === "ready";
|
|
18
|
+
useEffect(()=>{
|
|
19
|
+
if (!element) return;
|
|
20
|
+
element.updateOptions(options);
|
|
21
|
+
}, [
|
|
22
|
+
options,
|
|
23
|
+
element
|
|
24
|
+
]);
|
|
25
|
+
useEffect(()=>{
|
|
26
|
+
if (!element || !onReady) return;
|
|
27
|
+
element.on("ready", onReady);
|
|
28
|
+
return ()=>{
|
|
29
|
+
element.off("ready", onReady);
|
|
30
|
+
};
|
|
31
|
+
}, [
|
|
32
|
+
element,
|
|
33
|
+
onReady
|
|
34
|
+
]);
|
|
35
|
+
useEffect(()=>{
|
|
36
|
+
if (!element || !onVerifyClick) return;
|
|
37
|
+
element.on("verifyClick", onVerifyClick);
|
|
38
|
+
return ()=>{
|
|
39
|
+
element.off("verifyClick", onVerifyClick);
|
|
40
|
+
};
|
|
41
|
+
}, [
|
|
42
|
+
element,
|
|
43
|
+
onVerifyClick
|
|
44
|
+
]);
|
|
45
|
+
useEffect(()=>{
|
|
46
|
+
if (!element || !onBannerChange) return;
|
|
47
|
+
element.on("bannerChange", onBannerChange);
|
|
48
|
+
return ()=>{
|
|
49
|
+
element.off("bannerChange", onBannerChange);
|
|
50
|
+
};
|
|
51
|
+
}, [
|
|
52
|
+
element,
|
|
53
|
+
onBannerChange
|
|
54
|
+
]);
|
|
55
|
+
useLayoutEffect(()=>{
|
|
56
|
+
if (!element || !ref.current) return;
|
|
57
|
+
element.mount(ref.current);
|
|
58
|
+
return ()=>{
|
|
59
|
+
element.unmount();
|
|
60
|
+
};
|
|
61
|
+
}, [
|
|
62
|
+
element,
|
|
63
|
+
ref.current
|
|
64
|
+
]);
|
|
65
|
+
return React.createElement(React.Fragment, null, React.createElement("div", {
|
|
66
|
+
style: {
|
|
67
|
+
...style,
|
|
68
|
+
visibility: isReady ? void 0 : "hidden"
|
|
69
|
+
},
|
|
70
|
+
className,
|
|
71
|
+
ref
|
|
72
|
+
}), !isReady && (fallback ?? null));
|
|
73
|
+
}
|
|
74
|
+
StatusBannerElement.displayName = "StatusBannerElement";
|
|
75
|
+
StatusBannerElement.type = "status-banner-element";
|
|
76
|
+
export { StatusBannerElement };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/payouts/elements/status-banner.tsx"],"sourcesContent":["\"use client\";\n\nimport type {\n\tStatusBannerElementOptions,\n\tStatusBannerType,\n} from \"@whop/embedded-components-vanilla-js/types\";\n\nimport React, { useEffect, useLayoutEffect, useMemo, useRef } from \"react\";\nimport { useElementSnapshot } from \"../../lib/use-element-snapshot\";\nimport { usePayoutsSession } from \"../session\";\n\nexport function StatusBannerElement({\n\toptions = {},\n\tclassName,\n\tstyle,\n\tonReady,\n\tonVerifyClick,\n\tonBannerChange,\n\tfallback,\n}: {\n\toptions?: StatusBannerElementOptions;\n\tclassName?: string;\n\tstyle?: React.CSSProperties;\n\tonReady?: () => void;\n\tonVerifyClick?: (ev: CustomEvent) => void;\n\tonBannerChange?: (ev: CustomEvent, bannerType: StatusBannerType) => void;\n\tfallback?: React.ReactNode;\n}) {\n\tconst payoutsSession = usePayoutsSession();\n\tconst ref = useRef<HTMLDivElement>(null);\n\tconst element = useMemo(() => {\n\t\tif (!payoutsSession) return null;\n\t\tconst createdElement = payoutsSession.createElement(\n\t\t\tStatusBannerElement,\n\t\t\toptions,\n\t\t);\n\t\treturn createdElement;\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [payoutsSession]);\n\n\tconst elementSnapshot = useElementSnapshot(element);\n\n\tconst isReady = elementSnapshot?.state === \"ready\";\n\n\tuseEffect(() => {\n\t\tif (!element) return;\n\t\telement.updateOptions(options);\n\t}, [options, element]);\n\n\tuseEffect(() => {\n\t\tif (!element || !onReady) return;\n\t\telement.on(\"ready\", onReady);\n\t\treturn () => {\n\t\t\telement.off(\"ready\", onReady);\n\t\t};\n\t}, [element, onReady]);\n\n\tuseEffect(() => {\n\t\tif (!element || !onVerifyClick) return;\n\t\telement.on(\"verifyClick\", onVerifyClick);\n\t\treturn () => {\n\t\t\telement.off(\"verifyClick\", onVerifyClick);\n\t\t};\n\t}, [element, onVerifyClick]);\n\n\tuseEffect(() => {\n\t\tif (!element || !onBannerChange) return;\n\t\telement.on(\"bannerChange\", onBannerChange);\n\t\treturn () => {\n\t\t\telement.off(\"bannerChange\", onBannerChange);\n\t\t};\n\t}, [element, onBannerChange]);\n\n\tuseLayoutEffect(() => {\n\t\tif (!element || !ref.current) return;\n\t\telement.mount(ref.current);\n\t\treturn () => {\n\t\t\telement.unmount();\n\t\t};\n\t}, [element, ref.current]);\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\tstyle={{ ...style, visibility: isReady ? undefined : \"hidden\" }}\n\t\t\t\tclassName={className}\n\t\t\t\tref={ref}\n\t\t\t/>\n\t\t\t{!isReady && (fallback ?? null)}\n\t\t</>\n\t);\n}\n\nStatusBannerElement.displayName = \"StatusBannerElement\";\nStatusBannerElement.type = \"status-banner-element\" as const;\n"],"mappings":";;AAOA,OAAO,SAAS,WAAW,iBAAiB,SAAS,cAAc;AACnE,SAAS,0BAA0B;AACnC,SAAS,yBAAyB;AAE3B,SAAS,oBAAoB;AAAA,EACnC,UAAU,CAAC;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAQG;AACF,QAAM,iBAAiB,kBAAkB;AACzC,QAAM,MAAM,OAAuB,IAAI;AACvC,QAAM,UAAU,QAAQ,MAAM;AAC7B,QAAI,CAAC,eAAgB,QAAO;AAC5B,UAAM,iBAAiB,eAAe;AAAA,MACrC;AAAA,MACA;AAAA,IACD;AACA,WAAO;AAAA,EAER,GAAG,CAAC,cAAc,CAAC;AAEnB,QAAM,kBAAkB,mBAAmB,OAAO;AAElD,QAAM,UAAU,iBAAiB,UAAU;AAE3C,YAAU,MAAM;AACf,QAAI,CAAC,QAAS;AACd,YAAQ,cAAc,OAAO;AAAA,EAC9B,GAAG,CAAC,SAAS,OAAO,CAAC;AAErB,YAAU,MAAM;AACf,QAAI,CAAC,WAAW,CAAC,QAAS;AAC1B,YAAQ,GAAG,SAAS,OAAO;AAC3B,WAAO,MAAM;AACZ,cAAQ,IAAI,SAAS,OAAO;AAAA,IAC7B;AAAA,EACD,GAAG,CAAC,SAAS,OAAO,CAAC;AAErB,YAAU,MAAM;AACf,QAAI,CAAC,WAAW,CAAC,cAAe;AAChC,YAAQ,GAAG,eAAe,aAAa;AACvC,WAAO,MAAM;AACZ,cAAQ,IAAI,eAAe,aAAa;AAAA,IACzC;AAAA,EACD,GAAG,CAAC,SAAS,aAAa,CAAC;AAE3B,YAAU,MAAM;AACf,QAAI,CAAC,WAAW,CAAC,eAAgB;AACjC,YAAQ,GAAG,gBAAgB,cAAc;AACzC,WAAO,MAAM;AACZ,cAAQ,IAAI,gBAAgB,cAAc;AAAA,IAC3C;AAAA,EACD,GAAG,CAAC,SAAS,cAAc,CAAC;AAE5B,kBAAgB,MAAM;AACrB,QAAI,CAAC,WAAW,CAAC,IAAI,QAAS;AAC9B,YAAQ,MAAM,IAAI,OAAO;AACzB,WAAO,MAAM;AACZ,cAAQ,QAAQ;AAAA,IACjB;AAAA,EACD,GAAG,CAAC,SAAS,IAAI,OAAO,CAAC;AAEzB,SACC,0DACC;AAAA,IAAC;AAAA;AAAA,MACA,OAAO,EAAE,GAAG,OAAO,YAAY,UAAU,SAAY,SAAS;AAAA,MAC9D;AAAA,MACA;AAAA;AAAA,EACD,GACC,CAAC,YAAY,YAAY,KAC3B;AAEF;AAEA,oBAAoB,cAAc;AAClC,oBAAoB,OAAO;","names":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { TotalBalanceBreakdownElementOptions } from '@whop/embedded-components-vanilla-js/types';
|
|
2
|
+
import React__default from 'react';
|
|
3
|
+
|
|
4
|
+
declare function TotalBalanceBreakdownElement({ options, className, style, onReady, fallback, }: {
|
|
5
|
+
options?: TotalBalanceBreakdownElementOptions;
|
|
6
|
+
className?: string;
|
|
7
|
+
style?: React__default.CSSProperties;
|
|
8
|
+
onReady?: () => void;
|
|
9
|
+
fallback?: React__default.ReactNode;
|
|
10
|
+
}): React__default.JSX.Element;
|
|
11
|
+
declare namespace TotalBalanceBreakdownElement {
|
|
12
|
+
var displayName: string;
|
|
13
|
+
var type: "total-balance-breakdown-element";
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export { TotalBalanceBreakdownElement };
|