@schematichq/schematic-components 2.11.0 → 2.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/schematic-components.cjs.js +603 -338
- package/dist/schematic-components.d.ts +271 -39
- package/dist/schematic-components.esm.js +603 -338
- package/package.json +13 -13
|
@@ -5040,6 +5040,7 @@ var en_default = {
|
|
|
5040
5040
|
"An invoice is created when charges reach $X; the rest is billed monthly.": "An invoice is created when charges reach {{amount}}; the rest is billed monthly.",
|
|
5041
5041
|
"An unknown error occurred.": "An unknown error occurred.",
|
|
5042
5042
|
Billed: "Billed {{period}}",
|
|
5043
|
+
"Buy credits": "Buy credits",
|
|
5043
5044
|
"Cancel subscription": "Cancel subscription",
|
|
5044
5045
|
"Cannot change to this plan.": "{{reason, list(type: 'conjunction')}} usage is over the limit.",
|
|
5045
5046
|
"Cannot downgrade entitlement": "Cannot downgrade to a quantity lower than current usage.",
|
|
@@ -5094,6 +5095,7 @@ var en_default = {
|
|
|
5094
5095
|
Loading: "Loading",
|
|
5095
5096
|
"Manage plan": "Manage plan",
|
|
5096
5097
|
"Monthly total": "Monthly total",
|
|
5098
|
+
"Quarterly total": "Quarterly total",
|
|
5097
5099
|
Next: "Next",
|
|
5098
5100
|
"No invoices created yet": "No invoices created yet",
|
|
5099
5101
|
"No limit": "No limit",
|
|
@@ -5126,6 +5128,8 @@ var en_default = {
|
|
|
5126
5128
|
"Save payment method": "Save payment method",
|
|
5127
5129
|
"Save with yearly billing": "Save up to {{percent}}% with yearly billing",
|
|
5128
5130
|
"Saving with yearly billing": "You are saving {{percent}}% with yearly billing",
|
|
5131
|
+
"Save with quarterly billing": "Save up to {{percent}}% with quarterly billing",
|
|
5132
|
+
"Saving with quarterly billing": "You are saving {{percent}}% with quarterly billing",
|
|
5129
5133
|
"See all": "See all",
|
|
5130
5134
|
"See balance details": "See balance details",
|
|
5131
5135
|
"See less": "See less",
|
|
@@ -5199,6 +5203,7 @@ var en_default = {
|
|
|
5199
5203
|
"$X/Y units/period": "{{cost}}/{{size}} {{units}}/{{period}}",
|
|
5200
5204
|
day: "day",
|
|
5201
5205
|
month: "month",
|
|
5206
|
+
quarter: "quarter",
|
|
5202
5207
|
year: "year",
|
|
5203
5208
|
"one time": "one time",
|
|
5204
5209
|
"billing period": "billing period",
|
|
@@ -5207,6 +5212,7 @@ var en_default = {
|
|
|
5207
5212
|
use: "use",
|
|
5208
5213
|
used: "used",
|
|
5209
5214
|
"month, billed yearly": "month, billed yearly",
|
|
5215
|
+
"month, billed quarterly": "month, billed quarterly",
|
|
5210
5216
|
purchased: "purchased {{date}}",
|
|
5211
5217
|
usage: {
|
|
5212
5218
|
limited: "{{amount}} of {{allocation}} used",
|
|
@@ -6847,7 +6853,7 @@ var i;
|
|
|
6847
6853
|
var c2 = "undefined" != typeof process && void 0 !== process.env && (process.env.REACT_APP_SC_ATTR || process.env.SC_ATTR) || "data-styled";
|
|
6848
6854
|
var a2 = "active";
|
|
6849
6855
|
var l2 = "data-styled-version";
|
|
6850
|
-
var u2 = "6.4.
|
|
6856
|
+
var u2 = "6.4.2";
|
|
6851
6857
|
var h2 = "/*!sc*/\n";
|
|
6852
6858
|
var d2 = "undefined" != typeof window && "undefined" != typeof document;
|
|
6853
6859
|
function p2(e2) {
|
|
@@ -6856,7 +6862,7 @@ function p2(e2) {
|
|
|
6856
6862
|
if (void 0 !== t3 && "" !== t3) return "false" !== t3;
|
|
6857
6863
|
}
|
|
6858
6864
|
}
|
|
6859
|
-
var f2 = Boolean("boolean" == typeof SC_DISABLE_SPEEDY ? SC_DISABLE_SPEEDY : null !== (i = null !== (r2 = p2("REACT_APP_SC_DISABLE_SPEEDY")) && void 0 !== r2 ? r2 : p2("SC_DISABLE_SPEEDY")) && void 0 !== i ? i : "undefined"
|
|
6865
|
+
var f2 = Boolean("boolean" == typeof SC_DISABLE_SPEEDY ? SC_DISABLE_SPEEDY : null !== (i = null !== (r2 = p2("REACT_APP_SC_DISABLE_SPEEDY")) && void 0 !== r2 ? r2 : p2("SC_DISABLE_SPEEDY")) && void 0 !== i ? i : "undefined" != typeof process && void 0 !== process.env && true);
|
|
6860
6866
|
var m2 = "sc-keyframes-";
|
|
6861
6867
|
var g2 = true ? { 1: "Cannot create styled-component for component: %s.\n\n", 2: "Can't collect styles once you've consumed a `ServerStyleSheet`'s styles! `ServerStyleSheet` is a one off instance for each server-side render cycle.\n\n- Are you trying to reuse it across renders?\n- Are you accidentally calling collectStyles twice?\n\n", 3: "Streaming SSR is only supported in a Node.js environment; Please do not try to call this method in the browser.\n\n", 4: "The `StyleSheetManager` expects a valid target or sheet prop!\n\n- Does this error occur on the client and is your target falsy?\n- Does this error occur on the server and is the sheet falsy?\n\n", 5: "The clone method cannot be used on the client!\n\n- Are you running in a client-like environment on the server?\n- Are you trying to run SSR on the client?\n\n", 6: "Trying to insert a new style tag, but the given Node is unmounted!\n\n- Are you using a custom target that isn't mounted?\n- Does your document not have a valid head element?\n- Have you accidentally removed a style tag manually?\n\n", 7: 'ThemeProvider: Please return an object from your "theme" prop function, e.g.\n\n```js\ntheme={() => ({})}\n```\n\n', 8: 'ThemeProvider: Please make your "theme" prop an object.\n\n', 9: "Missing document `<head>`\n\n", 10: "Cannot find a StyleSheet instance. Usually this happens if there are multiple copies of styled-components loaded at once. Check out this issue for how to troubleshoot and fix the common cases where this situation can happen: https://github.com/styled-components/styled-components/issues/1941#issuecomment-417862021\n\n", 11: "_This error was replaced with a dev-time warning, it will be deleted for v4 final._ [createGlobalStyle] received children which will not be rendered. Please use the component without passing children elements.\n\n", 12: "It seems you are interpolating a keyframe declaration (%s) into an untagged string. Please wrap your string in the css\\`\\` helper which ensures the styles are injected correctly. See https://styled-components.com/docs/api#css\n\n", 13: "%s is not a styled component and cannot be referred to via component selector. See https://styled-components.com/docs/advanced#referring-to-other-components for more details.\n\n", 14: 'ThemeProvider: "theme" prop is required.\n\n', 15: "A stylis plugin has been supplied that is not named. We need a name for each plugin to be able to prevent styling collisions between different stylis configurations within the same app. Before you pass your plugin to `<StyleSheetManager stylisPlugins={[]}>`, please make sure each plugin is uniquely-named, e.g.\n\n```js\nObject.defineProperty(importedPlugin, 'name', { value: 'some-unique-name' });\n```\n\n", 16: "Reached the limit of how many styled components may be created at group %s.\nYou may only create up to 1,073,741,824 components. If you're creating components dynamically,\nas for instance in your render method then you may be running into this limitation.\n\n", 17: "CSSStyleSheet could not be found on HTMLStyleElement.\nHas styled-components' style tag been unmounted or altered by another script?\n\n", 18: "Accessing `useTheme` hook outside of a `<ThemeProvider>` element.\n\n```jsx\nimport { useTheme } from 'styled-components';\nexport function StyledCompoent({ children }) {\n const theme = useTheme();\n return <div style={{ width: theme.sizes.full }}>{children}</div>;\n}\n\nimport { StyledComponent } from './StyledComponent';\nimport { theme } from './theme';\nexport function App() {\n return (\n <ThemeProvider theme={theme}>\n <StyledComponent />\n </ThemeProvider>\n );\n}\n```\n\nIf you need access to the theme in an uncertain composition scenario, `React.useContext(ThemeContext)` will not emit an error if there is no `ThemeProvider` ancestor.\n" } : {};
|
|
6862
6868
|
function v2(e2, ...t3) {
|
|
@@ -6978,28 +6984,29 @@ function se2(e2, t3, n2) {
|
|
|
6978
6984
|
function re2(e2) {
|
|
6979
6985
|
return "function" == typeof e2;
|
|
6980
6986
|
}
|
|
6981
|
-
|
|
6982
|
-
|
|
6987
|
+
var ie2 = /* @__PURE__ */ Symbol.for("react.forward_ref");
|
|
6988
|
+
function ce2(e2) {
|
|
6989
|
+
return null != e2 && ("object" == typeof e2 || "function" == typeof e2) && e2.$$typeof === ie2 && "styledComponentId" in e2;
|
|
6983
6990
|
}
|
|
6984
|
-
function
|
|
6991
|
+
function ae2(e2, t3) {
|
|
6985
6992
|
return e2 && t3 ? e2 + " " + t3 : e2 || t3 || "";
|
|
6986
6993
|
}
|
|
6987
|
-
function
|
|
6994
|
+
function le2(e2, t3) {
|
|
6988
6995
|
return e2.join(t3 || "");
|
|
6989
6996
|
}
|
|
6990
|
-
function
|
|
6997
|
+
function ue2(e2) {
|
|
6991
6998
|
return null !== e2 && "object" == typeof e2 && e2.constructor.name === Object.name && !("props" in e2 && e2.$$typeof);
|
|
6992
6999
|
}
|
|
6993
|
-
function
|
|
6994
|
-
if (!n2 && !
|
|
6995
|
-
if (Array.isArray(t3)) for (let n3 = 0; n3 < t3.length; n3++) e2[n3] =
|
|
6996
|
-
else if (
|
|
7000
|
+
function he2(e2, t3, n2 = false) {
|
|
7001
|
+
if (!n2 && !ue2(e2) && !Array.isArray(e2)) return t3;
|
|
7002
|
+
if (Array.isArray(t3)) for (let n3 = 0; n3 < t3.length; n3++) e2[n3] = he2(e2[n3], t3[n3]);
|
|
7003
|
+
else if (ue2(t3)) for (const n3 in t3) e2[n3] = he2(e2[n3], t3[n3]);
|
|
6997
7004
|
return e2;
|
|
6998
7005
|
}
|
|
6999
|
-
function
|
|
7006
|
+
function de2(e2, t3) {
|
|
7000
7007
|
Object.defineProperty(e2, "toString", { value: t3 });
|
|
7001
7008
|
}
|
|
7002
|
-
var
|
|
7009
|
+
var pe2 = class {
|
|
7003
7010
|
constructor(e2) {
|
|
7004
7011
|
this.groupSizes = new Uint32Array(512), this.length = 512, this.tag = e2, this._cGroup = 0, this._cIndex = 0;
|
|
7005
7012
|
}
|
|
@@ -7038,66 +7045,66 @@ var de2 = class {
|
|
|
7038
7045
|
return t3;
|
|
7039
7046
|
}
|
|
7040
7047
|
};
|
|
7041
|
-
var
|
|
7042
|
-
var
|
|
7043
|
-
var
|
|
7044
|
-
var
|
|
7048
|
+
var fe2 = `style[${c2}][${l2}="${u2}"]`;
|
|
7049
|
+
var me2 = new RegExp(`^${c2}\\.g(\\d+)\\[id="([\\w\\d-]+)"\\].*?"([^"]*)`);
|
|
7050
|
+
var ye2 = (e2) => "undefined" != typeof ShadowRoot && e2 instanceof ShadowRoot || "host" in e2 && 11 === e2.nodeType;
|
|
7051
|
+
var ge2 = (e2) => {
|
|
7045
7052
|
if (!e2) return document;
|
|
7046
|
-
if (
|
|
7053
|
+
if (ye2(e2)) return e2;
|
|
7047
7054
|
if ("getRootNode" in e2) {
|
|
7048
7055
|
const t3 = e2.getRootNode();
|
|
7049
|
-
if (
|
|
7056
|
+
if (ye2(t3)) return t3;
|
|
7050
7057
|
}
|
|
7051
7058
|
return document;
|
|
7052
7059
|
};
|
|
7053
|
-
var
|
|
7060
|
+
var ve2 = (e2, t3, n2) => {
|
|
7054
7061
|
const o2 = n2.split(",");
|
|
7055
7062
|
let s;
|
|
7056
7063
|
for (let n3 = 0, r3 = o2.length; n3 < r3; n3++) (s = o2[n3]) && e2.registerName(t3, s);
|
|
7057
7064
|
};
|
|
7058
|
-
var
|
|
7065
|
+
var Se2 = (e2, t3) => {
|
|
7059
7066
|
var n2;
|
|
7060
7067
|
const o2 = (null !== (n2 = t3.textContent) && void 0 !== n2 ? n2 : "").split(h2), s = [];
|
|
7061
7068
|
for (let t4 = 0, n3 = o2.length; t4 < n3; t4++) {
|
|
7062
7069
|
const n4 = o2[t4].trim();
|
|
7063
7070
|
if (!n4) continue;
|
|
7064
|
-
const r3 = n4.match(
|
|
7071
|
+
const r3 = n4.match(me2);
|
|
7065
7072
|
if (r3) {
|
|
7066
7073
|
const t5 = 0 | parseInt(r3[1], 10), n5 = r3[2];
|
|
7067
|
-
0 !== t5 && (E2(n5, t5),
|
|
7074
|
+
0 !== t5 && (E2(n5, t5), ve2(e2, n5, r3[3]), e2.getTag().insertRules(t5, s)), s.length = 0;
|
|
7068
7075
|
} else s.push(n4);
|
|
7069
7076
|
}
|
|
7070
7077
|
};
|
|
7071
|
-
var
|
|
7072
|
-
const t3 =
|
|
7078
|
+
var be2 = (e2) => {
|
|
7079
|
+
const t3 = ge2(e2.options.target).querySelectorAll(fe2);
|
|
7073
7080
|
for (let n2 = 0, o2 = t3.length; n2 < o2; n2++) {
|
|
7074
7081
|
const o3 = t3[n2];
|
|
7075
|
-
o3 && o3.getAttribute(c2) !== a2 && (
|
|
7082
|
+
o3 && o3.getAttribute(c2) !== a2 && (Se2(e2, o3), o3.parentNode && o3.parentNode.removeChild(o3));
|
|
7076
7083
|
}
|
|
7077
7084
|
};
|
|
7078
|
-
var
|
|
7079
|
-
function
|
|
7080
|
-
if (false !==
|
|
7085
|
+
var we2 = false;
|
|
7086
|
+
function Ne2() {
|
|
7087
|
+
if (false !== we2) return we2;
|
|
7081
7088
|
if ("undefined" != typeof document) {
|
|
7082
7089
|
const e2 = document.head.querySelector('meta[property="csp-nonce"]');
|
|
7083
|
-
if (e2) return
|
|
7090
|
+
if (e2) return we2 = e2.nonce || e2.getAttribute("content") || void 0;
|
|
7084
7091
|
const t3 = document.head.querySelector('meta[name="sc-nonce"]');
|
|
7085
|
-
if (t3) return
|
|
7092
|
+
if (t3) return we2 = t3.getAttribute("content") || void 0;
|
|
7086
7093
|
}
|
|
7087
|
-
return
|
|
7094
|
+
return we2 = "undefined" != typeof __webpack_nonce__ ? __webpack_nonce__ : void 0;
|
|
7088
7095
|
}
|
|
7089
|
-
var
|
|
7096
|
+
var Ce2 = (e2, t3) => {
|
|
7090
7097
|
const n2 = document.head, o2 = e2 || n2, s = document.createElement("style"), r3 = ((e3) => {
|
|
7091
7098
|
const t4 = Array.from(e3.querySelectorAll(`style[${c2}]`));
|
|
7092
7099
|
return t4[t4.length - 1];
|
|
7093
7100
|
})(o2), i2 = void 0 !== r3 ? r3.nextSibling : null;
|
|
7094
7101
|
s.setAttribute(c2, a2), s.setAttribute(l2, u2);
|
|
7095
|
-
const h3 = t3 ||
|
|
7102
|
+
const h3 = t3 || Ne2();
|
|
7096
7103
|
return h3 && s.setAttribute("nonce", h3), o2.insertBefore(s, i2), s;
|
|
7097
7104
|
};
|
|
7098
|
-
var
|
|
7105
|
+
var Oe2 = class {
|
|
7099
7106
|
constructor(e2, t3) {
|
|
7100
|
-
this.element =
|
|
7107
|
+
this.element = Ce2(e2, t3), this.element.appendChild(document.createTextNode("")), this.sheet = ((e3) => {
|
|
7101
7108
|
var t4;
|
|
7102
7109
|
if (e3.sheet) return e3.sheet;
|
|
7103
7110
|
const n2 = null !== (t4 = e3.getRootNode().styleSheets) && void 0 !== t4 ? t4 : document.styleSheets;
|
|
@@ -7123,9 +7130,9 @@ var Ce2 = class {
|
|
|
7123
7130
|
return t3 && t3.cssText ? t3.cssText : "";
|
|
7124
7131
|
}
|
|
7125
7132
|
};
|
|
7126
|
-
var
|
|
7133
|
+
var Ee2 = class {
|
|
7127
7134
|
constructor(e2, t3) {
|
|
7128
|
-
this.element =
|
|
7135
|
+
this.element = Ce2(e2, t3), this.nodes = this.element.childNodes, this.length = 0;
|
|
7129
7136
|
}
|
|
7130
7137
|
insertRule(e2, t3) {
|
|
7131
7138
|
if (e2 <= this.length && e2 >= 0) {
|
|
@@ -7141,14 +7148,14 @@ var Oe2 = class {
|
|
|
7141
7148
|
return e2 < this.length ? this.nodes[e2].textContent : "";
|
|
7142
7149
|
}
|
|
7143
7150
|
};
|
|
7144
|
-
var
|
|
7145
|
-
var
|
|
7146
|
-
var
|
|
7151
|
+
var Ae2 = d2;
|
|
7152
|
+
var Pe2 = { isServer: !d2, useCSSOMInjection: !f2 };
|
|
7153
|
+
var _e2 = class __e {
|
|
7147
7154
|
static registerId(e2) {
|
|
7148
7155
|
return C2(e2);
|
|
7149
7156
|
}
|
|
7150
7157
|
constructor(e2 = $2, t3 = {}, n2) {
|
|
7151
|
-
this.options = Object.assign(Object.assign({},
|
|
7158
|
+
this.options = Object.assign(Object.assign({}, Pe2), e2), this.gs = t3, this.keyframeIds = /* @__PURE__ */ new Set(), this.names = new Map(n2), this.server = !!e2.isServer, !this.server && d2 && Ae2 && (Ae2 = false, be2(this)), de2(this, () => ((e3) => {
|
|
7152
7159
|
const t4 = e3.getTag(), { length: n3 } = t4;
|
|
7153
7160
|
let o2 = "";
|
|
7154
7161
|
for (let s = 0; s < n3; s++) {
|
|
@@ -7167,17 +7174,17 @@ var Pe2 = class _Pe {
|
|
|
7167
7174
|
})(this));
|
|
7168
7175
|
}
|
|
7169
7176
|
rehydrate() {
|
|
7170
|
-
!this.server && d2 &&
|
|
7177
|
+
!this.server && d2 && be2(this);
|
|
7171
7178
|
}
|
|
7172
7179
|
reconstructWithOptions(e2, t3 = true) {
|
|
7173
|
-
const n2 = new
|
|
7174
|
-
return n2.keyframeIds = new Set(this.keyframeIds), !this.server && d2 && e2.target !== this.options.target &&
|
|
7180
|
+
const n2 = new __e(Object.assign(Object.assign({}, this.options), e2), this.gs, t3 && this.names || void 0);
|
|
7181
|
+
return n2.keyframeIds = new Set(this.keyframeIds), !this.server && d2 && e2.target !== this.options.target && ge2(this.options.target) !== ge2(e2.target) && be2(n2), n2;
|
|
7175
7182
|
}
|
|
7176
7183
|
allocateGSInstance(e2) {
|
|
7177
7184
|
return this.gs[e2] = (this.gs[e2] || 0) + 1;
|
|
7178
7185
|
}
|
|
7179
7186
|
getTag() {
|
|
7180
|
-
return this.tag || (this.tag = (e2 = (({ useCSSOMInjection: e3, target: t3, nonce: n2 }) => e3 ? new
|
|
7187
|
+
return this.tag || (this.tag = (e2 = (({ useCSSOMInjection: e3, target: t3, nonce: n2 }) => e3 ? new Oe2(t3, n2) : new Ee2(t3, n2))(this.options), new pe2(e2)));
|
|
7181
7188
|
var e2;
|
|
7182
7189
|
}
|
|
7183
7190
|
hasNameForId(e2, t3) {
|
|
@@ -7202,13 +7209,13 @@ var Pe2 = class _Pe {
|
|
|
7202
7209
|
this.tag = void 0;
|
|
7203
7210
|
}
|
|
7204
7211
|
};
|
|
7205
|
-
var
|
|
7206
|
-
var
|
|
7207
|
-
function
|
|
7208
|
-
return null == t3 || "boolean" == typeof t3 || "" === t3 ? "" : "number" != typeof t3 || 0 === t3 || e2 in
|
|
7212
|
+
var Ie2 = /* @__PURE__ */ new WeakSet();
|
|
7213
|
+
var $e2 = { animationIterationCount: 1, aspectRatio: 1, borderImageOutset: 1, borderImageSlice: 1, borderImageWidth: 1, columnCount: 1, columns: 1, flex: 1, flexGrow: 1, flexShrink: 1, gridRow: 1, gridRowEnd: 1, gridRowSpan: 1, gridRowStart: 1, gridColumn: 1, gridColumnEnd: 1, gridColumnSpan: 1, gridColumnStart: 1, fontWeight: 1, lineHeight: 1, opacity: 1, order: 1, orphans: 1, scale: 1, tabSize: 1, widows: 1, zIndex: 1, zoom: 1, WebkitLineClamp: 1, fillOpacity: 1, floodOpacity: 1, stopOpacity: 1, strokeDasharray: 1, strokeDashoffset: 1, strokeMiterlimit: 1, strokeOpacity: 1, strokeWidth: 1 };
|
|
7214
|
+
function Re2(e2, t3) {
|
|
7215
|
+
return null == t3 || "boolean" == typeof t3 || "" === t3 ? "" : "number" != typeof t3 || 0 === t3 || e2 in $e2 || e2.startsWith("--") ? String(t3).trim() : t3 + "px";
|
|
7209
7216
|
}
|
|
7210
|
-
var
|
|
7211
|
-
function
|
|
7217
|
+
var je2 = 47;
|
|
7218
|
+
function xe2(e2) {
|
|
7212
7219
|
if (45 === e2.charCodeAt(0) && 45 === e2.charCodeAt(1)) return e2;
|
|
7213
7220
|
let t3 = "";
|
|
7214
7221
|
for (let n2 = 0; n2 < e2.length; n2++) {
|
|
@@ -7217,50 +7224,50 @@ function je2(e2) {
|
|
|
7217
7224
|
}
|
|
7218
7225
|
return t3.startsWith("ms-") ? "-" + t3 : t3;
|
|
7219
7226
|
}
|
|
7220
|
-
var
|
|
7221
|
-
function Te2(e2) {
|
|
7222
|
-
return "object" == typeof e2 && null !== e2 && xe2 in e2;
|
|
7223
|
-
}
|
|
7227
|
+
var Te2 = /* @__PURE__ */ Symbol.for("sc-keyframes");
|
|
7224
7228
|
function ke2(e2) {
|
|
7225
|
-
return
|
|
7229
|
+
return "object" == typeof e2 && null !== e2 && Te2 in e2;
|
|
7226
7230
|
}
|
|
7227
|
-
|
|
7228
|
-
|
|
7229
|
-
function Me2(e2) {
|
|
7230
|
-
return e2.$$typeof === Ve2;
|
|
7231
|
+
function De2(e2) {
|
|
7232
|
+
return re2(e2) && !(e2.prototype && e2.prototype.isReactComponent);
|
|
7231
7233
|
}
|
|
7234
|
+
var Ve2 = (e2) => null == e2 || false === e2 || "" === e2;
|
|
7235
|
+
var Me2 = /* @__PURE__ */ Symbol.for("react.client.reference");
|
|
7232
7236
|
function Ge2(e2) {
|
|
7237
|
+
return e2.$$typeof === Me2;
|
|
7238
|
+
}
|
|
7239
|
+
function Fe2(e2) {
|
|
7233
7240
|
const t3 = e2.$$id, n2 = (t3 && t3.includes("#") ? t3.split("#").pop() : t3) || e2.name || "unknown";
|
|
7234
7241
|
console.warn(`Interpolating a client component (${n2}) as a selector is not supported in server components. The component selector pattern requires access to the component's internal class name, which is not available across the server/client boundary. Use a plain CSS class selector instead.`);
|
|
7235
7242
|
}
|
|
7236
|
-
function
|
|
7243
|
+
function ze2(e2, t3) {
|
|
7237
7244
|
for (const n2 in e2) {
|
|
7238
7245
|
const o2 = e2[n2];
|
|
7239
|
-
e2.hasOwnProperty(n2) && !
|
|
7246
|
+
e2.hasOwnProperty(n2) && !Ve2(o2) && (Array.isArray(o2) && Ie2.has(o2) || re2(o2) ? t3.push(xe2(n2) + ":", o2, ";") : ue2(o2) ? (t3.push(n2 + " {"), ze2(o2, t3), t3.push("}")) : t3.push(xe2(n2) + ": " + Re2(n2, o2) + ";"));
|
|
7240
7247
|
}
|
|
7241
7248
|
}
|
|
7242
|
-
function
|
|
7243
|
-
if (
|
|
7249
|
+
function We2(e2, t3, n2, o2, s = []) {
|
|
7250
|
+
if (Ve2(e2)) return s;
|
|
7244
7251
|
const r3 = typeof e2;
|
|
7245
7252
|
if ("string" === r3) return s.push(e2), s;
|
|
7246
7253
|
if ("function" === r3) {
|
|
7247
|
-
if (
|
|
7248
|
-
if (
|
|
7254
|
+
if (Ge2(e2)) return Fe2(e2), s;
|
|
7255
|
+
if (De2(e2) && t3) {
|
|
7249
7256
|
const r4 = e2(t3);
|
|
7250
|
-
return "object" != typeof r4 || Array.isArray(r4) ||
|
|
7257
|
+
return "object" != typeof r4 || Array.isArray(r4) || ke2(r4) || ue2(r4) || null === r4 || console.error(`${W2(e2)} is not a styled component and cannot be referred to via component selector. See https://styled-components.com/docs/advanced#referring-to-other-components for more details.`), We2(r4, t3, n2, o2, s);
|
|
7251
7258
|
}
|
|
7252
7259
|
return s.push(e2), s;
|
|
7253
7260
|
}
|
|
7254
7261
|
if (Array.isArray(e2)) {
|
|
7255
|
-
for (let r4 = 0; r4 < e2.length; r4++)
|
|
7262
|
+
for (let r4 = 0; r4 < e2.length; r4++) We2(e2[r4], t3, n2, o2, s);
|
|
7256
7263
|
return s;
|
|
7257
7264
|
}
|
|
7258
|
-
return
|
|
7265
|
+
return ce2(e2) ? (s.push(`.${e2.styledComponentId}`), s) : ke2(e2) ? (n2 ? (e2.inject(n2, o2), s.push(e2.getName(o2))) : s.push(e2), s) : Ge2(e2) ? (Fe2(e2), s) : ue2(e2) ? e2.toString !== Object.prototype.toString ? (s.push(e2.toString()), s) : (ze2(e2, s), s) : (s.push(e2.toString()), s);
|
|
7259
7266
|
}
|
|
7260
|
-
var
|
|
7261
|
-
var
|
|
7267
|
+
var Le2 = F2(u2);
|
|
7268
|
+
var Be2 = class {
|
|
7262
7269
|
constructor(e2, t3, n2) {
|
|
7263
|
-
this.rules = e2, this.componentId = t3, this.baseHash = G2(
|
|
7270
|
+
this.rules = e2, this.componentId = t3, this.baseHash = G2(Le2, t3), this.baseStyle = n2, _e2.registerId(t3);
|
|
7264
7271
|
}
|
|
7265
7272
|
generateAndInjectStyles(e2, t3, n2) {
|
|
7266
7273
|
let o2 = this.baseStyle ? this.baseStyle.generateAndInjectStyles(e2, t3, n2) : "";
|
|
@@ -7269,10 +7276,10 @@ var Le2 = class {
|
|
|
7269
7276
|
for (let o3 = 0; o3 < this.rules.length; o3++) {
|
|
7270
7277
|
const r3 = this.rules[o3];
|
|
7271
7278
|
if ("string" == typeof r3) s += r3;
|
|
7272
|
-
else if (r3) if (
|
|
7279
|
+
else if (r3) if (De2(r3)) {
|
|
7273
7280
|
const o4 = r3(e2);
|
|
7274
|
-
"string" == typeof o4 ? s += o4 : null != o4 && false !== o4 && ("object" != typeof o4 || Array.isArray(o4) ||
|
|
7275
|
-
} else s +=
|
|
7281
|
+
"string" == typeof o4 ? s += o4 : null != o4 && false !== o4 && ("object" != typeof o4 || Array.isArray(o4) || ke2(o4) || ue2(o4) || console.error(`${W2(r3)} is not a styled component and cannot be referred to via component selector. See https://styled-components.com/docs/advanced#referring-to-other-components for more details.`), s += le2(We2(o4, e2, t3, n2)));
|
|
7282
|
+
} else s += le2(We2(r3, e2, t3, n2));
|
|
7276
7283
|
}
|
|
7277
7284
|
if (s) {
|
|
7278
7285
|
this.dynamicNameCache || (this.dynamicNameCache = /* @__PURE__ */ new Map());
|
|
@@ -7289,25 +7296,25 @@ var Le2 = class {
|
|
|
7289
7296
|
const e4 = n2(s, "." + r3, void 0, this.componentId);
|
|
7290
7297
|
t3.insertRules(this.componentId, r3, e4);
|
|
7291
7298
|
}
|
|
7292
|
-
o2 =
|
|
7299
|
+
o2 = ae2(o2, r3);
|
|
7293
7300
|
}
|
|
7294
7301
|
}
|
|
7295
7302
|
return o2;
|
|
7296
7303
|
}
|
|
7297
7304
|
};
|
|
7298
|
-
var
|
|
7299
|
-
function
|
|
7305
|
+
var qe2 = /&/g;
|
|
7306
|
+
function He2(e2, t3) {
|
|
7300
7307
|
let n2 = 0;
|
|
7301
7308
|
for (; --t3 >= 0 && 92 === e2.charCodeAt(t3); ) n2++;
|
|
7302
7309
|
return !(1 & ~n2);
|
|
7303
7310
|
}
|
|
7304
|
-
function
|
|
7311
|
+
function Ye2(e2) {
|
|
7305
7312
|
const t3 = e2.length;
|
|
7306
7313
|
let n2 = "", o2 = 0, s = 0, r3 = 0, i2 = false, c3 = false;
|
|
7307
7314
|
for (let a3 = 0; a3 < t3; a3++) {
|
|
7308
7315
|
const l3 = e2.charCodeAt(a3);
|
|
7309
|
-
if (0 !== r3 || i2 || l3 !==
|
|
7310
|
-
else if (34 !== l3 && 39 !== l3 ||
|
|
7316
|
+
if (0 !== r3 || i2 || l3 !== je2 || 42 !== e2.charCodeAt(a3 + 1)) if (i2) 42 === l3 && e2.charCodeAt(a3 + 1) === je2 && (i2 = false, a3++);
|
|
7317
|
+
else if (34 !== l3 && 39 !== l3 || He2(e2, a3)) {
|
|
7311
7318
|
if (0 === r3) if (123 === l3) s++;
|
|
7312
7319
|
else if (125 === l3) {
|
|
7313
7320
|
if (s--, s < 0) {
|
|
@@ -7328,7 +7335,7 @@ function He2(e2) {
|
|
|
7328
7335
|
}
|
|
7329
7336
|
return c3 || 0 !== s || 0 !== r3 ? (o2 < t3 && 0 === s && 0 === r3 && (n2 += e2.substring(o2)), n2) : e2;
|
|
7330
7337
|
}
|
|
7331
|
-
function
|
|
7338
|
+
function Ue2(e2, t3) {
|
|
7332
7339
|
const n2 = t3 + " ", o2 = "," + n2;
|
|
7333
7340
|
for (let s = 0; s < e2.length; s++) {
|
|
7334
7341
|
const r3 = e2[s];
|
|
@@ -7338,15 +7345,15 @@ function Ye2(e2, t3) {
|
|
|
7338
7345
|
for (let o3 = 0; o3 < e3.length; o3++) t4[o3] = n2 + e3[o3];
|
|
7339
7346
|
r3.props = t4;
|
|
7340
7347
|
}
|
|
7341
|
-
Array.isArray(r3.children) && "@keyframes" !== r3.type &&
|
|
7348
|
+
Array.isArray(r3.children) && "@keyframes" !== r3.type && Ue2(r3.children, t3);
|
|
7342
7349
|
}
|
|
7343
7350
|
return e2;
|
|
7344
7351
|
}
|
|
7345
|
-
function
|
|
7352
|
+
function Je2({ options: e2 = $2, plugins: t3 = I2 } = $2) {
|
|
7346
7353
|
let n2, s, r3;
|
|
7347
7354
|
const i2 = (e3, t4, o2) => o2.startsWith(s) && o2.endsWith(s) && o2.replaceAll(s, "").length > 0 ? `.${n2}` : e3, c3 = t3.slice();
|
|
7348
7355
|
c3.push((e3) => {
|
|
7349
|
-
e3.type === RULESET && e3.value.includes("&") && (r3 || (r3 = new RegExp(`\\${s}\\b`, "g")), e3.props[0] = e3.props[0].replace(
|
|
7356
|
+
e3.type === RULESET && e3.value.includes("&") && (r3 || (r3 = new RegExp(`\\${s}\\b`, "g")), e3.props[0] = e3.props[0].replace(qe2, s).replace(r3, i2));
|
|
7350
7357
|
}), e2.prefix && c3.push(prefixer), c3.push(stringify);
|
|
7351
7358
|
let a3 = [];
|
|
7352
7359
|
const l3 = middleware(c3.concat(rulesheet((e3) => a3.push(e3)))), u3 = (t4, i3 = "", c4 = "", u4 = "&") => {
|
|
@@ -7354,17 +7361,17 @@ function Ue2({ options: e2 = $2, plugins: t3 = I2 } = $2) {
|
|
|
7354
7361
|
const h4 = (function(e3) {
|
|
7355
7362
|
const t5 = -1 !== e3.indexOf("//"), n3 = -1 !== e3.indexOf("}");
|
|
7356
7363
|
if (!t5 && !n3) return e3;
|
|
7357
|
-
if (!t5) return
|
|
7364
|
+
if (!t5) return Ye2(e3);
|
|
7358
7365
|
const o2 = e3.length;
|
|
7359
7366
|
let s2 = "", r4 = 0, i4 = 0, c5 = 0, a4 = 0, l4 = 0, u5 = false;
|
|
7360
7367
|
for (; i4 < o2; ) {
|
|
7361
7368
|
const t6 = e3.charCodeAt(i4);
|
|
7362
|
-
if (34 !== t6 && 39 !== t6 ||
|
|
7363
|
-
for (i4 += 2; i4 + 1 < o2 && (42 !== e3.charCodeAt(i4) || e3.charCodeAt(i4 + 1) !==
|
|
7369
|
+
if (34 !== t6 && 39 !== t6 || He2(e3, i4)) if (0 === c5) if (t6 === je2 && i4 + 1 < o2 && 42 === e3.charCodeAt(i4 + 1)) {
|
|
7370
|
+
for (i4 += 2; i4 + 1 < o2 && (42 !== e3.charCodeAt(i4) || e3.charCodeAt(i4 + 1) !== je2); ) i4++;
|
|
7364
7371
|
i4 += 2;
|
|
7365
7372
|
} else if (40 !== t6) if (41 !== t6) if (a4 > 0) i4++;
|
|
7366
|
-
else if (42 === t6 && i4 + 1 < o2 && e3.charCodeAt(i4 + 1) ===
|
|
7367
|
-
else if (t6 ===
|
|
7373
|
+
else if (42 === t6 && i4 + 1 < o2 && e3.charCodeAt(i4 + 1) === je2) s2 += e3.substring(r4, i4), i4 += 2, r4 = i4, u5 = true;
|
|
7374
|
+
else if (t6 === je2 && i4 + 1 < o2 && e3.charCodeAt(i4 + 1) === je2) {
|
|
7368
7375
|
for (s2 += e3.substring(r4, i4); i4 < o2 && 10 !== e3.charCodeAt(i4); ) i4++;
|
|
7369
7376
|
r4 = i4, u5 = true;
|
|
7370
7377
|
} else 123 === t6 ? l4++ : 125 === t6 && l4--, i4++;
|
|
@@ -7373,26 +7380,26 @@ function Ue2({ options: e2 = $2, plugins: t3 = I2 } = $2) {
|
|
|
7373
7380
|
else i4++;
|
|
7374
7381
|
else 0 === c5 ? c5 = t6 : c5 === t6 && (c5 = 0), i4++;
|
|
7375
7382
|
}
|
|
7376
|
-
return u5 ? (r4 < o2 && (s2 += e3.substring(r4)), 0 === l4 ? s2 :
|
|
7383
|
+
return u5 ? (r4 < o2 && (s2 += e3.substring(r4)), 0 === l4 ? s2 : Ye2(s2)) : 0 === l4 ? e3 : Ye2(e3);
|
|
7377
7384
|
})(t4);
|
|
7378
7385
|
let d4 = compile(c4 || i3 ? c4 + " " + i3 + " { " + h4 + " }" : h4);
|
|
7379
|
-
return e2.namespace && (d4 =
|
|
7386
|
+
return e2.namespace && (d4 = Ue2(d4, e2.namespace)), a3 = [], serialize(d4, l3), a3;
|
|
7380
7387
|
}, h3 = e2;
|
|
7381
7388
|
let d3 = M2;
|
|
7382
7389
|
for (let e3 = 0; e3 < t3.length; e3++) t3[e3].name || v2(15), d3 = G2(d3, t3[e3].name);
|
|
7383
7390
|
return (null == h3 ? void 0 : h3.namespace) && (d3 = G2(d3, h3.namespace)), (null == h3 ? void 0 : h3.prefix) && (d3 = G2(d3, "p")), u3.hash = d3 !== M2 ? d3.toString() : "", u3;
|
|
7384
7391
|
}
|
|
7385
|
-
var
|
|
7386
|
-
var
|
|
7387
|
-
var
|
|
7388
|
-
var
|
|
7389
|
-
function
|
|
7390
|
-
return import_react14.default.useContext(
|
|
7391
|
-
}
|
|
7392
|
-
var
|
|
7393
|
-
var
|
|
7394
|
-
function
|
|
7395
|
-
const n2 = import_react14.default.useContext(
|
|
7392
|
+
var Xe2 = new _e2();
|
|
7393
|
+
var Ke2 = Je2();
|
|
7394
|
+
var Qe = import_react14.default.createContext({ shouldForwardProp: void 0, styleSheet: Xe2, stylis: Ke2, stylisPlugins: void 0 });
|
|
7395
|
+
var Ze2 = Qe.Consumer;
|
|
7396
|
+
function et() {
|
|
7397
|
+
return import_react14.default.useContext(Qe);
|
|
7398
|
+
}
|
|
7399
|
+
var nt2 = import_react14.default.createContext(void 0);
|
|
7400
|
+
var ot2 = nt2.Consumer;
|
|
7401
|
+
function rt2(e2) {
|
|
7402
|
+
const n2 = import_react14.default.useContext(nt2), o2 = import_react14.default.useMemo(() => (function(e3, t3) {
|
|
7396
7403
|
if (!e3) throw v2(14);
|
|
7397
7404
|
if (re2(e3)) {
|
|
7398
7405
|
const n3 = e3(t3);
|
|
@@ -7402,19 +7409,19 @@ function st2(e2) {
|
|
|
7402
7409
|
if (Array.isArray(e3) || "object" != typeof e3) throw v2(8);
|
|
7403
7410
|
return t3 ? Object.assign(Object.assign({}, t3), e3) : e3;
|
|
7404
7411
|
})(e2.theme, n2), [e2.theme, n2]);
|
|
7405
|
-
return e2.children ? import_react14.default.createElement(
|
|
7412
|
+
return e2.children ? import_react14.default.createElement(nt2.Provider, { value: o2 }, e2.children) : null;
|
|
7406
7413
|
}
|
|
7407
|
-
var
|
|
7408
|
-
var
|
|
7409
|
-
function
|
|
7414
|
+
var it2 = Object.prototype.hasOwnProperty;
|
|
7415
|
+
var ct2 = {};
|
|
7416
|
+
function at2(e2, t3) {
|
|
7410
7417
|
const n2 = "string" != typeof e2 ? "sc" : T2(e2);
|
|
7411
|
-
|
|
7412
|
-
const o2 = n2 + "-" + z2(u2 + n2 +
|
|
7418
|
+
ct2[n2] = (ct2[n2] || 0) + 1;
|
|
7419
|
+
const o2 = n2 + "-" + z2(u2 + n2 + ct2[n2]);
|
|
7413
7420
|
return t3 ? t3 + "-" + o2 : o2;
|
|
7414
7421
|
}
|
|
7415
|
-
var
|
|
7416
|
-
function
|
|
7417
|
-
const i2 =
|
|
7422
|
+
var lt2;
|
|
7423
|
+
function ut2(o2, s, r3) {
|
|
7424
|
+
const i2 = ce2(o2), c3 = o2, a3 = !L2(o2), { attrs: l3 = I2, componentId: u3 = at2(s.displayName, s.parentComponentId), displayName: h3 = B2(o2) } = s, d3 = s.displayName && s.componentId ? T2(s.displayName) + "-" + s.componentId : s.componentId || u3, p3 = i2 && c3.attrs ? c3.attrs.concat(l3).filter(Boolean) : l3;
|
|
7418
7425
|
let { shouldForwardProp: f3 } = s;
|
|
7419
7426
|
if (i2 && c3.shouldForwardProp) {
|
|
7420
7427
|
const e2 = c3.shouldForwardProp;
|
|
@@ -7423,10 +7430,10 @@ function lt2(o2, s, r3) {
|
|
|
7423
7430
|
f3 = (n2, o3) => e2(n2, o3) && t3(n2, o3);
|
|
7424
7431
|
} else f3 = e2;
|
|
7425
7432
|
}
|
|
7426
|
-
const m3 = new
|
|
7433
|
+
const m3 = new Be2(r3, d3, i2 ? c3.componentStyle : void 0);
|
|
7427
7434
|
function y2(o3, s2) {
|
|
7428
7435
|
return (function(o4, s3, r4) {
|
|
7429
|
-
const { attrs: i3, componentStyle: c4, defaultProps: a4, foldedComponentIds: l4, styledComponentId: u4, target: h4 } = o4, d4 = import_react14.default.useContext(
|
|
7436
|
+
const { attrs: i3, componentStyle: c4, defaultProps: a4, foldedComponentIds: l4, styledComponentId: u4, target: h4 } = o4, d4 = import_react14.default.useContext(nt2), p4 = et(), f4 = o4.shouldForwardProp || p4.shouldForwardProp;
|
|
7430
7437
|
import_react14.default.useDebugValue && import_react14.default.useDebugValue(u4);
|
|
7431
7438
|
const m4 = R2(s3, d4, a4) || $2;
|
|
7432
7439
|
let y3, g4;
|
|
@@ -7435,7 +7442,7 @@ function lt2(o2, s, r3) {
|
|
|
7435
7442
|
if (null !== n2 && n2[1] === m4 && n2[2] === p4.styleSheet && n2[3] === p4.stylis && n2[7] === c4 && (function(e3, t3, n3) {
|
|
7436
7443
|
const o5 = e3, s4 = t3;
|
|
7437
7444
|
let r5 = 0;
|
|
7438
|
-
for (const e4 in s4) if (
|
|
7445
|
+
for (const e4 in s4) if (it2.call(s4, e4) && (r5++, o5[e4] !== s4[e4])) return false;
|
|
7439
7446
|
return r5 === n3;
|
|
7440
7447
|
})(n2[0], s3, n2[4])) y3 = n2[5], g4 = n2[6];
|
|
7441
7448
|
else {
|
|
@@ -7443,35 +7450,35 @@ function lt2(o2, s, r3) {
|
|
|
7443
7450
|
const o5 = Object.assign(Object.assign({}, t3), { className: void 0, theme: n4 }), s4 = e3.length > 1;
|
|
7444
7451
|
for (let n5 = 0; n5 < e3.length; n5++) {
|
|
7445
7452
|
const r5 = e3[n5], i4 = re2(r5) ? r5(s4 ? Object.assign({}, o5) : o5) : r5;
|
|
7446
|
-
for (const e4 in i4) "className" === e4 ? o5.className =
|
|
7453
|
+
for (const e4 in i4) "className" === e4 ? o5.className = ae2(o5.className, i4[e4]) : "style" === e4 ? o5.style = Object.assign(Object.assign({}, o5.style), i4[e4]) : e4 in t3 && void 0 === t3[e4] || (o5[e4] = i4[e4]);
|
|
7447
7454
|
}
|
|
7448
|
-
return "className" in t3 && "string" == typeof t3.className && (o5.className =
|
|
7455
|
+
return "className" in t3 && "string" == typeof t3.className && (o5.className = ae2(o5.className, t3.className)), o5;
|
|
7449
7456
|
})(i3, s3, m4), g4 = (function(e3, n4, o5, s4) {
|
|
7450
7457
|
const r5 = e3.generateAndInjectStyles(n4, o5, s4);
|
|
7451
7458
|
return import_react14.default.useDebugValue && import_react14.default.useDebugValue(r5), r5;
|
|
7452
7459
|
})(c4, y3, p4.styleSheet, p4.stylis);
|
|
7453
7460
|
let n3 = 0;
|
|
7454
|
-
for (const e3 in s3)
|
|
7461
|
+
for (const e3 in s3) it2.call(s3, e3) && n3++;
|
|
7455
7462
|
e2.current = [s3, m4, p4.styleSheet, p4.stylis, n3, y3, g4, c4];
|
|
7456
7463
|
}
|
|
7457
7464
|
}
|
|
7458
7465
|
o4.warnTooManyClasses && o4.warnTooManyClasses(g4);
|
|
7459
7466
|
const v3 = y3.as || h4, S3 = (function(t3, n2, o5, s4) {
|
|
7460
7467
|
const r5 = {};
|
|
7461
|
-
for (const i4 in t3) void 0 === t3[i4] || "$" === i4[0] || "as" === i4 || "theme" === i4 && t3.theme === o5 || ("forwardedAs" === i4 ? r5.as = t3.forwardedAs : s4 && !s4(i4, n2) || (r5[i4] = t3[i4], s4 || false || isPropValid(i4) || (
|
|
7468
|
+
for (const i4 in t3) void 0 === t3[i4] || "$" === i4[0] || "as" === i4 || "theme" === i4 && t3.theme === o5 || ("forwardedAs" === i4 ? r5.as = t3.forwardedAs : s4 && !s4(i4, n2) || (r5[i4] = t3[i4], s4 || false || isPropValid(i4) || (lt2 || (lt2 = /* @__PURE__ */ new Set())).has(i4) || !L2(n2) || n2.includes("-") || (lt2.add(i4), console.warn(`styled-components: it looks like an unknown prop "${i4}" is being sent through to the DOM, which will likely trigger a React console error. If you would like automatic filtering of unknown props, you can opt-into that behavior via \`<StyleSheetManager shouldForwardProp={...}>\` (connect an API like \`@emotion/is-prop-valid\`) or consider using transient props (\`$\` prefix for automatic filtering.)`))));
|
|
7462
7469
|
return r5;
|
|
7463
7470
|
})(y3, v3, m4, f4);
|
|
7464
|
-
let b3 =
|
|
7471
|
+
let b3 = ae2(l4, u4);
|
|
7465
7472
|
return g4 && (b3 += " " + g4), y3.className && (b3 += " " + y3.className), S3[L2(v3) && v3.includes("-") ? "class" : "className"] = b3, r4 && (S3.ref = r4), (0, import_react14.createElement)(v3, S3);
|
|
7466
7473
|
})(g3, o3, s2);
|
|
7467
7474
|
}
|
|
7468
7475
|
y2.displayName = h3;
|
|
7469
7476
|
let g3 = import_react14.default.forwardRef(y2);
|
|
7470
|
-
return g3.attrs = p3, g3.componentStyle = m3, g3.displayName = h3, g3.shouldForwardProp = f3, g3.foldedComponentIds = i2 ?
|
|
7477
|
+
return g3.attrs = p3, g3.componentStyle = m3, g3.displayName = h3, g3.shouldForwardProp = f3, g3.foldedComponentIds = i2 ? ae2(c3.foldedComponentIds, c3.styledComponentId) : "", g3.styledComponentId = d3, g3.target = i2 ? c3.target : o2, Object.defineProperty(g3, "defaultProps", { get() {
|
|
7471
7478
|
return this._foldedDefaultProps;
|
|
7472
7479
|
}, set(e2) {
|
|
7473
7480
|
this._foldedDefaultProps = i2 ? (function(e3, ...t3) {
|
|
7474
|
-
for (const n2 of t3)
|
|
7481
|
+
for (const n2 of t3) he2(e3, n2, true);
|
|
7475
7482
|
return e3;
|
|
7476
7483
|
})({}, c3.defaultProps, e2) : e2;
|
|
7477
7484
|
} }), _2(h3, d3), g3.warnTooManyClasses = /* @__PURE__ */ ((e2, t3) => {
|
|
@@ -7488,58 +7495,58 @@ Example:
|
|
|
7488
7495
|
|
|
7489
7496
|
<Component />`), o3 = true, n2 = {});
|
|
7490
7497
|
};
|
|
7491
|
-
})(h3, d3),
|
|
7498
|
+
})(h3, d3), de2(g3, () => `.${g3.styledComponentId}`), a3 && se2(g3, o2, { attrs: true, componentStyle: true, displayName: true, foldedComponentIds: true, shouldForwardProp: true, styledComponentId: true, target: true }), g3;
|
|
7492
7499
|
}
|
|
7493
|
-
var
|
|
7494
|
-
function
|
|
7500
|
+
var ht2 = /* @__PURE__ */ new Set(["a", "abbr", "address", "area", "article", "aside", "audio", "b", "bdi", "bdo", "blockquote", "body", "button", "br", "canvas", "caption", "cite", "code", "col", "colgroup", "data", "datalist", "dd", "del", "details", "dfn", "dialog", "div", "dl", "dt", "em", "embed", "fieldset", "figcaption", "figure", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "header", "hgroup", "hr", "html", "i", "iframe", "img", "input", "ins", "kbd", "label", "legend", "li", "main", "map", "mark", "menu", "meter", "nav", "object", "ol", "optgroup", "option", "output", "p", "picture", "pre", "progress", "q", "rp", "rt", "ruby", "s", "samp", "search", "section", "select", "slot", "small", "span", "strong", "sub", "summary", "sup", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "time", "tr", "u", "ul", "var", "video", "wbr", "circle", "clipPath", "defs", "ellipse", "feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDistantLight", "feDropShadow", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feImage", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence", "filter", "foreignObject", "g", "image", "line", "linearGradient", "marker", "mask", "path", "pattern", "polygon", "polyline", "radialGradient", "rect", "stop", "svg", "switch", "symbol", "text", "textPath", "tspan", "use"]);
|
|
7501
|
+
function dt2(e2, t3) {
|
|
7495
7502
|
const n2 = [e2[0]];
|
|
7496
7503
|
for (let o2 = 0, s = t3.length; o2 < s; o2 += 1) n2.push(t3[o2], e2[o2 + 1]);
|
|
7497
7504
|
return n2;
|
|
7498
7505
|
}
|
|
7499
|
-
var
|
|
7500
|
-
function
|
|
7501
|
-
if (re2(e2) ||
|
|
7506
|
+
var pt2 = (e2) => (Ie2.add(e2), e2);
|
|
7507
|
+
function ft(e2, ...t3) {
|
|
7508
|
+
if (re2(e2) || ue2(e2)) return pt2(We2(dt2(I2, [e2, ...t3])));
|
|
7502
7509
|
const n2 = e2;
|
|
7503
|
-
return 0 === t3.length && 1 === n2.length && "string" == typeof n2[0] ?
|
|
7510
|
+
return 0 === t3.length && 1 === n2.length && "string" == typeof n2[0] ? We2(n2) : pt2(We2(dt2(n2, t3)));
|
|
7504
7511
|
}
|
|
7505
|
-
function
|
|
7512
|
+
function mt(e2, t3, n2 = $2) {
|
|
7506
7513
|
if (!t3) throw v2(1, t3);
|
|
7507
|
-
const o2 = (o3, ...s) => e2(t3, n2,
|
|
7508
|
-
return o2.attrs = (o3) =>
|
|
7514
|
+
const o2 = (o3, ...s) => e2(t3, n2, ft(o3, ...s));
|
|
7515
|
+
return o2.attrs = (o3) => mt(e2, t3, Object.assign(Object.assign({}, n2), { attrs: Array.prototype.concat(n2.attrs, o3).filter(Boolean) })), o2.withConfig = (o3) => mt(e2, t3, Object.assign(Object.assign({}, n2), o3)), o2;
|
|
7509
7516
|
}
|
|
7510
|
-
var
|
|
7511
|
-
var
|
|
7512
|
-
|
|
7513
|
-
|
|
7517
|
+
var yt2 = (e2) => mt(ut2, e2);
|
|
7518
|
+
var gt2 = yt2;
|
|
7519
|
+
ht2.forEach((e2) => {
|
|
7520
|
+
gt2[e2] = yt2(e2);
|
|
7514
7521
|
});
|
|
7515
|
-
var
|
|
7516
|
-
var
|
|
7522
|
+
var Ct;
|
|
7523
|
+
var Ot = class {
|
|
7517
7524
|
constructor(e2, t3) {
|
|
7518
|
-
this[
|
|
7525
|
+
this[Ct] = true, this.inject = (e3, t4 = Ke2) => {
|
|
7519
7526
|
const n2 = this.getName(t4);
|
|
7520
7527
|
if (!e3.hasNameForId(this.id, n2)) {
|
|
7521
7528
|
const o2 = t4(this.rules, n2, "@keyframes");
|
|
7522
7529
|
e3.insertRules(this.id, n2, o2);
|
|
7523
7530
|
}
|
|
7524
|
-
}, this.name = e2, this.id = m2 + e2, this.rules = t3, C2(this.id),
|
|
7531
|
+
}, this.name = e2, this.id = m2 + e2, this.rules = t3, C2(this.id), de2(this, () => {
|
|
7525
7532
|
throw v2(12, String(this.name));
|
|
7526
7533
|
});
|
|
7527
7534
|
}
|
|
7528
|
-
getName(e2 =
|
|
7535
|
+
getName(e2 = Ke2) {
|
|
7529
7536
|
return e2.hash ? this.name + V2(+e2.hash >>> 0) : this.name;
|
|
7530
7537
|
}
|
|
7531
7538
|
};
|
|
7532
|
-
function
|
|
7539
|
+
function Et(e2, ...t3) {
|
|
7533
7540
|
"undefined" != typeof navigator && "ReactNative" === navigator.product && console.warn("`keyframes` cannot be used on ReactNative, only on the web. To do animation in ReactNative please use Animated.");
|
|
7534
|
-
const n2 =
|
|
7535
|
-
return new
|
|
7541
|
+
const n2 = le2(ft(e2, ...t3)), o2 = z2(n2);
|
|
7542
|
+
return new Ot(o2, n2);
|
|
7536
7543
|
}
|
|
7537
|
-
|
|
7544
|
+
Ct = Te2;
|
|
7538
7545
|
"undefined" != typeof navigator && "ReactNative" === navigator.product && console.warn("It looks like you've imported 'styled-components' on React Native.\nPerhaps you're looking to import 'styled-components/native'?\nRead more about this at https://styled-components.com/docs/basics#react-native");
|
|
7539
|
-
var
|
|
7540
|
-
"undefined" != typeof window && (window[
|
|
7541
|
-
var
|
|
7542
|
-
var
|
|
7546
|
+
var It = `__sc-${c2}__`;
|
|
7547
|
+
"undefined" != typeof window && (window[It] || (window[It] = 0), 1 === window[It] && console.warn("It looks like there are several instances of 'styled-components' initialized in this application. This may cause dynamic styles to not render properly, errors during the rehydration process, a missing theme prop, and makes your application bigger without good reason.\n\nSee https://styled-components.com/docs/faqs#why-am-i-getting-a-warning-about-several-instances-of-module-on-the-page for more info."), window[It] += 1);
|
|
7548
|
+
var Rt = `:not(style[${c2}])`;
|
|
7549
|
+
var jt = `style[${c2}]`;
|
|
7543
7550
|
|
|
7544
7551
|
// node_modules/uuid/dist/stringify.js
|
|
7545
7552
|
var byteToHex = [];
|
|
@@ -7937,6 +7944,7 @@ function BillingProductPriceResponseDataFromJSONTyped(json, ignoreDiscriminator)
|
|
|
7937
7944
|
currency: json["currency"],
|
|
7938
7945
|
id: json["id"],
|
|
7939
7946
|
interval: BillingProductPriceIntervalFromJSON(json["interval"]),
|
|
7947
|
+
intervalCount: json["interval_count"],
|
|
7940
7948
|
isActive: json["is_active"],
|
|
7941
7949
|
meterId: json["meter_id"] == null ? void 0 : json["meter_id"],
|
|
7942
7950
|
nickname: json["nickname"] == null ? void 0 : json["nickname"],
|
|
@@ -7982,6 +7990,7 @@ function BillingPriceViewFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
7982
7990
|
currency: json["currency"],
|
|
7983
7991
|
id: json["id"],
|
|
7984
7992
|
interval: BillingProductPriceIntervalFromJSON(json["interval"]),
|
|
7993
|
+
intervalCount: json["interval_count"],
|
|
7985
7994
|
isActive: json["is_active"],
|
|
7986
7995
|
meterEventName: json["meter_event_name"] == null ? void 0 : json["meter_event_name"],
|
|
7987
7996
|
meterEventPayloadKey: json["meter_event_payload_key"] == null ? void 0 : json["meter_event_payload_key"],
|
|
@@ -8105,6 +8114,7 @@ function BillingPriceResponseDataFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
8105
8114
|
externalPriceId: json["external_price_id"],
|
|
8106
8115
|
id: json["id"],
|
|
8107
8116
|
interval: BillingProductPriceIntervalFromJSON(json["interval"]),
|
|
8117
|
+
intervalCount: json["interval_count"],
|
|
8108
8118
|
nickname: json["nickname"] == null ? void 0 : json["nickname"],
|
|
8109
8119
|
price: json["price"],
|
|
8110
8120
|
priceDecimal: json["price_decimal"] == null ? void 0 : json["price_decimal"],
|
|
@@ -8393,6 +8403,7 @@ function BillingProductForSubscriptionResponseDataFromJSONTyped(json, ignoreDisc
|
|
|
8393
8403
|
externalId: json["external_id"],
|
|
8394
8404
|
id: json["id"],
|
|
8395
8405
|
interval: json["interval"],
|
|
8406
|
+
intervalCount: json["interval_count"] == null ? void 0 : json["interval_count"],
|
|
8396
8407
|
meterId: json["meter_id"] == null ? void 0 : json["meter_id"],
|
|
8397
8408
|
name: json["name"],
|
|
8398
8409
|
packageSize: json["package_size"],
|
|
@@ -8412,6 +8423,14 @@ function BillingProductForSubscriptionResponseDataFromJSONTyped(json, ignoreDisc
|
|
|
8412
8423
|
};
|
|
8413
8424
|
}
|
|
8414
8425
|
|
|
8426
|
+
// src/api/checkoutexternal/models/BillingStrategy.ts
|
|
8427
|
+
function BillingStrategyFromJSON(json) {
|
|
8428
|
+
return BillingStrategyFromJSONTyped(json, false);
|
|
8429
|
+
}
|
|
8430
|
+
function BillingStrategyFromJSONTyped(json, ignoreDiscriminator) {
|
|
8431
|
+
return json;
|
|
8432
|
+
}
|
|
8433
|
+
|
|
8415
8434
|
// src/api/checkoutexternal/models/BillingSubscriptionDiscountView.ts
|
|
8416
8435
|
function BillingSubscriptionDiscountViewFromJSON(json) {
|
|
8417
8436
|
return BillingSubscriptionDiscountViewFromJSONTyped(json, false);
|
|
@@ -9202,6 +9221,7 @@ function CustomPlanBillingResponseDataFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
9202
9221
|
companyId: json["company_id"],
|
|
9203
9222
|
createdAt: new Date(json["created_at"]),
|
|
9204
9223
|
daysUntilDue: json["days_until_due"],
|
|
9224
|
+
externalInvoiceId: json["external_invoice_id"] == null ? void 0 : json["external_invoice_id"],
|
|
9205
9225
|
id: json["id"],
|
|
9206
9226
|
paidAt: json["paid_at"] == null ? void 0 : new Date(json["paid_at"]),
|
|
9207
9227
|
planId: json["plan_id"],
|
|
@@ -9383,6 +9403,7 @@ function EntitlementCurrencyPricesResponseDataFromJSONTyped(json, ignoreDiscrimi
|
|
|
9383
9403
|
return {
|
|
9384
9404
|
currency: json["currency"],
|
|
9385
9405
|
monthlyPrice: json["monthly_price"] == null ? void 0 : BillingPriceViewFromJSON(json["monthly_price"]),
|
|
9406
|
+
quarterlyPrice: json["quarterly_price"] == null ? void 0 : BillingPriceViewFromJSON(json["quarterly_price"]),
|
|
9386
9407
|
yearlyPrice: json["yearly_price"] == null ? void 0 : BillingPriceViewFromJSON(json["yearly_price"])
|
|
9387
9408
|
};
|
|
9388
9409
|
}
|
|
@@ -9463,6 +9484,7 @@ function PlanEntitlementResponseDataFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
9463
9484
|
featureId: json["feature_id"],
|
|
9464
9485
|
id: json["id"],
|
|
9465
9486
|
meteredMonthlyPrice: json["metered_monthly_price"] == null ? void 0 : BillingPriceViewFromJSON(json["metered_monthly_price"]),
|
|
9487
|
+
meteredQuarterlyPrice: json["metered_quarterly_price"] == null ? void 0 : BillingPriceViewFromJSON(json["metered_quarterly_price"]),
|
|
9466
9488
|
meteredYearlyPrice: json["metered_yearly_price"] == null ? void 0 : BillingPriceViewFromJSON(json["metered_yearly_price"]),
|
|
9467
9489
|
metricPeriod: json["metric_period"] == null ? void 0 : MetricPeriodFromJSON(json["metric_period"]),
|
|
9468
9490
|
metricPeriodMonthReset: json["metric_period_month_reset"] == null ? void 0 : MetricPeriodMonthResetFromJSON(json["metric_period_month_reset"]),
|
|
@@ -9474,6 +9496,7 @@ function PlanEntitlementResponseDataFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
9474
9496
|
softLimit: json["soft_limit"] == null ? void 0 : json["soft_limit"],
|
|
9475
9497
|
updatedAt: new Date(json["updated_at"]),
|
|
9476
9498
|
usageBasedProduct: json["usage_based_product"] == null ? void 0 : BillingProductResponseDataFromJSON(json["usage_based_product"]),
|
|
9499
|
+
usageQuantity: json["usage_quantity"] == null ? void 0 : json["usage_quantity"],
|
|
9477
9500
|
valueBool: json["value_bool"] == null ? void 0 : json["value_bool"],
|
|
9478
9501
|
valueCredit: json["value_credit"] == null ? void 0 : BillingCreditResponseDataFromJSON(json["value_credit"]),
|
|
9479
9502
|
valueNumeric: json["value_numeric"] == null ? void 0 : json["value_numeric"],
|
|
@@ -9665,6 +9688,14 @@ function FeatureInPlanResponseDataFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
9665
9688
|
};
|
|
9666
9689
|
}
|
|
9667
9690
|
|
|
9691
|
+
// src/api/checkoutexternal/models/PlanPriceCadence.ts
|
|
9692
|
+
function PlanPriceCadenceFromJSON(json) {
|
|
9693
|
+
return PlanPriceCadenceFromJSONTyped(json, false);
|
|
9694
|
+
}
|
|
9695
|
+
function PlanPriceCadenceFromJSONTyped(json, ignoreDiscriminator) {
|
|
9696
|
+
return json;
|
|
9697
|
+
}
|
|
9698
|
+
|
|
9668
9699
|
// src/api/checkoutexternal/models/CustomPlanConfig.ts
|
|
9669
9700
|
function CustomPlanConfigFromJSON(json) {
|
|
9670
9701
|
return CustomPlanConfigFromJSONTyped(json, false);
|
|
@@ -9737,6 +9768,7 @@ function PlanCurrencyPricesResponseDataFromJSONTyped(json, ignoreDiscriminator)
|
|
|
9737
9768
|
currency: json["currency"],
|
|
9738
9769
|
monthlyPrice: json["monthly_price"] == null ? void 0 : BillingPriceResponseDataFromJSON(json["monthly_price"]),
|
|
9739
9770
|
oneTimePrice: json["one_time_price"] == null ? void 0 : BillingPriceResponseDataFromJSON(json["one_time_price"]),
|
|
9771
|
+
quarterlyPrice: json["quarterly_price"] == null ? void 0 : BillingPriceResponseDataFromJSON(json["quarterly_price"]),
|
|
9740
9772
|
yearlyPrice: json["yearly_price"] == null ? void 0 : BillingPriceResponseDataFromJSON(json["yearly_price"])
|
|
9741
9773
|
};
|
|
9742
9774
|
}
|
|
@@ -9854,6 +9886,7 @@ function FeatureUsageResponseDataFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
9854
9886
|
plan: json["plan"] == null ? void 0 : PlanResponseDataFromJSON(json["plan"]),
|
|
9855
9887
|
planEntitlement: json["plan_entitlement"] == null ? void 0 : PlanEntitlementResponseDataFromJSON(json["plan_entitlement"]),
|
|
9856
9888
|
priceBehavior: json["price_behavior"] == null ? void 0 : EntitlementPriceBehaviorFromJSON(json["price_behavior"]),
|
|
9889
|
+
quarterlyUsageBasedPrice: json["quarterly_usage_based_price"] == null ? void 0 : BillingPriceViewFromJSON(json["quarterly_usage_based_price"]),
|
|
9857
9890
|
softLimit: json["soft_limit"] == null ? void 0 : json["soft_limit"],
|
|
9858
9891
|
usage: json["usage"] == null ? void 0 : json["usage"],
|
|
9859
9892
|
yearlyUsageBasedPrice: json["yearly_usage_based_price"] == null ? void 0 : BillingPriceViewFromJSON(json["yearly_usage_based_price"])
|
|
@@ -9871,10 +9904,14 @@ function CompanyPlanDetailResponseDataFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
9871
9904
|
return {
|
|
9872
9905
|
activeVersion: json["active_version"] == null ? void 0 : PlanVersionResponseDataFromJSON(json["active_version"]),
|
|
9873
9906
|
audienceType: json["audience_type"] == null ? void 0 : json["audience_type"],
|
|
9907
|
+
availablePeriods: json["available_periods"].map(
|
|
9908
|
+
PlanPriceCadenceFromJSON
|
|
9909
|
+
),
|
|
9874
9910
|
billingLinkedResource: json["billing_linked_resource"] == null ? void 0 : BillingLinkedResourceResponseDataFromJSON(
|
|
9875
9911
|
json["billing_linked_resource"]
|
|
9876
9912
|
),
|
|
9877
9913
|
billingProduct: json["billing_product"] == null ? void 0 : BillingProductDetailResponseDataFromJSON(json["billing_product"]),
|
|
9914
|
+
billingStrategy: BillingStrategyFromJSON(json["billing_strategy"]),
|
|
9878
9915
|
chargeType: ChargeTypeFromJSON(json["charge_type"]),
|
|
9879
9916
|
companyCanTrial: json["company_can_trial"],
|
|
9880
9917
|
companyCount: json["company_count"],
|
|
@@ -9912,6 +9949,7 @@ function CompanyPlanDetailResponseDataFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
9912
9949
|
name: json["name"],
|
|
9913
9950
|
oneTimePrice: json["one_time_price"] == null ? void 0 : BillingPriceResponseDataFromJSON(json["one_time_price"]),
|
|
9914
9951
|
planType: PlanTypeFromJSON(json["plan_type"]),
|
|
9952
|
+
quarterlyPrice: json["quarterly_price"] == null ? void 0 : BillingPriceResponseDataFromJSON(json["quarterly_price"]),
|
|
9915
9953
|
trialDays: json["trial_days"] == null ? void 0 : json["trial_days"],
|
|
9916
9954
|
updatedAt: new Date(json["updated_at"]),
|
|
9917
9955
|
usageViolations: json["usage_violations"].map(
|
|
@@ -10041,6 +10079,7 @@ function PlanDetailResponseDataFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
10041
10079
|
json["billing_linked_resource"]
|
|
10042
10080
|
),
|
|
10043
10081
|
billingProduct: json["billing_product"] == null ? void 0 : BillingProductDetailResponseDataFromJSON(json["billing_product"]),
|
|
10082
|
+
billingStrategy: BillingStrategyFromJSON(json["billing_strategy"]),
|
|
10044
10083
|
chargeType: ChargeTypeFromJSON(json["charge_type"]),
|
|
10045
10084
|
companyCount: json["company_count"],
|
|
10046
10085
|
companyId: json["company_id"] == null ? void 0 : json["company_id"],
|
|
@@ -10068,6 +10107,7 @@ function PlanDetailResponseDataFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
10068
10107
|
name: json["name"],
|
|
10069
10108
|
oneTimePrice: json["one_time_price"] == null ? void 0 : BillingPriceResponseDataFromJSON(json["one_time_price"]),
|
|
10070
10109
|
planType: PlanTypeFromJSON(json["plan_type"]),
|
|
10110
|
+
quarterlyPrice: json["quarterly_price"] == null ? void 0 : BillingPriceResponseDataFromJSON(json["quarterly_price"]),
|
|
10071
10111
|
trialDays: json["trial_days"] == null ? void 0 : json["trial_days"],
|
|
10072
10112
|
updatedAt: new Date(json["updated_at"]),
|
|
10073
10113
|
versions: json["versions"].map(
|
|
@@ -10172,6 +10212,8 @@ function UsageBasedEntitlementResponseDataFromJSONTyped(json, ignoreDiscriminato
|
|
|
10172
10212
|
metricPeriodMonthReset: json["metric_period_month_reset"] == null ? void 0 : MetricPeriodMonthResetFromJSON(json["metric_period_month_reset"]),
|
|
10173
10213
|
monthlyUsageBasedPrice: json["monthly_usage_based_price"] == null ? void 0 : BillingPriceViewFromJSON(json["monthly_usage_based_price"]),
|
|
10174
10214
|
priceBehavior: json["price_behavior"] == null ? void 0 : EntitlementPriceBehaviorFromJSON(json["price_behavior"]),
|
|
10215
|
+
quarterlyUsageBasedPrice: json["quarterly_usage_based_price"] == null ? void 0 : BillingPriceViewFromJSON(json["quarterly_usage_based_price"]),
|
|
10216
|
+
usageQuantity: json["usage_quantity"] == null ? void 0 : json["usage_quantity"],
|
|
10175
10217
|
valueBool: json["value_bool"] == null ? void 0 : json["value_bool"],
|
|
10176
10218
|
valueNumeric: json["value_numeric"] == null ? void 0 : json["value_numeric"],
|
|
10177
10219
|
valueType: EntitlementValueTypeFromJSON(json["value_type"]),
|
|
@@ -11321,6 +11363,7 @@ function BillingPriceResponseDataFromJSONTyped9(json, ignoreDiscriminator) {
|
|
|
11321
11363
|
externalPriceId: json["external_price_id"],
|
|
11322
11364
|
id: json["id"],
|
|
11323
11365
|
interval: BillingProductPriceIntervalFromJSON2(json["interval"]),
|
|
11366
|
+
intervalCount: json["interval_count"],
|
|
11324
11367
|
nickname: json["nickname"] == null ? void 0 : json["nickname"],
|
|
11325
11368
|
price: json["price"],
|
|
11326
11369
|
priceDecimal: json["price_decimal"] == null ? void 0 : json["price_decimal"],
|
|
@@ -11456,6 +11499,7 @@ function BillingPriceViewFromJSONTyped9(json, ignoreDiscriminator) {
|
|
|
11456
11499
|
currency: json["currency"],
|
|
11457
11500
|
id: json["id"],
|
|
11458
11501
|
interval: BillingProductPriceIntervalFromJSON2(json["interval"]),
|
|
11502
|
+
intervalCount: json["interval_count"],
|
|
11459
11503
|
isActive: json["is_active"],
|
|
11460
11504
|
meterEventName: json["meter_event_name"] == null ? void 0 : json["meter_event_name"],
|
|
11461
11505
|
meterEventPayloadKey: json["meter_event_payload_key"] == null ? void 0 : json["meter_event_payload_key"],
|
|
@@ -11615,6 +11659,14 @@ function BillingProductDetailResponseDataFromJSONTyped5(json, ignoreDiscriminato
|
|
|
11615
11659
|
};
|
|
11616
11660
|
}
|
|
11617
11661
|
|
|
11662
|
+
// src/api/componentspublic/models/BillingStrategy.ts
|
|
11663
|
+
function BillingStrategyFromJSON2(json) {
|
|
11664
|
+
return BillingStrategyFromJSONTyped5(json, false);
|
|
11665
|
+
}
|
|
11666
|
+
function BillingStrategyFromJSONTyped5(json, ignoreDiscriminator) {
|
|
11667
|
+
return json;
|
|
11668
|
+
}
|
|
11669
|
+
|
|
11618
11670
|
// src/api/componentspublic/models/ChargeType.ts
|
|
11619
11671
|
function ChargeTypeFromJSON2(json) {
|
|
11620
11672
|
return ChargeTypeFromJSONTyped5(json, false);
|
|
@@ -11743,6 +11795,7 @@ function EntitlementCurrencyPricesResponseDataFromJSONTyped3(json, ignoreDiscrim
|
|
|
11743
11795
|
return {
|
|
11744
11796
|
currency: json["currency"],
|
|
11745
11797
|
monthlyPrice: json["monthly_price"] == null ? void 0 : BillingPriceViewFromJSON2(json["monthly_price"]),
|
|
11798
|
+
quarterlyPrice: json["quarterly_price"] == null ? void 0 : BillingPriceViewFromJSON2(json["quarterly_price"]),
|
|
11746
11799
|
yearlyPrice: json["yearly_price"] == null ? void 0 : BillingPriceViewFromJSON2(json["yearly_price"])
|
|
11747
11800
|
};
|
|
11748
11801
|
}
|
|
@@ -12090,6 +12143,7 @@ function PlanEntitlementResponseDataFromJSONTyped5(json, ignoreDiscriminator) {
|
|
|
12090
12143
|
featureId: json["feature_id"],
|
|
12091
12144
|
id: json["id"],
|
|
12092
12145
|
meteredMonthlyPrice: json["metered_monthly_price"] == null ? void 0 : BillingPriceViewFromJSON2(json["metered_monthly_price"]),
|
|
12146
|
+
meteredQuarterlyPrice: json["metered_quarterly_price"] == null ? void 0 : BillingPriceViewFromJSON2(json["metered_quarterly_price"]),
|
|
12093
12147
|
meteredYearlyPrice: json["metered_yearly_price"] == null ? void 0 : BillingPriceViewFromJSON2(json["metered_yearly_price"]),
|
|
12094
12148
|
metricPeriod: json["metric_period"] == null ? void 0 : MetricPeriodFromJSON2(json["metric_period"]),
|
|
12095
12149
|
metricPeriodMonthReset: json["metric_period_month_reset"] == null ? void 0 : MetricPeriodMonthResetFromJSON2(json["metric_period_month_reset"]),
|
|
@@ -12101,6 +12155,7 @@ function PlanEntitlementResponseDataFromJSONTyped5(json, ignoreDiscriminator) {
|
|
|
12101
12155
|
softLimit: json["soft_limit"] == null ? void 0 : json["soft_limit"],
|
|
12102
12156
|
updatedAt: new Date(json["updated_at"]),
|
|
12103
12157
|
usageBasedProduct: json["usage_based_product"] == null ? void 0 : BillingProductResponseDataFromJSON2(json["usage_based_product"]),
|
|
12158
|
+
usageQuantity: json["usage_quantity"] == null ? void 0 : json["usage_quantity"],
|
|
12104
12159
|
valueBool: json["value_bool"] == null ? void 0 : json["value_bool"],
|
|
12105
12160
|
valueCredit: json["value_credit"] == null ? void 0 : BillingCreditResponseDataFromJSON2(json["value_credit"]),
|
|
12106
12161
|
valueNumeric: json["value_numeric"] == null ? void 0 : json["value_numeric"],
|
|
@@ -12110,6 +12165,14 @@ function PlanEntitlementResponseDataFromJSONTyped5(json, ignoreDiscriminator) {
|
|
|
12110
12165
|
};
|
|
12111
12166
|
}
|
|
12112
12167
|
|
|
12168
|
+
// src/api/componentspublic/models/PlanPriceCadence.ts
|
|
12169
|
+
function PlanPriceCadenceFromJSON2(json) {
|
|
12170
|
+
return PlanPriceCadenceFromJSONTyped4(json, false);
|
|
12171
|
+
}
|
|
12172
|
+
function PlanPriceCadenceFromJSONTyped4(json, ignoreDiscriminator) {
|
|
12173
|
+
return json;
|
|
12174
|
+
}
|
|
12175
|
+
|
|
12113
12176
|
// src/api/componentspublic/models/PlanCreditGrantView.ts
|
|
12114
12177
|
function PlanCreditGrantViewFromJSON2(json) {
|
|
12115
12178
|
return PlanCreditGrantViewFromJSONTyped3(json, false);
|
|
@@ -12167,6 +12230,7 @@ function PlanCurrencyPricesResponseDataFromJSONTyped5(json, ignoreDiscriminator)
|
|
|
12167
12230
|
currency: json["currency"],
|
|
12168
12231
|
monthlyPrice: json["monthly_price"] == null ? void 0 : BillingPriceResponseDataFromJSON2(json["monthly_price"]),
|
|
12169
12232
|
oneTimePrice: json["one_time_price"] == null ? void 0 : BillingPriceResponseDataFromJSON2(json["one_time_price"]),
|
|
12233
|
+
quarterlyPrice: json["quarterly_price"] == null ? void 0 : BillingPriceResponseDataFromJSON2(json["quarterly_price"]),
|
|
12170
12234
|
yearlyPrice: json["yearly_price"] == null ? void 0 : BillingPriceResponseDataFromJSON2(json["yearly_price"])
|
|
12171
12235
|
};
|
|
12172
12236
|
}
|
|
@@ -12213,10 +12277,14 @@ function PlanViewPublicResponseDataFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
12213
12277
|
return {
|
|
12214
12278
|
activeVersion: json["active_version"] == null ? void 0 : PlanVersionResponseDataFromJSON2(json["active_version"]),
|
|
12215
12279
|
audienceType: json["audience_type"] == null ? void 0 : json["audience_type"],
|
|
12280
|
+
availablePeriods: json["available_periods"].map(
|
|
12281
|
+
PlanPriceCadenceFromJSON2
|
|
12282
|
+
),
|
|
12216
12283
|
billingLinkedResource: json["billing_linked_resource"] == null ? void 0 : BillingLinkedResourceResponseDataFromJSON2(
|
|
12217
12284
|
json["billing_linked_resource"]
|
|
12218
12285
|
),
|
|
12219
12286
|
billingProduct: json["billing_product"] == null ? void 0 : BillingProductDetailResponseDataFromJSON2(json["billing_product"]),
|
|
12287
|
+
billingStrategy: BillingStrategyFromJSON2(json["billing_strategy"]),
|
|
12220
12288
|
chargeType: ChargeTypeFromJSON2(json["charge_type"]),
|
|
12221
12289
|
companyCount: json["company_count"],
|
|
12222
12290
|
companyId: json["company_id"] == null ? void 0 : json["company_id"],
|
|
@@ -12251,6 +12319,7 @@ function PlanViewPublicResponseDataFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
12251
12319
|
name: json["name"],
|
|
12252
12320
|
oneTimePrice: json["one_time_price"] == null ? void 0 : BillingPriceResponseDataFromJSON2(json["one_time_price"]),
|
|
12253
12321
|
planType: PlanTypeFromJSON2(json["plan_type"]),
|
|
12322
|
+
quarterlyPrice: json["quarterly_price"] == null ? void 0 : BillingPriceResponseDataFromJSON2(json["quarterly_price"]),
|
|
12254
12323
|
trialDays: json["trial_days"] == null ? void 0 : json["trial_days"],
|
|
12255
12324
|
updatedAt: new Date(json["updated_at"]),
|
|
12256
12325
|
versions: json["versions"].map(
|
|
@@ -12338,6 +12407,24 @@ var ComponentspublicApi = class extends BaseAPI2 {
|
|
|
12338
12407
|
};
|
|
12339
12408
|
|
|
12340
12409
|
// src/utils/api/billing.ts
|
|
12410
|
+
function derivePeriod(interval, intervalCount) {
|
|
12411
|
+
if (!interval) {
|
|
12412
|
+
return void 0;
|
|
12413
|
+
}
|
|
12414
|
+
if (interval === "month" && intervalCount === 3) {
|
|
12415
|
+
return "quarter";
|
|
12416
|
+
}
|
|
12417
|
+
return interval;
|
|
12418
|
+
}
|
|
12419
|
+
function getSubscriptionPeriod(billingSubscription) {
|
|
12420
|
+
if (!billingSubscription) {
|
|
12421
|
+
return void 0;
|
|
12422
|
+
}
|
|
12423
|
+
const product = billingSubscription.products?.find(
|
|
12424
|
+
(p3) => p3.interval && p3.interval !== "one-time"
|
|
12425
|
+
);
|
|
12426
|
+
return derivePeriod(product?.interval, product?.intervalCount) ?? derivePeriod(billingSubscription.interval);
|
|
12427
|
+
}
|
|
12341
12428
|
var ChargeType = {
|
|
12342
12429
|
oneTime: "one_time",
|
|
12343
12430
|
recurring: "recurring",
|
|
@@ -12347,19 +12434,32 @@ function getPriceValue(billingPrice) {
|
|
|
12347
12434
|
const price = typeof billingPrice.priceDecimal === "string" ? Number(billingPrice.priceDecimal) : billingPrice.price;
|
|
12348
12435
|
return price;
|
|
12349
12436
|
}
|
|
12437
|
+
function selectPriceForPeriod(source, period) {
|
|
12438
|
+
switch (period) {
|
|
12439
|
+
case "year":
|
|
12440
|
+
return source.yearlyPrice;
|
|
12441
|
+
case "quarter":
|
|
12442
|
+
return source.quarterlyPrice;
|
|
12443
|
+
default:
|
|
12444
|
+
return source.monthlyPrice;
|
|
12445
|
+
}
|
|
12446
|
+
}
|
|
12447
|
+
function selectAvailablePrice(source) {
|
|
12448
|
+
return source.monthlyPrice ?? source.quarterlyPrice ?? source.yearlyPrice;
|
|
12449
|
+
}
|
|
12350
12450
|
function getPlanPrice(plan, period = "month", options = { useSelectedPeriod: true }, currency) {
|
|
12351
12451
|
if (currency && plan.currencyPrices?.length) {
|
|
12352
12452
|
const currencyPrice = plan.currencyPrices.find(
|
|
12353
12453
|
(cp) => cp.currency.toLowerCase() === currency.toLowerCase()
|
|
12354
12454
|
);
|
|
12355
12455
|
if (currencyPrice) {
|
|
12356
|
-
const billingPrice2 = options.useSelectedPeriod ?
|
|
12456
|
+
const billingPrice2 = options.useSelectedPeriod ? selectPriceForPeriod(currencyPrice, period) : selectAvailablePrice(currencyPrice);
|
|
12357
12457
|
if (billingPrice2) {
|
|
12358
12458
|
return { ...billingPrice2, price: getPriceValue(billingPrice2) };
|
|
12359
12459
|
}
|
|
12360
12460
|
}
|
|
12361
12461
|
}
|
|
12362
|
-
const billingPrice = options.useSelectedPeriod ?
|
|
12462
|
+
const billingPrice = options.useSelectedPeriod ? selectPriceForPeriod(plan, period) : selectAvailablePrice(plan);
|
|
12363
12463
|
if (billingPrice) {
|
|
12364
12464
|
return { ...billingPrice, price: getPriceValue(billingPrice) };
|
|
12365
12465
|
}
|
|
@@ -12370,13 +12470,13 @@ function getAddOnPrice(addOn, period = "month", currency) {
|
|
|
12370
12470
|
(cp) => cp.currency.toLowerCase() === currency.toLowerCase()
|
|
12371
12471
|
);
|
|
12372
12472
|
if (currencyPrice) {
|
|
12373
|
-
const billingPrice2 = addOn.chargeType === ChargeType.oneTime ? currencyPrice.oneTimePrice :
|
|
12473
|
+
const billingPrice2 = addOn.chargeType === ChargeType.oneTime ? currencyPrice.oneTimePrice : selectPriceForPeriod(currencyPrice, period);
|
|
12374
12474
|
if (billingPrice2) {
|
|
12375
12475
|
return { ...billingPrice2, price: getPriceValue(billingPrice2) };
|
|
12376
12476
|
}
|
|
12377
12477
|
}
|
|
12378
12478
|
}
|
|
12379
|
-
const billingPrice = addOn.chargeType === ChargeType.oneTime ? addOn.oneTimePrice :
|
|
12479
|
+
const billingPrice = addOn.chargeType === ChargeType.oneTime ? addOn.oneTimePrice : selectPriceForPeriod(addOn, period);
|
|
12380
12480
|
if (billingPrice) {
|
|
12381
12481
|
return { ...billingPrice, price: getPriceValue(billingPrice) };
|
|
12382
12482
|
}
|
|
@@ -12400,14 +12500,28 @@ function getEntitlementPrice(entitlement, period = "month", currency) {
|
|
|
12400
12500
|
(cp) => cp.currency.toLowerCase() === currency.toLowerCase()
|
|
12401
12501
|
);
|
|
12402
12502
|
if (currencyPrice) {
|
|
12403
|
-
source =
|
|
12503
|
+
source = selectPriceForPeriod(currencyPrice, period);
|
|
12404
12504
|
}
|
|
12405
12505
|
}
|
|
12406
12506
|
if (!source) {
|
|
12407
12507
|
if ("valueType" in entitlement) {
|
|
12408
|
-
source =
|
|
12508
|
+
source = selectPriceForPeriod(
|
|
12509
|
+
{
|
|
12510
|
+
monthlyPrice: entitlement.meteredMonthlyPrice,
|
|
12511
|
+
quarterlyPrice: entitlement.meteredQuarterlyPrice,
|
|
12512
|
+
yearlyPrice: entitlement.meteredYearlyPrice
|
|
12513
|
+
},
|
|
12514
|
+
period
|
|
12515
|
+
);
|
|
12409
12516
|
} else if ("entitlementType" in entitlement) {
|
|
12410
|
-
source =
|
|
12517
|
+
source = selectPriceForPeriod(
|
|
12518
|
+
{
|
|
12519
|
+
monthlyPrice: entitlement.monthlyUsageBasedPrice,
|
|
12520
|
+
quarterlyPrice: entitlement.quarterlyUsageBasedPrice,
|
|
12521
|
+
yearlyPrice: entitlement.yearlyUsageBasedPrice
|
|
12522
|
+
},
|
|
12523
|
+
period
|
|
12524
|
+
);
|
|
12411
12525
|
}
|
|
12412
12526
|
}
|
|
12413
12527
|
if (source) {
|
|
@@ -12459,7 +12573,15 @@ function calculateTieredCost(quantity, priceTiers, tiersMode) {
|
|
|
12459
12573
|
return cost;
|
|
12460
12574
|
}
|
|
12461
12575
|
function getEntitlementCost(entitlement, period = "month", currency) {
|
|
12462
|
-
const
|
|
12576
|
+
const resolvedPeriod = period ?? "month";
|
|
12577
|
+
const source = currency ? getEntitlementPrice(entitlement, resolvedPeriod, currency) : selectPriceForPeriod(
|
|
12578
|
+
{
|
|
12579
|
+
monthlyPrice: entitlement.monthlyUsageBasedPrice,
|
|
12580
|
+
quarterlyPrice: entitlement.quarterlyUsageBasedPrice,
|
|
12581
|
+
yearlyPrice: entitlement.yearlyUsageBasedPrice
|
|
12582
|
+
},
|
|
12583
|
+
resolvedPeriod
|
|
12584
|
+
);
|
|
12463
12585
|
if (source) {
|
|
12464
12586
|
const billingPrice = { ...source };
|
|
12465
12587
|
if (entitlement.priceBehavior === EntitlementPriceBehavior.PayInAdvance && typeof entitlement.allocation === "number" && entitlement.allocation > 0) {
|
|
@@ -12720,7 +12842,7 @@ function getMetricPeriodName(entitlement) {
|
|
|
12720
12842
|
return name;
|
|
12721
12843
|
}
|
|
12722
12844
|
function getUsageDetails(entitlement, period, currency) {
|
|
12723
|
-
const billingPrice = currency ? getEntitlementPrice(entitlement, period ?? "month", currency) : period === "year" ? entitlement.yearlyUsageBasedPrice : period === "month" ? entitlement.monthlyUsageBasedPrice : void 0;
|
|
12845
|
+
const billingPrice = currency ? getEntitlementPrice(entitlement, period ?? "month", currency) : period === "year" ? entitlement.yearlyUsageBasedPrice : period === "quarter" ? entitlement.quarterlyUsageBasedPrice : period === "month" ? entitlement.monthlyUsageBasedPrice : void 0;
|
|
12724
12846
|
let limit;
|
|
12725
12847
|
if ((!entitlement.priceBehavior || entitlement.priceBehavior === EntitlementPriceBehavior.PayInAdvance) && typeof entitlement.allocation === "number") {
|
|
12726
12848
|
limit = entitlement.allocation;
|
|
@@ -12782,7 +12904,7 @@ function getCreditBasedEntitlementLimit(entitlement, credits) {
|
|
|
12782
12904
|
}
|
|
12783
12905
|
function extractCurrentUsageBasedEntitlements(features = [], planPeriod) {
|
|
12784
12906
|
return features.reduce((acc, entitlement) => {
|
|
12785
|
-
if (entitlement.priceBehavior && (planPeriod === "month" && entitlement.monthlyUsageBasedPrice || planPeriod === "year" && entitlement.yearlyUsageBasedPrice)) {
|
|
12907
|
+
if (entitlement.priceBehavior && (planPeriod === "month" && entitlement.monthlyUsageBasedPrice || planPeriod === "quarter" && entitlement.quarterlyUsageBasedPrice || planPeriod === "year" && entitlement.yearlyUsageBasedPrice)) {
|
|
12786
12908
|
const allocation = entitlement.allocation || 0;
|
|
12787
12909
|
const usage = entitlement.usage || 0;
|
|
12788
12910
|
const quantity = allocation ?? usage;
|
|
@@ -13304,6 +13426,8 @@ function shortenPeriod(period) {
|
|
|
13304
13426
|
switch (period) {
|
|
13305
13427
|
case "month":
|
|
13306
13428
|
return "mo";
|
|
13429
|
+
case "quarter":
|
|
13430
|
+
return "qtr";
|
|
13307
13431
|
case "year":
|
|
13308
13432
|
return "yr";
|
|
13309
13433
|
}
|
|
@@ -13477,7 +13601,7 @@ function getCurrencySymbol(currency) {
|
|
|
13477
13601
|
// src/utils/style.ts
|
|
13478
13602
|
function attr(key, value) {
|
|
13479
13603
|
if (typeof value !== "undefined") {
|
|
13480
|
-
return
|
|
13604
|
+
return ft`
|
|
13481
13605
|
${key}: ${value};
|
|
13482
13606
|
`;
|
|
13483
13607
|
}
|
|
@@ -13669,7 +13793,8 @@ var reducer = (state, action) => {
|
|
|
13669
13793
|
bypassAddOnSelection,
|
|
13670
13794
|
bypassCreditsSelection,
|
|
13671
13795
|
...config.addOnIds && { addOnIds: config.addOnIds },
|
|
13672
|
-
hideSkippedStages: config.hideSkipped ?? false
|
|
13796
|
+
hideSkippedStages: config.hideSkipped ?? false,
|
|
13797
|
+
startTrialIfAvailable: isStringFormat || config.startTrialIfAvailable === void 0 ? true : config.startTrialIfAvailable
|
|
13673
13798
|
}
|
|
13674
13799
|
};
|
|
13675
13800
|
}
|
|
@@ -13691,7 +13816,7 @@ var reducer = (state, action) => {
|
|
|
13691
13816
|
// src/context/EmbedProvider.tsx
|
|
13692
13817
|
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
13693
13818
|
var getCustomHeaders = (sessionId) => ({
|
|
13694
|
-
"X-Schematic-Components-Version": "2.
|
|
13819
|
+
"X-Schematic-Components-Version": "2.13.0",
|
|
13695
13820
|
"X-Schematic-Session-ID": sessionId
|
|
13696
13821
|
});
|
|
13697
13822
|
var normalizeCurrencyFilter = (filter2) => {
|
|
@@ -14124,7 +14249,7 @@ var EmbedProvider = ({
|
|
|
14124
14249
|
updateSettings,
|
|
14125
14250
|
debug
|
|
14126
14251
|
},
|
|
14127
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
|
|
14252
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(rt2, { theme: state.settings.theme, children: [
|
|
14128
14253
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(IconStyles, {}),
|
|
14129
14254
|
children
|
|
14130
14255
|
] })
|
|
@@ -14227,6 +14352,9 @@ function useAvailablePlans(activePeriod, options = { useSelectedPeriod: true })
|
|
|
14227
14352
|
if ((data?.activePlans || []).some((plan) => plan.monthlyPrice) || (data?.activeAddOns || []).some((addOn) => addOn.monthlyPrice)) {
|
|
14228
14353
|
periods.push("month");
|
|
14229
14354
|
}
|
|
14355
|
+
if ((data?.activePlans || []).some((plan) => plan.quarterlyPrice) || (data?.activeAddOns || []).some((addOn) => addOn.quarterlyPrice)) {
|
|
14356
|
+
periods.push("quarter");
|
|
14357
|
+
}
|
|
14230
14358
|
if ((data?.activePlans || []).some((plan) => plan.yearlyPrice) || (data?.activeAddOns || []).some((addOn) => addOn.yearlyPrice)) {
|
|
14231
14359
|
periods.push("year");
|
|
14232
14360
|
}
|
|
@@ -14236,9 +14364,9 @@ function useAvailablePlans(activePeriod, options = { useSelectedPeriod: true })
|
|
|
14236
14364
|
(plans) => {
|
|
14237
14365
|
const activePlans = settings.mode === "edit" ? plans.slice() : plans.filter((plan) => {
|
|
14238
14366
|
if (options.useSelectedPeriod) {
|
|
14239
|
-
return activePeriod === "month" && plan.monthlyPrice || activePeriod === "year" && plan.yearlyPrice || plan.chargeType === ChargeType.oneTime;
|
|
14367
|
+
return activePeriod === "month" && plan.monthlyPrice || activePeriod === "quarter" && plan.quarterlyPrice || activePeriod === "year" && plan.yearlyPrice || plan.chargeType === ChargeType.oneTime;
|
|
14240
14368
|
}
|
|
14241
|
-
return plan.monthlyPrice || plan.yearlyPrice || plan.chargeType === ChargeType.oneTime;
|
|
14369
|
+
return plan.monthlyPrice || plan.quarterlyPrice || plan.yearlyPrice || plan.chargeType === ChargeType.oneTime;
|
|
14242
14370
|
});
|
|
14243
14371
|
return activePlans.map((plan) => ({ ...plan, isSelected: false }));
|
|
14244
14372
|
},
|
|
@@ -14493,7 +14621,7 @@ function useWrapChildren(ref) {
|
|
|
14493
14621
|
}
|
|
14494
14622
|
|
|
14495
14623
|
// src/components/ui/box/styles.ts
|
|
14496
|
-
var Box =
|
|
14624
|
+
var Box = gt2("div")((props) => {
|
|
14497
14625
|
function reducer2(acc, [key, value]) {
|
|
14498
14626
|
if (key.startsWith("$") && !["$viewport"].includes(key)) {
|
|
14499
14627
|
acc.push(
|
|
@@ -14504,14 +14632,14 @@ var Box = yt2("div")((props) => {
|
|
|
14504
14632
|
return acc;
|
|
14505
14633
|
}
|
|
14506
14634
|
const styles = Object.entries(props).reduce(reducer2, [
|
|
14507
|
-
|
|
14635
|
+
ft`
|
|
14508
14636
|
&:focus-visible {
|
|
14509
14637
|
outline: 2px solid ${({ theme }) => theme.primary};
|
|
14510
14638
|
}
|
|
14511
14639
|
`
|
|
14512
14640
|
]);
|
|
14513
14641
|
for (const [key, value] of Object.entries(props.$viewport || {})) {
|
|
14514
|
-
styles.push(
|
|
14642
|
+
styles.push(ft`
|
|
14515
14643
|
${{
|
|
14516
14644
|
"xs": "@container (min-width: 375px)",
|
|
14517
14645
|
"sm": "@container (min-width: 640px)",
|
|
@@ -14526,11 +14654,11 @@ var Box = yt2("div")((props) => {
|
|
|
14526
14654
|
}
|
|
14527
14655
|
return styles;
|
|
14528
14656
|
});
|
|
14529
|
-
var TransitionBox =
|
|
14657
|
+
var TransitionBox = gt2(Box)`
|
|
14530
14658
|
${({ $isExpanded = true }) => {
|
|
14531
|
-
return $isExpanded ?
|
|
14659
|
+
return $isExpanded ? ft`
|
|
14532
14660
|
height: auto;
|
|
14533
|
-
` :
|
|
14661
|
+
` : ft`
|
|
14534
14662
|
height: 0;
|
|
14535
14663
|
overflow: hidden;
|
|
14536
14664
|
`;
|
|
@@ -14547,7 +14675,7 @@ var TransitionBox = yt2(Box)`
|
|
|
14547
14675
|
`;
|
|
14548
14676
|
|
|
14549
14677
|
// src/components/ui/icon/styles.ts
|
|
14550
|
-
var Icon2 =
|
|
14678
|
+
var Icon2 = gt2(Icon).attrs(({ name, title, onClick }) => ({
|
|
14551
14679
|
title: title || name,
|
|
14552
14680
|
...onClick && { tabIndex: 0 }
|
|
14553
14681
|
}))`
|
|
@@ -14557,7 +14685,7 @@ var Icon2 = yt2(Icon).attrs(({ name, title, onClick }) => ({
|
|
|
14557
14685
|
flex-shrink: 0;
|
|
14558
14686
|
transition: 0.1s;
|
|
14559
14687
|
|
|
14560
|
-
${({ onClick }) => onClick &&
|
|
14688
|
+
${({ onClick }) => onClick && ft`
|
|
14561
14689
|
&:hover {
|
|
14562
14690
|
cursor: pointer;
|
|
14563
14691
|
}
|
|
@@ -14568,7 +14696,7 @@ var Icon2 = yt2(Icon).attrs(({ name, title, onClick }) => ({
|
|
|
14568
14696
|
outline-offset: 2px;
|
|
14569
14697
|
}
|
|
14570
14698
|
|
|
14571
|
-
${({ $rounded }) => $rounded &&
|
|
14699
|
+
${({ $rounded }) => $rounded && ft`
|
|
14572
14700
|
border-radius: 9999px;
|
|
14573
14701
|
`}
|
|
14574
14702
|
|
|
@@ -14599,10 +14727,10 @@ var Icon2 = yt2(Icon).attrs(({ name, title, onClick }) => ({
|
|
|
14599
14727
|
scale *= 3;
|
|
14600
14728
|
break;
|
|
14601
14729
|
}
|
|
14602
|
-
return
|
|
14730
|
+
return ft`
|
|
14603
14731
|
font-size: ${base * scale / TEXT_BASE_SIZE}rem;
|
|
14604
14732
|
|
|
14605
|
-
${$rounded &&
|
|
14733
|
+
${$rounded && ft`
|
|
14606
14734
|
width: ${base * (11 / 6) * scale / TEXT_BASE_SIZE}rem;
|
|
14607
14735
|
height: ${base * (11 / 6) * scale / TEXT_BASE_SIZE}rem;
|
|
14608
14736
|
`}
|
|
@@ -14610,10 +14738,10 @@ var Icon2 = yt2(Icon).attrs(({ name, title, onClick }) => ({
|
|
|
14610
14738
|
}}
|
|
14611
14739
|
|
|
14612
14740
|
${({ $variant, $color, $background }) => {
|
|
14613
|
-
return $variant === "outline" ?
|
|
14741
|
+
return $variant === "outline" ? ft`
|
|
14614
14742
|
color: ${$color};
|
|
14615
14743
|
background-color: transparent;
|
|
14616
|
-
` :
|
|
14744
|
+
` : ft`
|
|
14617
14745
|
color: ${$color};
|
|
14618
14746
|
background-color: ${$background};
|
|
14619
14747
|
`;
|
|
@@ -14621,7 +14749,7 @@ var Icon2 = yt2(Icon).attrs(({ name, title, onClick }) => ({
|
|
|
14621
14749
|
`;
|
|
14622
14750
|
|
|
14623
14751
|
// src/components/ui/loader/styles.ts
|
|
14624
|
-
var spin =
|
|
14752
|
+
var spin = Et`
|
|
14625
14753
|
0% {
|
|
14626
14754
|
transform: rotate(0deg);
|
|
14627
14755
|
}
|
|
@@ -14634,7 +14762,7 @@ var loaderStyles = ({
|
|
|
14634
14762
|
$color,
|
|
14635
14763
|
$size = "md",
|
|
14636
14764
|
$isLoading = true
|
|
14637
|
-
}) =>
|
|
14765
|
+
}) => ft(({ theme }) => {
|
|
14638
14766
|
const { l: l3 } = hexToHSL(theme.card.background);
|
|
14639
14767
|
let color = $color ?? theme.primary;
|
|
14640
14768
|
let colorFn;
|
|
@@ -14670,14 +14798,14 @@ var loaderStyles = ({
|
|
|
14670
14798
|
px = 64;
|
|
14671
14799
|
break;
|
|
14672
14800
|
}
|
|
14673
|
-
return
|
|
14801
|
+
return ft`
|
|
14674
14802
|
display: inline-block;
|
|
14675
14803
|
width: ${($isLoading ? px : 0) / TEXT_BASE_SIZE}rem;
|
|
14676
14804
|
height: ${($isLoading ? px : 0) / TEXT_BASE_SIZE}rem;
|
|
14677
14805
|
border-width: ${($isLoading ? px : 0) / 16 / TEXT_BASE_SIZE}rem;
|
|
14678
|
-
${$isLoading ?
|
|
14806
|
+
${$isLoading ? ft`
|
|
14679
14807
|
animation: 1.5s linear infinite ${spin};
|
|
14680
|
-
` :
|
|
14808
|
+
` : ft`
|
|
14681
14809
|
transform: scale(0);
|
|
14682
14810
|
`}
|
|
14683
14811
|
border-style: solid;
|
|
@@ -14688,12 +14816,12 @@ var loaderStyles = ({
|
|
|
14688
14816
|
animation: 1.5s linear infinite ${spin};
|
|
14689
14817
|
`;
|
|
14690
14818
|
});
|
|
14691
|
-
var Loader =
|
|
14819
|
+
var Loader = gt2.div((props) => {
|
|
14692
14820
|
return loaderStyles(props);
|
|
14693
14821
|
});
|
|
14694
14822
|
|
|
14695
14823
|
// src/components/ui/button/styles.ts
|
|
14696
|
-
var Button =
|
|
14824
|
+
var Button = gt2.button(
|
|
14697
14825
|
({
|
|
14698
14826
|
theme,
|
|
14699
14827
|
disabled = false,
|
|
@@ -14705,7 +14833,7 @@ var Button = yt2.button(
|
|
|
14705
14833
|
$alignment = "center",
|
|
14706
14834
|
$selfAlignment
|
|
14707
14835
|
}) => {
|
|
14708
|
-
return
|
|
14836
|
+
return ft`
|
|
14709
14837
|
appearance: none;
|
|
14710
14838
|
font-family: "Public Sans", sans-serif;
|
|
14711
14839
|
font-weight: 500;
|
|
@@ -14713,7 +14841,7 @@ var Button = yt2.button(
|
|
|
14713
14841
|
display: flex;
|
|
14714
14842
|
justify-content: ${$alignment};
|
|
14715
14843
|
align-items: center;
|
|
14716
|
-
${() => $selfAlignment &&
|
|
14844
|
+
${() => $selfAlignment && ft`
|
|
14717
14845
|
align-self: ${$selfAlignment};
|
|
14718
14846
|
`}
|
|
14719
14847
|
width: ${$fullWidth ? "100%" : "fit-content"};
|
|
@@ -14723,21 +14851,21 @@ var Button = yt2.button(
|
|
|
14723
14851
|
${function sizeStyles() {
|
|
14724
14852
|
switch ($size) {
|
|
14725
14853
|
case "sm":
|
|
14726
|
-
return
|
|
14854
|
+
return ft`
|
|
14727
14855
|
font-size: ${15 / TEXT_BASE_SIZE}rem;
|
|
14728
14856
|
height: ${40 / TEXT_BASE_SIZE}rem;
|
|
14729
14857
|
padding: ${7 / TEXT_BASE_SIZE}rem ${20 / TEXT_BASE_SIZE}rem;
|
|
14730
14858
|
border-radius: ${6 / TEXT_BASE_SIZE}rem;
|
|
14731
14859
|
`;
|
|
14732
14860
|
case "md":
|
|
14733
|
-
return
|
|
14861
|
+
return ft`
|
|
14734
14862
|
font-size: ${17 / TEXT_BASE_SIZE}rem;
|
|
14735
14863
|
height: ${52 / TEXT_BASE_SIZE}rem;
|
|
14736
14864
|
padding: ${8 / TEXT_BASE_SIZE}rem ${24 / TEXT_BASE_SIZE}rem;
|
|
14737
14865
|
border-radius: ${8 / TEXT_BASE_SIZE}rem;
|
|
14738
14866
|
`;
|
|
14739
14867
|
case "lg":
|
|
14740
|
-
return
|
|
14868
|
+
return ft`
|
|
14741
14869
|
font-size: ${19 / TEXT_BASE_SIZE}rem;
|
|
14742
14870
|
height: ${64 / TEXT_BASE_SIZE}rem;
|
|
14743
14871
|
padding: ${9 / TEXT_BASE_SIZE}rem ${28 / TEXT_BASE_SIZE}rem;
|
|
@@ -14752,7 +14880,7 @@ var Button = yt2.button(
|
|
|
14752
14880
|
if (disabled) {
|
|
14753
14881
|
color = l3 > 50 ? lighten(color, 0.625) : darken(color, 0.375);
|
|
14754
14882
|
}
|
|
14755
|
-
return
|
|
14883
|
+
return ft`
|
|
14756
14884
|
color: ${color};
|
|
14757
14885
|
|
|
14758
14886
|
${Text}, ${Icon2} {
|
|
@@ -14769,7 +14897,7 @@ var Button = yt2.button(
|
|
|
14769
14897
|
color = l3 > 50 ? darken(color, 0.075) : lighten(color, 0.15);
|
|
14770
14898
|
}
|
|
14771
14899
|
if ($variant === "outline") {
|
|
14772
|
-
return
|
|
14900
|
+
return ft`
|
|
14773
14901
|
color: ${color};
|
|
14774
14902
|
background-color: transparent;
|
|
14775
14903
|
border-color: ${color};
|
|
@@ -14780,7 +14908,7 @@ var Button = yt2.button(
|
|
|
14780
14908
|
`;
|
|
14781
14909
|
}
|
|
14782
14910
|
if ($variant === "ghost") {
|
|
14783
|
-
return
|
|
14911
|
+
return ft`
|
|
14784
14912
|
color: ${color};
|
|
14785
14913
|
background-color: transparent;
|
|
14786
14914
|
border-color: ${l3 > 50 ? darken(theme.card.background, 0.2) : lighten(theme.card.background, 0.2)};
|
|
@@ -14791,7 +14919,7 @@ var Button = yt2.button(
|
|
|
14791
14919
|
`;
|
|
14792
14920
|
}
|
|
14793
14921
|
if ($variant === "text") {
|
|
14794
|
-
return
|
|
14922
|
+
return ft`
|
|
14795
14923
|
color: ${color};
|
|
14796
14924
|
background-color: transparent;
|
|
14797
14925
|
border-color: transparent;
|
|
@@ -14801,7 +14929,7 @@ var Button = yt2.button(
|
|
|
14801
14929
|
}
|
|
14802
14930
|
`;
|
|
14803
14931
|
}
|
|
14804
|
-
return
|
|
14932
|
+
return ft`
|
|
14805
14933
|
background-color: ${color};
|
|
14806
14934
|
border-color: ${color};
|
|
14807
14935
|
`;
|
|
@@ -14819,7 +14947,7 @@ var Button = yt2.button(
|
|
|
14819
14947
|
&::before {
|
|
14820
14948
|
content: "";
|
|
14821
14949
|
${loaderStyles({ $color: theme[$color], $size, $isLoading })}
|
|
14822
|
-
${$isLoading &&
|
|
14950
|
+
${$isLoading && ft`
|
|
14823
14951
|
margin-right: 0.5rem;
|
|
14824
14952
|
`}
|
|
14825
14953
|
}
|
|
@@ -14837,13 +14965,13 @@ var Button = yt2.button(
|
|
|
14837
14965
|
const lightened = lighten(specified, 0.15);
|
|
14838
14966
|
const bgColor = specified === lightened ? darken(specified, 0.15) : lightened;
|
|
14839
14967
|
if ($variant === "filled") {
|
|
14840
|
-
return
|
|
14968
|
+
return ft`
|
|
14841
14969
|
background-color: ${bgColor};
|
|
14842
14970
|
border-color: ${bgColor};
|
|
14843
14971
|
`;
|
|
14844
14972
|
}
|
|
14845
14973
|
if ($variant === "outline") {
|
|
14846
|
-
return
|
|
14974
|
+
return ft`
|
|
14847
14975
|
color: ${color};
|
|
14848
14976
|
background-color: ${bgColor};
|
|
14849
14977
|
border-color: ${bgColor};
|
|
@@ -14855,14 +14983,14 @@ var Button = yt2.button(
|
|
|
14855
14983
|
}
|
|
14856
14984
|
if ($variant === "ghost") {
|
|
14857
14985
|
const { l: l4 } = hexToHSL(theme.card.background);
|
|
14858
|
-
return
|
|
14986
|
+
return ft`
|
|
14859
14987
|
border-color: ${l4 > 50 ? darken(theme.card.background, 0.125) : lighten(theme.card.background, 0.125)};
|
|
14860
14988
|
box-shadow: 0 1px 2px
|
|
14861
14989
|
${l4 > 50 ? darken(theme.card.background, 0.075) : lighten(theme.card.background, 0.075)};
|
|
14862
14990
|
`;
|
|
14863
14991
|
}
|
|
14864
14992
|
if ($variant === "text") {
|
|
14865
|
-
return
|
|
14993
|
+
return ft`
|
|
14866
14994
|
text-decoration: underline;
|
|
14867
14995
|
`;
|
|
14868
14996
|
}
|
|
@@ -14876,14 +15004,14 @@ var Button = yt2.button(
|
|
|
14876
15004
|
var import_react25 = require("react");
|
|
14877
15005
|
|
|
14878
15006
|
// src/components/ui/dialog/styles.ts
|
|
14879
|
-
var DialogContent =
|
|
15007
|
+
var DialogContent = gt2.div`
|
|
14880
15008
|
position: relative;
|
|
14881
15009
|
display: flex;
|
|
14882
15010
|
flex-direction: column;
|
|
14883
15011
|
`;
|
|
14884
|
-
var Dialog =
|
|
15012
|
+
var Dialog = gt2.dialog(
|
|
14885
15013
|
({ theme, $isModal, $size, $top }) => {
|
|
14886
|
-
return
|
|
15014
|
+
return ft`
|
|
14887
15015
|
${ResetStyle}
|
|
14888
15016
|
${$isModal && ContainerStyle}
|
|
14889
15017
|
|
|
@@ -14925,7 +15053,7 @@ var Dialog = yt2.dialog(
|
|
|
14925
15053
|
flex-direction: row;
|
|
14926
15054
|
max-height: calc(100dvh - 5rem + 3px);
|
|
14927
15055
|
|
|
14928
|
-
${$size === "lg" &&
|
|
15056
|
+
${$size === "lg" && ft`
|
|
14929
15057
|
height: calc(100% - 5rem + 3px);
|
|
14930
15058
|
`}
|
|
14931
15059
|
}
|
|
@@ -15062,7 +15190,7 @@ var DialogHeader = ({
|
|
|
15062
15190
|
};
|
|
15063
15191
|
|
|
15064
15192
|
// src/components/ui/flex/styles.ts
|
|
15065
|
-
var Flex =
|
|
15193
|
+
var Flex = gt2(Box)`
|
|
15066
15194
|
display: flex;
|
|
15067
15195
|
`;
|
|
15068
15196
|
|
|
@@ -15096,9 +15224,9 @@ var Icon3 = ({
|
|
|
15096
15224
|
};
|
|
15097
15225
|
|
|
15098
15226
|
// src/components/ui/input/styles.ts
|
|
15099
|
-
var Input =
|
|
15227
|
+
var Input = gt2.input(({ theme, $size = "md", $variant = "filled" }) => {
|
|
15100
15228
|
const isLightBackground = isLightColor(theme.card.background);
|
|
15101
|
-
return
|
|
15229
|
+
return ft`
|
|
15102
15230
|
font-family: "Inter", sans-serif;
|
|
15103
15231
|
font-weight: 500;
|
|
15104
15232
|
width: 100%;
|
|
@@ -15118,14 +15246,14 @@ var Input = yt2.input(({ theme, $size = "md", $variant = "filled" }) => {
|
|
|
15118
15246
|
${() => {
|
|
15119
15247
|
switch ($size) {
|
|
15120
15248
|
case "sm": {
|
|
15121
|
-
return
|
|
15249
|
+
return ft`
|
|
15122
15250
|
font-size: 0.875rem;
|
|
15123
15251
|
line-height: 1.5rem;
|
|
15124
15252
|
height: 1.5rem;
|
|
15125
15253
|
`;
|
|
15126
15254
|
}
|
|
15127
15255
|
case "md": {
|
|
15128
|
-
return
|
|
15256
|
+
return ft`
|
|
15129
15257
|
font-size: 1rem;
|
|
15130
15258
|
line-height: 3rem;
|
|
15131
15259
|
height: 3rem;
|
|
@@ -15133,7 +15261,7 @@ var Input = yt2.input(({ theme, $size = "md", $variant = "filled" }) => {
|
|
|
15133
15261
|
`;
|
|
15134
15262
|
}
|
|
15135
15263
|
case "lg": {
|
|
15136
|
-
return
|
|
15264
|
+
return ft`
|
|
15137
15265
|
font-size: 1.25rem;
|
|
15138
15266
|
line-height: 4rem;
|
|
15139
15267
|
height: 4rem;
|
|
@@ -15141,7 +15269,7 @@ var Input = yt2.input(({ theme, $size = "md", $variant = "filled" }) => {
|
|
|
15141
15269
|
`;
|
|
15142
15270
|
}
|
|
15143
15271
|
case "full": {
|
|
15144
|
-
return
|
|
15272
|
+
return ft`
|
|
15145
15273
|
font-size: 1rem;
|
|
15146
15274
|
line-height: 1;
|
|
15147
15275
|
height: 100%;
|
|
@@ -15155,7 +15283,7 @@ var Input = yt2.input(({ theme, $size = "md", $variant = "filled" }) => {
|
|
|
15155
15283
|
const color = $variant !== "filled" && !isLightBackground ? theme.typography.text.color : "#000000";
|
|
15156
15284
|
const bgColor = $variant === "filled" ? "#F1F1F1" : "transparent";
|
|
15157
15285
|
const borderColor = $variant === "text" ? "transparent" : "#CBCBCB";
|
|
15158
|
-
return
|
|
15286
|
+
return ft`
|
|
15159
15287
|
color: ${color};
|
|
15160
15288
|
background-color: ${bgColor};
|
|
15161
15289
|
border-color: ${borderColor};
|
|
@@ -15181,8 +15309,8 @@ var Input = yt2.input(({ theme, $size = "md", $variant = "filled" }) => {
|
|
|
15181
15309
|
});
|
|
15182
15310
|
|
|
15183
15311
|
// src/components/ui/overlay/styles.ts
|
|
15184
|
-
var Overlay =
|
|
15185
|
-
return
|
|
15312
|
+
var Overlay = gt2(Flex)(({ theme }) => {
|
|
15313
|
+
return ft`
|
|
15186
15314
|
position: absolute;
|
|
15187
15315
|
top: 0;
|
|
15188
15316
|
right: 0;
|
|
@@ -15300,7 +15428,7 @@ var LeadingLineHeightMap = {
|
|
|
15300
15428
|
relaxed: 1.625,
|
|
15301
15429
|
loose: 2
|
|
15302
15430
|
};
|
|
15303
|
-
var Text =
|
|
15431
|
+
var Text = gt2.span.withConfig({
|
|
15304
15432
|
shouldForwardProp: (prop) => prop !== "display"
|
|
15305
15433
|
}).attrs(({ onClick }) => ({
|
|
15306
15434
|
...onClick && { tabIndex: 0 }
|
|
@@ -15323,7 +15451,7 @@ var Text = yt2.span.withConfig({
|
|
|
15323
15451
|
const fontWeight = $weight || fontStyle.fontWeight;
|
|
15324
15452
|
const lineHeight = $leading && LeadingLineHeightMap[$leading];
|
|
15325
15453
|
const color = $color || fontStyle.color;
|
|
15326
|
-
return
|
|
15454
|
+
return ft`
|
|
15327
15455
|
font-family: ${fontFamily}, sans-serif;
|
|
15328
15456
|
font-size: ${typeof fontSize === "number" ? `${fontSize / TEXT_BASE_SIZE}rem` : fontSize};
|
|
15329
15457
|
font-weight: ${fontWeight};
|
|
@@ -15331,19 +15459,19 @@ var Text = yt2.span.withConfig({
|
|
|
15331
15459
|
color: ${color};
|
|
15332
15460
|
text-wrap: pretty;
|
|
15333
15461
|
|
|
15334
|
-
${lineHeight &&
|
|
15462
|
+
${lineHeight && ft`
|
|
15335
15463
|
line-height: ${lineHeight};
|
|
15336
15464
|
`}
|
|
15337
15465
|
|
|
15338
|
-
${$align &&
|
|
15466
|
+
${$align && ft`
|
|
15339
15467
|
text-align: ${$align};
|
|
15340
15468
|
`};
|
|
15341
15469
|
|
|
15342
|
-
${$width &&
|
|
15470
|
+
${$width && ft`
|
|
15343
15471
|
width: ${$width};
|
|
15344
15472
|
`};
|
|
15345
15473
|
|
|
15346
|
-
${onClick &&
|
|
15474
|
+
${onClick && ft`
|
|
15347
15475
|
&:hover {
|
|
15348
15476
|
cursor: pointer;
|
|
15349
15477
|
text-decoration: underline;
|
|
@@ -15359,7 +15487,7 @@ var Text = yt2.span.withConfig({
|
|
|
15359
15487
|
);
|
|
15360
15488
|
|
|
15361
15489
|
// src/components/ui/toggle/styles.ts
|
|
15362
|
-
var Toggle =
|
|
15490
|
+
var Toggle = gt2.input.attrs({ type: "checkbox" })`
|
|
15363
15491
|
appearance: none;
|
|
15364
15492
|
font: inherit;
|
|
15365
15493
|
font-size: inherit;
|
|
@@ -15474,7 +15602,7 @@ var origin = (position2) => {
|
|
|
15474
15602
|
return o2;
|
|
15475
15603
|
};
|
|
15476
15604
|
var grow = (translate) => {
|
|
15477
|
-
return
|
|
15605
|
+
return Et`
|
|
15478
15606
|
0% {
|
|
15479
15607
|
opacity: 0;
|
|
15480
15608
|
transform: translate(${translate.x}%, ${translate.y}%) scale(0);
|
|
@@ -15486,13 +15614,13 @@ var grow = (translate) => {
|
|
|
15486
15614
|
}
|
|
15487
15615
|
`;
|
|
15488
15616
|
};
|
|
15489
|
-
var Content =
|
|
15617
|
+
var Content = gt2.div.withConfig({
|
|
15490
15618
|
shouldForwardProp: (prop) => !["x", "y", "position", "zIndex"].includes(prop)
|
|
15491
15619
|
})(({ x: x3, y: y2, position: position2, theme }) => {
|
|
15492
15620
|
const translate = coords(position2);
|
|
15493
15621
|
const arrowTranslate = arrowCoords(position2);
|
|
15494
15622
|
const transformOrigin = origin(position2);
|
|
15495
|
-
return
|
|
15623
|
+
return ft`
|
|
15496
15624
|
position: absolute;
|
|
15497
15625
|
top: calc(
|
|
15498
15626
|
${y2}px - ${position2 === "top" ? 0.5 : position2 === "bottom" ? -0.5 : 0}rem
|
|
@@ -15532,16 +15660,16 @@ var Content = yt2.div.withConfig({
|
|
|
15532
15660
|
&::after {
|
|
15533
15661
|
position: absolute;
|
|
15534
15662
|
z-index: 0;
|
|
15535
|
-
${position2 === "top" ?
|
|
15663
|
+
${position2 === "top" ? ft`
|
|
15536
15664
|
top: 100%;
|
|
15537
15665
|
left: 50%;
|
|
15538
|
-
` : position2 === "right" ?
|
|
15666
|
+
` : position2 === "right" ? ft`
|
|
15539
15667
|
top: 50%;
|
|
15540
15668
|
right: 100%;
|
|
15541
|
-
` : position2 === "bottom" ?
|
|
15669
|
+
` : position2 === "bottom" ? ft`
|
|
15542
15670
|
bottom: 100%;
|
|
15543
15671
|
left: 50%;
|
|
15544
|
-
` :
|
|
15672
|
+
` : ft`
|
|
15545
15673
|
top: 50%;
|
|
15546
15674
|
left: 100%;
|
|
15547
15675
|
`};
|
|
@@ -15624,15 +15752,15 @@ var Tooltip = ({
|
|
|
15624
15752
|
};
|
|
15625
15753
|
|
|
15626
15754
|
// src/components/layout/card/styles.ts
|
|
15627
|
-
var Element =
|
|
15628
|
-
var FussyChild =
|
|
15629
|
-
var Notice =
|
|
15755
|
+
var Element = gt2(Box)``;
|
|
15756
|
+
var FussyChild = gt2(Element)``;
|
|
15757
|
+
var Notice = gt2(Box)``;
|
|
15630
15758
|
var cardBoxShadow = "0px 1px 20px 0px #1018280F, 0px 1px 3px 0px #1018281A";
|
|
15631
|
-
var StyledCard =
|
|
15759
|
+
var StyledCard = gt2.div(({ theme }) => {
|
|
15632
15760
|
const { l: l3 } = hexToHSL(theme.card.background);
|
|
15633
15761
|
const borderColor = l3 > 50 ? "hsla(0, 0%, 0%, 0.1)" : "hsla(0, 0%, 100%, 0.2)";
|
|
15634
15762
|
const borderRadius = `${theme.card.borderRadius / TEXT_BASE_SIZE}rem`;
|
|
15635
|
-
return
|
|
15763
|
+
return ft`
|
|
15636
15764
|
position: relative;
|
|
15637
15765
|
|
|
15638
15766
|
${theme.sectionLayout === "merged" ? `&:not(:has(${FussyChild}))` : `${Element}:not(:is(${FussyChild}))`} {
|
|
@@ -15647,9 +15775,9 @@ var StyledCard = yt2.div(({ theme }) => {
|
|
|
15647
15775
|
${theme.card.padding / TEXT_BASE_SIZE}rem;
|
|
15648
15776
|
|
|
15649
15777
|
&:not(:last-child) {
|
|
15650
|
-
${theme.sectionLayout === "merged" ?
|
|
15778
|
+
${theme.sectionLayout === "merged" ? ft`
|
|
15651
15779
|
border-bottom: 1px solid ${borderColor};
|
|
15652
|
-
` :
|
|
15780
|
+
` : ft`
|
|
15653
15781
|
margin-bottom: 1rem;
|
|
15654
15782
|
`}
|
|
15655
15783
|
}
|
|
@@ -15695,7 +15823,7 @@ Card.displayName = "Card";
|
|
|
15695
15823
|
var import_react30 = require("react");
|
|
15696
15824
|
|
|
15697
15825
|
// src/components/layout/column/styles.ts
|
|
15698
|
-
var StyledColumn =
|
|
15826
|
+
var StyledColumn = gt2.div`
|
|
15699
15827
|
height: min-content;
|
|
15700
15828
|
`;
|
|
15701
15829
|
|
|
@@ -15712,7 +15840,7 @@ Column.displayName = "Column";
|
|
|
15712
15840
|
var import_react31 = require("react");
|
|
15713
15841
|
|
|
15714
15842
|
// src/components/layout/root/styles.ts
|
|
15715
|
-
var ResetStyle =
|
|
15843
|
+
var ResetStyle = ft`
|
|
15716
15844
|
box-sizing: border-box;
|
|
15717
15845
|
font-size: 1rem;
|
|
15718
15846
|
line-height: 1.375;
|
|
@@ -15737,11 +15865,11 @@ var ResetStyle = pt2`
|
|
|
15737
15865
|
vertical-align: top;
|
|
15738
15866
|
}
|
|
15739
15867
|
`;
|
|
15740
|
-
var ContainerStyle =
|
|
15868
|
+
var ContainerStyle = ft`
|
|
15741
15869
|
container-type: inline-size;
|
|
15742
15870
|
interpolate-size: allow-keywords;
|
|
15743
15871
|
`;
|
|
15744
|
-
var Container =
|
|
15872
|
+
var Container = gt2.div`
|
|
15745
15873
|
${ResetStyle}
|
|
15746
15874
|
${ContainerStyle}
|
|
15747
15875
|
`;
|
|
@@ -16215,7 +16343,7 @@ var Plan = ({
|
|
|
16215
16343
|
$gap: "1rem",
|
|
16216
16344
|
$flexGrow: 1,
|
|
16217
16345
|
children: plans.map((plan, planIndex) => {
|
|
16218
|
-
const planPeriod = showPeriodToggle ? period : plan.
|
|
16346
|
+
const planPeriod = showPeriodToggle ? period : plan.monthlyPrice ? BillingProductPriceInterval.Month : plan.quarterlyPrice ? "quarter" : plan.yearlyPrice ? BillingProductPriceInterval.Year : BillingProductPriceInterval.Month;
|
|
16219
16347
|
const { price: planPrice, currency: planCurrency } = getPlanPrice(
|
|
16220
16348
|
plan,
|
|
16221
16349
|
planPeriod,
|
|
@@ -16274,6 +16402,9 @@ var Plan = ({
|
|
|
16274
16402
|
children: plan.custom ? plan.customPlanConfig?.priceText ? plan.customPlanConfig.priceText : t3("Custom price") : isUsageBasedPlan ? t3("Usage-based") : isFreePlan && showZeroPriceAsFree ? t3("Free") : showAsMonthlyPrices && planPeriod === BillingProductPriceInterval.Year ? formatCurrency((planPrice ?? 0) / 12, {
|
|
16275
16403
|
currency: planCurrency,
|
|
16276
16404
|
testSignificantDigits: false
|
|
16405
|
+
}) : showAsMonthlyPrices && planPeriod === "quarter" ? formatCurrency((planPrice ?? 0) / 3, {
|
|
16406
|
+
currency: planCurrency,
|
|
16407
|
+
testSignificantDigits: false
|
|
16277
16408
|
}) : formatCurrency(planPrice ?? 0, planCurrency)
|
|
16278
16409
|
}
|
|
16279
16410
|
),
|
|
@@ -16284,7 +16415,7 @@ var Plan = ({
|
|
|
16284
16415
|
$size: 16 / 30 * settings.theme.typography.heading2.fontSize,
|
|
16285
16416
|
children: [
|
|
16286
16417
|
"/",
|
|
16287
|
-
showAsMonthlyPrices && planPeriod === BillingProductPriceInterval.Year ? t3("month, billed yearly") : t3(planPeriod)
|
|
16418
|
+
showAsMonthlyPrices && planPeriod === BillingProductPriceInterval.Year ? t3("month, billed yearly") : showAsMonthlyPrices && planPeriod === "quarter" ? t3("month, billed quarterly") : t3(planPeriod)
|
|
16288
16419
|
]
|
|
16289
16420
|
}
|
|
16290
16421
|
)
|
|
@@ -16820,7 +16951,7 @@ var AddOns = ({
|
|
|
16820
16951
|
const { t: t3 } = useTranslation();
|
|
16821
16952
|
const { settings } = useEmbed();
|
|
16822
16953
|
const isLightBackground = useIsLightBackground();
|
|
16823
|
-
const periodKey = period === "year" ? "yearlyPrice" : "monthlyPrice";
|
|
16954
|
+
const periodKey = period === "year" ? "yearlyPrice" : period === "quarter" ? "quarterlyPrice" : "monthlyPrice";
|
|
16824
16955
|
const cardPadding = settings.theme.card.padding / TEXT_BASE_SIZE;
|
|
16825
16956
|
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
16826
16957
|
Box,
|
|
@@ -17293,9 +17424,9 @@ var Navigation = ({
|
|
|
17293
17424
|
var import_jsx_runtime25 = require("react/jsx-runtime");
|
|
17294
17425
|
var createActiveUsageBasedEntitlementsReducer = (entitlements, period) => (acc, entitlement) => {
|
|
17295
17426
|
const hasCurrencyPrice = entitlement.currencyPrices?.some(
|
|
17296
|
-
(cp) => period === "month" && cp.monthlyPrice || period === "year" && cp.yearlyPrice
|
|
17427
|
+
(cp) => period === "month" && cp.monthlyPrice || period === "quarter" && cp.quarterlyPrice || period === "year" && cp.yearlyPrice
|
|
17297
17428
|
);
|
|
17298
|
-
if (entitlement.priceBehavior && (period === "month" && entitlement.meteredMonthlyPrice || period === "year" && entitlement.meteredYearlyPrice || hasCurrencyPrice)) {
|
|
17429
|
+
if (entitlement.priceBehavior && (period === "month" && entitlement.meteredMonthlyPrice || period === "quarter" && entitlement.meteredQuarterlyPrice || period === "year" && entitlement.meteredYearlyPrice || hasCurrencyPrice)) {
|
|
17299
17430
|
const featureUsage = entitlements.find(
|
|
17300
17431
|
(usage2) => usage2.feature?.id === entitlement.feature?.id
|
|
17301
17432
|
);
|
|
@@ -17355,15 +17486,16 @@ var CheckoutDialog = ({ top }) => {
|
|
|
17355
17486
|
[data?.featureUsage?.features]
|
|
17356
17487
|
);
|
|
17357
17488
|
const getValidatedPeriod = () => {
|
|
17358
|
-
const requestedPeriod = checkoutState?.period || data?.company?.plan?.planPeriod || "month";
|
|
17489
|
+
const requestedPeriod = checkoutState?.period || getSubscriptionPeriod(data?.company?.billingSubscription) || data?.company?.plan?.planPeriod || "month";
|
|
17359
17490
|
if (checkoutState?.planId) {
|
|
17360
17491
|
const requestedPlan = data?.activePlans?.find(
|
|
17361
17492
|
(plan) => plan.id === checkoutState.planId
|
|
17362
17493
|
);
|
|
17363
17494
|
if (requestedPlan) {
|
|
17364
|
-
const planSupportsRequestedPeriod = requestedPeriod === "month" && requestedPlan.monthlyPrice || requestedPeriod === "year" && requestedPlan.yearlyPrice;
|
|
17495
|
+
const planSupportsRequestedPeriod = requestedPeriod === "month" && requestedPlan.monthlyPrice || requestedPeriod === "quarter" && requestedPlan.quarterlyPrice || requestedPeriod === "year" && requestedPlan.yearlyPrice;
|
|
17365
17496
|
if (!planSupportsRequestedPeriod) {
|
|
17366
17497
|
if (requestedPlan.yearlyPrice) return "year";
|
|
17498
|
+
if (requestedPlan.quarterlyPrice) return "quarter";
|
|
17367
17499
|
if (requestedPlan.monthlyPrice) return "month";
|
|
17368
17500
|
}
|
|
17369
17501
|
}
|
|
@@ -17495,6 +17627,48 @@ var CheckoutDialog = ({ top }) => {
|
|
|
17495
17627
|
count: 0
|
|
17496
17628
|
}));
|
|
17497
17629
|
});
|
|
17630
|
+
const selectedPlanPriceId = (0, import_react36.useMemo)(() => {
|
|
17631
|
+
if (!selectedPlan) {
|
|
17632
|
+
return void 0;
|
|
17633
|
+
}
|
|
17634
|
+
const currencyPrice = getPlanPrice(
|
|
17635
|
+
selectedPlan,
|
|
17636
|
+
planPeriod,
|
|
17637
|
+
{ useSelectedPeriod: true },
|
|
17638
|
+
hasCurrency ? effectiveCurrency : void 0
|
|
17639
|
+
);
|
|
17640
|
+
return currencyPrice?.id ?? (planPeriod === "year" ? selectedPlan.yearlyPrice?.id : planPeriod === "quarter" ? selectedPlan.quarterlyPrice?.id : selectedPlan.monthlyPrice?.id);
|
|
17641
|
+
}, [selectedPlan, planPeriod, hasCurrency, effectiveCurrency]);
|
|
17642
|
+
const [hasInitialPaymentMethod] = (0, import_react36.useState)(
|
|
17643
|
+
() => !!(data?.subscription?.paymentMethod?.externalId || data?.company?.defaultPaymentMethod?.externalId)
|
|
17644
|
+
);
|
|
17645
|
+
const isCreditOnlyPurchase = (0, import_react36.useMemo)(() => {
|
|
17646
|
+
if (data?.company?.billingSubscription) {
|
|
17647
|
+
return false;
|
|
17648
|
+
}
|
|
17649
|
+
if (selectedPlanPriceId) {
|
|
17650
|
+
return false;
|
|
17651
|
+
}
|
|
17652
|
+
if (!creditBundles.some((bundle) => bundle.count > 0)) {
|
|
17653
|
+
return false;
|
|
17654
|
+
}
|
|
17655
|
+
const hasPaidAddOn = addOns.some(
|
|
17656
|
+
(addOn) => addOn.isSelected && !!getAddOnPrice(
|
|
17657
|
+
addOn,
|
|
17658
|
+
planPeriod,
|
|
17659
|
+
hasCurrency ? effectiveCurrency : void 0
|
|
17660
|
+
)?.id
|
|
17661
|
+
);
|
|
17662
|
+
return !hasPaidAddOn;
|
|
17663
|
+
}, [
|
|
17664
|
+
data?.company?.billingSubscription,
|
|
17665
|
+
selectedPlanPriceId,
|
|
17666
|
+
creditBundles,
|
|
17667
|
+
addOns,
|
|
17668
|
+
planPeriod,
|
|
17669
|
+
hasCurrency,
|
|
17670
|
+
effectiveCurrency
|
|
17671
|
+
]);
|
|
17498
17672
|
const [usageBasedEntitlements, setUsageBasedEntitlements] = (0, import_react36.useState)(
|
|
17499
17673
|
() => (selectedPlan?.entitlements || []).reduce(
|
|
17500
17674
|
createActiveUsageBasedEntitlementsReducer(featureUsage, planPeriod),
|
|
@@ -17620,7 +17794,7 @@ var CheckoutDialog = ({ top }) => {
|
|
|
17620
17794
|
description: t3("Optionally add credit bundles to your subscription")
|
|
17621
17795
|
});
|
|
17622
17796
|
}
|
|
17623
|
-
if (isPaymentMethodRequired) {
|
|
17797
|
+
if (isPaymentMethodRequired && !(isCreditOnlyPurchase && hasInitialPaymentMethod)) {
|
|
17624
17798
|
stages.push({
|
|
17625
17799
|
id: "checkout",
|
|
17626
17800
|
name: t3("Checkout"),
|
|
@@ -17638,7 +17812,9 @@ var CheckoutDialog = ({ top }) => {
|
|
|
17638
17812
|
isSelectedPlanTrialable,
|
|
17639
17813
|
shouldTrial,
|
|
17640
17814
|
creditBundles,
|
|
17641
|
-
isPaymentMethodRequired
|
|
17815
|
+
isPaymentMethodRequired,
|
|
17816
|
+
isCreditOnlyPurchase,
|
|
17817
|
+
hasInitialPaymentMethod
|
|
17642
17818
|
]);
|
|
17643
17819
|
const [isBypassLoading, setIsBypassLoading] = (0, import_react36.useState)(
|
|
17644
17820
|
() => checkoutState?.bypassPlanSelection || checkoutState?.bypassAddOnSelection || checkoutState?.bypassCreditsSelection
|
|
@@ -17680,10 +17856,15 @@ var CheckoutDialog = ({ top }) => {
|
|
|
17680
17856
|
{ useSelectedPeriod: true },
|
|
17681
17857
|
resolvedCurrency
|
|
17682
17858
|
) : void 0;
|
|
17683
|
-
const planPriceId = currencyPrice?.id ?? (period === "year" ? plan?.yearlyPrice?.id : plan?.monthlyPrice?.id);
|
|
17859
|
+
const planPriceId = currencyPrice?.id ?? (period === "year" ? plan?.yearlyPrice?.id : period === "quarter" ? plan?.quarterlyPrice?.id : plan?.monthlyPrice?.id);
|
|
17684
17860
|
const code = typeof updates.promoCode !== "undefined" ? updates.promoCode : promoCode;
|
|
17685
17861
|
const skipTrial = !(updates.shouldTrial ?? shouldTrial);
|
|
17686
|
-
|
|
17862
|
+
const isCreditOnly = !data?.company?.billingSubscription && !planPriceId && (updates.creditBundles || creditBundles).some(
|
|
17863
|
+
(bundle) => bundle.count > 0
|
|
17864
|
+
) && !(updates.addOns || addOns).some(
|
|
17865
|
+
(addOn) => addOn.isSelected && !!getAddOnPrice(addOn, period, resolvedCurrency)?.id
|
|
17866
|
+
);
|
|
17867
|
+
if ((!plan || !planPriceId) && !isCreditOnly) {
|
|
17687
17868
|
setSelectedPlanId(null);
|
|
17688
17869
|
return;
|
|
17689
17870
|
}
|
|
@@ -17696,7 +17877,7 @@ var CheckoutDialog = ({ top }) => {
|
|
|
17696
17877
|
const resolvedAddOns = updates.addOns || addOns;
|
|
17697
17878
|
const resolvedCreditBundles = updates.creditBundles || creditBundles;
|
|
17698
17879
|
const resolvedPlanCreditGrants = mergeCompanyGrants(
|
|
17699
|
-
plan
|
|
17880
|
+
plan?.includedCreditGrants,
|
|
17700
17881
|
data?.company?.plan?.includedCreditGrants
|
|
17701
17882
|
);
|
|
17702
17883
|
const autoTopupRequestBody = buildAutoTopupRequestBody({
|
|
@@ -17724,14 +17905,11 @@ var CheckoutDialog = ({ top }) => {
|
|
|
17724
17905
|
);
|
|
17725
17906
|
try {
|
|
17726
17907
|
const response = await previewCheckout({
|
|
17727
|
-
newPlanId: plan
|
|
17728
|
-
newPriceId: planPriceId,
|
|
17729
|
-
addOnIds: addOnRequestBody,
|
|
17730
|
-
autoTopupOverrides: autoTopupRequestBody,
|
|
17731
|
-
payInAdvance: [
|
|
17732
|
-
...planPayInAdvanceRequestBody,
|
|
17733
|
-
...addOnPayInAdvanceRequestBody
|
|
17734
|
-
],
|
|
17908
|
+
newPlanId: isCreditOnly ? "" : plan?.id ?? "",
|
|
17909
|
+
newPriceId: isCreditOnly ? "" : planPriceId ?? "",
|
|
17910
|
+
addOnIds: isCreditOnly ? [] : addOnRequestBody,
|
|
17911
|
+
autoTopupOverrides: isCreditOnly ? [] : autoTopupRequestBody,
|
|
17912
|
+
payInAdvance: isCreditOnly ? [] : [...planPayInAdvanceRequestBody, ...addOnPayInAdvanceRequestBody],
|
|
17735
17913
|
creditBundles: creditBundlesRequestBody,
|
|
17736
17914
|
skipTrial,
|
|
17737
17915
|
...code && { promoCode: code }
|
|
@@ -17788,6 +17966,7 @@ var CheckoutDialog = ({ top }) => {
|
|
|
17788
17966
|
[
|
|
17789
17967
|
t3,
|
|
17790
17968
|
data?.company?.plan?.includedCreditGrants,
|
|
17969
|
+
data?.company?.billingSubscription,
|
|
17791
17970
|
previewCheckout,
|
|
17792
17971
|
planPeriod,
|
|
17793
17972
|
selectedPlan,
|
|
@@ -17806,7 +17985,7 @@ var CheckoutDialog = ({ top }) => {
|
|
|
17806
17985
|
const selectPlan = (0, import_react36.useCallback)(
|
|
17807
17986
|
(updates) => {
|
|
17808
17987
|
const plan = updates.plan;
|
|
17809
|
-
const period = showPeriodToggle ? updates.period || planPeriod : plan.
|
|
17988
|
+
const period = showPeriodToggle ? updates.period || planPeriod : plan.monthlyPrice ? BillingProductPriceInterval.Month : plan.quarterlyPrice ? "quarter" : plan.yearlyPrice ? BillingProductPriceInterval.Year : BillingProductPriceInterval.Month;
|
|
17810
17989
|
const updatedUsageBasedEntitlements = plan.entitlements.reduce(
|
|
17811
17990
|
createActiveUsageBasedEntitlementsReducer(featureUsage, period),
|
|
17812
17991
|
[]
|
|
@@ -17864,12 +18043,60 @@ var CheckoutDialog = ({ top }) => {
|
|
|
17864
18043
|
);
|
|
17865
18044
|
const changePlanPeriod = (0, import_react36.useCallback)(
|
|
17866
18045
|
(period) => {
|
|
17867
|
-
if (period
|
|
17868
|
-
|
|
17869
|
-
handlePreviewCheckout({ period });
|
|
18046
|
+
if (period === planPeriod) {
|
|
18047
|
+
return;
|
|
17870
18048
|
}
|
|
18049
|
+
setPlanPeriod(period);
|
|
18050
|
+
const updatedUsageBasedEntitlements = (selectedPlan?.entitlements || []).reduce(
|
|
18051
|
+
createActiveUsageBasedEntitlementsReducer(featureUsage, period),
|
|
18052
|
+
[...[]]
|
|
18053
|
+
);
|
|
18054
|
+
setUsageBasedEntitlements(
|
|
18055
|
+
(prev2) => updatedUsageBasedEntitlements.map((updated) => {
|
|
18056
|
+
const current = prev2.find(
|
|
18057
|
+
({ featureId }) => featureId === updated.featureId
|
|
18058
|
+
);
|
|
18059
|
+
if (typeof current?.quantity === "number") {
|
|
18060
|
+
return { ...updated, quantity: current.quantity };
|
|
18061
|
+
}
|
|
18062
|
+
return updated;
|
|
18063
|
+
})
|
|
18064
|
+
);
|
|
18065
|
+
const updatedAddOnUsageBasedEntitlements = addOns.filter((addOn) => addOn.isSelected).flatMap(
|
|
18066
|
+
(addOn) => addOn.entitlements.reduce(
|
|
18067
|
+
createActiveUsageBasedEntitlementsReducer(featureUsage, period),
|
|
18068
|
+
[]
|
|
18069
|
+
)
|
|
18070
|
+
);
|
|
18071
|
+
setAddOnUsageBasedEntitlements(
|
|
18072
|
+
(prev2) => updatedAddOnUsageBasedEntitlements.map((updated) => {
|
|
18073
|
+
const current = prev2.find(
|
|
18074
|
+
({ featureId }) => featureId === updated.featureId
|
|
18075
|
+
);
|
|
18076
|
+
if (typeof current?.quantity === "number") {
|
|
18077
|
+
return { ...updated, quantity: current.quantity };
|
|
18078
|
+
}
|
|
18079
|
+
return updated;
|
|
18080
|
+
})
|
|
18081
|
+
);
|
|
18082
|
+
handlePreviewCheckout({
|
|
18083
|
+
period,
|
|
18084
|
+
payInAdvanceEntitlements: updatedUsageBasedEntitlements.filter(
|
|
18085
|
+
({ priceBehavior }) => priceBehavior === EntitlementPriceBehavior.PayInAdvance
|
|
18086
|
+
),
|
|
18087
|
+
addOnPayInAdvanceEntitlements: updatedAddOnUsageBasedEntitlements.filter(
|
|
18088
|
+
({ priceBehavior }) => priceBehavior === EntitlementPriceBehavior.PayInAdvance
|
|
18089
|
+
)
|
|
18090
|
+
});
|
|
17871
18091
|
},
|
|
17872
|
-
[
|
|
18092
|
+
[
|
|
18093
|
+
planPeriod,
|
|
18094
|
+
selectedPlan?.entitlements,
|
|
18095
|
+
featureUsage,
|
|
18096
|
+
addOns,
|
|
18097
|
+
setPlanPeriod,
|
|
18098
|
+
handlePreviewCheckout
|
|
18099
|
+
]
|
|
17873
18100
|
);
|
|
17874
18101
|
const toggleAddOn = (0, import_react36.useCallback)(
|
|
17875
18102
|
(id) => {
|
|
@@ -17992,7 +18219,8 @@ var CheckoutDialog = ({ top }) => {
|
|
|
17992
18219
|
(0, import_react36.useEffect)(() => {
|
|
17993
18220
|
if (!hasInitializedPlan.current && selectedPlan) {
|
|
17994
18221
|
hasInitializedPlan.current = true;
|
|
17995
|
-
|
|
18222
|
+
const shouldTrial2 = checkoutState?.startTrialIfAvailable && selectedPlan.isTrialable && selectedPlan.companyCanTrial;
|
|
18223
|
+
selectPlan({ plan: selectedPlan, period: planPeriod, shouldTrial: shouldTrial2 });
|
|
17996
18224
|
}
|
|
17997
18225
|
}, [selectedPlan, planPeriod, selectPlan]);
|
|
17998
18226
|
(0, import_react36.useLayoutEffect)(() => {
|
|
@@ -18303,6 +18531,7 @@ var CheckoutDialog = ({ top }) => {
|
|
|
18303
18531
|
addOnUsageBasedEntitlements,
|
|
18304
18532
|
addOnPayInAdvanceEntitlements,
|
|
18305
18533
|
creditBundles,
|
|
18534
|
+
isCreditOnlyPurchase,
|
|
18306
18535
|
charges,
|
|
18307
18536
|
checkoutStage: effectiveCheckoutStage,
|
|
18308
18537
|
checkoutStages: navigableStages,
|
|
@@ -18551,7 +18780,7 @@ var import_react_stripe_js = require("@stripe/react-stripe-js");
|
|
|
18551
18780
|
var import_react38 = require("react");
|
|
18552
18781
|
|
|
18553
18782
|
// src/components/shared/payment-form/styles.ts
|
|
18554
|
-
var Label =
|
|
18783
|
+
var Label = gt2.label`
|
|
18555
18784
|
display: flex;
|
|
18556
18785
|
margin-bottom: 0.75rem;
|
|
18557
18786
|
font-family: "Public Sans", system-ui, sans-serif;
|
|
@@ -18563,7 +18792,7 @@ var Label = yt2.label`
|
|
|
18563
18792
|
color: ${({ theme }) => isLightColor(theme.card.background) ? "#000000" : "#cdd6f4"};
|
|
18564
18793
|
touch-action: manipulation;
|
|
18565
18794
|
`;
|
|
18566
|
-
var Input2 =
|
|
18795
|
+
var Input2 = gt2.input`
|
|
18567
18796
|
padding: 0.75rem;
|
|
18568
18797
|
background-color: white;
|
|
18569
18798
|
border-radius: 0.5rem;
|
|
@@ -18769,6 +18998,10 @@ var PaymentForm = ({ onConfirm, financeData }) => {
|
|
|
18769
18998
|
// src/components/shared/period-toggle/PeriodToggle.tsx
|
|
18770
18999
|
var import_react39 = require("react");
|
|
18771
19000
|
var import_jsx_runtime31 = require("react/jsx-runtime");
|
|
19001
|
+
var PERIOD_MONTH_COUNT = {
|
|
19002
|
+
year: 12,
|
|
19003
|
+
quarter: 3
|
|
19004
|
+
};
|
|
18772
19005
|
var PeriodToggle = ({
|
|
18773
19006
|
portal,
|
|
18774
19007
|
options,
|
|
@@ -18779,14 +19012,23 @@ var PeriodToggle = ({
|
|
|
18779
19012
|
const { t: t3 } = useTranslation();
|
|
18780
19013
|
const { settings } = useEmbed();
|
|
18781
19014
|
const isLightBackground = useIsLightBackground();
|
|
18782
|
-
const
|
|
18783
|
-
|
|
18784
|
-
|
|
18785
|
-
|
|
18786
|
-
|
|
18787
|
-
|
|
18788
|
-
|
|
19015
|
+
const savingsByPeriod = (0, import_react39.useMemo)(() => {
|
|
19016
|
+
const result = {};
|
|
19017
|
+
if (!selectedPlan) {
|
|
19018
|
+
return result;
|
|
19019
|
+
}
|
|
19020
|
+
const monthlyPrice = getPlanPrice(selectedPlan, "month")?.price ?? 0;
|
|
19021
|
+
if (monthlyPrice <= 0) {
|
|
19022
|
+
return result;
|
|
19023
|
+
}
|
|
19024
|
+
for (const [period, months] of Object.entries(PERIOD_MONTH_COUNT)) {
|
|
19025
|
+
const periodPrice = getPlanPrice(selectedPlan, period)?.price ?? 0;
|
|
19026
|
+
if (periodPrice > 0) {
|
|
19027
|
+
const baseline = monthlyPrice * months;
|
|
19028
|
+
result[period] = Math.round((baseline - periodPrice) / baseline * 1e4) / 100;
|
|
19029
|
+
}
|
|
18789
19030
|
}
|
|
19031
|
+
return result;
|
|
18790
19032
|
}, [selectedPlan]);
|
|
18791
19033
|
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
|
18792
19034
|
Flex,
|
|
@@ -18840,17 +19082,21 @@ var PeriodToggle = ({
|
|
|
18840
19082
|
},
|
|
18841
19083
|
option
|
|
18842
19084
|
);
|
|
18843
|
-
|
|
19085
|
+
const savingsPercentage = savingsByPeriod[option];
|
|
19086
|
+
if (typeof savingsPercentage === "number") {
|
|
19087
|
+
const isOptionYear = option === "year";
|
|
18844
19088
|
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
|
18845
19089
|
Tooltip,
|
|
18846
19090
|
{
|
|
18847
19091
|
portal,
|
|
18848
19092
|
trigger: element,
|
|
18849
|
-
content: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Text, { $size: 11, $leading: "none", children: selectedOption ===
|
|
18850
|
-
|
|
18851
|
-
|
|
18852
|
-
|
|
18853
|
-
|
|
19093
|
+
content: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Text, { $size: 11, $leading: "none", children: selectedOption === option ? t3(
|
|
19094
|
+
isOptionYear ? "Saving with yearly billing" : "Saving with quarterly billing",
|
|
19095
|
+
{ percent: savingsPercentage }
|
|
19096
|
+
) : t3(
|
|
19097
|
+
isOptionYear ? "Save with yearly billing" : "Save with quarterly billing",
|
|
19098
|
+
{ percent: savingsPercentage }
|
|
19099
|
+
) }),
|
|
18854
19100
|
$flexGrow: 1,
|
|
18855
19101
|
$flexBasis: "50%"
|
|
18856
19102
|
},
|
|
@@ -19038,6 +19284,7 @@ var NoPaymentRequired = ({
|
|
|
19038
19284
|
isLoading,
|
|
19039
19285
|
isSticky = false,
|
|
19040
19286
|
willScheduleDowngrade = false,
|
|
19287
|
+
isCreditOnlyPurchase = false,
|
|
19041
19288
|
onClick
|
|
19042
19289
|
}) => {
|
|
19043
19290
|
const { t: t3 } = useTranslation();
|
|
@@ -19050,7 +19297,7 @@ var NoPaymentRequired = ({
|
|
|
19050
19297
|
$size: isSticky ? "sm" : "md",
|
|
19051
19298
|
$fullWidth: true,
|
|
19052
19299
|
$isLoading: isLoading,
|
|
19053
|
-
children: willScheduleDowngrade ? t3("Schedule downgrade") : t3("Subscribe and close")
|
|
19300
|
+
children: isCreditOnlyPurchase ? t3("Buy credits") : willScheduleDowngrade ? t3("Schedule downgrade") : t3("Subscribe and close")
|
|
19054
19301
|
}
|
|
19055
19302
|
);
|
|
19056
19303
|
};
|
|
@@ -19070,10 +19317,11 @@ var CheckoutStageButton = ({
|
|
|
19070
19317
|
trialPaymentMethodRequired,
|
|
19071
19318
|
shouldTrial,
|
|
19072
19319
|
willTrialWithoutPaymentMethod,
|
|
19073
|
-
willScheduleDowngrade
|
|
19320
|
+
willScheduleDowngrade,
|
|
19321
|
+
isCreditOnlyPurchase = false
|
|
19074
19322
|
}) => {
|
|
19075
19323
|
const { t: t3 } = useTranslation();
|
|
19076
|
-
const isDisabled = isLoading || !hasPlan || inEditMode || !canCheckout;
|
|
19324
|
+
const isDisabled = isLoading || !hasPlan && !isCreditOnlyPurchase || inEditMode || !canCheckout;
|
|
19077
19325
|
const getNextStageId = (currentStageId) => {
|
|
19078
19326
|
if (!checkoutStages) return void 0;
|
|
19079
19327
|
const currentIndex = checkoutStages.findIndex(
|
|
@@ -19137,7 +19385,8 @@ var CheckoutStageButton = ({
|
|
|
19137
19385
|
isDisabled,
|
|
19138
19386
|
isLoading,
|
|
19139
19387
|
onClick: checkout,
|
|
19140
|
-
isSticky
|
|
19388
|
+
isSticky,
|
|
19389
|
+
isCreditOnlyPurchase
|
|
19141
19390
|
}
|
|
19142
19391
|
);
|
|
19143
19392
|
}
|
|
@@ -19170,7 +19419,8 @@ var CheckoutStageButton = ({
|
|
|
19170
19419
|
isDisabled,
|
|
19171
19420
|
isLoading,
|
|
19172
19421
|
onClick: checkout,
|
|
19173
|
-
isSticky
|
|
19422
|
+
isSticky,
|
|
19423
|
+
isCreditOnlyPurchase
|
|
19174
19424
|
}
|
|
19175
19425
|
);
|
|
19176
19426
|
}
|
|
@@ -19212,7 +19462,8 @@ var CheckoutStageButton = ({
|
|
|
19212
19462
|
isDisabled,
|
|
19213
19463
|
isLoading,
|
|
19214
19464
|
onClick: checkout,
|
|
19215
|
-
isSticky
|
|
19465
|
+
isSticky,
|
|
19466
|
+
isCreditOnlyPurchase
|
|
19216
19467
|
}
|
|
19217
19468
|
);
|
|
19218
19469
|
}
|
|
@@ -19254,7 +19505,8 @@ var CheckoutStageButton = ({
|
|
|
19254
19505
|
isDisabled,
|
|
19255
19506
|
isLoading,
|
|
19256
19507
|
onClick: checkout,
|
|
19257
|
-
isSticky
|
|
19508
|
+
isSticky,
|
|
19509
|
+
isCreditOnlyPurchase
|
|
19258
19510
|
}
|
|
19259
19511
|
);
|
|
19260
19512
|
}
|
|
@@ -19295,7 +19547,8 @@ var CheckoutStageButton = ({
|
|
|
19295
19547
|
isDisabled,
|
|
19296
19548
|
isLoading,
|
|
19297
19549
|
onClick: checkout,
|
|
19298
|
-
isSticky
|
|
19550
|
+
isSticky,
|
|
19551
|
+
isCreditOnlyPurchase
|
|
19299
19552
|
}
|
|
19300
19553
|
);
|
|
19301
19554
|
}
|
|
@@ -19329,14 +19582,16 @@ var CheckoutStageButton = ({
|
|
|
19329
19582
|
);
|
|
19330
19583
|
}
|
|
19331
19584
|
if (checkoutStage === "credits") {
|
|
19332
|
-
|
|
19585
|
+
const nextStage = getNextStageId("credits");
|
|
19586
|
+
if (!nextStage) {
|
|
19333
19587
|
return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
|
19334
19588
|
NoPaymentRequired,
|
|
19335
19589
|
{
|
|
19336
19590
|
isDisabled,
|
|
19337
19591
|
isLoading,
|
|
19338
19592
|
onClick: checkout,
|
|
19339
|
-
isSticky
|
|
19593
|
+
isSticky,
|
|
19594
|
+
isCreditOnlyPurchase
|
|
19340
19595
|
}
|
|
19341
19596
|
);
|
|
19342
19597
|
}
|
|
@@ -19346,7 +19601,7 @@ var CheckoutStageButton = ({
|
|
|
19346
19601
|
type: "button",
|
|
19347
19602
|
disabled: isDisabled,
|
|
19348
19603
|
onClick: async () => {
|
|
19349
|
-
setCheckoutStage?.(
|
|
19604
|
+
setCheckoutStage?.(nextStage);
|
|
19350
19605
|
},
|
|
19351
19606
|
$fullWidth: true,
|
|
19352
19607
|
$isLoading: isLoading,
|
|
@@ -19360,7 +19615,7 @@ var CheckoutStageButton = ({
|
|
|
19360
19615
|
children: [
|
|
19361
19616
|
t3("Next"),
|
|
19362
19617
|
": ",
|
|
19363
|
-
|
|
19618
|
+
getStageDisplayName(nextStage),
|
|
19364
19619
|
/* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Icon3, { name: "arrow-right" })
|
|
19365
19620
|
]
|
|
19366
19621
|
}
|
|
@@ -19376,7 +19631,8 @@ var CheckoutStageButton = ({
|
|
|
19376
19631
|
isDisabled,
|
|
19377
19632
|
isLoading,
|
|
19378
19633
|
onClick: checkout,
|
|
19379
|
-
isSticky
|
|
19634
|
+
isSticky,
|
|
19635
|
+
isCreditOnlyPurchase
|
|
19380
19636
|
}
|
|
19381
19637
|
);
|
|
19382
19638
|
}
|
|
@@ -19388,7 +19644,7 @@ var CheckoutStageButton = ({
|
|
|
19388
19644
|
onClick: checkout,
|
|
19389
19645
|
$fullWidth: true,
|
|
19390
19646
|
$isLoading: isLoading,
|
|
19391
|
-
children: willScheduleDowngrade ? t3("Schedule downgrade") : willTrialWithoutPaymentMethod ? t3("Start trial") : t3("Pay now")
|
|
19647
|
+
children: willScheduleDowngrade ? t3("Schedule downgrade") : willTrialWithoutPaymentMethod ? t3("Start trial") : isCreditOnlyPurchase ? t3("Buy credits") : t3("Pay now")
|
|
19392
19648
|
}
|
|
19393
19649
|
);
|
|
19394
19650
|
}
|
|
@@ -19538,6 +19794,7 @@ var SubscriptionSidebar = (0, import_react43.forwardRef)(
|
|
|
19538
19794
|
autoTopupConfigs,
|
|
19539
19795
|
addOns,
|
|
19540
19796
|
creditBundles = [],
|
|
19797
|
+
isCreditOnlyPurchase = false,
|
|
19541
19798
|
usageBasedEntitlements,
|
|
19542
19799
|
addOnUsageBasedEntitlements = [],
|
|
19543
19800
|
addOnPayInAdvanceEntitlements = [],
|
|
@@ -19796,9 +20053,9 @@ var SubscriptionSidebar = (0, import_react43.forwardRef)(
|
|
|
19796
20053
|
{ useSelectedPeriod: true },
|
|
19797
20054
|
currency
|
|
19798
20055
|
) : void 0;
|
|
19799
|
-
const planPriceId = currencyPrice?.id ?? (planPeriod === "year" ? selectedPlan?.yearlyPrice : selectedPlan?.monthlyPrice)?.id;
|
|
20056
|
+
const planPriceId = currencyPrice?.id ?? (planPeriod === "year" ? selectedPlan?.yearlyPrice : planPeriod === "quarter" ? selectedPlan?.quarterlyPrice : selectedPlan?.monthlyPrice)?.id;
|
|
19800
20057
|
try {
|
|
19801
|
-
if (!planId || !planPriceId) {
|
|
20058
|
+
if ((!planId || !planPriceId) && !isCreditOnlyPurchase) {
|
|
19802
20059
|
throw new Error(t3("Selected plan or associated price is missing."));
|
|
19803
20060
|
}
|
|
19804
20061
|
setError(void 0);
|
|
@@ -19825,14 +20082,11 @@ var SubscriptionSidebar = (0, import_react43.forwardRef)(
|
|
|
19825
20082
|
});
|
|
19826
20083
|
const creditBundlesRequestBody = buildCreditBundlesRequestBody(creditBundles);
|
|
19827
20084
|
const checkoutResponseFromBackend = await checkout({
|
|
19828
|
-
newPlanId: planId,
|
|
19829
|
-
newPriceId: planPriceId,
|
|
19830
|
-
addOnIds: addOnRequestBody,
|
|
19831
|
-
autoTopupOverrides: autoTopupRequestBody,
|
|
19832
|
-
payInAdvance: [
|
|
19833
|
-
...planPayInAdvanceRequestBody,
|
|
19834
|
-
...addOnPayInAdvanceRequestBody
|
|
19835
|
-
],
|
|
20085
|
+
newPlanId: isCreditOnlyPurchase ? "" : planId ?? "",
|
|
20086
|
+
newPriceId: isCreditOnlyPurchase ? "" : planPriceId ?? "",
|
|
20087
|
+
addOnIds: isCreditOnlyPurchase ? [] : addOnRequestBody,
|
|
20088
|
+
autoTopupOverrides: isCreditOnlyPurchase ? [] : autoTopupRequestBody,
|
|
20089
|
+
payInAdvance: isCreditOnlyPurchase ? [] : [...planPayInAdvanceRequestBody, ...addOnPayInAdvanceRequestBody],
|
|
19836
20090
|
creditBundles: creditBundlesRequestBody,
|
|
19837
20091
|
skipTrial: !shouldTrial,
|
|
19838
20092
|
...paymentMethodId && { paymentMethodId },
|
|
@@ -19905,6 +20159,7 @@ var SubscriptionSidebar = (0, import_react43.forwardRef)(
|
|
|
19905
20159
|
autoTopupConfigs,
|
|
19906
20160
|
addOns,
|
|
19907
20161
|
creditBundles,
|
|
20162
|
+
isCreditOnlyPurchase,
|
|
19908
20163
|
setError,
|
|
19909
20164
|
setIsLoading,
|
|
19910
20165
|
setLayout,
|
|
@@ -19953,6 +20208,7 @@ var SubscriptionSidebar = (0, import_react43.forwardRef)(
|
|
|
19953
20208
|
willTrialWithoutPaymentMethod,
|
|
19954
20209
|
willScheduleDowngrade,
|
|
19955
20210
|
shouldTrial,
|
|
20211
|
+
isCreditOnlyPurchase,
|
|
19956
20212
|
checkout: handleCheckout
|
|
19957
20213
|
}
|
|
19958
20214
|
);
|
|
@@ -19993,7 +20249,8 @@ var SubscriptionSidebar = (0, import_react43.forwardRef)(
|
|
|
19993
20249
|
handleCheckout,
|
|
19994
20250
|
handleUnsubscribe,
|
|
19995
20251
|
payInAdvanceEntitlements,
|
|
19996
|
-
addOnPayInAdvanceEntitlements
|
|
20252
|
+
addOnPayInAdvanceEntitlements,
|
|
20253
|
+
isCreditOnlyPurchase
|
|
19997
20254
|
]);
|
|
19998
20255
|
(0, import_react43.useLayoutEffect)(() => {
|
|
19999
20256
|
const element = buttonRef.current;
|
|
@@ -20090,7 +20347,9 @@ var SubscriptionSidebar = (0, import_react43.forwardRef)(
|
|
|
20090
20347
|
),
|
|
20091
20348
|
/* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("sub", { children: [
|
|
20092
20349
|
"/",
|
|
20093
|
-
shortenPeriod(
|
|
20350
|
+
shortenPeriod(
|
|
20351
|
+
getSubscriptionPeriod(billingSubscription) || currentPlan.planPeriod || planPeriod
|
|
20352
|
+
)
|
|
20094
20353
|
] })
|
|
20095
20354
|
] }) })
|
|
20096
20355
|
]
|
|
@@ -20465,7 +20724,7 @@ var SubscriptionSidebar = (0, import_react43.forwardRef)(
|
|
|
20465
20724
|
]
|
|
20466
20725
|
}
|
|
20467
20726
|
),
|
|
20468
|
-
subscriptionPrice && /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
|
|
20727
|
+
!isCreditOnlyPurchase && subscriptionPrice && /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
|
|
20469
20728
|
Flex,
|
|
20470
20729
|
{
|
|
20471
20730
|
$justifyContent: "space-between",
|
|
@@ -20473,7 +20732,7 @@ var SubscriptionSidebar = (0, import_react43.forwardRef)(
|
|
|
20473
20732
|
$gap: "1rem",
|
|
20474
20733
|
children: [
|
|
20475
20734
|
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Box, { $opacity: "0.625", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(Text, { children: [
|
|
20476
|
-
planPeriod === "year" ? t3("Yearly total") : t3("Monthly total"),
|
|
20735
|
+
planPeriod === "year" ? t3("Yearly total") : planPeriod === "quarter" ? t3("Quarterly total") : t3("Monthly total"),
|
|
20477
20736
|
":"
|
|
20478
20737
|
] }) }),
|
|
20479
20738
|
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Box, { $whiteSpace: "nowrap", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(Text, { children: [
|
|
@@ -20557,7 +20816,7 @@ var SubscriptionSidebar = (0, import_react43.forwardRef)(
|
|
|
20557
20816
|
}
|
|
20558
20817
|
)
|
|
20559
20818
|
] }),
|
|
20560
|
-
layout !== "unsubscribe" && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Box, { $opacity: "0.625", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Text, { children: willScheduleDowngrade && selectedPlan?.name && billingSubscription ? t3(
|
|
20819
|
+
layout !== "unsubscribe" && !isCreditOnlyPurchase && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Box, { $opacity: "0.625", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Text, { children: willScheduleDowngrade && selectedPlan?.name && billingSubscription ? t3(
|
|
20561
20820
|
"You will be downgraded at the end of your billing period.",
|
|
20562
20821
|
{
|
|
20563
20822
|
plan: selectedPlan.name,
|
|
@@ -20657,7 +20916,7 @@ var UnsubscribeDialog = ({ top }) => {
|
|
|
20657
20916
|
const { planPeriod, currentPlan, currentAddOns, featureUsage, cancelDate } = (0, import_react45.useMemo)(() => {
|
|
20658
20917
|
const cancelDate2 = data?.subscription?.cancelAt || data?.upcomingInvoice?.dueDate;
|
|
20659
20918
|
return {
|
|
20660
|
-
planPeriod: data?.company?.plan?.planPeriod || "month",
|
|
20919
|
+
planPeriod: getSubscriptionPeriod(data?.company?.billingSubscription) || data?.company?.plan?.planPeriod || "month",
|
|
20661
20920
|
currentPlan: data?.company?.plan,
|
|
20662
20921
|
currentAddOns: data?.company?.addOns || [],
|
|
20663
20922
|
featureUsage: data?.featureUsage,
|
|
@@ -20665,6 +20924,7 @@ var UnsubscribeDialog = ({ top }) => {
|
|
|
20665
20924
|
};
|
|
20666
20925
|
}, [
|
|
20667
20926
|
data?.company?.addOns,
|
|
20927
|
+
data?.company?.billingSubscription,
|
|
20668
20928
|
data?.company?.plan,
|
|
20669
20929
|
data?.featureUsage,
|
|
20670
20930
|
data?.subscription?.cancelAt,
|
|
@@ -20959,7 +21219,7 @@ var RenderLayout = ({ children }) => {
|
|
|
20959
21219
|
};
|
|
20960
21220
|
|
|
20961
21221
|
// src/components/layout/viewport/styles.ts
|
|
20962
|
-
var StyledViewport =
|
|
21222
|
+
var StyledViewport = gt2.div.withConfig({
|
|
20963
21223
|
shouldForwardProp: (prop) => !["$numberOfColumns", "numberOfColumns"].includes(prop)
|
|
20964
21224
|
})`
|
|
20965
21225
|
display: grid;
|
|
@@ -20972,7 +21232,7 @@ var StyledViewport = yt2.div.withConfig({
|
|
|
20972
21232
|
}
|
|
20973
21233
|
|
|
20974
21234
|
@container (min-width: 768px) {
|
|
20975
|
-
grid-template-columns: ${({ theme }) =>
|
|
21235
|
+
grid-template-columns: ${({ theme }) => ft`repeat(${theme.numberOfColumns}, minmax(300px, 1fr))`};
|
|
20976
21236
|
}
|
|
20977
21237
|
`;
|
|
20978
21238
|
|
|
@@ -21090,7 +21350,7 @@ var UsageDetails = ({ entitlement, layout }) => {
|
|
|
21090
21350
|
} = entitlement;
|
|
21091
21351
|
const { t: t3 } = useTranslation();
|
|
21092
21352
|
const { data } = useEmbed();
|
|
21093
|
-
const period = data?.company?.plan?.planPeriod
|
|
21353
|
+
const period = getSubscriptionPeriod(data?.company?.billingSubscription) ?? data?.company?.plan?.planPeriod ?? void 0;
|
|
21094
21354
|
const showCredits = data?.displaySettings?.showCredits ?? true;
|
|
21095
21355
|
const {
|
|
21096
21356
|
price,
|
|
@@ -21827,14 +22087,14 @@ var PriceDetails = ({
|
|
|
21827
22087
|
};
|
|
21828
22088
|
|
|
21829
22089
|
// src/components/elements/metered-features/styles.ts
|
|
21830
|
-
var Container2 =
|
|
22090
|
+
var Container2 = gt2.div`
|
|
21831
22091
|
display: flex;
|
|
21832
22092
|
flex-direction: column;
|
|
21833
22093
|
|
|
21834
22094
|
&:last-child {
|
|
21835
22095
|
${({ theme }) => {
|
|
21836
22096
|
const borderRadius = `${theme.card.borderRadius / TEXT_BASE_SIZE}rem`;
|
|
21837
|
-
return theme.sectionLayout === "merged" &&
|
|
22097
|
+
return theme.sectionLayout === "merged" && ft`
|
|
21838
22098
|
overflow: hidden;
|
|
21839
22099
|
border-bottom-left-radius: ${borderRadius};
|
|
21840
22100
|
border-bottom-right-radius: ${borderRadius};
|
|
@@ -21967,7 +22227,7 @@ var MeteredFeatures = (0, import_react51.forwardRef)(({ className, ...rest }, re
|
|
|
21967
22227
|
if (!shouldShowFeatures) {
|
|
21968
22228
|
return null;
|
|
21969
22229
|
}
|
|
21970
|
-
const period = typeof data?.company?.plan?.planPeriod === "string" ? data.company?.plan?.planPeriod : void 0;
|
|
22230
|
+
const period = getSubscriptionPeriod(data?.company?.billingSubscription) ?? (typeof data?.company?.plan?.planPeriod === "string" ? data.company?.plan?.planPeriod : void 0);
|
|
21971
22231
|
const canCheckout = data?.capabilities?.checkout ?? false;
|
|
21972
22232
|
const showCredits = data?.displaySettings?.showCredits ?? true;
|
|
21973
22233
|
return /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(Container2, { ref, className, children: [
|
|
@@ -22559,7 +22819,7 @@ var registerWrapper = function registerWrapper2(stripe, startTime) {
|
|
|
22559
22819
|
}
|
|
22560
22820
|
stripe._registerWrapper({
|
|
22561
22821
|
name: "stripe-js",
|
|
22562
|
-
version: "9.
|
|
22822
|
+
version: "9.6.0",
|
|
22563
22823
|
startTime
|
|
22564
22824
|
});
|
|
22565
22825
|
};
|
|
@@ -22637,7 +22897,7 @@ var initStripe = function initStripe2(maybeStripe, args, startTime) {
|
|
|
22637
22897
|
var version = runtimeVersionToUrlVersion(maybeStripe.version);
|
|
22638
22898
|
var expectedVersion = RELEASE_TRAIN;
|
|
22639
22899
|
if (isTestKey && version !== expectedVersion) {
|
|
22640
|
-
console.warn("Stripe.js@".concat(version, " was loaded on the page, but @stripe/stripe-js@").concat("9.
|
|
22900
|
+
console.warn("Stripe.js@".concat(version, " was loaded on the page, but @stripe/stripe-js@").concat("9.6.0", " expected Stripe.js@").concat(expectedVersion, ". This may result in unexpected behavior. For more information, see https://docs.stripe.com/sdks/stripejs-versioning"));
|
|
22641
22901
|
}
|
|
22642
22902
|
var stripe = maybeStripe.apply(void 0, args);
|
|
22643
22903
|
registerWrapper(stripe, startTime);
|
|
@@ -23020,7 +23280,8 @@ var import_react56 = require("react");
|
|
|
23020
23280
|
|
|
23021
23281
|
// src/components/elements/plan-manager/AddOn.tsx
|
|
23022
23282
|
var import_jsx_runtime53 = require("react/jsx-runtime");
|
|
23023
|
-
var AddOn = ({ addOn, currency, layout }) => {
|
|
23283
|
+
var AddOn = ({ addOn, currency, period, layout }) => {
|
|
23284
|
+
const resolvedPeriod = addOn.planPeriod === "one-time" ? addOn.planPeriod : period ?? addOn.planPeriod;
|
|
23024
23285
|
return /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)(
|
|
23025
23286
|
Flex,
|
|
23026
23287
|
{
|
|
@@ -23030,9 +23291,9 @@ var AddOn = ({ addOn, currency, layout }) => {
|
|
|
23030
23291
|
$gap: "1rem",
|
|
23031
23292
|
children: [
|
|
23032
23293
|
/* @__PURE__ */ (0, import_jsx_runtime53.jsx)(Text, { display: layout.addOns.fontStyle, children: addOn.name }),
|
|
23033
|
-
typeof addOn.planPrice === "number" &&
|
|
23294
|
+
typeof addOn.planPrice === "number" && resolvedPeriod && /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)(Text, { children: [
|
|
23034
23295
|
formatCurrency(addOn.planPrice, currency),
|
|
23035
|
-
/* @__PURE__ */ (0, import_jsx_runtime53.jsx)("sub", { children:
|
|
23296
|
+
/* @__PURE__ */ (0, import_jsx_runtime53.jsx)("sub", { children: resolvedPeriod === "one-time" ? shortenPeriod(resolvedPeriod) : `/${shortenPeriod(resolvedPeriod)}` })
|
|
23036
23297
|
] })
|
|
23037
23298
|
]
|
|
23038
23299
|
}
|
|
@@ -23284,7 +23545,7 @@ var PlanManager = (0, import_react56.forwardRef)(({ children, className, portal,
|
|
|
23284
23545
|
willSubscriptionCancel,
|
|
23285
23546
|
isTrialSubscription
|
|
23286
23547
|
} = (0, import_react56.useMemo)(() => {
|
|
23287
|
-
const subscriptionInterval2 = billingSubscription?.interval;
|
|
23548
|
+
const subscriptionInterval2 = getSubscriptionPeriod(billingSubscription) ?? billingSubscription?.interval;
|
|
23288
23549
|
const subscriptionCurrency2 = billingSubscription?.currency;
|
|
23289
23550
|
const isTrialSubscription2 = billingSubscription?.status === "trialing";
|
|
23290
23551
|
const willSubscriptionCancel2 = typeof billingSubscription?.cancelAt === "number" && billingSubscription?.cancelAtPeriodEnd === true;
|
|
@@ -23295,6 +23556,7 @@ var PlanManager = (0, import_react56.forwardRef)(({ children, className, portal,
|
|
|
23295
23556
|
willSubscriptionCancel: willSubscriptionCancel2
|
|
23296
23557
|
};
|
|
23297
23558
|
}, [billingSubscription]);
|
|
23559
|
+
const currentPlanPeriod = getSubscriptionPeriod(billingSubscription) ?? currentPlan?.planPeriod ?? void 0;
|
|
23298
23560
|
const { isFreePlan, isUsageBasedPlan } = (0, import_react56.useMemo)(() => {
|
|
23299
23561
|
const isFreePlan2 = currentPlan?.planPrice === 0;
|
|
23300
23562
|
const isUsageBasedPlan2 = isFreePlan2 && usageBasedEntitlements.length > 0;
|
|
@@ -23463,9 +23725,9 @@ var PlanManager = (0, import_react56.forwardRef)(({ children, className, portal,
|
|
|
23463
23725
|
)
|
|
23464
23726
|
}
|
|
23465
23727
|
),
|
|
23466
|
-
!isFreePlan &&
|
|
23728
|
+
!isFreePlan && currentPlanPeriod && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(Text, { display: props.header.price.fontStyle, children: /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)("sub", { children: [
|
|
23467
23729
|
"/",
|
|
23468
|
-
shortenPeriod(
|
|
23730
|
+
shortenPeriod(currentPlanPeriod)
|
|
23469
23731
|
] }) })
|
|
23470
23732
|
] })
|
|
23471
23733
|
]
|
|
@@ -23485,6 +23747,7 @@ var PlanManager = (0, import_react56.forwardRef)(({ children, className, portal,
|
|
|
23485
23747
|
{
|
|
23486
23748
|
addOn,
|
|
23487
23749
|
currency: subscriptionCurrency,
|
|
23750
|
+
period: currentPlanPeriod,
|
|
23488
23751
|
layout: props
|
|
23489
23752
|
},
|
|
23490
23753
|
addOnIndex
|
|
@@ -23504,7 +23767,7 @@ var PlanManager = (0, import_react56.forwardRef)(({ children, className, portal,
|
|
|
23504
23767
|
UsageDetails2,
|
|
23505
23768
|
{
|
|
23506
23769
|
entitlement,
|
|
23507
|
-
period:
|
|
23770
|
+
period: currentPlanPeriod || "month",
|
|
23508
23771
|
currency: subscriptionCurrency,
|
|
23509
23772
|
showCredits,
|
|
23510
23773
|
layout: props
|
|
@@ -23828,7 +24091,8 @@ var AddOn2 = ({
|
|
|
23828
24091
|
};
|
|
23829
24092
|
}, [data?.capabilities?.checkout, data?.company?.addOns, data?.component]);
|
|
23830
24093
|
const cardPadding = settings.theme.card.padding / TEXT_BASE_SIZE;
|
|
23831
|
-
const
|
|
24094
|
+
const currentAddOnPeriod = getSubscriptionPeriod(data?.company?.billingSubscription) ?? currentAddOns.find((currentAddOn) => currentAddOn.id === addOn.id)?.planPeriod;
|
|
24095
|
+
const isActiveAddOn = addOn.current && selectedPeriod === currentAddOnPeriod;
|
|
23832
24096
|
const { price: addOnPrice, currency: addOnCurrency } = getAddOnPrice(addOn, selectedPeriod, currency) || {};
|
|
23833
24097
|
const displayableEntitlements = addOn.entitlements?.filter(
|
|
23834
24098
|
(entitlement) => entitlement.valueType === "unlimited" || entitlement.priceBehavior && entitlement.priceBehavior !== EntitlementPriceBehavior.CreditBurndown
|
|
@@ -24288,7 +24552,7 @@ var Plan2 = ({
|
|
|
24288
24552
|
};
|
|
24289
24553
|
const cardPadding = settings.theme.card.padding / TEXT_BASE_SIZE;
|
|
24290
24554
|
const isStandalone = typeof data?.component === "undefined";
|
|
24291
|
-
const currentPeriod = data?.company?.plan?.planPeriod || "month";
|
|
24555
|
+
const currentPeriod = getSubscriptionPeriod(data?.company?.billingSubscription) || data?.company?.plan?.planPeriod || "month";
|
|
24292
24556
|
const canCheckout = isStandalone || (data?.capabilities?.checkout ?? true);
|
|
24293
24557
|
const isTrialSubscription = data?.company?.billingSubscription?.status === "trialing";
|
|
24294
24558
|
const showCredits = data?.displaySettings?.showCredits ?? true;
|
|
@@ -24358,10 +24622,13 @@ var Plan2 = ({
|
|
|
24358
24622
|
plan.custom ? plan.customPlanConfig?.priceText ? plan.customPlanConfig.priceText : t3("Custom price") : isUsageBasedPlan ? t3("Usage-based") : isFreePlan && showZeroPriceAsFree ? t3("Free") : showAsMonthlyPrices && selectedPeriod === BillingProductPriceInterval.Year ? formatCurrency((planPrice ?? 0) / 12, {
|
|
24359
24623
|
currency: planCurrency,
|
|
24360
24624
|
testSignificantDigits: false
|
|
24625
|
+
}) : showAsMonthlyPrices && selectedPeriod === "quarter" ? formatCurrency((planPrice ?? 0) / 3, {
|
|
24626
|
+
currency: planCurrency,
|
|
24627
|
+
testSignificantDigits: false
|
|
24361
24628
|
}) : formatCurrency(planPrice ?? 0, planCurrency),
|
|
24362
24629
|
!plan.custom && !isFreePlan && /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("sub", { children: [
|
|
24363
24630
|
"/",
|
|
24364
|
-
showAsMonthlyPrices && selectedPeriod === BillingProductPriceInterval.Year ? t3("month, billed yearly") : t3(selectedPeriod)
|
|
24631
|
+
showAsMonthlyPrices && selectedPeriod === BillingProductPriceInterval.Year ? t3("month, billed yearly") : showAsMonthlyPrices && selectedPeriod === "quarter" ? t3("month, billed quarterly") : t3(selectedPeriod)
|
|
24365
24632
|
] })
|
|
24366
24633
|
]
|
|
24367
24634
|
}
|
|
@@ -24664,17 +24931,15 @@ var PricingTable = (0, import_react59.forwardRef)(({ className, ...rest }, ref)
|
|
|
24664
24931
|
[]
|
|
24665
24932
|
);
|
|
24666
24933
|
const [selectedPeriod, setSelectedPeriod] = (0, import_react59.useState)(
|
|
24667
|
-
() => data?.company?.plan?.planPeriod || "month"
|
|
24934
|
+
() => getSubscriptionPeriod(data?.company?.billingSubscription) || data?.company?.plan?.planPeriod || "month"
|
|
24668
24935
|
);
|
|
24669
24936
|
const { currencies, invalidFilterEntries } = useAvailableCurrenciesWithInvalid();
|
|
24670
24937
|
const [selectedCurrency, setSelectedCurrency] = (0, import_react59.useState)(
|
|
24671
24938
|
() => currencies[0] ?? DEFAULT_CURRENCY
|
|
24672
24939
|
);
|
|
24673
|
-
(0
|
|
24674
|
-
|
|
24675
|
-
|
|
24676
|
-
}
|
|
24677
|
-
}, [currencies, selectedCurrency]);
|
|
24940
|
+
if (currencies.length > 0 && !currencies.includes(selectedCurrency)) {
|
|
24941
|
+
setSelectedCurrency(currencies[0]);
|
|
24942
|
+
}
|
|
24678
24943
|
const showPeriodToggle = rest.showPeriodToggle ?? data?.displaySettings?.showPeriodToggle ?? true;
|
|
24679
24944
|
const hasCurrencyFilter = !!currencyFilter && currencyFilter.length > 0;
|
|
24680
24945
|
const showCurrencySelector = currencies.length > 1;
|
|
@@ -24800,7 +25065,7 @@ var PricingTable = (0, import_react59.forwardRef)(({ className, ...rest }, ref)
|
|
|
24800
25065
|
$margin: 0,
|
|
24801
25066
|
$listStyle: "none",
|
|
24802
25067
|
children: plans.map((plan, index, self2) => {
|
|
24803
|
-
const planPeriod = showPeriodToggle ? selectedPeriod : plan.
|
|
25068
|
+
const planPeriod = showPeriodToggle ? selectedPeriod : plan.monthlyPrice ? BillingProductPriceInterval.Month : plan.quarterlyPrice ? "quarter" : plan.yearlyPrice ? BillingProductPriceInterval.Year : BillingProductPriceInterval.Month;
|
|
24804
25069
|
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
24805
25070
|
Plan2,
|
|
24806
25071
|
{
|
|
@@ -24852,7 +25117,7 @@ var PricingTable = (0, import_react59.forwardRef)(({ className, ...rest }, ref)
|
|
|
24852
25117
|
$margin: 0,
|
|
24853
25118
|
$listStyle: "none",
|
|
24854
25119
|
children: addOns.map((addOn, index) => {
|
|
24855
|
-
const addOnPeriod = showPeriodToggle ? selectedPeriod : addOn.
|
|
25120
|
+
const addOnPeriod = showPeriodToggle ? selectedPeriod : addOn.monthlyPrice ? BillingProductPriceInterval.Month : addOn.quarterlyPrice ? "quarter" : addOn.yearlyPrice ? BillingProductPriceInterval.Year : BillingProductPriceInterval.Month;
|
|
24856
25121
|
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
24857
25122
|
AddOn2,
|
|
24858
25123
|
{
|
|
@@ -29473,7 +29738,7 @@ var Error2 = ({ message }) => {
|
|
|
29473
29738
|
);
|
|
29474
29739
|
};
|
|
29475
29740
|
var SchematicEmbed = ({ id, accessToken }) => {
|
|
29476
|
-
const theme = (0, import_react64.useContext)(
|
|
29741
|
+
const theme = (0, import_react64.useContext)(nt2);
|
|
29477
29742
|
const {
|
|
29478
29743
|
data,
|
|
29479
29744
|
error,
|