@schematichq/schematic-components 0.5.0 → 0.6.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 +1058 -717
- package/dist/schematic-components.d.ts +846 -4
- package/dist/schematic-components.esm.js +1078 -737
- package/package.json +10 -10
|
@@ -1664,78 +1664,18 @@ var require_merge = __commonJS({
|
|
|
1664
1664
|
}
|
|
1665
1665
|
});
|
|
1666
1666
|
|
|
1667
|
-
// node_modules/classnames/index.js
|
|
1668
|
-
var require_classnames = __commonJS({
|
|
1669
|
-
"node_modules/classnames/index.js"(exports, module) {
|
|
1670
|
-
(function() {
|
|
1671
|
-
"use strict";
|
|
1672
|
-
var hasOwn = {}.hasOwnProperty;
|
|
1673
|
-
function classNames() {
|
|
1674
|
-
var classes = "";
|
|
1675
|
-
for (var i2 = 0; i2 < arguments.length; i2++) {
|
|
1676
|
-
var arg = arguments[i2];
|
|
1677
|
-
if (arg) {
|
|
1678
|
-
classes = appendClass(classes, parseValue(arg));
|
|
1679
|
-
}
|
|
1680
|
-
}
|
|
1681
|
-
return classes;
|
|
1682
|
-
}
|
|
1683
|
-
function parseValue(arg) {
|
|
1684
|
-
if (typeof arg === "string" || typeof arg === "number") {
|
|
1685
|
-
return arg;
|
|
1686
|
-
}
|
|
1687
|
-
if (typeof arg !== "object") {
|
|
1688
|
-
return "";
|
|
1689
|
-
}
|
|
1690
|
-
if (Array.isArray(arg)) {
|
|
1691
|
-
return classNames.apply(null, arg);
|
|
1692
|
-
}
|
|
1693
|
-
if (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes("[native code]")) {
|
|
1694
|
-
return arg.toString();
|
|
1695
|
-
}
|
|
1696
|
-
var classes = "";
|
|
1697
|
-
for (var key in arg) {
|
|
1698
|
-
if (hasOwn.call(arg, key) && arg[key]) {
|
|
1699
|
-
classes = appendClass(classes, key);
|
|
1700
|
-
}
|
|
1701
|
-
}
|
|
1702
|
-
return classes;
|
|
1703
|
-
}
|
|
1704
|
-
function appendClass(value, newClass) {
|
|
1705
|
-
if (!newClass) {
|
|
1706
|
-
return value;
|
|
1707
|
-
}
|
|
1708
|
-
if (value) {
|
|
1709
|
-
return value + " " + newClass;
|
|
1710
|
-
}
|
|
1711
|
-
return value + newClass;
|
|
1712
|
-
}
|
|
1713
|
-
if (typeof module !== "undefined" && module.exports) {
|
|
1714
|
-
classNames.default = classNames;
|
|
1715
|
-
module.exports = classNames;
|
|
1716
|
-
} else if (typeof define === "function" && typeof define.amd === "object" && define.amd) {
|
|
1717
|
-
define("classnames", [], function() {
|
|
1718
|
-
return classNames;
|
|
1719
|
-
});
|
|
1720
|
-
} else {
|
|
1721
|
-
window.classNames = classNames;
|
|
1722
|
-
}
|
|
1723
|
-
})();
|
|
1724
|
-
}
|
|
1725
|
-
});
|
|
1726
|
-
|
|
1727
1667
|
// node_modules/pluralize/pluralize.js
|
|
1728
1668
|
var require_pluralize = __commonJS({
|
|
1729
1669
|
"node_modules/pluralize/pluralize.js"(exports, module) {
|
|
1730
|
-
(function(root,
|
|
1670
|
+
(function(root, pluralize2) {
|
|
1731
1671
|
if (typeof __require === "function" && typeof exports === "object" && typeof module === "object") {
|
|
1732
|
-
module.exports =
|
|
1672
|
+
module.exports = pluralize2();
|
|
1733
1673
|
} else if (typeof define === "function" && define.amd) {
|
|
1734
1674
|
define(function() {
|
|
1735
|
-
return
|
|
1675
|
+
return pluralize2();
|
|
1736
1676
|
});
|
|
1737
1677
|
} else {
|
|
1738
|
-
root.pluralize =
|
|
1678
|
+
root.pluralize = pluralize2();
|
|
1739
1679
|
}
|
|
1740
1680
|
})(exports, function() {
|
|
1741
1681
|
var pluralRules = [];
|
|
@@ -1803,45 +1743,45 @@ var require_pluralize = __commonJS({
|
|
|
1803
1743
|
return sanitizeWord(token2, token2, rules) === token2;
|
|
1804
1744
|
};
|
|
1805
1745
|
}
|
|
1806
|
-
function
|
|
1807
|
-
var pluralized = count === 1 ?
|
|
1746
|
+
function pluralize2(word, count, inclusive) {
|
|
1747
|
+
var pluralized = count === 1 ? pluralize2.singular(word) : pluralize2.plural(word);
|
|
1808
1748
|
return (inclusive ? count + " " : "") + pluralized;
|
|
1809
1749
|
}
|
|
1810
|
-
|
|
1750
|
+
pluralize2.plural = replaceWord(
|
|
1811
1751
|
irregularSingles,
|
|
1812
1752
|
irregularPlurals,
|
|
1813
1753
|
pluralRules
|
|
1814
1754
|
);
|
|
1815
|
-
|
|
1755
|
+
pluralize2.isPlural = checkWord(
|
|
1816
1756
|
irregularSingles,
|
|
1817
1757
|
irregularPlurals,
|
|
1818
1758
|
pluralRules
|
|
1819
1759
|
);
|
|
1820
|
-
|
|
1760
|
+
pluralize2.singular = replaceWord(
|
|
1821
1761
|
irregularPlurals,
|
|
1822
1762
|
irregularSingles,
|
|
1823
1763
|
singularRules
|
|
1824
1764
|
);
|
|
1825
|
-
|
|
1765
|
+
pluralize2.isSingular = checkWord(
|
|
1826
1766
|
irregularPlurals,
|
|
1827
1767
|
irregularSingles,
|
|
1828
1768
|
singularRules
|
|
1829
1769
|
);
|
|
1830
|
-
|
|
1770
|
+
pluralize2.addPluralRule = function(rule, replacement) {
|
|
1831
1771
|
pluralRules.push([sanitizeRule(rule), replacement]);
|
|
1832
1772
|
};
|
|
1833
|
-
|
|
1773
|
+
pluralize2.addSingularRule = function(rule, replacement) {
|
|
1834
1774
|
singularRules.push([sanitizeRule(rule), replacement]);
|
|
1835
1775
|
};
|
|
1836
|
-
|
|
1776
|
+
pluralize2.addUncountableRule = function(word) {
|
|
1837
1777
|
if (typeof word === "string") {
|
|
1838
1778
|
uncountables[word.toLowerCase()] = true;
|
|
1839
1779
|
return;
|
|
1840
1780
|
}
|
|
1841
|
-
|
|
1842
|
-
|
|
1781
|
+
pluralize2.addPluralRule(word, "$0");
|
|
1782
|
+
pluralize2.addSingularRule(word, "$0");
|
|
1843
1783
|
};
|
|
1844
|
-
|
|
1784
|
+
pluralize2.addIrregularRule = function(single, plural) {
|
|
1845
1785
|
plural = plural.toLowerCase();
|
|
1846
1786
|
single = single.toLowerCase();
|
|
1847
1787
|
irregularSingles[single] = plural;
|
|
@@ -1901,7 +1841,7 @@ var require_pluralize = __commonJS({
|
|
|
1901
1841
|
["pickaxe", "pickaxes"],
|
|
1902
1842
|
["passerby", "passersby"]
|
|
1903
1843
|
].forEach(function(rule) {
|
|
1904
|
-
return
|
|
1844
|
+
return pluralize2.addIrregularRule(rule[0], rule[1]);
|
|
1905
1845
|
});
|
|
1906
1846
|
[
|
|
1907
1847
|
[/s?$/i, "s"],
|
|
@@ -1930,7 +1870,7 @@ var require_pluralize = __commonJS({
|
|
|
1930
1870
|
[/m[ae]n$/i, "men"],
|
|
1931
1871
|
["thou", "you"]
|
|
1932
1872
|
].forEach(function(rule) {
|
|
1933
|
-
return
|
|
1873
|
+
return pluralize2.addPluralRule(rule[0], rule[1]);
|
|
1934
1874
|
});
|
|
1935
1875
|
[
|
|
1936
1876
|
[/s$/i, ""],
|
|
@@ -1957,7 +1897,7 @@ var require_pluralize = __commonJS({
|
|
|
1957
1897
|
[/(eau)x?$/i, "$1"],
|
|
1958
1898
|
[/men$/i, "man"]
|
|
1959
1899
|
].forEach(function(rule) {
|
|
1960
|
-
return
|
|
1900
|
+
return pluralize2.addSingularRule(rule[0], rule[1]);
|
|
1961
1901
|
});
|
|
1962
1902
|
[
|
|
1963
1903
|
// Singular words with no plurals.
|
|
@@ -2069,12 +2009,249 @@ var require_pluralize = __commonJS({
|
|
|
2069
2009
|
/pox$/i,
|
|
2070
2010
|
// "chickpox", "smallpox"
|
|
2071
2011
|
/sheep$/i
|
|
2072
|
-
].forEach(
|
|
2073
|
-
return
|
|
2012
|
+
].forEach(pluralize2.addUncountableRule);
|
|
2013
|
+
return pluralize2;
|
|
2074
2014
|
});
|
|
2075
2015
|
}
|
|
2076
2016
|
});
|
|
2077
2017
|
|
|
2018
|
+
// node_modules/classnames/index.js
|
|
2019
|
+
var require_classnames = __commonJS({
|
|
2020
|
+
"node_modules/classnames/index.js"(exports, module) {
|
|
2021
|
+
(function() {
|
|
2022
|
+
"use strict";
|
|
2023
|
+
var hasOwn = {}.hasOwnProperty;
|
|
2024
|
+
function classNames() {
|
|
2025
|
+
var classes = "";
|
|
2026
|
+
for (var i2 = 0; i2 < arguments.length; i2++) {
|
|
2027
|
+
var arg = arguments[i2];
|
|
2028
|
+
if (arg) {
|
|
2029
|
+
classes = appendClass(classes, parseValue(arg));
|
|
2030
|
+
}
|
|
2031
|
+
}
|
|
2032
|
+
return classes;
|
|
2033
|
+
}
|
|
2034
|
+
function parseValue(arg) {
|
|
2035
|
+
if (typeof arg === "string" || typeof arg === "number") {
|
|
2036
|
+
return arg;
|
|
2037
|
+
}
|
|
2038
|
+
if (typeof arg !== "object") {
|
|
2039
|
+
return "";
|
|
2040
|
+
}
|
|
2041
|
+
if (Array.isArray(arg)) {
|
|
2042
|
+
return classNames.apply(null, arg);
|
|
2043
|
+
}
|
|
2044
|
+
if (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes("[native code]")) {
|
|
2045
|
+
return arg.toString();
|
|
2046
|
+
}
|
|
2047
|
+
var classes = "";
|
|
2048
|
+
for (var key in arg) {
|
|
2049
|
+
if (hasOwn.call(arg, key) && arg[key]) {
|
|
2050
|
+
classes = appendClass(classes, key);
|
|
2051
|
+
}
|
|
2052
|
+
}
|
|
2053
|
+
return classes;
|
|
2054
|
+
}
|
|
2055
|
+
function appendClass(value, newClass) {
|
|
2056
|
+
if (!newClass) {
|
|
2057
|
+
return value;
|
|
2058
|
+
}
|
|
2059
|
+
if (value) {
|
|
2060
|
+
return value + " " + newClass;
|
|
2061
|
+
}
|
|
2062
|
+
return value + newClass;
|
|
2063
|
+
}
|
|
2064
|
+
if (typeof module !== "undefined" && module.exports) {
|
|
2065
|
+
classNames.default = classNames;
|
|
2066
|
+
module.exports = classNames;
|
|
2067
|
+
} else if (typeof define === "function" && typeof define.amd === "object" && define.amd) {
|
|
2068
|
+
define("classnames", [], function() {
|
|
2069
|
+
return classNames;
|
|
2070
|
+
});
|
|
2071
|
+
} else {
|
|
2072
|
+
window.classNames = classNames;
|
|
2073
|
+
}
|
|
2074
|
+
})();
|
|
2075
|
+
}
|
|
2076
|
+
});
|
|
2077
|
+
|
|
2078
|
+
// node_modules/lodash/now.js
|
|
2079
|
+
var require_now = __commonJS({
|
|
2080
|
+
"node_modules/lodash/now.js"(exports, module) {
|
|
2081
|
+
var root = require_root();
|
|
2082
|
+
var now = function() {
|
|
2083
|
+
return root.Date.now();
|
|
2084
|
+
};
|
|
2085
|
+
module.exports = now;
|
|
2086
|
+
}
|
|
2087
|
+
});
|
|
2088
|
+
|
|
2089
|
+
// node_modules/lodash/_trimmedEndIndex.js
|
|
2090
|
+
var require_trimmedEndIndex = __commonJS({
|
|
2091
|
+
"node_modules/lodash/_trimmedEndIndex.js"(exports, module) {
|
|
2092
|
+
var reWhitespace = /\s/;
|
|
2093
|
+
function trimmedEndIndex(string) {
|
|
2094
|
+
var index = string.length;
|
|
2095
|
+
while (index-- && reWhitespace.test(string.charAt(index))) {
|
|
2096
|
+
}
|
|
2097
|
+
return index;
|
|
2098
|
+
}
|
|
2099
|
+
module.exports = trimmedEndIndex;
|
|
2100
|
+
}
|
|
2101
|
+
});
|
|
2102
|
+
|
|
2103
|
+
// node_modules/lodash/_baseTrim.js
|
|
2104
|
+
var require_baseTrim = __commonJS({
|
|
2105
|
+
"node_modules/lodash/_baseTrim.js"(exports, module) {
|
|
2106
|
+
var trimmedEndIndex = require_trimmedEndIndex();
|
|
2107
|
+
var reTrimStart = /^\s+/;
|
|
2108
|
+
function baseTrim(string) {
|
|
2109
|
+
return string ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, "") : string;
|
|
2110
|
+
}
|
|
2111
|
+
module.exports = baseTrim;
|
|
2112
|
+
}
|
|
2113
|
+
});
|
|
2114
|
+
|
|
2115
|
+
// node_modules/lodash/isSymbol.js
|
|
2116
|
+
var require_isSymbol = __commonJS({
|
|
2117
|
+
"node_modules/lodash/isSymbol.js"(exports, module) {
|
|
2118
|
+
var baseGetTag = require_baseGetTag();
|
|
2119
|
+
var isObjectLike = require_isObjectLike();
|
|
2120
|
+
var symbolTag = "[object Symbol]";
|
|
2121
|
+
function isSymbol(value) {
|
|
2122
|
+
return typeof value == "symbol" || isObjectLike(value) && baseGetTag(value) == symbolTag;
|
|
2123
|
+
}
|
|
2124
|
+
module.exports = isSymbol;
|
|
2125
|
+
}
|
|
2126
|
+
});
|
|
2127
|
+
|
|
2128
|
+
// node_modules/lodash/toNumber.js
|
|
2129
|
+
var require_toNumber = __commonJS({
|
|
2130
|
+
"node_modules/lodash/toNumber.js"(exports, module) {
|
|
2131
|
+
var baseTrim = require_baseTrim();
|
|
2132
|
+
var isObject2 = require_isObject();
|
|
2133
|
+
var isSymbol = require_isSymbol();
|
|
2134
|
+
var NAN = 0 / 0;
|
|
2135
|
+
var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
|
|
2136
|
+
var reIsBinary = /^0b[01]+$/i;
|
|
2137
|
+
var reIsOctal = /^0o[0-7]+$/i;
|
|
2138
|
+
var freeParseInt = parseInt;
|
|
2139
|
+
function toNumber(value) {
|
|
2140
|
+
if (typeof value == "number") {
|
|
2141
|
+
return value;
|
|
2142
|
+
}
|
|
2143
|
+
if (isSymbol(value)) {
|
|
2144
|
+
return NAN;
|
|
2145
|
+
}
|
|
2146
|
+
if (isObject2(value)) {
|
|
2147
|
+
var other = typeof value.valueOf == "function" ? value.valueOf() : value;
|
|
2148
|
+
value = isObject2(other) ? other + "" : other;
|
|
2149
|
+
}
|
|
2150
|
+
if (typeof value != "string") {
|
|
2151
|
+
return value === 0 ? value : +value;
|
|
2152
|
+
}
|
|
2153
|
+
value = baseTrim(value);
|
|
2154
|
+
var isBinary = reIsBinary.test(value);
|
|
2155
|
+
return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value;
|
|
2156
|
+
}
|
|
2157
|
+
module.exports = toNumber;
|
|
2158
|
+
}
|
|
2159
|
+
});
|
|
2160
|
+
|
|
2161
|
+
// node_modules/lodash/debounce.js
|
|
2162
|
+
var require_debounce = __commonJS({
|
|
2163
|
+
"node_modules/lodash/debounce.js"(exports, module) {
|
|
2164
|
+
var isObject2 = require_isObject();
|
|
2165
|
+
var now = require_now();
|
|
2166
|
+
var toNumber = require_toNumber();
|
|
2167
|
+
var FUNC_ERROR_TEXT = "Expected a function";
|
|
2168
|
+
var nativeMax = Math.max;
|
|
2169
|
+
var nativeMin = Math.min;
|
|
2170
|
+
function debounce2(func, wait, options) {
|
|
2171
|
+
var lastArgs, lastThis, maxWait, result, timerId, lastCallTime, lastInvokeTime = 0, leading = false, maxing = false, trailing = true;
|
|
2172
|
+
if (typeof func != "function") {
|
|
2173
|
+
throw new TypeError(FUNC_ERROR_TEXT);
|
|
2174
|
+
}
|
|
2175
|
+
wait = toNumber(wait) || 0;
|
|
2176
|
+
if (isObject2(options)) {
|
|
2177
|
+
leading = !!options.leading;
|
|
2178
|
+
maxing = "maxWait" in options;
|
|
2179
|
+
maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;
|
|
2180
|
+
trailing = "trailing" in options ? !!options.trailing : trailing;
|
|
2181
|
+
}
|
|
2182
|
+
function invokeFunc(time) {
|
|
2183
|
+
var args = lastArgs, thisArg = lastThis;
|
|
2184
|
+
lastArgs = lastThis = void 0;
|
|
2185
|
+
lastInvokeTime = time;
|
|
2186
|
+
result = func.apply(thisArg, args);
|
|
2187
|
+
return result;
|
|
2188
|
+
}
|
|
2189
|
+
function leadingEdge(time) {
|
|
2190
|
+
lastInvokeTime = time;
|
|
2191
|
+
timerId = setTimeout(timerExpired, wait);
|
|
2192
|
+
return leading ? invokeFunc(time) : result;
|
|
2193
|
+
}
|
|
2194
|
+
function remainingWait(time) {
|
|
2195
|
+
var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime, timeWaiting = wait - timeSinceLastCall;
|
|
2196
|
+
return maxing ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) : timeWaiting;
|
|
2197
|
+
}
|
|
2198
|
+
function shouldInvoke(time) {
|
|
2199
|
+
var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime;
|
|
2200
|
+
return lastCallTime === void 0 || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait;
|
|
2201
|
+
}
|
|
2202
|
+
function timerExpired() {
|
|
2203
|
+
var time = now();
|
|
2204
|
+
if (shouldInvoke(time)) {
|
|
2205
|
+
return trailingEdge(time);
|
|
2206
|
+
}
|
|
2207
|
+
timerId = setTimeout(timerExpired, remainingWait(time));
|
|
2208
|
+
}
|
|
2209
|
+
function trailingEdge(time) {
|
|
2210
|
+
timerId = void 0;
|
|
2211
|
+
if (trailing && lastArgs) {
|
|
2212
|
+
return invokeFunc(time);
|
|
2213
|
+
}
|
|
2214
|
+
lastArgs = lastThis = void 0;
|
|
2215
|
+
return result;
|
|
2216
|
+
}
|
|
2217
|
+
function cancel() {
|
|
2218
|
+
if (timerId !== void 0) {
|
|
2219
|
+
clearTimeout(timerId);
|
|
2220
|
+
}
|
|
2221
|
+
lastInvokeTime = 0;
|
|
2222
|
+
lastArgs = lastCallTime = lastThis = timerId = void 0;
|
|
2223
|
+
}
|
|
2224
|
+
function flush() {
|
|
2225
|
+
return timerId === void 0 ? result : trailingEdge(now());
|
|
2226
|
+
}
|
|
2227
|
+
function debounced() {
|
|
2228
|
+
var time = now(), isInvoking = shouldInvoke(time);
|
|
2229
|
+
lastArgs = arguments;
|
|
2230
|
+
lastThis = this;
|
|
2231
|
+
lastCallTime = time;
|
|
2232
|
+
if (isInvoking) {
|
|
2233
|
+
if (timerId === void 0) {
|
|
2234
|
+
return leadingEdge(lastCallTime);
|
|
2235
|
+
}
|
|
2236
|
+
if (maxing) {
|
|
2237
|
+
clearTimeout(timerId);
|
|
2238
|
+
timerId = setTimeout(timerExpired, wait);
|
|
2239
|
+
return invokeFunc(lastCallTime);
|
|
2240
|
+
}
|
|
2241
|
+
}
|
|
2242
|
+
if (timerId === void 0) {
|
|
2243
|
+
timerId = setTimeout(timerExpired, wait);
|
|
2244
|
+
}
|
|
2245
|
+
return result;
|
|
2246
|
+
}
|
|
2247
|
+
debounced.cancel = cancel;
|
|
2248
|
+
debounced.flush = flush;
|
|
2249
|
+
return debounced;
|
|
2250
|
+
}
|
|
2251
|
+
module.exports = debounce2;
|
|
2252
|
+
}
|
|
2253
|
+
});
|
|
2254
|
+
|
|
2078
2255
|
// src/components/elements/included-features/IncludedFeatures.tsx
|
|
2079
2256
|
import { forwardRef as forwardRef7, useRef as useRef7, useState as useState12 } from "react";
|
|
2080
2257
|
|
|
@@ -3056,7 +3233,7 @@ var unitlessKeys = {
|
|
|
3056
3233
|
var f = "undefined" != typeof process && void 0 !== process.env && (process.env.REACT_APP_SC_ATTR || process.env.SC_ATTR) || "data-styled";
|
|
3057
3234
|
var m = "active";
|
|
3058
3235
|
var y = "data-styled-version";
|
|
3059
|
-
var v = "6.1.
|
|
3236
|
+
var v = "6.1.16";
|
|
3060
3237
|
var g = "/*!sc*/\n";
|
|
3061
3238
|
var S = "undefined" != typeof window && "HTMLElement" in window;
|
|
3062
3239
|
var w = Boolean("boolean" == typeof SC_DISABLE_SPEEDY ? SC_DISABLE_SPEEDY : "undefined" != typeof process && void 0 !== process.env && void 0 !== process.env.REACT_APP_SC_DISABLE_SPEEDY && "" !== process.env.REACT_APP_SC_DISABLE_SPEEDY ? "false" !== process.env.REACT_APP_SC_DISABLE_SPEEDY && process.env.REACT_APP_SC_DISABLE_SPEEDY : "undefined" != typeof process && void 0 !== process.env && void 0 !== process.env.SC_DISABLE_SPEEDY && "" !== process.env.SC_DISABLE_SPEEDY ? "false" !== process.env.SC_DISABLE_SPEEDY && process.env.SC_DISABLE_SPEEDY : true);
|
|
@@ -3717,6 +3894,7 @@ var St = "__sc-".concat(f, "__");
|
|
|
3717
3894
|
var TEXT_BASE_SIZE = 16;
|
|
3718
3895
|
var VISIBLE_ENTITLEMENT_COUNT = 4;
|
|
3719
3896
|
var MAX_VISIBLE_INVOICE_COUNT = 12;
|
|
3897
|
+
var DEBOUNCE_TIMEOUT = 250;
|
|
3720
3898
|
|
|
3721
3899
|
// src/hooks/useAvailablePlans.ts
|
|
3722
3900
|
import { useCallback as useCallback2, useMemo as useMemo2 } from "react";
|
|
@@ -12081,6 +12259,7 @@ var en_default = {
|
|
|
12081
12259
|
Unsubscribe: "Unsubscribe",
|
|
12082
12260
|
"Unsubscribe failed": "Unsubscribe failed",
|
|
12083
12261
|
"Unused time": "Unused time",
|
|
12262
|
+
"Up to a limit of": "Up to a limit of {{amount}} {{units}}",
|
|
12084
12263
|
Usage: "Usage",
|
|
12085
12264
|
"Usage-based": "Usage-based",
|
|
12086
12265
|
"Use existing payment method": "Use existing payment method",
|
|
@@ -12103,8 +12282,7 @@ var en_default = {
|
|
|
12103
12282
|
};
|
|
12104
12283
|
|
|
12105
12284
|
// src/context/styles.ts
|
|
12106
|
-
var GlobalStyle = ft
|
|
12107
|
-
|
|
12285
|
+
var GlobalStyle = ft`
|
|
12108
12286
|
@font-face {
|
|
12109
12287
|
font-family: "icons";
|
|
12110
12288
|
src: url(data:font/ttf;base64,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ASUBJgEnASgBKQEqASsBLAEtAS4BLwEwATEBMgEzATQBNQE2ATcBOAE5AToBOwE8AT0BPgE/AUABQQFCAUMBRAFFAUYBRwFIAUkBSgFLAUwBTQFOAU8BUAFRAVIBUwFUAVUBVgFXAVgBWQFaAVsBXAFdAV4BXwFgAWEBYgFjAWQBZQFmAWcBaAFpAWoBawFsAW0BbgFvAXABcQFyAXMBdAF1AXYBdwAFYWxhcm0JYW1hem9ucGF5BGFtZXgIYXBwbGVwYXkPYXJyb3ctYW5hbHl0aWNzDGFycm93LWN1cnZlZAphcnJvdy1kb3duCmFycm93LWxlZnQLYXJyb3ctcmlnaHQIYXJyb3ctdXAMYXJyb3ctdXB3YXJkCWJhY2tzcGFjZQRiYW5rBGJlbGwFYm9hcmQIYm9va21hcmsKYm9vbGVhbi1vbgdib29sZWFuBGJ1bGIGYnVyZ2VyB2Nhc2hhcHANY2hlY2stcm91bmRlZAVjaGVjawxjaGV2cm9uLWRvd24MY2hldnJvbi1sZWZ0DWNoZXZyb24tcmlnaHQKY2hldnJvbi11cARjaGlwBWNoaXBzBWNsZXJrFGNsb3NlLXJvdW5kZWQtZmlsbGVkBWNsb3NlCGNsb3VkLXVwBGNsdWIDY21kBGNvZGUGY29mZmVlA2NvZw5jb2xsYXBzZS1lbXB0eQhjb2xsYXBzZQdjb21wYXNzCmNvbm5lY3Rpb24EY29weQZjcmVkaXQHY3lsbmRlcgdkaWFtb25kDmRvbGxhci1yb3VuZGVkD2RvdHMtaG9yaXpvbnRhbA1kb3RzLXZlcnRpY2FsDGVudGl0bGVtZW50cwllcXVhbGl6ZXIaZXhjbGFtYXRpb24tcm91bmRlZC1maWxsZWQDZXllBmZpbHRlcgVmbGFzawxmb2xkZXItbWludXMLZm9sZGVyLXBsdXMGZm9sZGVyD2dlbmVyaWMtcGF5bWVudAZnaXRodWIHZ2xhc3NlcwVnbG9iZQZnb29nbGUGaGFtbWVyBGhhc2gFaGVhcnQHaHVic3BvdAVpbWFnZQxpbmZvLXJvdW5kZWQFanVpY2UDa2V5BGxpbmsKbWFzdGVyY2FyZARtb3ZlBW11c2ljCm5vZGUtbWludXMJbm9kZS1wbHVzB3BhY2thZ2ULcGFwZXItcGxhbmUGcGF5cGFsBnBlbmNpbAdwZXJjZW50BnBpY2tlcgRwbGFuBHBsdWcKcGx1cy1taW51cxRwbHVzLXJvdW5kZWQtb3V0bGluZQdwcmVzZW50CXNjaGVtYXRpYwZzZWFyY2gHc2VnbWVudA1zZXJ2ZXItc2VhcmNoB3NpZGViYXIGc2lnbmFsB3NpbGVuY2UFc3BhZGUHc3BlYWtlcgdzdGFja2VkBnN0YWNrcwZzdHJpcGUEdGV4dAd0aHVuZGVyB3Rvcm5hZG8FdHJ1Y2sEdHViZQt1bnByb3RlY3RlZAt1bnN1YnNjcmliZQh2ZXJpZmllZAx2aWRlby1jYW1lcmEEdmlzYQZ3YWxsZXQKd2F0Y2gtaGFuZAx3YXRjaC1wb2NrZXQKd2F0ZXItZHJvcAV3YXZlcwd3ZWJob29rBHdpbmQAAAAA), format("truetype");
|
|
@@ -12657,7 +12835,8 @@ var defaultTheme = {
|
|
|
12657
12835
|
var defaultSettings = {
|
|
12658
12836
|
theme: defaultTheme,
|
|
12659
12837
|
badge: {
|
|
12660
|
-
alignment: "start"
|
|
12838
|
+
alignment: "start",
|
|
12839
|
+
visibility: "visible"
|
|
12661
12840
|
}
|
|
12662
12841
|
};
|
|
12663
12842
|
function isEditorState(obj) {
|
|
@@ -12721,7 +12900,8 @@ var EmbedProvider = ({
|
|
|
12721
12900
|
accessToken,
|
|
12722
12901
|
apiConfig,
|
|
12723
12902
|
children,
|
|
12724
|
-
mode = "view"
|
|
12903
|
+
mode = "view",
|
|
12904
|
+
...options
|
|
12725
12905
|
}) => {
|
|
12726
12906
|
const styleRef = useRef2(null);
|
|
12727
12907
|
const sessionIdRef = useRef2(v4_default());
|
|
@@ -12754,6 +12934,14 @@ var EmbedProvider = ({
|
|
|
12754
12934
|
}
|
|
12755
12935
|
};
|
|
12756
12936
|
});
|
|
12937
|
+
const debug = useCallback3(
|
|
12938
|
+
(message, ...args) => {
|
|
12939
|
+
if (options.debug) {
|
|
12940
|
+
console.debug(`[Schematic] ${message}`, ...args);
|
|
12941
|
+
}
|
|
12942
|
+
},
|
|
12943
|
+
[options.debug]
|
|
12944
|
+
);
|
|
12757
12945
|
const hydrate = useCallback3(async () => {
|
|
12758
12946
|
setState((prev2) => ({ ...prev2, isPending: true, error: void 0 }));
|
|
12759
12947
|
try {
|
|
@@ -12823,7 +13011,7 @@ var EmbedProvider = ({
|
|
|
12823
13011
|
};
|
|
12824
13012
|
});
|
|
12825
13013
|
};
|
|
12826
|
-
|
|
13014
|
+
const initI18n = () => {
|
|
12827
13015
|
instance.use(initReactI18next).init({
|
|
12828
13016
|
resources: {
|
|
12829
13017
|
en: en_default
|
|
@@ -12834,8 +13022,8 @@ var EmbedProvider = ({
|
|
|
12834
13022
|
escapeValue: false
|
|
12835
13023
|
}
|
|
12836
13024
|
});
|
|
12837
|
-
}
|
|
12838
|
-
|
|
13025
|
+
};
|
|
13026
|
+
const initFontStylesheet = () => {
|
|
12839
13027
|
const element = document.getElementById("schematic-fonts");
|
|
12840
13028
|
if (element) {
|
|
12841
13029
|
styleRef.current = element;
|
|
@@ -12846,11 +13034,25 @@ var EmbedProvider = ({
|
|
|
12846
13034
|
style.rel = "stylesheet";
|
|
12847
13035
|
document.head.appendChild(style);
|
|
12848
13036
|
styleRef.current = style;
|
|
12849
|
-
}
|
|
13037
|
+
};
|
|
13038
|
+
useEffect2(() => {
|
|
13039
|
+
initI18n();
|
|
13040
|
+
initFontStylesheet();
|
|
13041
|
+
const planChanged = (event) => {
|
|
13042
|
+
if (!(event instanceof CustomEvent)) {
|
|
13043
|
+
return;
|
|
13044
|
+
}
|
|
13045
|
+
debug("plan changed", event.detail);
|
|
13046
|
+
};
|
|
13047
|
+
window.addEventListener("plan-changed", planChanged);
|
|
13048
|
+
return () => {
|
|
13049
|
+
window.removeEventListener("plan-changed", planChanged);
|
|
13050
|
+
};
|
|
13051
|
+
}, [debug]);
|
|
12850
13052
|
useEffect2(() => {
|
|
12851
13053
|
if (accessToken) {
|
|
12852
13054
|
const { headers = {} } = apiConfig ?? {};
|
|
12853
|
-
headers["X-Schematic-Components-Version"] = "0.
|
|
13055
|
+
headers["X-Schematic-Components-Version"] = "0.6.0";
|
|
12854
13056
|
headers["X-Schematic-Session-ID"] = sessionIdRef.current;
|
|
12855
13057
|
const config = new Configuration({
|
|
12856
13058
|
...apiConfig,
|
|
@@ -13102,6 +13304,17 @@ attr.rem = function propAsRem(key, value) {
|
|
|
13102
13304
|
`;
|
|
13103
13305
|
};
|
|
13104
13306
|
|
|
13307
|
+
// src/utils/api.ts
|
|
13308
|
+
var import_pluralize = __toESM(require_pluralize());
|
|
13309
|
+
var getFeatureName = (feature, count = 0) => {
|
|
13310
|
+
const shouldBePlural = count === 0 || count > 1;
|
|
13311
|
+
const { name, singularName, pluralName } = feature;
|
|
13312
|
+
if (pluralName && shouldBePlural) return pluralName;
|
|
13313
|
+
if (singularName)
|
|
13314
|
+
return shouldBePlural ? (0, import_pluralize.default)(singularName, count) : singularName;
|
|
13315
|
+
return (0, import_pluralize.default)(name, count);
|
|
13316
|
+
};
|
|
13317
|
+
|
|
13105
13318
|
// src/hooks/useIsLightBackground.ts
|
|
13106
13319
|
function useIsLightBackground() {
|
|
13107
13320
|
const theme = nt();
|
|
@@ -13169,7 +13382,10 @@ import { forwardRef as forwardRef3 } from "react";
|
|
|
13169
13382
|
// src/components/ui/box/styles.ts
|
|
13170
13383
|
var Box = dt.div((props) => {
|
|
13171
13384
|
function reducer(acc, [key, value]) {
|
|
13172
|
-
if (key.startsWith("$") &&
|
|
13385
|
+
if (key.startsWith("$") && ![
|
|
13386
|
+
"$viewport",
|
|
13387
|
+
...Object.values(TextPropNames).filter((prop) => prop !== "$color")
|
|
13388
|
+
].includes(key)) {
|
|
13173
13389
|
acc.push(
|
|
13174
13390
|
// keys will always be CSS properties
|
|
13175
13391
|
attr(camelToHyphen(key.slice(1)), value)
|
|
@@ -13864,7 +14080,7 @@ var Modal = forwardRef2(
|
|
|
13864
14080
|
contentRef?.current?.focus({ preventScroll: true });
|
|
13865
14081
|
}, [contentRef]);
|
|
13866
14082
|
return /* @__PURE__ */ jsx5(
|
|
13867
|
-
|
|
14083
|
+
Box,
|
|
13868
14084
|
{
|
|
13869
14085
|
ref,
|
|
13870
14086
|
tabIndex: 0,
|
|
@@ -13892,7 +14108,7 @@ var Modal = forwardRef2(
|
|
|
13892
14108
|
$scrollbarColor: `${isLightBackground ? "hsla(0, 0%, 0%, 0.15)" : "hsla(0, 0%, 100%, 0.15)"} transparent`,
|
|
13893
14109
|
$scrollbarWidth: "thin",
|
|
13894
14110
|
$scrollbarGutter: "stable both-edges",
|
|
13895
|
-
children: /* @__PURE__ */ jsx5(
|
|
14111
|
+
children: /* @__PURE__ */ jsx5(Container2, { children: /* @__PURE__ */ jsx5(
|
|
13896
14112
|
Flex,
|
|
13897
14113
|
{
|
|
13898
14114
|
ref: contentRef,
|
|
@@ -13924,7 +14140,7 @@ var Modal = forwardRef2(
|
|
|
13924
14140
|
},
|
|
13925
14141
|
children
|
|
13926
14142
|
}
|
|
13927
|
-
)
|
|
14143
|
+
) })
|
|
13928
14144
|
}
|
|
13929
14145
|
);
|
|
13930
14146
|
}
|
|
@@ -14013,6 +14229,7 @@ var ProgressBar = ({
|
|
|
14013
14229
|
barWidth = "100%",
|
|
14014
14230
|
...props
|
|
14015
14231
|
}) => {
|
|
14232
|
+
const theme = nt();
|
|
14016
14233
|
const barColorMap = {
|
|
14017
14234
|
gray: "#9CA3AF",
|
|
14018
14235
|
blue: "#2563EB",
|
|
@@ -14056,18 +14273,37 @@ var ProgressBar = ({
|
|
|
14056
14273
|
)
|
|
14057
14274
|
}
|
|
14058
14275
|
),
|
|
14059
|
-
total !== 0 && /* @__PURE__ */ jsxs4(
|
|
14060
|
-
|
|
14061
|
-
|
|
14062
|
-
|
|
14063
|
-
|
|
14276
|
+
total !== 0 && /* @__PURE__ */ jsxs4(
|
|
14277
|
+
Text,
|
|
14278
|
+
{
|
|
14279
|
+
$font: theme.typography.text.fontFamily,
|
|
14280
|
+
$size: 14,
|
|
14281
|
+
$weight: 500,
|
|
14282
|
+
$color: theme.typography.text.color,
|
|
14283
|
+
children: [
|
|
14284
|
+
value,
|
|
14285
|
+
"/",
|
|
14286
|
+
total
|
|
14287
|
+
]
|
|
14288
|
+
}
|
|
14289
|
+
)
|
|
14064
14290
|
]
|
|
14065
14291
|
}
|
|
14066
14292
|
);
|
|
14067
14293
|
};
|
|
14068
14294
|
|
|
14069
14295
|
// src/components/ui/text/styles.ts
|
|
14070
|
-
var
|
|
14296
|
+
var TextPropNames = /* @__PURE__ */ ((TextPropNames2) => {
|
|
14297
|
+
TextPropNames2["Align"] = "$align";
|
|
14298
|
+
TextPropNames2["Font"] = "$font";
|
|
14299
|
+
TextPropNames2["Size"] = "$size";
|
|
14300
|
+
TextPropNames2["Weight"] = "$weight";
|
|
14301
|
+
TextPropNames2["Color"] = "$color";
|
|
14302
|
+
TextPropNames2["Leading"] = "$leading";
|
|
14303
|
+
return TextPropNames2;
|
|
14304
|
+
})(TextPropNames || {});
|
|
14305
|
+
var Text = dt(Box).attrs(({ as = "span", onClick }) => ({
|
|
14306
|
+
as,
|
|
14071
14307
|
...onClick && { tabIndex: 0 }
|
|
14072
14308
|
}))`
|
|
14073
14309
|
${({ $font }) => $font && lt`
|
|
@@ -14098,7 +14334,8 @@ var Text = dt.span.attrs(({ onClick }) => ({
|
|
|
14098
14334
|
`;
|
|
14099
14335
|
|
|
14100
14336
|
// src/components/ui/tooltip/Tooltip.tsx
|
|
14101
|
-
|
|
14337
|
+
var import_debounce = __toESM(require_debounce());
|
|
14338
|
+
import { useCallback as useCallback6, useLayoutEffect as useLayoutEffect3, useRef as useRef4, useState as useState4 } from "react";
|
|
14102
14339
|
import { createPortal } from "react-dom";
|
|
14103
14340
|
|
|
14104
14341
|
// src/components/ui/tooltip/styles.ts
|
|
@@ -14239,7 +14476,7 @@ var Tooltip = ({
|
|
|
14239
14476
|
const ref = useRef4(null);
|
|
14240
14477
|
const [show, setShow] = useState4(false);
|
|
14241
14478
|
const [coords2, setCoords] = useState4({ x: 0, y: 0 });
|
|
14242
|
-
|
|
14479
|
+
const updateCoords = useCallback6(() => {
|
|
14243
14480
|
if (ref.current) {
|
|
14244
14481
|
const { top: offsetTop, left: offsetLeft } = document.body.getBoundingClientRect();
|
|
14245
14482
|
const rect = ref.current.getBoundingClientRect();
|
|
@@ -14256,7 +14493,15 @@ var Tooltip = ({
|
|
|
14256
14493
|
y: Math.round(y2 - offsetTop)
|
|
14257
14494
|
});
|
|
14258
14495
|
}
|
|
14259
|
-
}, [position2
|
|
14496
|
+
}, [position2]);
|
|
14497
|
+
useLayoutEffect3(() => {
|
|
14498
|
+
updateCoords();
|
|
14499
|
+
const handleResize = (0, import_debounce.default)(updateCoords, DEBOUNCE_TIMEOUT);
|
|
14500
|
+
window.addEventListener("resize", handleResize);
|
|
14501
|
+
return () => {
|
|
14502
|
+
window.removeEventListener("resize", handleResize);
|
|
14503
|
+
};
|
|
14504
|
+
}, [updateCoords]);
|
|
14260
14505
|
return /* @__PURE__ */ jsxs5(Fragment2, { children: [
|
|
14261
14506
|
/* @__PURE__ */ jsx8(
|
|
14262
14507
|
Trigger,
|
|
@@ -14277,6 +14522,16 @@ var Tooltip = ({
|
|
|
14277
14522
|
|
|
14278
14523
|
// src/components/layout/root/styles.ts
|
|
14279
14524
|
var Container2 = dt(Box)`
|
|
14525
|
+
all: initial;
|
|
14526
|
+
box-sizing: border-box;
|
|
14527
|
+
font-size: ${TEXT_BASE_SIZE}px;
|
|
14528
|
+
|
|
14529
|
+
*,
|
|
14530
|
+
*::before,
|
|
14531
|
+
*::after {
|
|
14532
|
+
box-sizing: inherit;
|
|
14533
|
+
}
|
|
14534
|
+
|
|
14280
14535
|
sub,
|
|
14281
14536
|
sup {
|
|
14282
14537
|
position: static;
|
|
@@ -14307,7 +14562,7 @@ import { createPortal as createPortal2 } from "react-dom";
|
|
|
14307
14562
|
|
|
14308
14563
|
// src/components/shared/checkout-dialog/CheckoutDialog.tsx
|
|
14309
14564
|
import {
|
|
14310
|
-
useCallback as
|
|
14565
|
+
useCallback as useCallback8,
|
|
14311
14566
|
useEffect as useEffect5,
|
|
14312
14567
|
useLayoutEffect as useLayoutEffect4,
|
|
14313
14568
|
useMemo as useMemo5,
|
|
@@ -14317,10 +14572,9 @@ import {
|
|
|
14317
14572
|
|
|
14318
14573
|
// src/components/shared/sidebar/Sidebar.tsx
|
|
14319
14574
|
import {
|
|
14320
|
-
useCallback as
|
|
14575
|
+
useCallback as useCallback7,
|
|
14321
14576
|
useMemo as useMemo4
|
|
14322
14577
|
} from "react";
|
|
14323
|
-
var import_pluralize = __toESM(require_pluralize());
|
|
14324
14578
|
|
|
14325
14579
|
// src/components/shared/sidebar/StageButton.tsx
|
|
14326
14580
|
import { jsx as jsx10, jsxs as jsxs6 } from "react/jsx-runtime";
|
|
@@ -14607,7 +14861,14 @@ var Sidebar = ({
|
|
|
14607
14861
|
proration: charges?.proration ?? 0
|
|
14608
14862
|
};
|
|
14609
14863
|
}, [charges]);
|
|
14610
|
-
const
|
|
14864
|
+
const dispatchPlanChangedEvent = (detail) => {
|
|
14865
|
+
const event = new CustomEvent("plan-changed", {
|
|
14866
|
+
bubbles: true,
|
|
14867
|
+
detail
|
|
14868
|
+
});
|
|
14869
|
+
window.dispatchEvent(event);
|
|
14870
|
+
};
|
|
14871
|
+
const checkout = useCallback7(async () => {
|
|
14611
14872
|
const priceId = (planPeriod === "month" ? selectedPlan?.monthlyPrice : selectedPlan?.yearlyPrice)?.id;
|
|
14612
14873
|
if (!api || !selectedPlan || !priceId) {
|
|
14613
14874
|
return;
|
|
@@ -14615,7 +14876,7 @@ var Sidebar = ({
|
|
|
14615
14876
|
try {
|
|
14616
14877
|
setError(void 0);
|
|
14617
14878
|
setIsLoading(true);
|
|
14618
|
-
await api.checkout({
|
|
14879
|
+
const response = await api.checkout({
|
|
14619
14880
|
changeSubscriptionRequestBody: {
|
|
14620
14881
|
newPlanId: selectedPlan.id,
|
|
14621
14882
|
newPriceId: priceId,
|
|
@@ -14648,6 +14909,7 @@ var Sidebar = ({
|
|
|
14648
14909
|
...promoCode && { promoCode }
|
|
14649
14910
|
}
|
|
14650
14911
|
});
|
|
14912
|
+
dispatchPlanChangedEvent(response.data);
|
|
14651
14913
|
setIsLoading(false);
|
|
14652
14914
|
setLayout("portal");
|
|
14653
14915
|
hydrate();
|
|
@@ -14673,14 +14935,15 @@ var Sidebar = ({
|
|
|
14673
14935
|
payInAdvanceEntitlements,
|
|
14674
14936
|
promoCode
|
|
14675
14937
|
]);
|
|
14676
|
-
const unsubscribe =
|
|
14938
|
+
const unsubscribe = useCallback7(async () => {
|
|
14677
14939
|
if (!api) {
|
|
14678
14940
|
return;
|
|
14679
14941
|
}
|
|
14680
14942
|
try {
|
|
14681
14943
|
setError(void 0);
|
|
14682
14944
|
setIsLoading(true);
|
|
14683
|
-
await api.checkoutUnsubscribe();
|
|
14945
|
+
const response = await api.checkoutUnsubscribe();
|
|
14946
|
+
dispatchPlanChangedEvent(response.data);
|
|
14684
14947
|
setLayout("portal");
|
|
14685
14948
|
hydrate();
|
|
14686
14949
|
} catch {
|
|
@@ -14941,7 +15204,7 @@ var Sidebar = ({
|
|
|
14941
15204
|
}
|
|
14942
15205
|
) }),
|
|
14943
15206
|
removedUsageBasedEntitlements.reduce(
|
|
14944
|
-
(acc, { allocation, quantity, usage }) => {
|
|
15207
|
+
(acc, { allocation, quantity, usage }, index) => {
|
|
14945
15208
|
if (typeof allocation === "number" && usage.feature?.name) {
|
|
14946
15209
|
const price = (planPeriod === "month" ? usage.monthlyUsageBasedPrice : usage.yearlyUsageBasedPrice)?.price;
|
|
14947
15210
|
acc.push(
|
|
@@ -14965,7 +15228,7 @@ var Sidebar = ({
|
|
|
14965
15228
|
children: usage.priceBehavior === "pay_in_advance" ? /* @__PURE__ */ jsxs7(Fragment3, { children: [
|
|
14966
15229
|
quantity,
|
|
14967
15230
|
" ",
|
|
14968
|
-
(
|
|
15231
|
+
getFeatureName(usage.feature, quantity)
|
|
14969
15232
|
] }) : usage.feature.name
|
|
14970
15233
|
}
|
|
14971
15234
|
) }),
|
|
@@ -14994,10 +15257,7 @@ var Sidebar = ({
|
|
|
14994
15257
|
),
|
|
14995
15258
|
/* @__PURE__ */ jsxs7("sub", { children: [
|
|
14996
15259
|
"/",
|
|
14997
|
-
(
|
|
14998
|
-
usage.feature.name.toLowerCase(),
|
|
14999
|
-
1
|
|
15000
|
-
)
|
|
15260
|
+
getFeatureName(usage.feature, 1)
|
|
15001
15261
|
] })
|
|
15002
15262
|
] })
|
|
15003
15263
|
]
|
|
@@ -15005,7 +15265,7 @@ var Sidebar = ({
|
|
|
15005
15265
|
) })
|
|
15006
15266
|
]
|
|
15007
15267
|
},
|
|
15008
|
-
|
|
15268
|
+
index
|
|
15009
15269
|
)
|
|
15010
15270
|
);
|
|
15011
15271
|
}
|
|
@@ -15014,7 +15274,7 @@ var Sidebar = ({
|
|
|
15014
15274
|
[]
|
|
15015
15275
|
),
|
|
15016
15276
|
changedUsageBasedEntitlements.reduce(
|
|
15017
|
-
(acc, { entitlement, previous, next: next2 }) => {
|
|
15277
|
+
(acc, { entitlement, previous, next: next2 }, index) => {
|
|
15018
15278
|
if (entitlement?.feature?.name) {
|
|
15019
15279
|
acc.push(
|
|
15020
15280
|
/* @__PURE__ */ jsxs7(Box, { children: [
|
|
@@ -15038,7 +15298,7 @@ var Sidebar = ({
|
|
|
15038
15298
|
children: [
|
|
15039
15299
|
previous.quantity,
|
|
15040
15300
|
" ",
|
|
15041
|
-
(
|
|
15301
|
+
getFeatureName(entitlement.feature)
|
|
15042
15302
|
]
|
|
15043
15303
|
}
|
|
15044
15304
|
) }),
|
|
@@ -15081,7 +15341,7 @@ var Sidebar = ({
|
|
|
15081
15341
|
children: [
|
|
15082
15342
|
next2.quantity,
|
|
15083
15343
|
" ",
|
|
15084
|
-
(
|
|
15344
|
+
getFeatureName(entitlement.feature)
|
|
15085
15345
|
]
|
|
15086
15346
|
}
|
|
15087
15347
|
) }),
|
|
@@ -15107,7 +15367,7 @@ var Sidebar = ({
|
|
|
15107
15367
|
]
|
|
15108
15368
|
}
|
|
15109
15369
|
)
|
|
15110
|
-
] },
|
|
15370
|
+
] }, index)
|
|
15111
15371
|
);
|
|
15112
15372
|
}
|
|
15113
15373
|
return acc;
|
|
@@ -15115,7 +15375,7 @@ var Sidebar = ({
|
|
|
15115
15375
|
[]
|
|
15116
15376
|
),
|
|
15117
15377
|
addedUsageBasedEntitlements.reduce(
|
|
15118
|
-
(acc, { entitlement, quantity }) => {
|
|
15378
|
+
(acc, { entitlement, quantity }, index) => {
|
|
15119
15379
|
if (entitlement.feature?.name) {
|
|
15120
15380
|
const price = (planPeriod === "month" ? entitlement.meteredMonthlyPrice : entitlement.meteredYearlyPrice)?.price;
|
|
15121
15381
|
acc.push(
|
|
@@ -15136,7 +15396,7 @@ var Sidebar = ({
|
|
|
15136
15396
|
children: entitlement.priceBehavior === "pay_in_advance" ? /* @__PURE__ */ jsxs7(Fragment3, { children: [
|
|
15137
15397
|
quantity,
|
|
15138
15398
|
" ",
|
|
15139
|
-
(
|
|
15399
|
+
getFeatureName(entitlement.feature, quantity)
|
|
15140
15400
|
] }) : entitlement.feature.name
|
|
15141
15401
|
}
|
|
15142
15402
|
) }),
|
|
@@ -15165,10 +15425,7 @@ var Sidebar = ({
|
|
|
15165
15425
|
),
|
|
15166
15426
|
/* @__PURE__ */ jsxs7("sub", { children: [
|
|
15167
15427
|
"/",
|
|
15168
|
-
(
|
|
15169
|
-
entitlement.feature.name.toLowerCase(),
|
|
15170
|
-
1
|
|
15171
|
-
)
|
|
15428
|
+
getFeatureName(entitlement.feature, 1)
|
|
15172
15429
|
] })
|
|
15173
15430
|
] })
|
|
15174
15431
|
]
|
|
@@ -15176,7 +15433,7 @@ var Sidebar = ({
|
|
|
15176
15433
|
) })
|
|
15177
15434
|
]
|
|
15178
15435
|
},
|
|
15179
|
-
|
|
15436
|
+
index
|
|
15180
15437
|
)
|
|
15181
15438
|
);
|
|
15182
15439
|
}
|
|
@@ -15246,7 +15503,7 @@ var Sidebar = ({
|
|
|
15246
15503
|
children: t2("Add-ons")
|
|
15247
15504
|
}
|
|
15248
15505
|
) }),
|
|
15249
|
-
removedAddOns.map((addOn) => /* @__PURE__ */ jsxs7(
|
|
15506
|
+
removedAddOns.map((addOn, index) => /* @__PURE__ */ jsxs7(
|
|
15250
15507
|
Flex,
|
|
15251
15508
|
{
|
|
15252
15509
|
$justifyContent: "space-between",
|
|
@@ -15287,9 +15544,9 @@ var Sidebar = ({
|
|
|
15287
15544
|
) })
|
|
15288
15545
|
]
|
|
15289
15546
|
},
|
|
15290
|
-
|
|
15547
|
+
index
|
|
15291
15548
|
)),
|
|
15292
|
-
selectedAddOns.map((addOn) => /* @__PURE__ */ jsxs7(
|
|
15549
|
+
selectedAddOns.map((addOn, index) => /* @__PURE__ */ jsxs7(
|
|
15293
15550
|
Flex,
|
|
15294
15551
|
{
|
|
15295
15552
|
$justifyContent: "space-between",
|
|
@@ -15315,7 +15572,8 @@ var Sidebar = ({
|
|
|
15315
15572
|
$color: theme.typography.text.color,
|
|
15316
15573
|
children: [
|
|
15317
15574
|
formatCurrency(
|
|
15318
|
-
(planPeriod === "month" ? addOn.monthlyPrice : addOn.yearlyPrice)?.price ?? 0
|
|
15575
|
+
(planPeriod === "month" ? addOn.monthlyPrice : addOn.yearlyPrice)?.price ?? 0,
|
|
15576
|
+
(planPeriod === "month" ? addOn.monthlyPrice : addOn.yearlyPrice)?.currency
|
|
15319
15577
|
),
|
|
15320
15578
|
/* @__PURE__ */ jsxs7("sub", { children: [
|
|
15321
15579
|
"/",
|
|
@@ -15326,7 +15584,7 @@ var Sidebar = ({
|
|
|
15326
15584
|
) })
|
|
15327
15585
|
]
|
|
15328
15586
|
},
|
|
15329
|
-
|
|
15587
|
+
index
|
|
15330
15588
|
))
|
|
15331
15589
|
] }),
|
|
15332
15590
|
proration !== 0 && /* @__PURE__ */ jsxs7(Fragment3, { children: [
|
|
@@ -15776,7 +16034,6 @@ var Navigation = ({
|
|
|
15776
16034
|
|
|
15777
16035
|
// src/components/shared/checkout-dialog/Plan.tsx
|
|
15778
16036
|
import { useState as useState5 } from "react";
|
|
15779
|
-
var import_pluralize2 = __toESM(require_pluralize());
|
|
15780
16037
|
|
|
15781
16038
|
// src/components/elements/pricing-table/styles.ts
|
|
15782
16039
|
var ButtonLink = dt.a`
|
|
@@ -15784,6 +16041,7 @@ var ButtonLink = dt.a`
|
|
|
15784
16041
|
justify-content: center;
|
|
15785
16042
|
align-items: center;
|
|
15786
16043
|
flex-grow: 1;
|
|
16044
|
+
height: 100%;
|
|
15787
16045
|
`;
|
|
15788
16046
|
|
|
15789
16047
|
// src/components/shared/checkout-dialog/Plan.tsx
|
|
@@ -15829,13 +16087,11 @@ var Plan = ({
|
|
|
15829
16087
|
$display: "grid",
|
|
15830
16088
|
$gridTemplateColumns: "repeat(auto-fill, minmax(300px, 1fr))",
|
|
15831
16089
|
$gap: "1rem",
|
|
15832
|
-
$flexGrow:
|
|
15833
|
-
children: plans.map((plan) => {
|
|
16090
|
+
$flexGrow: 1,
|
|
16091
|
+
children: plans.map((plan, planIndex) => {
|
|
15834
16092
|
const count = entitlementCounts[plan.id];
|
|
15835
|
-
|
|
15836
|
-
|
|
15837
|
-
isExpanded = true;
|
|
15838
|
-
}
|
|
16093
|
+
const isExpanded = count.limit > VISIBLE_ENTITLEMENT_COUNT;
|
|
16094
|
+
const { price: planPrice, currency: planCurrency } = (period === "month" ? plan.monthlyPrice : period === "year" && plan.yearlyPrice) || {};
|
|
15839
16095
|
return /* @__PURE__ */ jsxs9(
|
|
15840
16096
|
Flex,
|
|
15841
16097
|
{
|
|
@@ -15893,10 +16149,7 @@ var Plan = ({
|
|
|
15893
16149
|
$size: theme.typography.heading2.fontSize,
|
|
15894
16150
|
$weight: theme.typography.heading2.fontWeight,
|
|
15895
16151
|
$color: theme.typography.heading2.color,
|
|
15896
|
-
children: plan.custom ? plan.customPlanConfig?.priceText ? plan.customPlanConfig
|
|
15897
|
-
(period === "month" ? plan.monthlyPrice : plan.yearlyPrice)?.price ?? 0,
|
|
15898
|
-
(period === "month" ? plan.monthlyPrice : plan.yearlyPrice)?.currency
|
|
15899
|
-
)
|
|
16152
|
+
children: plan.custom ? plan.customPlanConfig?.priceText ? plan.customPlanConfig.priceText : t2("Custom Plan Price") : formatCurrency(planPrice ?? 0, planCurrency)
|
|
15900
16153
|
}
|
|
15901
16154
|
),
|
|
15902
16155
|
!plan.custom && /* @__PURE__ */ jsxs9(
|
|
@@ -15935,140 +16188,148 @@ var Plan = ({
|
|
|
15935
16188
|
{
|
|
15936
16189
|
$flexDirection: "column",
|
|
15937
16190
|
$justifyContent: "end",
|
|
15938
|
-
$flexGrow:
|
|
16191
|
+
$flexGrow: 1,
|
|
15939
16192
|
$gap: `${cardPadding}rem`,
|
|
15940
16193
|
$padding: `${0.75 * cardPadding}rem ${cardPadding}rem 0`,
|
|
15941
16194
|
children: [
|
|
15942
|
-
/* @__PURE__ */ jsxs9(Flex, { $flexDirection: "column", $gap: "1rem", $flexGrow:
|
|
15943
|
-
plan.entitlements.reduce(
|
|
15944
|
-
|
|
15945
|
-
|
|
15946
|
-
|
|
15947
|
-
|
|
15948
|
-
|
|
15949
|
-
|
|
15950
|
-
|
|
15951
|
-
|
|
15952
|
-
|
|
15953
|
-
|
|
15954
|
-
|
|
15955
|
-
|
|
15956
|
-
|
|
15957
|
-
|
|
15958
|
-
|
|
15959
|
-
|
|
15960
|
-
|
|
15961
|
-
|
|
15962
|
-
|
|
15963
|
-
|
|
15964
|
-
|
|
15965
|
-
|
|
15966
|
-
|
|
15967
|
-
|
|
15968
|
-
|
|
15969
|
-
|
|
15970
|
-
|
|
15971
|
-
|
|
15972
|
-
|
|
15973
|
-
|
|
15974
|
-
|
|
15975
|
-
|
|
15976
|
-
|
|
15977
|
-
|
|
15978
|
-
|
|
15979
|
-
|
|
15980
|
-
|
|
15981
|
-
|
|
15982
|
-
|
|
15983
|
-
|
|
15984
|
-
|
|
15985
|
-
|
|
15986
|
-
|
|
15987
|
-
|
|
15988
|
-
|
|
15989
|
-
|
|
15990
|
-
|
|
15991
|
-
|
|
15992
|
-
|
|
15993
|
-
|
|
15994
|
-
|
|
15995
|
-
|
|
15996
|
-
|
|
15997
|
-
|
|
15998
|
-
|
|
15999
|
-
|
|
16000
|
-
|
|
16001
|
-
|
|
16002
|
-
|
|
16003
|
-
|
|
16004
|
-
"
|
|
16005
|
-
|
|
16006
|
-
|
|
16007
|
-
|
|
16008
|
-
|
|
16009
|
-
|
|
16010
|
-
|
|
16011
|
-
|
|
16012
|
-
|
|
16013
|
-
|
|
16014
|
-
" ",
|
|
16015
|
-
|
|
16016
|
-
|
|
16017
|
-
|
|
16018
|
-
)
|
|
16019
|
-
|
|
16020
|
-
|
|
16021
|
-
|
|
16022
|
-
|
|
16023
|
-
|
|
16024
|
-
|
|
16025
|
-
|
|
16026
|
-
|
|
16027
|
-
|
|
16028
|
-
|
|
16029
|
-
|
|
16030
|
-
|
|
16031
|
-
|
|
16032
|
-
|
|
16033
|
-
|
|
16034
|
-
|
|
16035
|
-
|
|
16036
|
-
|
|
16037
|
-
|
|
16038
|
-
|
|
16039
|
-
|
|
16040
|
-
|
|
16041
|
-
|
|
16042
|
-
theme.typography.text.
|
|
16043
|
-
|
|
16044
|
-
|
|
16045
|
-
|
|
16046
|
-
|
|
16047
|
-
|
|
16048
|
-
|
|
16049
|
-
|
|
16050
|
-
entitlement.feature.name.toLowerCase(),
|
|
16051
|
-
1
|
|
16195
|
+
/* @__PURE__ */ jsxs9(Flex, { $flexDirection: "column", $gap: "1rem", $flexGrow: 1, children: [
|
|
16196
|
+
plan.entitlements.reduce(
|
|
16197
|
+
(acc, entitlement, entitlementIndex) => {
|
|
16198
|
+
const hasNumericValue = entitlement.valueType === "numeric" || entitlement.valueType === "unlimited" || entitlement.valueType === "trait";
|
|
16199
|
+
let metricPeriodText;
|
|
16200
|
+
if (hasNumericValue && entitlement.metricPeriod && entitlement.priceBehavior !== "overage") {
|
|
16201
|
+
metricPeriodText = {
|
|
16202
|
+
billing: t2("billing period"),
|
|
16203
|
+
current_day: t2("day"),
|
|
16204
|
+
current_month: t2("month"),
|
|
16205
|
+
current_year: t2("year")
|
|
16206
|
+
}[entitlement.metricPeriod];
|
|
16207
|
+
}
|
|
16208
|
+
const limit = entitlement.softLimit ?? entitlement.valueNumeric;
|
|
16209
|
+
const {
|
|
16210
|
+
price: entitlementPrice,
|
|
16211
|
+
currency: entitlementCurrency
|
|
16212
|
+
} = (period === "month" ? entitlement.meteredMonthlyPrice : period === "year" && entitlement.meteredYearlyPrice) || {};
|
|
16213
|
+
if (entitlement.priceBehavior && typeof entitlementPrice !== "number") {
|
|
16214
|
+
return acc;
|
|
16215
|
+
}
|
|
16216
|
+
acc.push(
|
|
16217
|
+
/* @__PURE__ */ jsx13(
|
|
16218
|
+
Flex,
|
|
16219
|
+
{
|
|
16220
|
+
$flexWrap: "wrap",
|
|
16221
|
+
$justifyContent: "space-between",
|
|
16222
|
+
$alignItems: "center",
|
|
16223
|
+
$gap: "1rem",
|
|
16224
|
+
children: /* @__PURE__ */ jsxs9(Flex, { $gap: "1rem", children: [
|
|
16225
|
+
entitlement.feature?.icon && /* @__PURE__ */ jsx13(
|
|
16226
|
+
IconRound,
|
|
16227
|
+
{
|
|
16228
|
+
name: entitlement.feature.icon,
|
|
16229
|
+
size: "sm",
|
|
16230
|
+
colors: [
|
|
16231
|
+
theme.primary,
|
|
16232
|
+
isLightBackground ? "hsla(0, 0%, 0%, 0.0625)" : "hsla(0, 0%, 100%, 0.25)"
|
|
16233
|
+
]
|
|
16234
|
+
}
|
|
16235
|
+
),
|
|
16236
|
+
entitlement.feature?.name && /* @__PURE__ */ jsxs9(
|
|
16237
|
+
Flex,
|
|
16238
|
+
{
|
|
16239
|
+
$flexDirection: "column",
|
|
16240
|
+
$justifyContent: "center",
|
|
16241
|
+
$gap: "0.5rem",
|
|
16242
|
+
children: [
|
|
16243
|
+
/* @__PURE__ */ jsx13(
|
|
16244
|
+
Text,
|
|
16245
|
+
{
|
|
16246
|
+
$font: theme.typography.text.fontFamily,
|
|
16247
|
+
$size: theme.typography.text.fontSize,
|
|
16248
|
+
$weight: theme.typography.text.fontWeight,
|
|
16249
|
+
$color: theme.typography.text.color,
|
|
16250
|
+
$leading: 1.35,
|
|
16251
|
+
children: typeof entitlementPrice === "number" && (entitlement.priceBehavior === "pay_in_advance" || entitlement.priceBehavior === "pay_as_you_go") ? /* @__PURE__ */ jsxs9(Fragment5, { children: [
|
|
16252
|
+
formatCurrency(
|
|
16253
|
+
entitlementPrice,
|
|
16254
|
+
entitlementCurrency
|
|
16255
|
+
),
|
|
16256
|
+
" ",
|
|
16257
|
+
t2("per"),
|
|
16258
|
+
" ",
|
|
16259
|
+
getFeatureName(entitlement.feature, 1),
|
|
16260
|
+
entitlement.priceBehavior === "pay_in_advance" && /* @__PURE__ */ jsxs9(Fragment5, { children: [
|
|
16261
|
+
" ",
|
|
16262
|
+
t2("per"),
|
|
16263
|
+
" ",
|
|
16264
|
+
period
|
|
16265
|
+
] })
|
|
16266
|
+
] }) : hasNumericValue ? /* @__PURE__ */ jsxs9(Fragment5, { children: [
|
|
16267
|
+
entitlement.valueType === "unlimited" && !entitlement.priceBehavior ? t2("Unlimited", {
|
|
16268
|
+
item: getFeatureName(
|
|
16269
|
+
entitlement.feature
|
|
16270
|
+
)
|
|
16271
|
+
}) : typeof limit === "number" && /* @__PURE__ */ jsxs9(Fragment5, { children: [
|
|
16272
|
+
formatNumber(limit),
|
|
16273
|
+
" ",
|
|
16274
|
+
getFeatureName(
|
|
16275
|
+
entitlement.feature,
|
|
16276
|
+
limit
|
|
16277
|
+
)
|
|
16278
|
+
] }),
|
|
16279
|
+
metricPeriodText ? /* @__PURE__ */ jsxs9(Fragment5, { children: [
|
|
16280
|
+
" ",
|
|
16281
|
+
t2("per"),
|
|
16282
|
+
" ",
|
|
16283
|
+
metricPeriodText
|
|
16284
|
+
] }) : entitlement.priceBehavior === "overage" && entitlement.feature.featureType === "event" && /* @__PURE__ */ jsxs9(Fragment5, { children: [
|
|
16285
|
+
"/",
|
|
16286
|
+
shortenPeriod(period)
|
|
16287
|
+
] })
|
|
16288
|
+
] }) : entitlement.feature.name
|
|
16289
|
+
}
|
|
16290
|
+
),
|
|
16291
|
+
entitlement.priceBehavior === "overage" && typeof entitlementPrice === "number" && /* @__PURE__ */ jsxs9(
|
|
16292
|
+
Text,
|
|
16293
|
+
{
|
|
16294
|
+
$font: theme.typography.text.fontFamily,
|
|
16295
|
+
$size: 0.875 * theme.typography.text.fontSize,
|
|
16296
|
+
$weight: theme.typography.text.fontWeight,
|
|
16297
|
+
$color: hexToHSL(theme.typography.text.color).l > 50 ? darken(
|
|
16298
|
+
theme.typography.text.color,
|
|
16299
|
+
0.46
|
|
16300
|
+
) : lighten(
|
|
16301
|
+
theme.typography.text.color,
|
|
16302
|
+
0.46
|
|
16052
16303
|
),
|
|
16053
|
-
|
|
16304
|
+
$leading: 1.35,
|
|
16305
|
+
children: [
|
|
16306
|
+
formatCurrency(
|
|
16307
|
+
entitlementPrice,
|
|
16308
|
+
entitlementCurrency
|
|
16309
|
+
),
|
|
16054
16310
|
"/",
|
|
16055
|
-
|
|
16056
|
-
|
|
16057
|
-
|
|
16058
|
-
|
|
16059
|
-
|
|
16060
|
-
|
|
16061
|
-
|
|
16062
|
-
|
|
16063
|
-
|
|
16064
|
-
|
|
16065
|
-
|
|
16066
|
-
|
|
16067
|
-
|
|
16068
|
-
|
|
16069
|
-
|
|
16070
|
-
|
|
16071
|
-
|
|
16311
|
+
getFeatureName(entitlement.feature, 1),
|
|
16312
|
+
entitlement.feature.featureType === "trait" && /* @__PURE__ */ jsxs9(Fragment5, { children: [
|
|
16313
|
+
"/",
|
|
16314
|
+
shortenPeriod(period)
|
|
16315
|
+
] }),
|
|
16316
|
+
" ",
|
|
16317
|
+
t2("overage fee")
|
|
16318
|
+
]
|
|
16319
|
+
}
|
|
16320
|
+
)
|
|
16321
|
+
]
|
|
16322
|
+
}
|
|
16323
|
+
)
|
|
16324
|
+
] })
|
|
16325
|
+
},
|
|
16326
|
+
entitlementIndex
|
|
16327
|
+
)
|
|
16328
|
+
);
|
|
16329
|
+
return acc;
|
|
16330
|
+
},
|
|
16331
|
+
[]
|
|
16332
|
+
).slice(0, count?.limit ?? VISIBLE_ENTITLEMENT_COUNT),
|
|
16072
16333
|
(count?.size || plan.entitlements.length) > VISIBLE_ENTITLEMENT_COUNT && /* @__PURE__ */ jsxs9(
|
|
16073
16334
|
Flex,
|
|
16074
16335
|
{
|
|
@@ -16095,8 +16356,8 @@ var Plan = ({
|
|
|
16095
16356
|
$font: theme.typography.link.fontFamily,
|
|
16096
16357
|
$size: theme.typography.link.fontSize,
|
|
16097
16358
|
$weight: theme.typography.link.fontWeight,
|
|
16098
|
-
$leading: 1,
|
|
16099
16359
|
$color: theme.typography.link.color,
|
|
16360
|
+
$leading: 1,
|
|
16100
16361
|
style: { cursor: "pointer" },
|
|
16101
16362
|
children: isExpanded ? t2("Hide all") : t2("See all")
|
|
16102
16363
|
}
|
|
@@ -16127,9 +16388,11 @@ var Plan = ({
|
|
|
16127
16388
|
/* @__PURE__ */ jsx13(
|
|
16128
16389
|
Text,
|
|
16129
16390
|
{
|
|
16130
|
-
$
|
|
16131
|
-
$
|
|
16391
|
+
$font: theme.typography.text.fontFamily,
|
|
16392
|
+
$size: 15 / 16 * theme.typography.text.fontSize,
|
|
16393
|
+
$weight: theme.typography.text.fontWeight,
|
|
16132
16394
|
$color: theme.typography.text.color,
|
|
16395
|
+
$leading: 1,
|
|
16133
16396
|
children: plan.current ? t2("Current plan") : t2("Selected")
|
|
16134
16397
|
}
|
|
16135
16398
|
)
|
|
@@ -16174,7 +16437,7 @@ var Plan = ({
|
|
|
16174
16437
|
)
|
|
16175
16438
|
]
|
|
16176
16439
|
},
|
|
16177
|
-
|
|
16440
|
+
planIndex
|
|
16178
16441
|
);
|
|
16179
16442
|
})
|
|
16180
16443
|
}
|
|
@@ -16194,7 +16457,7 @@ var AddOns = ({ addOns, toggle, isLoading, period }) => {
|
|
|
16194
16457
|
$display: "grid",
|
|
16195
16458
|
$gridTemplateColumns: "repeat(auto-fill, minmax(300px, 1fr))",
|
|
16196
16459
|
$gap: "1rem",
|
|
16197
|
-
children: addOns.map((addOn) => {
|
|
16460
|
+
children: addOns.map((addOn, index) => {
|
|
16198
16461
|
return /* @__PURE__ */ jsxs10(
|
|
16199
16462
|
Flex,
|
|
16200
16463
|
{
|
|
@@ -16310,7 +16573,7 @@ var AddOns = ({ addOns, toggle, isLoading, period }) => {
|
|
|
16310
16573
|
) })
|
|
16311
16574
|
]
|
|
16312
16575
|
},
|
|
16313
|
-
|
|
16576
|
+
index
|
|
16314
16577
|
);
|
|
16315
16578
|
})
|
|
16316
16579
|
}
|
|
@@ -16318,7 +16581,6 @@ var AddOns = ({ addOns, toggle, isLoading, period }) => {
|
|
|
16318
16581
|
};
|
|
16319
16582
|
|
|
16320
16583
|
// src/components/shared/checkout-dialog/Usage.tsx
|
|
16321
|
-
var import_pluralize3 = __toESM(require_pluralize());
|
|
16322
16584
|
import { Fragment as Fragment7, jsx as jsx15, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
16323
16585
|
var Usage = ({ entitlements, updateQuantity, period }) => {
|
|
16324
16586
|
const theme = nt();
|
|
@@ -16327,7 +16589,7 @@ var Usage = ({ entitlements, updateQuantity, period }) => {
|
|
|
16327
16589
|
const unitPriceFontSize = 0.875 * theme.typography.text.fontSize;
|
|
16328
16590
|
const unitPriceColor = hexToHSL(theme.typography.text.color).l > 50 ? darken(theme.typography.text.color, 0.46) : lighten(theme.typography.text.color, 0.46);
|
|
16329
16591
|
return /* @__PURE__ */ jsx15(Fragment7, { children: /* @__PURE__ */ jsx15(Flex, { $flexDirection: "column", $gap: "1rem", children: entitlements.reduce(
|
|
16330
|
-
(acc, { entitlement, quantity, usage }) => {
|
|
16592
|
+
(acc, { entitlement, quantity, usage }, index) => {
|
|
16331
16593
|
if (entitlement.priceBehavior === "pay_in_advance" && entitlement.feature) {
|
|
16332
16594
|
acc.push(
|
|
16333
16595
|
/* @__PURE__ */ jsxs11(
|
|
@@ -16410,9 +16672,7 @@ var Usage = ({ entitlements, updateQuantity, period }) => {
|
|
|
16410
16672
|
] }),
|
|
16411
16673
|
t2("Currently using", {
|
|
16412
16674
|
quantity: usage,
|
|
16413
|
-
unit: (
|
|
16414
|
-
entitlement.feature.name.toLowerCase()
|
|
16415
|
-
)
|
|
16675
|
+
unit: getFeatureName(entitlement.feature)
|
|
16416
16676
|
})
|
|
16417
16677
|
]
|
|
16418
16678
|
}
|
|
@@ -16459,7 +16719,7 @@ var Usage = ({ entitlements, updateQuantity, period }) => {
|
|
|
16459
16719
|
),
|
|
16460
16720
|
/* @__PURE__ */ jsxs11("sub", { children: [
|
|
16461
16721
|
"/",
|
|
16462
|
-
(
|
|
16722
|
+
getFeatureName(entitlement.feature, 1),
|
|
16463
16723
|
"/",
|
|
16464
16724
|
shortenPeriod(period)
|
|
16465
16725
|
] })
|
|
@@ -16471,7 +16731,7 @@ var Usage = ({ entitlements, updateQuantity, period }) => {
|
|
|
16471
16731
|
)
|
|
16472
16732
|
]
|
|
16473
16733
|
},
|
|
16474
|
-
|
|
16734
|
+
index
|
|
16475
16735
|
)
|
|
16476
16736
|
);
|
|
16477
16737
|
}
|
|
@@ -16525,7 +16785,7 @@ var registerWrapper = function registerWrapper2(stripe, startTime) {
|
|
|
16525
16785
|
}
|
|
16526
16786
|
stripe._registerWrapper({
|
|
16527
16787
|
name: "stripe-js",
|
|
16528
|
-
version: "6.
|
|
16788
|
+
version: "6.1.0",
|
|
16529
16789
|
startTime
|
|
16530
16790
|
});
|
|
16531
16791
|
};
|
|
@@ -16600,7 +16860,7 @@ var initStripe = function initStripe2(maybeStripe, args, startTime) {
|
|
|
16600
16860
|
var version = runtimeVersionToUrlVersion(maybeStripe.version);
|
|
16601
16861
|
var expectedVersion = RELEASE_TRAIN;
|
|
16602
16862
|
if (isTestKey && version !== expectedVersion) {
|
|
16603
|
-
console.warn("Stripe.js@".concat(version, " was loaded on the page, but @stripe/stripe-js@").concat("6.
|
|
16863
|
+
console.warn("Stripe.js@".concat(version, " was loaded on the page, but @stripe/stripe-js@").concat("6.1.0", " expected Stripe.js@").concat(expectedVersion, ". This may result in unexpected behavior. For more information, see https://docs.stripe.com/sdks/stripejs-versioning"));
|
|
16604
16864
|
}
|
|
16605
16865
|
var stripe = maybeStripe.apply(void 0, args);
|
|
16606
16866
|
registerWrapper(stripe, startTime);
|
|
@@ -16710,7 +16970,16 @@ var Checkout = ({
|
|
|
16710
16970
|
clientSecret: setupIntent.setupIntentClientSecret
|
|
16711
16971
|
},
|
|
16712
16972
|
children: [
|
|
16713
|
-
/* @__PURE__ */ jsx16(Box, { $width: "100%", $marginBottom: "1.5rem", children: /* @__PURE__ */ jsx16(
|
|
16973
|
+
/* @__PURE__ */ jsx16(Box, { $width: "100%", $marginBottom: "1.5rem", children: /* @__PURE__ */ jsx16(
|
|
16974
|
+
Text,
|
|
16975
|
+
{
|
|
16976
|
+
$font: theme.typography.text.fontFamily,
|
|
16977
|
+
$size: 18,
|
|
16978
|
+
$weight: theme.typography.text.fontWeight,
|
|
16979
|
+
$color: theme.typography.text.color,
|
|
16980
|
+
children: t2("Add payment method")
|
|
16981
|
+
}
|
|
16982
|
+
) }),
|
|
16714
16983
|
/* @__PURE__ */ jsx16(
|
|
16715
16984
|
PaymentForm,
|
|
16716
16985
|
{
|
|
@@ -16795,8 +17064,8 @@ var Checkout = ({
|
|
|
16795
17064
|
$font: theme.typography.link.fontFamily,
|
|
16796
17065
|
$size: theme.typography.link.fontSize,
|
|
16797
17066
|
$weight: theme.typography.link.fontWeight,
|
|
16798
|
-
$leading: 1,
|
|
16799
17067
|
$color: theme.typography.link.color,
|
|
17068
|
+
$leading: 1,
|
|
16800
17069
|
children: t2("Apply discount")
|
|
16801
17070
|
}
|
|
16802
17071
|
) })
|
|
@@ -16845,7 +17114,7 @@ var CheckoutDialog = ({ top = 0 }) => {
|
|
|
16845
17114
|
)
|
|
16846
17115
|
}))
|
|
16847
17116
|
);
|
|
16848
|
-
const createActiveUsageBasedEntitlementsReducer =
|
|
17117
|
+
const createActiveUsageBasedEntitlementsReducer = useCallback8(
|
|
16849
17118
|
(period = planPeriod) => (acc, entitlement) => {
|
|
16850
17119
|
if (entitlement.priceBehavior && (period === "month" && entitlement.meteredMonthlyPrice || period === "year" && entitlement.meteredYearlyPrice)) {
|
|
16851
17120
|
const featureUsage = data.featureUsage?.features.find(
|
|
@@ -16932,7 +17201,7 @@ var CheckoutDialog = ({ top = 0 }) => {
|
|
|
16932
17201
|
return "plan";
|
|
16933
17202
|
});
|
|
16934
17203
|
const isLightBackground = useIsLightBackground();
|
|
16935
|
-
const previewCheckout =
|
|
17204
|
+
const previewCheckout = useCallback8(
|
|
16936
17205
|
async (updates) => {
|
|
16937
17206
|
const period = updates.period || planPeriod;
|
|
16938
17207
|
const plan = updates.plan || selectedPlan;
|
|
@@ -17006,7 +17275,7 @@ var CheckoutDialog = ({ top = 0 }) => {
|
|
|
17006
17275
|
promoCode
|
|
17007
17276
|
]
|
|
17008
17277
|
);
|
|
17009
|
-
const selectPlan =
|
|
17278
|
+
const selectPlan = useCallback8(
|
|
17010
17279
|
(updates) => {
|
|
17011
17280
|
const plan = updates.plan || selectedPlan;
|
|
17012
17281
|
if (!plan) {
|
|
@@ -17036,7 +17305,7 @@ var CheckoutDialog = ({ top = 0 }) => {
|
|
|
17036
17305
|
previewCheckout
|
|
17037
17306
|
]
|
|
17038
17307
|
);
|
|
17039
|
-
const changePlanPeriod =
|
|
17308
|
+
const changePlanPeriod = useCallback8(
|
|
17040
17309
|
(period) => {
|
|
17041
17310
|
setPlanPeriod(period);
|
|
17042
17311
|
previewCheckout({ period });
|
|
@@ -17053,7 +17322,7 @@ var CheckoutDialog = ({ top = 0 }) => {
|
|
|
17053
17322
|
return updated;
|
|
17054
17323
|
});
|
|
17055
17324
|
};
|
|
17056
|
-
const updateUsageBasedEntitlementQuantity =
|
|
17325
|
+
const updateUsageBasedEntitlementQuantity = useCallback8(
|
|
17057
17326
|
(id, updatedQuantity) => {
|
|
17058
17327
|
setUsageBasedEntitlements((prev2) => {
|
|
17059
17328
|
const updated = prev2.map(
|
|
@@ -17309,6 +17578,7 @@ import {
|
|
|
17309
17578
|
import { jsx as jsx18, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
17310
17579
|
var PaymentForm = ({ onConfirm }) => {
|
|
17311
17580
|
const { t: t2 } = useTranslation();
|
|
17581
|
+
const theme = nt();
|
|
17312
17582
|
const stripe = useStripe();
|
|
17313
17583
|
const elements = useElements();
|
|
17314
17584
|
const { api } = useEmbed();
|
|
@@ -17370,7 +17640,17 @@ var PaymentForm = ({ onConfirm }) => {
|
|
|
17370
17640
|
children: isLoading ? t2("Loading") : t2("Save payment method")
|
|
17371
17641
|
}
|
|
17372
17642
|
),
|
|
17373
|
-
message && /* @__PURE__ */ jsx18(Box, { $margin: "1rem 0", children: /* @__PURE__ */ jsx18(
|
|
17643
|
+
message && /* @__PURE__ */ jsx18(Box, { $margin: "1rem 0", children: /* @__PURE__ */ jsx18(
|
|
17644
|
+
Text,
|
|
17645
|
+
{
|
|
17646
|
+
id: "payment-message",
|
|
17647
|
+
$font: theme.typography.text.fontFamily,
|
|
17648
|
+
$size: 15,
|
|
17649
|
+
$weight: 500,
|
|
17650
|
+
$color: "#DB6669",
|
|
17651
|
+
children: message
|
|
17652
|
+
}
|
|
17653
|
+
) })
|
|
17374
17654
|
]
|
|
17375
17655
|
}
|
|
17376
17656
|
);
|
|
@@ -17488,7 +17768,7 @@ var PeriodToggle = ({
|
|
|
17488
17768
|
};
|
|
17489
17769
|
|
|
17490
17770
|
// src/components/shared/unsubscribe-dialog/UnsubscribeDialog.tsx
|
|
17491
|
-
import { useCallback as
|
|
17771
|
+
import { useCallback as useCallback9, useMemo as useMemo7, useRef as useRef6, useState as useState10 } from "react";
|
|
17492
17772
|
import { jsx as jsx20, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
17493
17773
|
var UnsubscribeDialog = ({ top = 0 }) => {
|
|
17494
17774
|
const { t: t2 } = useTranslation();
|
|
@@ -17538,7 +17818,7 @@ var UnsubscribeDialog = ({ top = 0 }) => {
|
|
|
17538
17818
|
data.subscription?.cancelAt || data.upcomingInvoice?.dueDate || Date.now()
|
|
17539
17819
|
);
|
|
17540
17820
|
const isLightBackground = useIsLightBackground();
|
|
17541
|
-
const handleClose =
|
|
17821
|
+
const handleClose = useCallback9(() => {
|
|
17542
17822
|
setLayout("portal");
|
|
17543
17823
|
}, [setLayout]);
|
|
17544
17824
|
return /* @__PURE__ */ jsxs15(
|
|
@@ -17686,103 +17966,112 @@ var UnsubscribeDialog = ({ top = 0 }) => {
|
|
|
17686
17966
|
import { jsx as jsx21, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
17687
17967
|
var Badge = () => {
|
|
17688
17968
|
const { t: t2 } = useTranslation();
|
|
17969
|
+
const theme = nt();
|
|
17689
17970
|
const { settings } = useEmbed();
|
|
17690
17971
|
return /* @__PURE__ */ jsxs16(
|
|
17691
17972
|
Flex,
|
|
17692
17973
|
{
|
|
17974
|
+
as: "a",
|
|
17975
|
+
href: "https://schematichq.com?utm_source=schematic_component_badge",
|
|
17976
|
+
target: "_blank",
|
|
17977
|
+
rel: "noreferrer",
|
|
17693
17978
|
$justifyContent: settings.badge?.alignment || "start",
|
|
17694
17979
|
$alignItems: "center",
|
|
17980
|
+
$gap: "0.5rem",
|
|
17695
17981
|
$gridColumn: "1 / -1",
|
|
17696
17982
|
children: [
|
|
17697
|
-
/* @__PURE__ */ jsx21(Box, { $fontSize: "0.75rem", $marginRight: "0.5rem", children: t2("Powered by") }),
|
|
17698
17983
|
/* @__PURE__ */ jsxs16(
|
|
17699
|
-
|
|
17984
|
+
Text,
|
|
17700
17985
|
{
|
|
17701
|
-
|
|
17702
|
-
|
|
17703
|
-
|
|
17704
|
-
|
|
17986
|
+
$font: theme.typography.text.fontFamily,
|
|
17987
|
+
$size: 0.75 * theme.typography.text.fontSize,
|
|
17988
|
+
$weight: theme.typography.text.fontWeight,
|
|
17989
|
+
$color: theme.typography.text.color,
|
|
17705
17990
|
children: [
|
|
17706
|
-
|
|
17707
|
-
|
|
17708
|
-
{
|
|
17709
|
-
d: "M21.2354 6.16227C21.1796 5.95015 21.0494 5.76779 20.8261 5.61893C20.6028 5.46635 20.3423 5.39564 20.0408 5.39564C19.3151 5.39564 18.7941 5.69708 18.7941 6.2367C18.7941 6.49721 18.9095 6.69073 19.1402 6.81726C19.3635 6.94379 19.732 7.07033 20.2344 7.18569C21.0084 7.37177 21.4922 7.51691 21.9686 7.7402C22.203 7.85557 22.3928 7.97465 22.5305 8.10863C22.7948 8.3803 22.9548 8.74501 22.9362 9.20276C22.9176 9.86147 22.6571 10.375 22.1547 10.7397C21.6523 11.1082 20.9563 11.2905 20.0818 11.2905C19.2072 11.2905 18.5597 11.1268 18.0312 10.8067C17.5065 10.4867 17.2013 10.0215 17.1194 9.41116L18.6192 9.27719C18.6974 9.57491 18.8723 9.7982 19.1514 9.94706C19.4305 10.0959 19.7394 10.1778 20.0818 10.1778C20.4614 10.1778 20.7777 10.0996 21.0308 9.9359C21.2838 9.77959 21.4104 9.56002 21.4104 9.28835C21.4104 8.90876 21.0531 8.61104 20.5991 8.43613C20.3683 8.35053 20.0855 8.27238 19.7468 8.19423C19.2705 8.07886 18.8946 7.97094 18.6155 7.87418C18.3364 7.78486 18.0908 7.66205 17.8712 7.51319C17.4358 7.21547 17.2832 6.8247 17.2832 6.2367C17.2832 5.61521 17.5325 5.13141 18.0312 4.79648C18.5262 4.46526 19.2035 4.29407 20.0669 4.29407C21.5853 4.29407 22.5752 4.9044 22.7389 6.05807L21.228 6.16227H21.2354Z",
|
|
17710
|
-
fill: "currentColor"
|
|
17711
|
-
}
|
|
17712
|
-
),
|
|
17713
|
-
/* @__PURE__ */ jsx21(
|
|
17714
|
-
"path",
|
|
17715
|
-
{
|
|
17716
|
-
d: "M29.4145 8.9796L30.7803 9.55271C30.49 10.0923 30.0621 10.5129 29.5001 10.8217C28.9382 11.1344 28.3167 11.2944 27.6319 11.2944C26.9472 11.2944 26.3629 11.1567 25.8121 10.8701C25.2613 10.5873 24.8147 10.1742 24.4835 9.6383C24.1523 9.09868 23.9811 8.48835 23.9811 7.79987C23.9811 7.11138 24.1486 6.49361 24.4835 5.95771C24.8147 5.41809 25.2613 5.00873 25.8121 4.72589C26.3629 4.44305 26.9732 4.30164 27.6319 4.30164C28.2906 4.30164 28.9382 4.45794 29.5038 4.77427C30.0658 5.08688 30.4938 5.51113 30.7803 6.05075L29.4145 6.62015C29.0535 5.93539 28.3985 5.56323 27.6319 5.56323C27.0327 5.56323 26.5303 5.77536 26.1135 6.19961C25.6967 6.62387 25.492 7.15977 25.492 7.80731C25.492 8.45486 25.6967 8.99076 26.1135 9.40757C26.5303 9.83182 27.0327 10.0439 27.6319 10.0439C28.3985 10.0439 29.0535 9.66807 29.4145 8.98703V8.9796Z",
|
|
17717
|
-
fill: "currentColor"
|
|
17718
|
-
}
|
|
17719
|
-
),
|
|
17720
|
-
/* @__PURE__ */ jsx21(
|
|
17721
|
-
"path",
|
|
17722
|
-
{
|
|
17723
|
-
d: "M37.4386 11.2049V7.80341C37.4386 6.35945 36.9139 5.59282 35.697 5.59282C35.0978 5.59282 34.614 5.7975 34.2419 6.21059C33.8623 6.61996 33.6725 7.15214 33.6725 7.80713V11.2086H32.1615V1.9234H33.6725V5.47745C34.1004 4.73315 35.001 4.29773 36.1919 4.29773C37.167 4.29773 37.8666 4.59917 38.302 5.19834C38.7375 5.7975 38.9533 6.66834 38.9533 7.80341V11.2049H37.4349H37.4386Z",
|
|
17724
|
-
fill: "currentColor"
|
|
17725
|
-
}
|
|
17726
|
-
),
|
|
17727
|
-
/* @__PURE__ */ jsx21(
|
|
17728
|
-
"path",
|
|
17729
|
-
{
|
|
17730
|
-
d: "M46.5692 5.38819C47.2167 6.07295 47.5777 7.1187 47.5107 8.30587H41.8242C41.9284 8.83805 42.1741 9.26602 42.5611 9.59352C42.9481 9.92473 43.4022 10.0885 43.9157 10.0885C44.8052 10.0885 45.5234 9.59724 45.8844 8.78222L47.1795 9.40372C46.8818 9.99172 46.4352 10.4495 45.8509 10.7881C45.2629 11.1268 44.6191 11.2943 43.9157 11.2943C42.9295 11.2943 42.0178 10.9444 41.3516 10.3453C40.6855 9.7461 40.2649 8.83432 40.2649 7.79602C40.2649 6.75771 40.6892 5.84222 41.3516 5.23933C42.0178 4.64017 42.9295 4.29034 43.9157 4.29034C44.9801 4.29034 45.9216 4.69971 46.5692 5.38447V5.38819ZM42.5388 6.00224C42.1592 6.32974 41.921 6.75772 41.8205 7.29734H46.0221C45.9179 6.75772 45.6835 6.3223 45.3039 5.99852C44.9243 5.67847 44.4628 5.51473 43.9195 5.51473C43.3761 5.51473 42.9221 5.67847 42.5425 6.00597L42.5388 6.00224Z",
|
|
17731
|
-
fill: "currentColor"
|
|
17732
|
-
}
|
|
17733
|
-
),
|
|
17734
|
-
/* @__PURE__ */ jsx21(
|
|
17735
|
-
"path",
|
|
17736
|
-
{
|
|
17737
|
-
d: "M59.7699 5.23933C60.1495 5.86827 60.3132 6.68329 60.3132 7.80347V11.2049H58.8023V7.80347C58.8023 6.35952 58.3371 5.59288 57.2318 5.59288C56.6438 5.59288 56.1861 5.79384 55.8586 6.19577C55.5311 6.60141 55.3673 7.13731 55.3673 7.80347V11.2049H53.8489V7.80347C53.8489 6.35952 53.3838 5.59288 52.2785 5.59288C51.6905 5.59288 51.2327 5.79384 50.9052 6.19577C50.574 6.60141 50.4102 7.13731 50.4102 7.80347V11.2049H48.8993V4.39827H50.3433L50.4102 5.47379C50.8196 4.65878 51.5825 4.29407 52.8106 4.29407C53.9606 4.29407 54.7161 4.78531 55.077 5.76407C55.5199 4.81508 56.4428 4.29407 57.7677 4.29407C58.7093 4.29407 59.3829 4.61412 59.7699 5.23562V5.23933Z",
|
|
17738
|
-
fill: "currentColor"
|
|
17739
|
-
}
|
|
17740
|
-
),
|
|
17741
|
-
/* @__PURE__ */ jsx21(
|
|
17742
|
-
"path",
|
|
17743
|
-
{
|
|
17744
|
-
d: "M67.4264 5.47382L67.4934 4.3983H68.9373V11.205H67.4934L67.4264 10.1294C67.0282 10.9147 66.1797 11.3092 64.8809 11.3017C63.102 11.3427 61.591 9.79823 61.6283 7.8035C61.591 5.8162 63.102 4.2606 64.8809 4.29782C66.0643 4.29782 67.0096 4.7444 67.4264 5.47754V5.47382ZM66.8049 9.37398C67.2217 8.95717 67.4264 8.43243 67.4264 7.79605C67.4264 7.15967 67.2217 6.64238 66.8049 6.21813C66.3881 5.80132 65.8782 5.58919 65.2828 5.58919C64.6874 5.58919 64.1887 5.80132 63.7719 6.21813C63.355 6.64238 63.1504 7.16711 63.1504 7.79605C63.1504 8.42499 63.355 8.95717 63.7719 9.37398C64.1887 9.79823 64.6911 10.0104 65.2828 10.0104C65.8745 10.0104 66.3881 9.79823 66.8049 9.37398Z",
|
|
17745
|
-
fill: "currentColor"
|
|
17746
|
-
}
|
|
17747
|
-
),
|
|
17748
|
-
/* @__PURE__ */ jsx21(
|
|
17749
|
-
"path",
|
|
17750
|
-
{
|
|
17751
|
-
d: "M71.3891 2.85757H72.8926V4.39828H74.6455V5.58172H72.8926V8.9683C72.8926 9.5898 73.1048 9.90985 73.5923 9.96568C73.89 10.0252 74.2398 10.0141 74.6455 9.9359V11.1863C74.1989 11.257 73.7858 11.2943 73.4062 11.2943C72.6731 11.2943 72.1595 11.1082 71.8543 10.7323C71.5454 10.3639 71.3891 9.79076 71.3891 9.02041V5.58172H70.4215V4.39828H71.3891V2.85757Z",
|
|
17752
|
-
fill: "currentColor"
|
|
17753
|
-
}
|
|
17754
|
-
),
|
|
17755
|
-
/* @__PURE__ */ jsx21(
|
|
17756
|
-
"path",
|
|
17757
|
-
{
|
|
17758
|
-
d: "M76.1747 3.15526C75.9923 2.98035 75.903 2.76078 75.903 2.50772C75.903 2.25466 75.9923 2.04997 76.1747 1.86762C76.3496 1.69271 76.5691 1.60339 76.8222 1.60339C77.0753 1.60339 77.2874 1.69271 77.4623 1.86762C77.6372 2.04997 77.7265 2.2621 77.7265 2.50772C77.7265 2.75334 77.6372 2.97291 77.4623 3.15526C77.2874 3.33762 77.0678 3.42694 76.8222 3.42694C76.5766 3.42694 76.3496 3.33762 76.1747 3.15526ZM76.0593 4.39826H77.5777V11.2049H76.0593V4.39826Z",
|
|
17759
|
-
fill: "currentColor"
|
|
17760
|
-
}
|
|
17761
|
-
),
|
|
17762
|
-
/* @__PURE__ */ jsx21(
|
|
17763
|
-
"path",
|
|
17764
|
-
{
|
|
17765
|
-
d: "M84.3023 8.9796L85.6681 9.55271C85.3778 10.0923 84.9498 10.5129 84.3879 10.8217C83.8259 11.1344 83.2044 11.2944 82.5197 11.2944C81.8349 11.2944 81.2506 11.1567 80.6998 10.8701C80.1491 10.5873 79.7025 10.1742 79.3713 9.6383C79.04 9.09868 78.8689 8.48835 78.8689 7.79987C78.8689 7.11138 79.0363 6.49361 79.3713 5.95771C79.7025 5.41809 80.1528 5.00873 80.6998 4.72589C81.2469 4.44305 81.8609 4.30164 82.5197 4.30164C83.1784 4.30164 83.8259 4.45794 84.3916 4.77427C84.9535 5.08688 85.3815 5.51113 85.6681 6.05075L84.3023 6.62015C83.9413 5.93539 83.2863 5.56323 82.5197 5.56323C81.9205 5.56323 81.4181 5.77536 81.0013 6.19961C80.5845 6.62387 80.3798 7.15977 80.3798 7.80731C80.3798 8.45486 80.5845 8.99076 81.0013 9.40757C81.4181 9.83182 81.9205 10.0439 82.5197 10.0439C83.2863 10.0439 83.9413 9.66807 84.3023 8.98703V8.9796Z",
|
|
17766
|
-
fill: "currentColor"
|
|
17767
|
-
}
|
|
17768
|
-
),
|
|
17769
|
-
/* @__PURE__ */ jsx21(
|
|
17770
|
-
"path",
|
|
17771
|
-
{
|
|
17772
|
-
d: "M5.93091 10.8141L7.2758 9.41753L3.83719 5.84667C2.98568 4.9624 2.98568 3.52157 3.83719 2.63731C4.68871 1.75305 6.07617 1.75305 6.92769 2.63731L10.3663 6.20817L11.7112 4.81156L8.27258 1.24069C6.67975 -0.413401 4.08513 -0.413401 2.4923 1.24069C0.899472 2.89479 0.899472 5.58919 2.4923 7.24328L5.93091 10.8141Z",
|
|
17773
|
-
fill: "currentColor"
|
|
17774
|
-
}
|
|
17775
|
-
),
|
|
17776
|
-
/* @__PURE__ */ jsx21(
|
|
17777
|
-
"path",
|
|
17778
|
-
{
|
|
17779
|
-
d: "M6.05827 3.54751C5.68761 3.1626 5.08404 3.1626 4.71338 3.54751C4.34272 3.93243 4.34272 4.55921 4.71338 4.94413L9.02103 9.41746L5.93054 12.6268L1.62288 8.15349C1.25223 7.76857 0.648653 7.76857 0.277994 8.15349C-0.0926647 8.5384 -0.0926647 9.16519 0.277994 9.5501L5.93054 15.4201L11.7108 9.41746L6.05827 3.54751Z",
|
|
17780
|
-
fill: "currentColor"
|
|
17781
|
-
}
|
|
17782
|
-
)
|
|
17991
|
+
t2("Powered by"),
|
|
17992
|
+
" "
|
|
17783
17993
|
]
|
|
17784
17994
|
}
|
|
17785
|
-
)
|
|
17995
|
+
),
|
|
17996
|
+
/* @__PURE__ */ jsxs16("svg", { viewBox: "0 0 86 16", width: 86, height: 16, children: [
|
|
17997
|
+
/* @__PURE__ */ jsx21(
|
|
17998
|
+
"path",
|
|
17999
|
+
{
|
|
18000
|
+
d: "M21.2354 6.16227C21.1796 5.95015 21.0494 5.76779 20.8261 5.61893C20.6028 5.46635 20.3423 5.39564 20.0408 5.39564C19.3151 5.39564 18.7941 5.69708 18.7941 6.2367C18.7941 6.49721 18.9095 6.69073 19.1402 6.81726C19.3635 6.94379 19.732 7.07033 20.2344 7.18569C21.0084 7.37177 21.4922 7.51691 21.9686 7.7402C22.203 7.85557 22.3928 7.97465 22.5305 8.10863C22.7948 8.3803 22.9548 8.74501 22.9362 9.20276C22.9176 9.86147 22.6571 10.375 22.1547 10.7397C21.6523 11.1082 20.9563 11.2905 20.0818 11.2905C19.2072 11.2905 18.5597 11.1268 18.0312 10.8067C17.5065 10.4867 17.2013 10.0215 17.1194 9.41116L18.6192 9.27719C18.6974 9.57491 18.8723 9.7982 19.1514 9.94706C19.4305 10.0959 19.7394 10.1778 20.0818 10.1778C20.4614 10.1778 20.7777 10.0996 21.0308 9.9359C21.2838 9.77959 21.4104 9.56002 21.4104 9.28835C21.4104 8.90876 21.0531 8.61104 20.5991 8.43613C20.3683 8.35053 20.0855 8.27238 19.7468 8.19423C19.2705 8.07886 18.8946 7.97094 18.6155 7.87418C18.3364 7.78486 18.0908 7.66205 17.8712 7.51319C17.4358 7.21547 17.2832 6.8247 17.2832 6.2367C17.2832 5.61521 17.5325 5.13141 18.0312 4.79648C18.5262 4.46526 19.2035 4.29407 20.0669 4.29407C21.5853 4.29407 22.5752 4.9044 22.7389 6.05807L21.228 6.16227H21.2354Z",
|
|
18001
|
+
fill: "currentColor"
|
|
18002
|
+
}
|
|
18003
|
+
),
|
|
18004
|
+
/* @__PURE__ */ jsx21(
|
|
18005
|
+
"path",
|
|
18006
|
+
{
|
|
18007
|
+
d: "M29.4145 8.9796L30.7803 9.55271C30.49 10.0923 30.0621 10.5129 29.5001 10.8217C28.9382 11.1344 28.3167 11.2944 27.6319 11.2944C26.9472 11.2944 26.3629 11.1567 25.8121 10.8701C25.2613 10.5873 24.8147 10.1742 24.4835 9.6383C24.1523 9.09868 23.9811 8.48835 23.9811 7.79987C23.9811 7.11138 24.1486 6.49361 24.4835 5.95771C24.8147 5.41809 25.2613 5.00873 25.8121 4.72589C26.3629 4.44305 26.9732 4.30164 27.6319 4.30164C28.2906 4.30164 28.9382 4.45794 29.5038 4.77427C30.0658 5.08688 30.4938 5.51113 30.7803 6.05075L29.4145 6.62015C29.0535 5.93539 28.3985 5.56323 27.6319 5.56323C27.0327 5.56323 26.5303 5.77536 26.1135 6.19961C25.6967 6.62387 25.492 7.15977 25.492 7.80731C25.492 8.45486 25.6967 8.99076 26.1135 9.40757C26.5303 9.83182 27.0327 10.0439 27.6319 10.0439C28.3985 10.0439 29.0535 9.66807 29.4145 8.98703V8.9796Z",
|
|
18008
|
+
fill: "currentColor"
|
|
18009
|
+
}
|
|
18010
|
+
),
|
|
18011
|
+
/* @__PURE__ */ jsx21(
|
|
18012
|
+
"path",
|
|
18013
|
+
{
|
|
18014
|
+
d: "M37.4386 11.2049V7.80341C37.4386 6.35945 36.9139 5.59282 35.697 5.59282C35.0978 5.59282 34.614 5.7975 34.2419 6.21059C33.8623 6.61996 33.6725 7.15214 33.6725 7.80713V11.2086H32.1615V1.9234H33.6725V5.47745C34.1004 4.73315 35.001 4.29773 36.1919 4.29773C37.167 4.29773 37.8666 4.59917 38.302 5.19834C38.7375 5.7975 38.9533 6.66834 38.9533 7.80341V11.2049H37.4349H37.4386Z",
|
|
18015
|
+
fill: "currentColor"
|
|
18016
|
+
}
|
|
18017
|
+
),
|
|
18018
|
+
/* @__PURE__ */ jsx21(
|
|
18019
|
+
"path",
|
|
18020
|
+
{
|
|
18021
|
+
d: "M46.5692 5.38819C47.2167 6.07295 47.5777 7.1187 47.5107 8.30587H41.8242C41.9284 8.83805 42.1741 9.26602 42.5611 9.59352C42.9481 9.92473 43.4022 10.0885 43.9157 10.0885C44.8052 10.0885 45.5234 9.59724 45.8844 8.78222L47.1795 9.40372C46.8818 9.99172 46.4352 10.4495 45.8509 10.7881C45.2629 11.1268 44.6191 11.2943 43.9157 11.2943C42.9295 11.2943 42.0178 10.9444 41.3516 10.3453C40.6855 9.7461 40.2649 8.83432 40.2649 7.79602C40.2649 6.75771 40.6892 5.84222 41.3516 5.23933C42.0178 4.64017 42.9295 4.29034 43.9157 4.29034C44.9801 4.29034 45.9216 4.69971 46.5692 5.38447V5.38819ZM42.5388 6.00224C42.1592 6.32974 41.921 6.75772 41.8205 7.29734H46.0221C45.9179 6.75772 45.6835 6.3223 45.3039 5.99852C44.9243 5.67847 44.4628 5.51473 43.9195 5.51473C43.3761 5.51473 42.9221 5.67847 42.5425 6.00597L42.5388 6.00224Z",
|
|
18022
|
+
fill: "currentColor"
|
|
18023
|
+
}
|
|
18024
|
+
),
|
|
18025
|
+
/* @__PURE__ */ jsx21(
|
|
18026
|
+
"path",
|
|
18027
|
+
{
|
|
18028
|
+
d: "M59.7699 5.23933C60.1495 5.86827 60.3132 6.68329 60.3132 7.80347V11.2049H58.8023V7.80347C58.8023 6.35952 58.3371 5.59288 57.2318 5.59288C56.6438 5.59288 56.1861 5.79384 55.8586 6.19577C55.5311 6.60141 55.3673 7.13731 55.3673 7.80347V11.2049H53.8489V7.80347C53.8489 6.35952 53.3838 5.59288 52.2785 5.59288C51.6905 5.59288 51.2327 5.79384 50.9052 6.19577C50.574 6.60141 50.4102 7.13731 50.4102 7.80347V11.2049H48.8993V4.39827H50.3433L50.4102 5.47379C50.8196 4.65878 51.5825 4.29407 52.8106 4.29407C53.9606 4.29407 54.7161 4.78531 55.077 5.76407C55.5199 4.81508 56.4428 4.29407 57.7677 4.29407C58.7093 4.29407 59.3829 4.61412 59.7699 5.23562V5.23933Z",
|
|
18029
|
+
fill: "currentColor"
|
|
18030
|
+
}
|
|
18031
|
+
),
|
|
18032
|
+
/* @__PURE__ */ jsx21(
|
|
18033
|
+
"path",
|
|
18034
|
+
{
|
|
18035
|
+
d: "M67.4264 5.47382L67.4934 4.3983H68.9373V11.205H67.4934L67.4264 10.1294C67.0282 10.9147 66.1797 11.3092 64.8809 11.3017C63.102 11.3427 61.591 9.79823 61.6283 7.8035C61.591 5.8162 63.102 4.2606 64.8809 4.29782C66.0643 4.29782 67.0096 4.7444 67.4264 5.47754V5.47382ZM66.8049 9.37398C67.2217 8.95717 67.4264 8.43243 67.4264 7.79605C67.4264 7.15967 67.2217 6.64238 66.8049 6.21813C66.3881 5.80132 65.8782 5.58919 65.2828 5.58919C64.6874 5.58919 64.1887 5.80132 63.7719 6.21813C63.355 6.64238 63.1504 7.16711 63.1504 7.79605C63.1504 8.42499 63.355 8.95717 63.7719 9.37398C64.1887 9.79823 64.6911 10.0104 65.2828 10.0104C65.8745 10.0104 66.3881 9.79823 66.8049 9.37398Z",
|
|
18036
|
+
fill: "currentColor"
|
|
18037
|
+
}
|
|
18038
|
+
),
|
|
18039
|
+
/* @__PURE__ */ jsx21(
|
|
18040
|
+
"path",
|
|
18041
|
+
{
|
|
18042
|
+
d: "M71.3891 2.85757H72.8926V4.39828H74.6455V5.58172H72.8926V8.9683C72.8926 9.5898 73.1048 9.90985 73.5923 9.96568C73.89 10.0252 74.2398 10.0141 74.6455 9.9359V11.1863C74.1989 11.257 73.7858 11.2943 73.4062 11.2943C72.6731 11.2943 72.1595 11.1082 71.8543 10.7323C71.5454 10.3639 71.3891 9.79076 71.3891 9.02041V5.58172H70.4215V4.39828H71.3891V2.85757Z",
|
|
18043
|
+
fill: "currentColor"
|
|
18044
|
+
}
|
|
18045
|
+
),
|
|
18046
|
+
/* @__PURE__ */ jsx21(
|
|
18047
|
+
"path",
|
|
18048
|
+
{
|
|
18049
|
+
d: "M76.1747 3.15526C75.9923 2.98035 75.903 2.76078 75.903 2.50772C75.903 2.25466 75.9923 2.04997 76.1747 1.86762C76.3496 1.69271 76.5691 1.60339 76.8222 1.60339C77.0753 1.60339 77.2874 1.69271 77.4623 1.86762C77.6372 2.04997 77.7265 2.2621 77.7265 2.50772C77.7265 2.75334 77.6372 2.97291 77.4623 3.15526C77.2874 3.33762 77.0678 3.42694 76.8222 3.42694C76.5766 3.42694 76.3496 3.33762 76.1747 3.15526ZM76.0593 4.39826H77.5777V11.2049H76.0593V4.39826Z",
|
|
18050
|
+
fill: "currentColor"
|
|
18051
|
+
}
|
|
18052
|
+
),
|
|
18053
|
+
/* @__PURE__ */ jsx21(
|
|
18054
|
+
"path",
|
|
18055
|
+
{
|
|
18056
|
+
d: "M84.3023 8.9796L85.6681 9.55271C85.3778 10.0923 84.9498 10.5129 84.3879 10.8217C83.8259 11.1344 83.2044 11.2944 82.5197 11.2944C81.8349 11.2944 81.2506 11.1567 80.6998 10.8701C80.1491 10.5873 79.7025 10.1742 79.3713 9.6383C79.04 9.09868 78.8689 8.48835 78.8689 7.79987C78.8689 7.11138 79.0363 6.49361 79.3713 5.95771C79.7025 5.41809 80.1528 5.00873 80.6998 4.72589C81.2469 4.44305 81.8609 4.30164 82.5197 4.30164C83.1784 4.30164 83.8259 4.45794 84.3916 4.77427C84.9535 5.08688 85.3815 5.51113 85.6681 6.05075L84.3023 6.62015C83.9413 5.93539 83.2863 5.56323 82.5197 5.56323C81.9205 5.56323 81.4181 5.77536 81.0013 6.19961C80.5845 6.62387 80.3798 7.15977 80.3798 7.80731C80.3798 8.45486 80.5845 8.99076 81.0013 9.40757C81.4181 9.83182 81.9205 10.0439 82.5197 10.0439C83.2863 10.0439 83.9413 9.66807 84.3023 8.98703V8.9796Z",
|
|
18057
|
+
fill: "currentColor"
|
|
18058
|
+
}
|
|
18059
|
+
),
|
|
18060
|
+
/* @__PURE__ */ jsx21(
|
|
18061
|
+
"path",
|
|
18062
|
+
{
|
|
18063
|
+
d: "M5.93091 10.8141L7.2758 9.41753L3.83719 5.84667C2.98568 4.9624 2.98568 3.52157 3.83719 2.63731C4.68871 1.75305 6.07617 1.75305 6.92769 2.63731L10.3663 6.20817L11.7112 4.81156L8.27258 1.24069C6.67975 -0.413401 4.08513 -0.413401 2.4923 1.24069C0.899472 2.89479 0.899472 5.58919 2.4923 7.24328L5.93091 10.8141Z",
|
|
18064
|
+
fill: "currentColor"
|
|
18065
|
+
}
|
|
18066
|
+
),
|
|
18067
|
+
/* @__PURE__ */ jsx21(
|
|
18068
|
+
"path",
|
|
18069
|
+
{
|
|
18070
|
+
d: "M6.05827 3.54751C5.68761 3.1626 5.08404 3.1626 4.71338 3.54751C4.34272 3.93243 4.34272 4.55921 4.71338 4.94413L9.02103 9.41746L5.93054 12.6268L1.62288 8.15349C1.25223 7.76857 0.648653 7.76857 0.277994 8.15349C-0.0926647 8.5384 -0.0926647 9.16519 0.277994 9.5501L5.93054 15.4201L11.7108 9.41746L6.05827 3.54751Z",
|
|
18071
|
+
fill: "currentColor"
|
|
18072
|
+
}
|
|
18073
|
+
)
|
|
18074
|
+
] })
|
|
17786
18075
|
]
|
|
17787
18076
|
}
|
|
17788
18077
|
);
|
|
@@ -17859,7 +18148,7 @@ var StyledViewport = dt(Box).attrs(({ theme }) => ({
|
|
|
17859
18148
|
import { Fragment as Fragment9, jsx as jsx23, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
17860
18149
|
var Viewport = forwardRef4(
|
|
17861
18150
|
({ children, portal, ...props }, ref) => {
|
|
17862
|
-
const { data, layout } = useEmbed();
|
|
18151
|
+
const { data, layout, settings } = useEmbed();
|
|
17863
18152
|
const [top, setTop] = useState11(0);
|
|
17864
18153
|
const canCheckout = data.capabilities?.checkout ?? true;
|
|
17865
18154
|
useLayoutEffect6(() => {
|
|
@@ -17877,7 +18166,7 @@ var Viewport = forwardRef4(
|
|
|
17877
18166
|
return /* @__PURE__ */ jsxs18(Fragment9, { children: [
|
|
17878
18167
|
/* @__PURE__ */ jsxs18(StyledViewport, { ref, ...props, children: [
|
|
17879
18168
|
/* @__PURE__ */ jsx23(RenderLayout, { children }),
|
|
17880
|
-
/* @__PURE__ */ jsx23(Badge, {})
|
|
18169
|
+
(!data.capabilities?.badgeVisibility || settings.badge?.visibility !== "hidden") && /* @__PURE__ */ jsx23(Badge, {})
|
|
17881
18170
|
] }),
|
|
17882
18171
|
canCheckout && layout === "checkout" && createPortal2(/* @__PURE__ */ jsx23(CheckoutDialog, { top }), portal || document.body),
|
|
17883
18172
|
layout === "unsubscribe" && createPortal2(
|
|
@@ -17905,14 +18194,7 @@ var StyledCard = dt.div(({ theme }) => {
|
|
|
17905
18194
|
const borderRadius = `${theme.card.borderRadius / TEXT_BASE_SIZE}rem`;
|
|
17906
18195
|
return lt`
|
|
17907
18196
|
position: relative;
|
|
17908
|
-
|
|
17909
|
-
font-size: ${TEXT_BASE_SIZE}px;
|
|
17910
|
-
|
|
17911
|
-
*,
|
|
17912
|
-
*::before,
|
|
17913
|
-
*::after {
|
|
17914
|
-
box-sizing: inherit;
|
|
17915
|
-
}
|
|
18197
|
+
overflow: hidden;
|
|
17916
18198
|
|
|
17917
18199
|
${theme.sectionLayout === "merged" ? `&:not(:has(${FussyChild}))` : `${Element}:not(:is(${FussyChild}))`} {
|
|
17918
18200
|
color: ${theme.typography.text.color};
|
|
@@ -17982,7 +18264,6 @@ Column.displayName = "Column";
|
|
|
17982
18264
|
|
|
17983
18265
|
// src/components/elements/included-features/Details.tsx
|
|
17984
18266
|
import { useMemo as useMemo8 } from "react";
|
|
17985
|
-
var import_pluralize4 = __toESM(require_pluralize());
|
|
17986
18267
|
import { jsx as jsx26, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
17987
18268
|
var Details = ({
|
|
17988
18269
|
details,
|
|
@@ -18027,35 +18308,35 @@ var Details = ({
|
|
|
18027
18308
|
yearlyUsageBasedPrice
|
|
18028
18309
|
]);
|
|
18029
18310
|
const text = useMemo8(() => {
|
|
18030
|
-
if (!feature
|
|
18311
|
+
if (!feature) {
|
|
18031
18312
|
return;
|
|
18032
18313
|
}
|
|
18033
18314
|
if (priceBehavior === "pay_in_advance" && typeof allocation === "number") {
|
|
18034
|
-
return `${formatNumber(allocation)} ${(
|
|
18315
|
+
return `${formatNumber(allocation)} ${getFeatureName(feature, allocation)}`;
|
|
18035
18316
|
}
|
|
18036
18317
|
if (priceBehavior === "pay_as_you_go" && typeof price === "number") {
|
|
18037
|
-
return `${formatCurrency(price, currency)} ${t2("per")} ${(
|
|
18318
|
+
return `${formatCurrency(price, currency)} ${t2("per")} ${getFeatureName(feature, 1)}`;
|
|
18038
18319
|
}
|
|
18039
18320
|
if (priceBehavior === "overage" && typeof softLimit === "number") {
|
|
18040
|
-
return `${formatNumber(softLimit)} ${(
|
|
18321
|
+
return `${formatNumber(softLimit)} ${getFeatureName(feature, softLimit)}`;
|
|
18041
18322
|
}
|
|
18042
18323
|
if (!priceBehavior && typeof allocation === "number") {
|
|
18043
|
-
return `${formatNumber(allocation)} ${(
|
|
18324
|
+
return `${formatNumber(allocation)} ${getFeatureName(feature, allocation)}`;
|
|
18044
18325
|
}
|
|
18045
18326
|
if (!priceBehavior) {
|
|
18046
|
-
return t2("Unlimited", { item: (
|
|
18327
|
+
return t2("Unlimited", { item: getFeatureName(feature) });
|
|
18047
18328
|
}
|
|
18048
|
-
}, [t2, allocation, feature
|
|
18329
|
+
}, [t2, allocation, feature, price, priceBehavior, currency, softLimit]);
|
|
18049
18330
|
const usageText = useMemo8(() => {
|
|
18050
|
-
if (!feature
|
|
18331
|
+
if (!feature) {
|
|
18051
18332
|
return;
|
|
18052
18333
|
}
|
|
18053
18334
|
if (usageData) {
|
|
18054
18335
|
let acc;
|
|
18055
18336
|
if (priceBehavior === "pay_in_advance" && typeof data.company?.plan?.planPeriod === "string" && typeof price === "number") {
|
|
18056
|
-
acc = `${formatCurrency(price, currency)}/${(
|
|
18337
|
+
acc = `${formatCurrency(price, currency)}/${getFeatureName(feature, 1)}/${shortenPeriod(data.company.plan.planPeriod)}`;
|
|
18057
18338
|
} else if ((priceBehavior === "pay_as_you_go" || priceBehavior === "overage") && typeof usage === "number") {
|
|
18058
|
-
acc = `${usage} ${(
|
|
18339
|
+
acc = `${usage} ${getFeatureName(feature, usage)} ${t2("used")}`;
|
|
18059
18340
|
}
|
|
18060
18341
|
if (acc) {
|
|
18061
18342
|
if (priceBehavior === "pay_in_advance" && typeof price === "number" && typeof allocation === "number") {
|
|
@@ -18065,7 +18346,7 @@ var Details = ({
|
|
|
18065
18346
|
} else if (priceBehavior === "overage" && typeof price === "number" && typeof usage === "number" && typeof softLimit === "number") {
|
|
18066
18347
|
const cost = price * (usage - softLimit);
|
|
18067
18348
|
const period = feature.featureType === "event" && typeof data.company?.plan?.planPeriod === "string" ? `/${shortenPeriod(data.company.plan.planPeriod)}` : "";
|
|
18068
|
-
acc += cost > 0 ? ` \u2022 ${t2("Overage")}: ${formatCurrency(cost)}${period}` : ` \u2022 ${`${formatCurrency(price)}/${(
|
|
18349
|
+
acc += cost > 0 ? ` \u2022 ${t2("Overage")}: ${formatCurrency(cost)}${period}` : ` \u2022 ${`${formatCurrency(price)}/${getFeatureName(feature, 1)}`} ${t2("overage fee")}`;
|
|
18069
18350
|
}
|
|
18070
18351
|
return acc;
|
|
18071
18352
|
}
|
|
@@ -18081,8 +18362,7 @@ var Details = ({
|
|
|
18081
18362
|
}, [
|
|
18082
18363
|
t2,
|
|
18083
18364
|
data.company?.plan?.planPeriod,
|
|
18084
|
-
feature
|
|
18085
|
-
feature?.featureType,
|
|
18365
|
+
feature,
|
|
18086
18366
|
priceBehavior,
|
|
18087
18367
|
allocation,
|
|
18088
18368
|
price,
|
|
@@ -18107,8 +18387,8 @@ var Details = ({
|
|
|
18107
18387
|
$font: theme.typography[props.entitlement.fontStyle].fontFamily,
|
|
18108
18388
|
$size: theme.typography[props.entitlement.fontStyle].fontSize,
|
|
18109
18389
|
$weight: theme.typography[props.entitlement.fontStyle].fontWeight,
|
|
18110
|
-
$leading: 1,
|
|
18111
18390
|
$color: theme.typography[props.entitlement.fontStyle].color,
|
|
18391
|
+
$leading: 1,
|
|
18112
18392
|
children: text
|
|
18113
18393
|
}
|
|
18114
18394
|
) }),
|
|
@@ -18118,8 +18398,8 @@ var Details = ({
|
|
|
18118
18398
|
$font: theme.typography[props.usage.fontStyle].fontFamily,
|
|
18119
18399
|
$size: theme.typography[props.usage.fontStyle].fontSize,
|
|
18120
18400
|
$weight: theme.typography[props.usage.fontStyle].fontWeight,
|
|
18121
|
-
$leading: 1,
|
|
18122
18401
|
$color: theme.typography[props.usage.fontStyle].color,
|
|
18402
|
+
$leading: 1,
|
|
18123
18403
|
children: usageText
|
|
18124
18404
|
}
|
|
18125
18405
|
) })
|
|
@@ -18167,7 +18447,19 @@ var IncludedFeatures = forwardRef7(({ className, ...rest }, ref) => {
|
|
|
18167
18447
|
const shouldWrapChildren = useWrapChildren(elements.current);
|
|
18168
18448
|
const isLightBackground = useIsLightBackground();
|
|
18169
18449
|
const [showCount, setShowCount] = useState12(VISIBLE_ENTITLEMENT_COUNT);
|
|
18170
|
-
const
|
|
18450
|
+
const orderedFeatureUsage = props.visibleFeatures?.reduce(
|
|
18451
|
+
(acc, id) => {
|
|
18452
|
+
const mappedFeatureUsage = data.featureUsage?.features.find(
|
|
18453
|
+
(usage) => usage.feature?.id === id
|
|
18454
|
+
);
|
|
18455
|
+
if (mappedFeatureUsage) {
|
|
18456
|
+
acc.push(mappedFeatureUsage);
|
|
18457
|
+
}
|
|
18458
|
+
return acc;
|
|
18459
|
+
},
|
|
18460
|
+
[]
|
|
18461
|
+
);
|
|
18462
|
+
const entitlements = (orderedFeatureUsage || data.featureUsage?.features || []).reduce(
|
|
18171
18463
|
(acc, usage) => {
|
|
18172
18464
|
const mappedUsageData = data.activeUsageBasedEntitlements.find(
|
|
18173
18465
|
(entitlement) => entitlement.featureId === usage.feature?.id
|
|
@@ -18262,8 +18554,8 @@ var IncludedFeatures = forwardRef7(({ className, ...rest }, ref) => {
|
|
|
18262
18554
|
$font: theme.typography[props.entitlementExpiration.fontStyle].fontFamily,
|
|
18263
18555
|
$size: theme.typography[props.entitlementExpiration.fontStyle].fontSize,
|
|
18264
18556
|
$weight: theme.typography[props.entitlementExpiration.fontStyle].fontWeight,
|
|
18265
|
-
$leading: 1,
|
|
18266
18557
|
$color: theme.typography[props.entitlementExpiration.fontStyle].color,
|
|
18558
|
+
$leading: 1,
|
|
18267
18559
|
children: [
|
|
18268
18560
|
"Expires",
|
|
18269
18561
|
" ",
|
|
@@ -18309,8 +18601,8 @@ var IncludedFeatures = forwardRef7(({ className, ...rest }, ref) => {
|
|
|
18309
18601
|
$font: theme.typography.link.fontFamily,
|
|
18310
18602
|
$size: theme.typography.link.fontSize,
|
|
18311
18603
|
$weight: theme.typography.link.fontWeight,
|
|
18312
|
-
$leading: 1,
|
|
18313
18604
|
$color: theme.typography.link.color,
|
|
18605
|
+
$leading: 1,
|
|
18314
18606
|
style: { cursor: "pointer" },
|
|
18315
18607
|
children: isExpanded ? t2("Hide all") : t2("See all")
|
|
18316
18608
|
}
|
|
@@ -18350,7 +18642,7 @@ function resolveDesignProps2(props) {
|
|
|
18350
18642
|
};
|
|
18351
18643
|
}
|
|
18352
18644
|
function formatInvoices(invoices = []) {
|
|
18353
|
-
return invoices.
|
|
18645
|
+
return invoices.sort((a2, b2) => a2.dueDate && b2.dueDate ? +b2.dueDate - +a2.dueDate : 1).map(({ amountDue, dueDate, url, currency }) => ({
|
|
18354
18646
|
amount: formatCurrency(amountDue, currency),
|
|
18355
18647
|
...dueDate && { date: toPrettyDate(dueDate) },
|
|
18356
18648
|
...url && { url }
|
|
@@ -18453,8 +18745,7 @@ var Invoices = forwardRef8(({ className, data, ...rest }, ref) => {
|
|
|
18453
18745
|
Invoices.displayName = "Invoices";
|
|
18454
18746
|
|
|
18455
18747
|
// src/components/elements/metered-features/MeteredFeatures.tsx
|
|
18456
|
-
import { forwardRef as forwardRef9, useRef as useRef8 } from "react";
|
|
18457
|
-
var import_pluralize5 = __toESM(require_pluralize());
|
|
18748
|
+
import { forwardRef as forwardRef9, useMemo as useMemo9, useRef as useRef8 } from "react";
|
|
18458
18749
|
|
|
18459
18750
|
// src/components/elements/metered-features/styles.ts
|
|
18460
18751
|
var Container4 = dt(Flex)`
|
|
@@ -18508,44 +18799,54 @@ var MeteredFeatures = forwardRef9(({ className, ...rest }, ref) => {
|
|
|
18508
18799
|
const theme = nt();
|
|
18509
18800
|
const { data, setLayout, setSelected } = useEmbed();
|
|
18510
18801
|
const isLightBackground = useIsLightBackground();
|
|
18511
|
-
const
|
|
18512
|
-
|
|
18513
|
-
|
|
18514
|
-
|
|
18802
|
+
const meteredFeatures = useMemo9(() => {
|
|
18803
|
+
return (props.visibleFeatures ? props.visibleFeatures.reduce(
|
|
18804
|
+
(acc, id) => {
|
|
18805
|
+
const mappedFeatureUsage = data.featureUsage?.features.find(
|
|
18806
|
+
(usage) => usage.feature?.id === id
|
|
18807
|
+
);
|
|
18808
|
+
if (mappedFeatureUsage) {
|
|
18809
|
+
acc.push(mappedFeatureUsage);
|
|
18810
|
+
}
|
|
18811
|
+
return acc;
|
|
18812
|
+
},
|
|
18813
|
+
[]
|
|
18814
|
+
) : data.featureUsage?.features || []).filter(
|
|
18815
|
+
(usage) => usage.feature?.featureType === "event" || usage.feature?.featureType === "trait"
|
|
18515
18816
|
);
|
|
18516
|
-
|
|
18517
|
-
|
|
18518
|
-
|
|
18519
|
-
return acc;
|
|
18520
|
-
}, []) : data.featureUsage?.features || []).filter(
|
|
18521
|
-
(usage) => usage.feature?.featureType === "event" || usage.feature?.featureType === "trait"
|
|
18522
|
-
);
|
|
18523
|
-
const shouldShowFeatures = featureUsage.length > 0 || data.company?.plan || (data.company?.addOns ?? []).length > 0 || false;
|
|
18817
|
+
}, [props.visibleFeatures, data.featureUsage?.features]);
|
|
18818
|
+
const planPeriod = data.company?.plan?.planPeriod;
|
|
18819
|
+
const shouldShowFeatures = meteredFeatures.length > 0 || data.company?.plan || (data.company?.addOns ?? []).length > 0 || false;
|
|
18524
18820
|
if (!shouldShowFeatures) {
|
|
18525
18821
|
return null;
|
|
18526
18822
|
}
|
|
18527
|
-
return /* @__PURE__ */ jsx29(Container4, { ref, className, children:
|
|
18823
|
+
return /* @__PURE__ */ jsx29(Container4, { ref, className, children: meteredFeatures.map(
|
|
18528
18824
|
({
|
|
18529
|
-
allocation,
|
|
18530
18825
|
feature,
|
|
18826
|
+
priceBehavior,
|
|
18531
18827
|
usage,
|
|
18828
|
+
allocation,
|
|
18532
18829
|
softLimit,
|
|
18533
|
-
priceBehavior,
|
|
18534
18830
|
metricResetAt,
|
|
18535
18831
|
monthlyUsageBasedPrice,
|
|
18536
18832
|
yearlyUsageBasedPrice
|
|
18537
18833
|
}, index) => {
|
|
18538
|
-
const limit =
|
|
18834
|
+
const limit = softLimit ?? allocation ?? 0;
|
|
18539
18835
|
const isOverage = priceBehavior === "overage" && typeof softLimit === "number" && typeof usage === "number" && usage > softLimit;
|
|
18540
|
-
|
|
18541
|
-
|
|
18542
|
-
|
|
18543
|
-
|
|
18544
|
-
|
|
18545
|
-
|
|
18546
|
-
|
|
18547
|
-
|
|
18548
|
-
|
|
18836
|
+
const { price, currency } = (planPeriod === "month" ? monthlyUsageBasedPrice : planPeriod === "year" && yearlyUsageBasedPrice) || {};
|
|
18837
|
+
const progressBar = props.isVisible && typeof usage === "number" && priceBehavior !== "pay_as_you_go" && /* @__PURE__ */ jsx29(
|
|
18838
|
+
ProgressBar,
|
|
18839
|
+
{
|
|
18840
|
+
progress: (isOverage ? softLimit / usage : usage / limit) * 100,
|
|
18841
|
+
value: usage,
|
|
18842
|
+
total: isOverage ? softLimit : limit,
|
|
18843
|
+
color: isOverage ? "blue" : progressColorMap[Math.floor(
|
|
18844
|
+
Math.min(usage, limit) / limit * (progressColorMap.length - 1)
|
|
18845
|
+
)],
|
|
18846
|
+
...isOverage && { bgColor: "#EF4444" },
|
|
18847
|
+
$flexGrow: 1
|
|
18848
|
+
}
|
|
18849
|
+
);
|
|
18549
18850
|
return /* @__PURE__ */ jsxs23(Flex, { $flexDirection: "column-reverse", children: [
|
|
18550
18851
|
priceBehavior === "overage" && typeof price === "number" && /* @__PURE__ */ jsxs23(
|
|
18551
18852
|
Flex,
|
|
@@ -18562,16 +18863,17 @@ var MeteredFeatures = forwardRef9(({ className, ...rest }, ref) => {
|
|
|
18562
18863
|
$size: theme.typography.text.fontSize,
|
|
18563
18864
|
$weight: theme.typography.text.fontWeight,
|
|
18564
18865
|
$color: theme.typography.text.color,
|
|
18866
|
+
$leading: 1.35,
|
|
18565
18867
|
children: /* @__PURE__ */ jsxs23(Fragment10, { children: [
|
|
18566
18868
|
t2("Overage fee"),
|
|
18567
18869
|
": ",
|
|
18568
18870
|
formatCurrency(price, currency),
|
|
18569
|
-
feature && /* @__PURE__ */ jsxs23("sub",
|
|
18871
|
+
feature && /* @__PURE__ */ jsxs23(Box, { as: "sub", $whiteSpace: "nowrap", children: [
|
|
18570
18872
|
"/",
|
|
18571
|
-
(
|
|
18572
|
-
feature.featureType === "
|
|
18873
|
+
getFeatureName(feature, 1),
|
|
18874
|
+
feature.featureType === "trait" && planPeriod && /* @__PURE__ */ jsxs23(Fragment10, { children: [
|
|
18573
18875
|
"/",
|
|
18574
|
-
shortenPeriod(
|
|
18876
|
+
shortenPeriod(planPeriod)
|
|
18575
18877
|
] })
|
|
18576
18878
|
] })
|
|
18577
18879
|
] })
|
|
@@ -18584,13 +18886,17 @@ var MeteredFeatures = forwardRef9(({ className, ...rest }, ref) => {
|
|
|
18584
18886
|
$size: theme.typography.text.fontSize,
|
|
18585
18887
|
$weight: theme.typography.text.fontWeight,
|
|
18586
18888
|
$color: theme.typography.text.color,
|
|
18889
|
+
$leading: 1.35,
|
|
18587
18890
|
children: [
|
|
18588
18891
|
t2("X over the limit", {
|
|
18589
18892
|
amount: usage - softLimit
|
|
18590
18893
|
}),
|
|
18591
18894
|
" \xB7 ",
|
|
18592
18895
|
formatCurrency(price * (usage - softLimit), currency),
|
|
18593
|
-
feature?.featureType === "
|
|
18896
|
+
feature?.featureType === "trait" && typeof planPeriod === "string" && /* @__PURE__ */ jsxs23(Box, { as: "sub", $whiteSpace: "nowrap", children: [
|
|
18897
|
+
"/",
|
|
18898
|
+
shortenPeriod(planPeriod)
|
|
18899
|
+
] })
|
|
18594
18900
|
]
|
|
18595
18901
|
}
|
|
18596
18902
|
)
|
|
@@ -18609,7 +18915,7 @@ var MeteredFeatures = forwardRef9(({ className, ...rest }, ref) => {
|
|
|
18609
18915
|
]
|
|
18610
18916
|
}
|
|
18611
18917
|
),
|
|
18612
|
-
/* @__PURE__ */ jsxs23(Flex, { $flexDirection: "column", $gap: "2rem", $flexGrow:
|
|
18918
|
+
/* @__PURE__ */ jsxs23(Flex, { $flexDirection: "column", $gap: "2rem", $flexGrow: 1, children: [
|
|
18613
18919
|
/* @__PURE__ */ jsxs23(
|
|
18614
18920
|
Flex,
|
|
18615
18921
|
{
|
|
@@ -18621,7 +18927,7 @@ var MeteredFeatures = forwardRef9(({ className, ...rest }, ref) => {
|
|
|
18621
18927
|
$flexWrap: "wrap",
|
|
18622
18928
|
$gap: "1rem",
|
|
18623
18929
|
children: [
|
|
18624
|
-
feature?.name && /* @__PURE__ */ jsxs23(Flex, { $flexDirection: "column", $gap: "0.5rem", $flexGrow:
|
|
18930
|
+
feature?.name && /* @__PURE__ */ jsxs23(Flex, { $flexDirection: "column", $gap: "0.5rem", $flexGrow: 1, children: [
|
|
18625
18931
|
/* @__PURE__ */ jsx29(
|
|
18626
18932
|
Text,
|
|
18627
18933
|
{
|
|
@@ -18630,10 +18936,11 @@ var MeteredFeatures = forwardRef9(({ className, ...rest }, ref) => {
|
|
|
18630
18936
|
$size: theme.typography[props.header.fontStyle].fontSize,
|
|
18631
18937
|
$weight: theme.typography[props.header.fontStyle].fontWeight,
|
|
18632
18938
|
$color: theme.typography[props.header.fontStyle].color,
|
|
18939
|
+
$leading: 1.35,
|
|
18633
18940
|
children: priceBehavior === "pay_as_you_go" ? typeof usage === "number" && /* @__PURE__ */ jsxs23(Fragment10, { children: [
|
|
18634
18941
|
formatNumber(usage),
|
|
18635
18942
|
" ",
|
|
18636
|
-
(
|
|
18943
|
+
getFeatureName(feature, usage)
|
|
18637
18944
|
] }) : feature.name
|
|
18638
18945
|
}
|
|
18639
18946
|
),
|
|
@@ -18653,7 +18960,7 @@ var MeteredFeatures = forwardRef9(({ className, ...rest }, ref) => {
|
|
|
18653
18960
|
Box,
|
|
18654
18961
|
{
|
|
18655
18962
|
$flexBasis: "min-content",
|
|
18656
|
-
$flexGrow:
|
|
18963
|
+
$flexGrow: 1,
|
|
18657
18964
|
$textAlign: shouldWrapChildren ? "left" : "right",
|
|
18658
18965
|
children: [
|
|
18659
18966
|
props.usage.isVisible && /* @__PURE__ */ jsx29(
|
|
@@ -18663,16 +18970,16 @@ var MeteredFeatures = forwardRef9(({ className, ...rest }, ref) => {
|
|
|
18663
18970
|
$font: theme.typography[props.usage.fontStyle].fontFamily,
|
|
18664
18971
|
$size: theme.typography[props.usage.fontStyle].fontSize,
|
|
18665
18972
|
$weight: theme.typography[props.usage.fontStyle].fontWeight,
|
|
18666
|
-
$leading: 1.35,
|
|
18667
18973
|
$color: theme.typography[props.usage.fontStyle].color,
|
|
18974
|
+
$leading: 1.35,
|
|
18668
18975
|
children: priceBehavior === "pay_in_advance" ? typeof allocation === "number" && /* @__PURE__ */ jsxs23(Fragment10, { children: [
|
|
18669
18976
|
formatNumber(allocation),
|
|
18670
18977
|
" ",
|
|
18671
|
-
(
|
|
18978
|
+
getFeatureName(feature, allocation)
|
|
18672
18979
|
] }) : priceBehavior === "pay_as_you_go" ? typeof price === "number" && typeof usage === "number" && formatCurrency(usage * price, currency) : typeof usage === "number" && /* @__PURE__ */ jsxs23(Fragment10, { children: [
|
|
18673
18980
|
formatNumber(usage),
|
|
18674
18981
|
" ",
|
|
18675
|
-
(
|
|
18982
|
+
getFeatureName(feature, usage),
|
|
18676
18983
|
priceBehavior === "overage" && /* @__PURE__ */ jsxs23(Fragment10, { children: [
|
|
18677
18984
|
" ",
|
|
18678
18985
|
t2("used")
|
|
@@ -18687,6 +18994,7 @@ var MeteredFeatures = forwardRef9(({ className, ...rest }, ref) => {
|
|
|
18687
18994
|
$size: theme.typography[props.allocation.fontStyle].fontSize,
|
|
18688
18995
|
$weight: theme.typography[props.allocation.fontStyle].fontWeight,
|
|
18689
18996
|
$color: theme.typography[props.allocation.fontStyle].color,
|
|
18997
|
+
$leading: 1.35,
|
|
18690
18998
|
children: priceBehavior && priceBehavior !== "overage" && metricResetAt ? t2("Resets", {
|
|
18691
18999
|
date: toPrettyDate(metricResetAt, {
|
|
18692
19000
|
month: "short",
|
|
@@ -18705,19 +19013,27 @@ var MeteredFeatures = forwardRef9(({ className, ...rest }, ref) => {
|
|
|
18705
19013
|
}
|
|
18706
19014
|
),
|
|
18707
19015
|
props.isVisible && typeof usage === "number" && priceBehavior !== "pay_as_you_go" && /* @__PURE__ */ jsxs23(Flex, { $gap: "2rem", children: [
|
|
18708
|
-
/* @__PURE__ */ jsx29(
|
|
18709
|
-
|
|
19016
|
+
typeof allocation === "number" ? /* @__PURE__ */ jsx29(
|
|
19017
|
+
Tooltip,
|
|
18710
19018
|
{
|
|
18711
|
-
|
|
18712
|
-
|
|
18713
|
-
|
|
18714
|
-
|
|
18715
|
-
|
|
18716
|
-
|
|
18717
|
-
|
|
18718
|
-
|
|
19019
|
+
trigger: progressBar,
|
|
19020
|
+
content: /* @__PURE__ */ jsx29(
|
|
19021
|
+
Text,
|
|
19022
|
+
{
|
|
19023
|
+
$font: theme.typography.text.fontFamily,
|
|
19024
|
+
$size: 0.875 * theme.typography.text.fontSize,
|
|
19025
|
+
$weight: theme.typography.text.fontWeight,
|
|
19026
|
+
$color: theme.typography.text.color,
|
|
19027
|
+
$leading: 1,
|
|
19028
|
+
children: t2("Up to a limit of", {
|
|
19029
|
+
amount: allocation,
|
|
19030
|
+
units: feature?.name && getFeatureName(feature)
|
|
19031
|
+
})
|
|
19032
|
+
}
|
|
19033
|
+
),
|
|
19034
|
+
$flexGrow: 1
|
|
18719
19035
|
}
|
|
18720
|
-
),
|
|
19036
|
+
) : progressBar,
|
|
18721
19037
|
priceBehavior === "pay_in_advance" && /* @__PURE__ */ jsx29(
|
|
18722
19038
|
EmbedButton,
|
|
18723
19039
|
{
|
|
@@ -18744,10 +19060,10 @@ MeteredFeatures.displayName = "MeteredFeatures";
|
|
|
18744
19060
|
// src/components/elements/payment-method/PaymentMethod.tsx
|
|
18745
19061
|
import {
|
|
18746
19062
|
forwardRef as forwardRef10,
|
|
18747
|
-
useCallback as
|
|
19063
|
+
useCallback as useCallback10,
|
|
18748
19064
|
useEffect as useEffect7,
|
|
18749
19065
|
useLayoutEffect as useLayoutEffect7,
|
|
18750
|
-
useMemo as
|
|
19066
|
+
useMemo as useMemo10,
|
|
18751
19067
|
useState as useState14
|
|
18752
19068
|
} from "react";
|
|
18753
19069
|
import { createPortal as createPortal3 } from "react-dom";
|
|
@@ -18761,13 +19077,22 @@ var PaymentElement2 = ({
|
|
|
18761
19077
|
paymentLast4
|
|
18762
19078
|
}) => {
|
|
18763
19079
|
const theme = nt();
|
|
18764
|
-
return /* @__PURE__ */ jsx30(Fragment11, { children: /* @__PURE__ */ jsx30(
|
|
18765
|
-
|
|
18766
|
-
|
|
18767
|
-
|
|
18768
|
-
|
|
18769
|
-
|
|
18770
|
-
|
|
19080
|
+
return /* @__PURE__ */ jsx30(Fragment11, { children: /* @__PURE__ */ jsx30(
|
|
19081
|
+
Text,
|
|
19082
|
+
{
|
|
19083
|
+
$font: theme.typography.text.fontFamily,
|
|
19084
|
+
$size: 16,
|
|
19085
|
+
$weight: theme.typography.text.fontWeight,
|
|
19086
|
+
$color: theme.typography.text.color,
|
|
19087
|
+
children: /* @__PURE__ */ jsxs24(Flex, { $flexDirection: "row", $alignItems: "center", children: [
|
|
19088
|
+
iconName && /* @__PURE__ */ jsx30(Box, { children: /* @__PURE__ */ jsx30(Icon2, { name: iconName, title: iconTitle, style: iconStyles }) }),
|
|
19089
|
+
/* @__PURE__ */ jsxs24(Flex, { $alignItems: "center", children: [
|
|
19090
|
+
/* @__PURE__ */ jsx30(Box, { $lineHeight: "1", $marginRight: "4px", children: t(label) }),
|
|
19091
|
+
paymentLast4 && /* @__PURE__ */ jsx30(Box, { $display: "inline-block", $fontWeight: "bold", children: paymentLast4 })
|
|
19092
|
+
] })
|
|
19093
|
+
] })
|
|
19094
|
+
}
|
|
19095
|
+
) });
|
|
18771
19096
|
};
|
|
18772
19097
|
var resolveDesignProps4 = (props) => {
|
|
18773
19098
|
return {
|
|
@@ -18887,6 +19212,7 @@ var PaymentMethodElement = ({
|
|
|
18887
19212
|
{
|
|
18888
19213
|
$font: theme.typography.text.fontFamily,
|
|
18889
19214
|
$size: 14,
|
|
19215
|
+
$weight: theme.typography.text.fontWeight,
|
|
18890
19216
|
$color: "#DB6769",
|
|
18891
19217
|
children: monthsToExpiration > 0 ? t2("Expires in x months", { months: monthsToExpiration }) : t2("Expired")
|
|
18892
19218
|
}
|
|
@@ -18909,8 +19235,8 @@ var PaymentMethodElement = ({
|
|
|
18909
19235
|
$font: theme.typography.link.fontFamily,
|
|
18910
19236
|
$size: theme.typography.link.fontSize,
|
|
18911
19237
|
$weight: theme.typography.link.fontWeight,
|
|
18912
|
-
$leading: 1,
|
|
18913
19238
|
$color: theme.typography.link.color,
|
|
19239
|
+
$leading: 1,
|
|
18914
19240
|
children: t2("Edit")
|
|
18915
19241
|
}
|
|
18916
19242
|
)
|
|
@@ -18933,10 +19259,10 @@ var PaymentMethod = forwardRef10(({ children, className, portal, allowEdit = tru
|
|
|
18933
19259
|
const [stripe, setStripe] = useState14(null);
|
|
18934
19260
|
const [setupIntent, setSetupIntent] = useState14();
|
|
18935
19261
|
const [top, setTop] = useState14(0);
|
|
18936
|
-
const paymentMethod =
|
|
19262
|
+
const paymentMethod = useMemo10(() => {
|
|
18937
19263
|
return data.subscription?.paymentMethod;
|
|
18938
19264
|
}, [data.subscription?.paymentMethod]);
|
|
18939
|
-
const monthsToExpiration =
|
|
19265
|
+
const monthsToExpiration = useMemo10(() => {
|
|
18940
19266
|
let expiration;
|
|
18941
19267
|
if (typeof paymentMethod?.cardExpYear === "number" && typeof paymentMethod?.cardExpMonth === "number") {
|
|
18942
19268
|
const today = /* @__PURE__ */ new Date();
|
|
@@ -18949,7 +19275,7 @@ var PaymentMethod = forwardRef10(({ children, className, portal, allowEdit = tru
|
|
|
18949
19275
|
}
|
|
18950
19276
|
return expiration;
|
|
18951
19277
|
}, [paymentMethod?.cardExpYear, paymentMethod?.cardExpMonth]);
|
|
18952
|
-
const createSetupIntent =
|
|
19278
|
+
const createSetupIntent = useCallback10(async () => {
|
|
18953
19279
|
if (!api || !data.component?.id) {
|
|
18954
19280
|
return;
|
|
18955
19281
|
}
|
|
@@ -18968,7 +19294,7 @@ var PaymentMethod = forwardRef10(({ children, className, portal, allowEdit = tru
|
|
|
18968
19294
|
setIsLoading(false);
|
|
18969
19295
|
}
|
|
18970
19296
|
}, [t2, api, data.component?.id]);
|
|
18971
|
-
const updatePaymentMethod =
|
|
19297
|
+
const updatePaymentMethod = useCallback10(
|
|
18972
19298
|
async (id) => {
|
|
18973
19299
|
if (!api || !id) {
|
|
18974
19300
|
return;
|
|
@@ -19121,8 +19447,7 @@ var PaymentMethod = forwardRef10(({ children, className, portal, allowEdit = tru
|
|
|
19121
19447
|
PaymentMethod.displayName = "PaymentMethod";
|
|
19122
19448
|
|
|
19123
19449
|
// src/components/elements/plan-manager/PlanManager.tsx
|
|
19124
|
-
import { forwardRef as forwardRef11 } from "react";
|
|
19125
|
-
var import_pluralize6 = __toESM(require_pluralize());
|
|
19450
|
+
import { forwardRef as forwardRef11, useMemo as useMemo11 } from "react";
|
|
19126
19451
|
import { Fragment as Fragment12, jsx as jsx31, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
19127
19452
|
var resolveDesignProps5 = (props) => {
|
|
19128
19453
|
return {
|
|
@@ -19167,34 +19492,28 @@ var PlanManager = forwardRef11(({ children, className, portal, ...rest }, ref) =
|
|
|
19167
19492
|
};
|
|
19168
19493
|
const usageBasedEntitlements = (featureUsage?.features || []).reduce(
|
|
19169
19494
|
(acc, usage) => {
|
|
19170
|
-
const
|
|
19171
|
-
let price;
|
|
19172
|
-
let currencyCode;
|
|
19173
|
-
if (currentPlan?.planPeriod === "month") {
|
|
19174
|
-
price = usage.monthlyUsageBasedPrice?.price;
|
|
19175
|
-
currencyCode = usage.monthlyUsageBasedPrice?.currency;
|
|
19176
|
-
} else if (currentPlan?.planPeriod === "year") {
|
|
19177
|
-
price = usage.yearlyUsageBasedPrice?.price;
|
|
19178
|
-
currencyCode = usage.yearlyUsageBasedPrice?.currency;
|
|
19179
|
-
}
|
|
19495
|
+
const { price, currency } = (currentPlan?.planPeriod === "month" ? usage.monthlyUsageBasedPrice : usage.yearlyUsageBasedPrice) || {};
|
|
19180
19496
|
if (usage.priceBehavior && typeof price === "number") {
|
|
19181
|
-
acc.push({ ...usage, price,
|
|
19497
|
+
acc.push({ ...usage, price, currency });
|
|
19182
19498
|
}
|
|
19183
19499
|
return acc;
|
|
19184
19500
|
},
|
|
19185
19501
|
[]
|
|
19186
19502
|
);
|
|
19187
19503
|
const billingSubscription = data.company?.billingSubscription;
|
|
19504
|
+
const trialEndDays = useMemo11(() => {
|
|
19505
|
+
const trialEnd = billingSubscription?.trialEnd;
|
|
19506
|
+
const trialEndDate = trialEnd ? new Date(trialEnd * 1e3) : /* @__PURE__ */ new Date();
|
|
19507
|
+
const todayDate = /* @__PURE__ */ new Date();
|
|
19508
|
+
return Math.floor(
|
|
19509
|
+
(trialEndDate.getTime() - todayDate.getTime()) / (1e3 * 60 * 60 * 24)
|
|
19510
|
+
);
|
|
19511
|
+
}, [billingSubscription?.trialEnd]);
|
|
19188
19512
|
const subscriptionCurrency = billingSubscription?.currency;
|
|
19189
|
-
const
|
|
19190
|
-
const
|
|
19191
|
-
const trialEndDate = billingSubscription?.trialEnd ? new Date(billingSubscription.trialEnd * 1e3) : /* @__PURE__ */ new Date();
|
|
19192
|
-
const todayDate = /* @__PURE__ */ new Date();
|
|
19193
|
-
const trialEndDays = Math.floor(
|
|
19194
|
-
(trialEndDate.getTime() - todayDate.getTime()) / (1e3 * 60 * 60 * 24)
|
|
19195
|
-
);
|
|
19513
|
+
const isTrialSubscription = billingSubscription?.status === "trialing";
|
|
19514
|
+
const willSubscriptionCancel = billingSubscription?.cancelAtPeriodEnd;
|
|
19196
19515
|
return /* @__PURE__ */ jsxs25(Fragment12, { children: [
|
|
19197
|
-
|
|
19516
|
+
isTrialSubscription && !willSubscriptionCancel ? /* @__PURE__ */ jsxs25(
|
|
19198
19517
|
Box,
|
|
19199
19518
|
{
|
|
19200
19519
|
$backgroundColor: isLightBackground ? "hsla(0, 0%, 0%, 0.04)" : "hsla(0, 0%, 100%, 0.04)",
|
|
@@ -19217,7 +19536,7 @@ var PlanManager = forwardRef11(({ children, className, portal, ...rest }, ref) =
|
|
|
19217
19536
|
{
|
|
19218
19537
|
as: "p",
|
|
19219
19538
|
$font: theme.typography.text.fontFamily,
|
|
19220
|
-
$size: theme.typography.text.fontSize
|
|
19539
|
+
$size: 0.8125 * theme.typography.text.fontSize,
|
|
19221
19540
|
$weight: theme.typography.text.fontWeight,
|
|
19222
19541
|
$color: theme.typography.text.color,
|
|
19223
19542
|
children: data.trialPaymentMethodRequired ? t2("After the trial, subscribe") : defaultPlan ? t2("After the trial, cancel", {
|
|
@@ -19229,8 +19548,7 @@ var PlanManager = forwardRef11(({ children, className, portal, ...rest }, ref) =
|
|
|
19229
19548
|
)
|
|
19230
19549
|
]
|
|
19231
19550
|
}
|
|
19232
|
-
)
|
|
19233
|
-
showUnsubscribeBox && /* @__PURE__ */ jsxs25(
|
|
19551
|
+
) : willSubscriptionCancel && /* @__PURE__ */ jsxs25(
|
|
19234
19552
|
Box,
|
|
19235
19553
|
{
|
|
19236
19554
|
$backgroundColor: isLightBackground ? "hsla(0, 0%, 0%, 0.04)" : "hsla(0, 0%, 100%, 0.04)",
|
|
@@ -19253,10 +19571,10 @@ var PlanManager = forwardRef11(({ children, className, portal, ...rest }, ref) =
|
|
|
19253
19571
|
{
|
|
19254
19572
|
as: "p",
|
|
19255
19573
|
$font: theme.typography.text.fontFamily,
|
|
19256
|
-
$size: theme.typography.text.fontSize
|
|
19574
|
+
$size: 0.8125 * theme.typography.text.fontSize,
|
|
19257
19575
|
$weight: theme.typography.text.fontWeight,
|
|
19258
19576
|
$color: theme.typography.text.color,
|
|
19259
|
-
children: billingSubscription
|
|
19577
|
+
children: billingSubscription?.cancelAt ? t2("Access to plan will end on", {
|
|
19260
19578
|
date: toPrettyDate(
|
|
19261
19579
|
new Date(billingSubscription.cancelAt * 1e3),
|
|
19262
19580
|
{
|
|
@@ -19354,7 +19672,7 @@ var PlanManager = forwardRef11(({ children, className, portal, ...rest }, ref) =
|
|
|
19354
19672
|
children: t2("Add-ons")
|
|
19355
19673
|
}
|
|
19356
19674
|
),
|
|
19357
|
-
addOns.map((addOn) => /* @__PURE__ */ jsxs25(
|
|
19675
|
+
addOns.map((addOn, addOnIndex) => /* @__PURE__ */ jsxs25(
|
|
19358
19676
|
Flex,
|
|
19359
19677
|
{
|
|
19360
19678
|
$justifyContent: "space-between",
|
|
@@ -19390,7 +19708,7 @@ var PlanManager = forwardRef11(({ children, className, portal, ...rest }, ref) =
|
|
|
19390
19708
|
)
|
|
19391
19709
|
]
|
|
19392
19710
|
},
|
|
19393
|
-
|
|
19711
|
+
addOnIndex
|
|
19394
19712
|
))
|
|
19395
19713
|
] }),
|
|
19396
19714
|
usageBasedEntitlements.length > 0 && /* @__PURE__ */ jsxs25(Flex, { $flexDirection: "column", $gap: "1rem", children: [
|
|
@@ -19406,9 +19724,10 @@ var PlanManager = forwardRef11(({ children, className, portal, ...rest }, ref) =
|
|
|
19406
19724
|
}
|
|
19407
19725
|
),
|
|
19408
19726
|
usageBasedEntitlements.reduce(
|
|
19409
|
-
(acc, entitlement) => {
|
|
19727
|
+
(acc, entitlement, entitlementIndex) => {
|
|
19728
|
+
const limit = entitlement.softLimit ?? entitlement.allocation ?? 0;
|
|
19410
19729
|
const overageAmount = entitlement.priceBehavior === "overage" && (entitlement?.usage ?? 0) - (entitlement?.softLimit ?? 0);
|
|
19411
|
-
const amount =
|
|
19730
|
+
const amount = overageAmount || entitlement.allocation || 0;
|
|
19412
19731
|
if (entitlement.feature?.name) {
|
|
19413
19732
|
acc.push(
|
|
19414
19733
|
/* @__PURE__ */ jsxs25(
|
|
@@ -19419,22 +19738,28 @@ var PlanManager = forwardRef11(({ children, className, portal, ...rest }, ref) =
|
|
|
19419
19738
|
$flexWrap: "wrap",
|
|
19420
19739
|
$gap: "1rem",
|
|
19421
19740
|
children: [
|
|
19422
|
-
/* @__PURE__ */
|
|
19741
|
+
/* @__PURE__ */ jsxs25(
|
|
19423
19742
|
Text,
|
|
19424
19743
|
{
|
|
19425
19744
|
$font: theme.typography[props.addOns.fontStyle].fontFamily,
|
|
19426
19745
|
$size: theme.typography[props.addOns.fontStyle].fontSize,
|
|
19427
19746
|
$weight: theme.typography[props.addOns.fontStyle].fontWeight,
|
|
19428
19747
|
$color: theme.typography[props.addOns.fontStyle].color,
|
|
19429
|
-
children:
|
|
19430
|
-
|
|
19431
|
-
|
|
19432
|
-
|
|
19433
|
-
|
|
19748
|
+
children: [
|
|
19749
|
+
entitlement.priceBehavior === "pay_in_advance" || entitlement.priceBehavior === "overage" && limit > 0 ? /* @__PURE__ */ jsxs25(Fragment12, { children: [
|
|
19750
|
+
limit,
|
|
19751
|
+
" ",
|
|
19752
|
+
getFeatureName(entitlement.feature, limit)
|
|
19753
|
+
] }) : entitlement.feature.name,
|
|
19754
|
+
entitlement.priceBehavior === "overage" && entitlement.feature.featureType === "event" && currentPlan?.planPeriod && /* @__PURE__ */ jsxs25(Fragment12, { children: [
|
|
19755
|
+
"/",
|
|
19756
|
+
shortenPeriod(currentPlan.planPeriod)
|
|
19757
|
+
] })
|
|
19758
|
+
]
|
|
19434
19759
|
}
|
|
19435
19760
|
),
|
|
19436
19761
|
/* @__PURE__ */ jsxs25(Flex, { $alignItems: "center", $gap: "1rem", children: [
|
|
19437
|
-
entitlement.priceBehavior === "overage" && currentPlan?.planPeriod
|
|
19762
|
+
entitlement.priceBehavior === "overage" && currentPlan?.planPeriod ? /* @__PURE__ */ jsx31(
|
|
19438
19763
|
Text,
|
|
19439
19764
|
{
|
|
19440
19765
|
$font: theme.typography.text.fontFamily,
|
|
@@ -19449,23 +19774,19 @@ var PlanManager = forwardRef11(({ children, className, portal, ...rest }, ref) =
|
|
|
19449
19774
|
" ",
|
|
19450
19775
|
formatCurrency(
|
|
19451
19776
|
entitlement.price,
|
|
19452
|
-
entitlement.
|
|
19777
|
+
entitlement.currency
|
|
19453
19778
|
),
|
|
19454
19779
|
/* @__PURE__ */ jsxs25("sub", { children: [
|
|
19455
19780
|
"/",
|
|
19456
|
-
(
|
|
19457
|
-
|
|
19458
|
-
1
|
|
19459
|
-
),
|
|
19460
|
-
entitlement.feature.featureType === "event" && /* @__PURE__ */ jsxs25(Fragment12, { children: [
|
|
19781
|
+
getFeatureName(entitlement.feature, 1),
|
|
19782
|
+
entitlement.feature.featureType === "trait" && /* @__PURE__ */ jsxs25(Fragment12, { children: [
|
|
19461
19783
|
"/",
|
|
19462
19784
|
shortenPeriod(currentPlan.planPeriod)
|
|
19463
19785
|
] })
|
|
19464
19786
|
] })
|
|
19465
19787
|
] })
|
|
19466
19788
|
}
|
|
19467
|
-
)
|
|
19468
|
-
entitlement.priceBehavior === "pay_in_advance" && currentPlan?.planPeriod && /* @__PURE__ */ jsxs25(
|
|
19789
|
+
) : entitlement.priceBehavior === "pay_in_advance" && currentPlan?.planPeriod && /* @__PURE__ */ jsxs25(
|
|
19469
19790
|
Text,
|
|
19470
19791
|
{
|
|
19471
19792
|
$font: theme.typography.text.fontFamily,
|
|
@@ -19475,14 +19796,11 @@ var PlanManager = forwardRef11(({ children, className, portal, ...rest }, ref) =
|
|
|
19475
19796
|
children: [
|
|
19476
19797
|
formatCurrency(
|
|
19477
19798
|
entitlement.price,
|
|
19478
|
-
entitlement.
|
|
19799
|
+
entitlement.currency
|
|
19479
19800
|
),
|
|
19480
19801
|
/* @__PURE__ */ jsxs25("sub", { children: [
|
|
19481
19802
|
"/",
|
|
19482
|
-
(
|
|
19483
|
-
entitlement.feature.name.toLowerCase(),
|
|
19484
|
-
1
|
|
19485
|
-
),
|
|
19803
|
+
getFeatureName(entitlement.feature, 1),
|
|
19486
19804
|
"/",
|
|
19487
19805
|
shortenPeriod(currentPlan.planPeriod)
|
|
19488
19806
|
] })
|
|
@@ -19499,14 +19817,11 @@ var PlanManager = forwardRef11(({ children, className, portal, ...rest }, ref) =
|
|
|
19499
19817
|
children: [
|
|
19500
19818
|
formatCurrency(
|
|
19501
19819
|
entitlement.price * amount,
|
|
19502
|
-
entitlement.
|
|
19820
|
+
entitlement.currency
|
|
19503
19821
|
),
|
|
19504
19822
|
(entitlement.priceBehavior === "pay_in_advance" || entitlement.priceBehavior !== "overage") && /* @__PURE__ */ jsxs25("sub", { children: [
|
|
19505
19823
|
"/",
|
|
19506
|
-
currentPlan?.planPeriod && entitlement.priceBehavior === "pay_in_advance" ? shortenPeriod(currentPlan.planPeriod) : (
|
|
19507
|
-
entitlement.feature.name.toLowerCase(),
|
|
19508
|
-
1
|
|
19509
|
-
)
|
|
19824
|
+
currentPlan?.planPeriod && entitlement.priceBehavior === "pay_in_advance" ? shortenPeriod(currentPlan.planPeriod) : getFeatureName(entitlement.feature, 1)
|
|
19510
19825
|
] })
|
|
19511
19826
|
]
|
|
19512
19827
|
}
|
|
@@ -19514,7 +19829,7 @@ var PlanManager = forwardRef11(({ children, className, portal, ...rest }, ref) =
|
|
|
19514
19829
|
] })
|
|
19515
19830
|
]
|
|
19516
19831
|
},
|
|
19517
|
-
|
|
19832
|
+
entitlementIndex
|
|
19518
19833
|
)
|
|
19519
19834
|
);
|
|
19520
19835
|
}
|
|
@@ -19549,7 +19864,6 @@ PlanManager.displayName = "PlanManager";
|
|
|
19549
19864
|
|
|
19550
19865
|
// src/components/elements/pricing-table/PricingTable.tsx
|
|
19551
19866
|
import { forwardRef as forwardRef12, useState as useState15 } from "react";
|
|
19552
|
-
var import_pluralize7 = __toESM(require_pluralize());
|
|
19553
19867
|
import { Fragment as Fragment13, jsx as jsx32, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
19554
19868
|
var resolveDesignProps6 = (props) => {
|
|
19555
19869
|
return {
|
|
@@ -19680,13 +19994,11 @@ var PricingTable = forwardRef12(({ children, className, ...rest }, ref) => {
|
|
|
19680
19994
|
$display: "grid",
|
|
19681
19995
|
$gridTemplateColumns: "repeat(auto-fill, minmax(320px, 1fr))",
|
|
19682
19996
|
$gap: "1rem",
|
|
19683
|
-
children: plans.map((plan,
|
|
19997
|
+
children: plans.map((plan, planIndex, self2) => {
|
|
19684
19998
|
const isActivePlan = plan.current && data.company?.plan?.planPeriod === selectedPeriod;
|
|
19999
|
+
const { price: planPrice, currency: planCurrency } = (selectedPeriod === "month" ? plan.monthlyPrice : selectedPeriod === "year" && plan.yearlyPrice) || {};
|
|
19685
20000
|
const count = entitlementCounts[plan.id];
|
|
19686
|
-
|
|
19687
|
-
if (count?.limit && count.limit > VISIBLE_ENTITLEMENT_COUNT) {
|
|
19688
|
-
isExpanded = true;
|
|
19689
|
-
}
|
|
20001
|
+
const isExpanded = count.limit > VISIBLE_ENTITLEMENT_COUNT;
|
|
19690
20002
|
return /* @__PURE__ */ jsxs26(
|
|
19691
20003
|
Flex,
|
|
19692
20004
|
{
|
|
@@ -19706,7 +20018,7 @@ var PricingTable = forwardRef12(({ children, className, ...rest }, ref) => {
|
|
|
19706
20018
|
$flexDirection: "column",
|
|
19707
20019
|
$gap: "0.75rem",
|
|
19708
20020
|
$padding: `0 ${cardPadding}rem ${0.75 * cardPadding}rem`,
|
|
19709
|
-
$borderWidth:
|
|
20021
|
+
$borderWidth: 0,
|
|
19710
20022
|
$borderBottomWidth: "1px",
|
|
19711
20023
|
$borderStyle: "solid",
|
|
19712
20024
|
$borderColor: isLightBackground ? "hsla(0, 0%, 0%, 0.175)" : "hsla(0, 0%, 100%, 0.175)",
|
|
@@ -19739,10 +20051,7 @@ var PricingTable = forwardRef12(({ children, className, ...rest }, ref) => {
|
|
|
19739
20051
|
$size: theme.typography[props.plans.name.fontStyle].fontSize,
|
|
19740
20052
|
$weight: theme.typography[props.plans.name.fontStyle].fontWeight,
|
|
19741
20053
|
$color: theme.typography[props.plans.name.fontStyle].color,
|
|
19742
|
-
children: plan.custom ? plan.customPlanConfig?.priceText ? plan.customPlanConfig
|
|
19743
|
-
(selectedPeriod === "month" ? plan.monthlyPrice : plan.yearlyPrice)?.price ?? 0,
|
|
19744
|
-
(selectedPeriod === "month" ? plan.monthlyPrice : plan.yearlyPrice)?.currency
|
|
19745
|
-
)
|
|
20054
|
+
children: plan.custom ? plan.customPlanConfig?.priceText ? plan.customPlanConfig.priceText : t2("Custom Plan Price") : formatCurrency(planPrice ?? 0, planCurrency)
|
|
19746
20055
|
}
|
|
19747
20056
|
),
|
|
19748
20057
|
!plan.custom && /* @__PURE__ */ jsxs26(
|
|
@@ -19781,12 +20090,12 @@ var PricingTable = forwardRef12(({ children, className, ...rest }, ref) => {
|
|
|
19781
20090
|
{
|
|
19782
20091
|
$flexDirection: "column",
|
|
19783
20092
|
$justifyContent: "end",
|
|
19784
|
-
$flexGrow:
|
|
20093
|
+
$flexGrow: 1,
|
|
19785
20094
|
$gap: `${cardPadding}rem`,
|
|
19786
20095
|
$padding: `${0.75 * cardPadding}rem ${cardPadding}rem 0`,
|
|
19787
20096
|
children: [
|
|
19788
|
-
props.plans.showEntitlements && /* @__PURE__ */ jsxs26(Flex, { $flexDirection: "column", $gap: "1rem", $flexGrow:
|
|
19789
|
-
props.plans.showInclusionText &&
|
|
20097
|
+
props.plans.showEntitlements && /* @__PURE__ */ jsxs26(Flex, { $flexDirection: "column", $gap: "1rem", $flexGrow: 1, children: [
|
|
20098
|
+
props.plans.showInclusionText && planIndex > 0 && /* @__PURE__ */ jsx32(Box, { $marginBottom: "1.5rem", children: /* @__PURE__ */ jsx32(
|
|
19790
20099
|
Text,
|
|
19791
20100
|
{
|
|
19792
20101
|
$font: theme.typography.text.fontFamily,
|
|
@@ -19794,136 +20103,142 @@ var PricingTable = forwardRef12(({ children, className, ...rest }, ref) => {
|
|
|
19794
20103
|
$weight: theme.typography.text.fontWeight,
|
|
19795
20104
|
$color: theme.typography.text.color,
|
|
19796
20105
|
children: t2("Everything in", {
|
|
19797
|
-
plan: self2[
|
|
20106
|
+
plan: self2[planIndex - 1].name
|
|
19798
20107
|
})
|
|
19799
20108
|
}
|
|
19800
20109
|
) }),
|
|
19801
|
-
plan.entitlements.reduce(
|
|
19802
|
-
|
|
19803
|
-
|
|
19804
|
-
|
|
19805
|
-
|
|
19806
|
-
|
|
19807
|
-
|
|
19808
|
-
|
|
19809
|
-
|
|
19810
|
-
|
|
19811
|
-
|
|
19812
|
-
|
|
19813
|
-
|
|
19814
|
-
|
|
19815
|
-
|
|
19816
|
-
|
|
19817
|
-
|
|
19818
|
-
|
|
19819
|
-
|
|
19820
|
-
|
|
19821
|
-
|
|
19822
|
-
|
|
19823
|
-
|
|
19824
|
-
|
|
19825
|
-
|
|
19826
|
-
|
|
19827
|
-
|
|
19828
|
-
|
|
19829
|
-
|
|
19830
|
-
|
|
19831
|
-
|
|
19832
|
-
|
|
19833
|
-
|
|
19834
|
-
|
|
19835
|
-
|
|
19836
|
-
|
|
19837
|
-
|
|
19838
|
-
|
|
19839
|
-
|
|
19840
|
-
|
|
19841
|
-
|
|
19842
|
-
|
|
19843
|
-
|
|
19844
|
-
formatCurrency(price, currency),
|
|
19845
|
-
" ",
|
|
19846
|
-
t2("per"),
|
|
19847
|
-
" ",
|
|
19848
|
-
(0, import_pluralize7.default)(
|
|
19849
|
-
entitlement.feature.name,
|
|
19850
|
-
1
|
|
19851
|
-
),
|
|
19852
|
-
entitlement.priceBehavior === "pay_in_advance" && /* @__PURE__ */ jsxs26(Fragment13, { children: [
|
|
19853
|
-
" ",
|
|
19854
|
-
t2("per"),
|
|
19855
|
-
" ",
|
|
19856
|
-
selectedPeriod
|
|
19857
|
-
] })
|
|
19858
|
-
] }) : entitlement.valueType === "numeric" || entitlement.valueType === "unlimited" || entitlement.valueType === "trait" ? /* @__PURE__ */ jsxs26(Fragment13, { children: [
|
|
19859
|
-
entitlement.valueType === "unlimited" ? t2("Unlimited", {
|
|
19860
|
-
item: (0, import_pluralize7.default)(
|
|
19861
|
-
entitlement.feature.name
|
|
19862
|
-
)
|
|
19863
|
-
}) : typeof limit === "number" && /* @__PURE__ */ jsxs26(Fragment13, { children: [
|
|
19864
|
-
formatNumber(limit),
|
|
19865
|
-
" ",
|
|
19866
|
-
(0, import_pluralize7.default)(
|
|
19867
|
-
entitlement.feature.name,
|
|
19868
|
-
limit
|
|
19869
|
-
)
|
|
19870
|
-
] }),
|
|
19871
|
-
entitlement.metricPeriod ? /* @__PURE__ */ jsxs26(Fragment13, { children: [
|
|
20110
|
+
plan.entitlements.reduce(
|
|
20111
|
+
(acc, entitlement, entitlementIndex) => {
|
|
20112
|
+
const limit = entitlement.softLimit ?? entitlement.valueNumeric;
|
|
20113
|
+
const {
|
|
20114
|
+
price: entitlementPrice,
|
|
20115
|
+
currency: entitlementCurrency
|
|
20116
|
+
} = (selectedPeriod === "month" ? entitlement.meteredMonthlyPrice : selectedPeriod === "year" && entitlement.meteredYearlyPrice) || {};
|
|
20117
|
+
if (entitlement.priceBehavior && typeof entitlementPrice !== "number") {
|
|
20118
|
+
return acc;
|
|
20119
|
+
}
|
|
20120
|
+
acc.push(
|
|
20121
|
+
/* @__PURE__ */ jsxs26(Flex, { $gap: "1rem", children: [
|
|
20122
|
+
props.plans.showFeatureIcons && entitlement.feature?.icon && /* @__PURE__ */ jsx32(
|
|
20123
|
+
IconRound,
|
|
20124
|
+
{
|
|
20125
|
+
name: entitlement.feature.icon,
|
|
20126
|
+
size: "sm",
|
|
20127
|
+
colors: [
|
|
20128
|
+
theme.primary,
|
|
20129
|
+
isLightBackground ? "hsla(0, 0%, 0%, 0.0625)" : "hsla(0, 0%, 100%, 0.25)"
|
|
20130
|
+
]
|
|
20131
|
+
}
|
|
20132
|
+
),
|
|
20133
|
+
entitlement.feature?.name && /* @__PURE__ */ jsxs26(
|
|
20134
|
+
Flex,
|
|
20135
|
+
{
|
|
20136
|
+
$flexDirection: "column",
|
|
20137
|
+
$justifyContent: "center",
|
|
20138
|
+
$gap: "0.5rem",
|
|
20139
|
+
children: [
|
|
20140
|
+
/* @__PURE__ */ jsx32(
|
|
20141
|
+
Text,
|
|
20142
|
+
{
|
|
20143
|
+
$font: theme.typography.text.fontFamily,
|
|
20144
|
+
$size: theme.typography.text.fontSize,
|
|
20145
|
+
$weight: theme.typography.text.fontWeight,
|
|
20146
|
+
$color: theme.typography.text.color,
|
|
20147
|
+
$leading: 1.35,
|
|
20148
|
+
children: typeof entitlementPrice === "number" && (entitlement.priceBehavior === "pay_in_advance" || entitlement.priceBehavior === "pay_as_you_go") ? /* @__PURE__ */ jsxs26(Fragment13, { children: [
|
|
20149
|
+
formatCurrency(
|
|
20150
|
+
entitlementPrice,
|
|
20151
|
+
entitlementCurrency
|
|
20152
|
+
),
|
|
19872
20153
|
" ",
|
|
19873
20154
|
t2("per"),
|
|
19874
20155
|
" ",
|
|
19875
|
-
|
|
19876
|
-
|
|
19877
|
-
|
|
19878
|
-
|
|
19879
|
-
|
|
19880
|
-
|
|
19881
|
-
|
|
19882
|
-
|
|
19883
|
-
|
|
19884
|
-
|
|
19885
|
-
|
|
19886
|
-
|
|
19887
|
-
|
|
19888
|
-
|
|
19889
|
-
|
|
19890
|
-
|
|
19891
|
-
|
|
19892
|
-
|
|
19893
|
-
|
|
19894
|
-
|
|
19895
|
-
|
|
19896
|
-
|
|
19897
|
-
|
|
19898
|
-
|
|
19899
|
-
|
|
19900
|
-
|
|
19901
|
-
|
|
19902
|
-
|
|
19903
|
-
|
|
19904
|
-
|
|
19905
|
-
|
|
19906
|
-
|
|
19907
|
-
|
|
19908
|
-
entitlement.feature.
|
|
19909
|
-
|
|
20156
|
+
getFeatureName(
|
|
20157
|
+
entitlement.feature,
|
|
20158
|
+
1
|
|
20159
|
+
),
|
|
20160
|
+
entitlement.priceBehavior === "pay_in_advance" && /* @__PURE__ */ jsxs26(Fragment13, { children: [
|
|
20161
|
+
" ",
|
|
20162
|
+
t2("per"),
|
|
20163
|
+
" ",
|
|
20164
|
+
selectedPeriod
|
|
20165
|
+
] })
|
|
20166
|
+
] }) : entitlement.valueType === "numeric" || entitlement.valueType === "unlimited" || entitlement.valueType === "trait" ? /* @__PURE__ */ jsxs26(Fragment13, { children: [
|
|
20167
|
+
entitlement.valueType === "unlimited" && !entitlement.priceBehavior ? t2("Unlimited", {
|
|
20168
|
+
item: getFeatureName(
|
|
20169
|
+
entitlement.feature
|
|
20170
|
+
)
|
|
20171
|
+
}) : typeof limit === "number" && /* @__PURE__ */ jsxs26(Fragment13, { children: [
|
|
20172
|
+
formatNumber(limit),
|
|
20173
|
+
" ",
|
|
20174
|
+
getFeatureName(
|
|
20175
|
+
entitlement.feature,
|
|
20176
|
+
limit
|
|
20177
|
+
)
|
|
20178
|
+
] }),
|
|
20179
|
+
entitlement.metricPeriod && entitlement.priceBehavior !== "overage" ? /* @__PURE__ */ jsxs26(Fragment13, { children: [
|
|
20180
|
+
" ",
|
|
20181
|
+
t2("per"),
|
|
20182
|
+
" ",
|
|
20183
|
+
{
|
|
20184
|
+
billing: "billing period",
|
|
20185
|
+
current_day: "day",
|
|
20186
|
+
current_month: "month",
|
|
20187
|
+
current_year: "year"
|
|
20188
|
+
}[entitlement.metricPeriod]
|
|
20189
|
+
] }) : entitlement.priceBehavior === "overage" && entitlement.feature.featureType === "event" && /* @__PURE__ */ jsxs26(Fragment13, { children: [
|
|
20190
|
+
"/",
|
|
20191
|
+
shortenPeriod(
|
|
20192
|
+
selectedPeriod
|
|
20193
|
+
)
|
|
20194
|
+
] })
|
|
20195
|
+
] }) : entitlement.feature.name
|
|
20196
|
+
}
|
|
20197
|
+
),
|
|
20198
|
+
entitlement.priceBehavior === "overage" && typeof entitlementPrice === "number" && /* @__PURE__ */ jsxs26(
|
|
20199
|
+
Text,
|
|
20200
|
+
{
|
|
20201
|
+
$font: theme.typography.text.fontFamily,
|
|
20202
|
+
$size: 0.875 * theme.typography.text.fontSize,
|
|
20203
|
+
$weight: theme.typography.text.fontWeight,
|
|
20204
|
+
$color: hexToHSL(
|
|
20205
|
+
theme.typography.text.color
|
|
20206
|
+
).l > 50 ? darken(
|
|
20207
|
+
theme.typography.text.color,
|
|
20208
|
+
0.46
|
|
20209
|
+
) : lighten(
|
|
20210
|
+
theme.typography.text.color,
|
|
20211
|
+
0.46
|
|
19910
20212
|
),
|
|
19911
|
-
|
|
20213
|
+
$leading: 1.35,
|
|
20214
|
+
children: [
|
|
20215
|
+
formatCurrency(
|
|
20216
|
+
entitlementPrice,
|
|
20217
|
+
entitlementCurrency
|
|
20218
|
+
),
|
|
19912
20219
|
"/",
|
|
19913
|
-
|
|
19914
|
-
|
|
19915
|
-
|
|
19916
|
-
|
|
19917
|
-
|
|
19918
|
-
|
|
19919
|
-
|
|
19920
|
-
|
|
19921
|
-
|
|
19922
|
-
|
|
19923
|
-
|
|
19924
|
-
|
|
19925
|
-
|
|
19926
|
-
|
|
20220
|
+
getFeatureName(
|
|
20221
|
+
entitlement.feature,
|
|
20222
|
+
1
|
|
20223
|
+
),
|
|
20224
|
+
entitlement.feature.featureType === "trait" && /* @__PURE__ */ jsxs26(Fragment13, { children: [
|
|
20225
|
+
"/",
|
|
20226
|
+
shortenPeriod(selectedPeriod)
|
|
20227
|
+
] }),
|
|
20228
|
+
" ",
|
|
20229
|
+
t2("overage fee")
|
|
20230
|
+
]
|
|
20231
|
+
}
|
|
20232
|
+
)
|
|
20233
|
+
]
|
|
20234
|
+
}
|
|
20235
|
+
)
|
|
20236
|
+
] }, entitlementIndex)
|
|
20237
|
+
);
|
|
20238
|
+
return acc;
|
|
20239
|
+
},
|
|
20240
|
+
[]
|
|
20241
|
+
).slice(0, count?.limit ?? VISIBLE_ENTITLEMENT_COUNT),
|
|
19927
20242
|
(count?.size || plan.entitlements.length) > VISIBLE_ENTITLEMENT_COUNT && /* @__PURE__ */ jsxs26(
|
|
19928
20243
|
Flex,
|
|
19929
20244
|
{
|
|
@@ -19950,8 +20265,8 @@ var PricingTable = forwardRef12(({ children, className, ...rest }, ref) => {
|
|
|
19950
20265
|
$font: theme.typography.link.fontFamily,
|
|
19951
20266
|
$size: theme.typography.link.fontSize,
|
|
19952
20267
|
$weight: theme.typography.link.fontWeight,
|
|
19953
|
-
$leading: 1,
|
|
19954
20268
|
$color: theme.typography.link.color,
|
|
20269
|
+
$leading: 1,
|
|
19955
20270
|
style: { cursor: "pointer" },
|
|
19956
20271
|
children: isExpanded ? t2("Hide all") : t2("See all")
|
|
19957
20272
|
}
|
|
@@ -19982,9 +20297,11 @@ var PricingTable = forwardRef12(({ children, className, ...rest }, ref) => {
|
|
|
19982
20297
|
/* @__PURE__ */ jsx32(
|
|
19983
20298
|
Text,
|
|
19984
20299
|
{
|
|
20300
|
+
$font: theme.typography.text.fontFamily,
|
|
19985
20301
|
$size: 15,
|
|
19986
|
-
$
|
|
20302
|
+
$weight: theme.typography.text.fontWeight,
|
|
19987
20303
|
$color: theme.typography.text.color,
|
|
20304
|
+
$leading: 1,
|
|
19988
20305
|
children: t2("Current plan")
|
|
19989
20306
|
}
|
|
19990
20307
|
)
|
|
@@ -20005,7 +20322,7 @@ var PricingTable = forwardRef12(({ children, className, ...rest }, ref) => {
|
|
|
20005
20322
|
setLayout("checkout");
|
|
20006
20323
|
}
|
|
20007
20324
|
},
|
|
20008
|
-
...
|
|
20325
|
+
...planIndex > currentPlanIndex ? {
|
|
20009
20326
|
$size: props.upgrade.buttonSize,
|
|
20010
20327
|
$color: props.upgrade.buttonStyle,
|
|
20011
20328
|
$variant: "filled"
|
|
@@ -20037,7 +20354,7 @@ var PricingTable = forwardRef12(({ children, className, ...rest }, ref) => {
|
|
|
20037
20354
|
)
|
|
20038
20355
|
]
|
|
20039
20356
|
},
|
|
20040
|
-
|
|
20357
|
+
planIndex
|
|
20041
20358
|
);
|
|
20042
20359
|
})
|
|
20043
20360
|
}
|
|
@@ -20068,8 +20385,9 @@ var PricingTable = forwardRef12(({ children, className, ...rest }, ref) => {
|
|
|
20068
20385
|
$display: "grid",
|
|
20069
20386
|
$gridTemplateColumns: "repeat(auto-fill, minmax(320px, 1fr))",
|
|
20070
20387
|
$gap: "1rem",
|
|
20071
|
-
children: addOns.map((addOn,
|
|
20388
|
+
children: addOns.map((addOn, addOnIndex) => {
|
|
20072
20389
|
const isActiveAddOn = addOn.current && selectedPeriod === data.company?.addOns.find((a2) => a2.id === addOn.id)?.planPeriod;
|
|
20390
|
+
const { price: addOnPrice, currency: addOnCurrency } = (selectedPeriod === "month" ? addOn.monthlyPrice : selectedPeriod === "year" && addOn.yearlyPrice) || {};
|
|
20073
20391
|
return /* @__PURE__ */ jsxs26(
|
|
20074
20392
|
Flex,
|
|
20075
20393
|
{
|
|
@@ -20113,10 +20431,7 @@ var PricingTable = forwardRef12(({ children, className, ...rest }, ref) => {
|
|
|
20113
20431
|
$size: theme.typography[props.plans.name.fontStyle].fontSize,
|
|
20114
20432
|
$weight: theme.typography[props.plans.name.fontStyle].fontWeight,
|
|
20115
20433
|
$color: theme.typography[props.plans.name.fontStyle].color,
|
|
20116
|
-
children: formatCurrency(
|
|
20117
|
-
(selectedPeriod === "month" ? addOn.monthlyPrice : addOn.yearlyPrice)?.price ?? 0,
|
|
20118
|
-
(selectedPeriod === "month" ? addOn.monthlyPrice : addOn.yearlyPrice)?.currency
|
|
20119
|
-
)
|
|
20434
|
+
children: formatCurrency(addOnPrice ?? 0, addOnCurrency)
|
|
20120
20435
|
}
|
|
20121
20436
|
),
|
|
20122
20437
|
/* @__PURE__ */ jsxs26(
|
|
@@ -20154,7 +20469,7 @@ var PricingTable = forwardRef12(({ children, className, ...rest }, ref) => {
|
|
|
20154
20469
|
$flexDirection: "column",
|
|
20155
20470
|
$justifyContent: "end",
|
|
20156
20471
|
$gap: `${cardPadding}rem`,
|
|
20157
|
-
$flexGrow:
|
|
20472
|
+
$flexGrow: 1,
|
|
20158
20473
|
children: [
|
|
20159
20474
|
props.addOns.showEntitlements && /* @__PURE__ */ jsx32(
|
|
20160
20475
|
Flex,
|
|
@@ -20162,59 +20477,70 @@ var PricingTable = forwardRef12(({ children, className, ...rest }, ref) => {
|
|
|
20162
20477
|
$flexDirection: "column",
|
|
20163
20478
|
$position: "relative",
|
|
20164
20479
|
$gap: "1rem",
|
|
20165
|
-
$flexGrow:
|
|
20166
|
-
children: addOn.entitlements.map(
|
|
20167
|
-
|
|
20168
|
-
|
|
20169
|
-
|
|
20170
|
-
|
|
20171
|
-
|
|
20172
|
-
|
|
20173
|
-
|
|
20174
|
-
|
|
20175
|
-
|
|
20176
|
-
|
|
20177
|
-
|
|
20178
|
-
|
|
20179
|
-
|
|
20180
|
-
|
|
20181
|
-
|
|
20182
|
-
|
|
20183
|
-
|
|
20184
|
-
|
|
20185
|
-
|
|
20186
|
-
|
|
20187
|
-
|
|
20188
|
-
|
|
20189
|
-
|
|
20190
|
-
|
|
20191
|
-
|
|
20192
|
-
|
|
20193
|
-
|
|
20194
|
-
entitlement.valueType === "unlimited" ?
|
|
20195
|
-
|
|
20196
|
-
|
|
20197
|
-
|
|
20198
|
-
|
|
20199
|
-
|
|
20200
|
-
|
|
20201
|
-
|
|
20202
|
-
|
|
20203
|
-
|
|
20204
|
-
|
|
20205
|
-
|
|
20206
|
-
|
|
20207
|
-
|
|
20208
|
-
}
|
|
20209
|
-
|
|
20210
|
-
|
|
20211
|
-
|
|
20212
|
-
|
|
20213
|
-
|
|
20214
|
-
|
|
20215
|
-
|
|
20216
|
-
|
|
20217
|
-
|
|
20480
|
+
$flexGrow: 1,
|
|
20481
|
+
children: addOn.entitlements.map(
|
|
20482
|
+
(entitlement, entitlementIndex) => {
|
|
20483
|
+
return /* @__PURE__ */ jsx32(
|
|
20484
|
+
Flex,
|
|
20485
|
+
{
|
|
20486
|
+
$flexWrap: "wrap",
|
|
20487
|
+
$justifyContent: "space-between",
|
|
20488
|
+
$alignItems: "center",
|
|
20489
|
+
$gap: "1rem",
|
|
20490
|
+
children: /* @__PURE__ */ jsxs26(Flex, { $gap: "1rem", children: [
|
|
20491
|
+
props.addOns.showFeatureIcons && entitlement.feature?.icon && /* @__PURE__ */ jsx32(
|
|
20492
|
+
IconRound,
|
|
20493
|
+
{
|
|
20494
|
+
name: entitlement.feature.icon,
|
|
20495
|
+
size: "sm",
|
|
20496
|
+
colors: [
|
|
20497
|
+
theme.primary,
|
|
20498
|
+
isLightBackground ? "hsla(0, 0%, 0%, 0.0625)" : "hsla(0, 0%, 100%, 0.25)"
|
|
20499
|
+
]
|
|
20500
|
+
}
|
|
20501
|
+
),
|
|
20502
|
+
entitlement.feature?.name && /* @__PURE__ */ jsx32(Flex, { $alignItems: "center", children: /* @__PURE__ */ jsx32(
|
|
20503
|
+
Text,
|
|
20504
|
+
{
|
|
20505
|
+
$font: theme.typography.text.fontFamily,
|
|
20506
|
+
$size: theme.typography.text.fontSize,
|
|
20507
|
+
$weight: theme.typography.text.fontWeight,
|
|
20508
|
+
$color: theme.typography.text.color,
|
|
20509
|
+
children: entitlement.valueType === "numeric" || entitlement.valueType === "unlimited" || entitlement.valueType === "trait" ? /* @__PURE__ */ jsxs26(Fragment13, { children: [
|
|
20510
|
+
entitlement.valueType === "unlimited" ? t2("Unlimited", {
|
|
20511
|
+
item: getFeatureName(
|
|
20512
|
+
entitlement.feature
|
|
20513
|
+
)
|
|
20514
|
+
}) : typeof entitlement.valueNumeric === "number" && /* @__PURE__ */ jsxs26(Fragment13, { children: [
|
|
20515
|
+
formatNumber(
|
|
20516
|
+
entitlement.valueNumeric
|
|
20517
|
+
),
|
|
20518
|
+
" ",
|
|
20519
|
+
getFeatureName(
|
|
20520
|
+
entitlement.feature,
|
|
20521
|
+
entitlement.valueNumeric
|
|
20522
|
+
)
|
|
20523
|
+
] }),
|
|
20524
|
+
entitlement.metricPeriod && /* @__PURE__ */ jsxs26(Fragment13, { children: [
|
|
20525
|
+
" ",
|
|
20526
|
+
t2("per"),
|
|
20527
|
+
" ",
|
|
20528
|
+
{
|
|
20529
|
+
billing: "billing period",
|
|
20530
|
+
current_day: "day",
|
|
20531
|
+
current_month: "month",
|
|
20532
|
+
current_year: "year"
|
|
20533
|
+
}[entitlement.metricPeriod]
|
|
20534
|
+
] })
|
|
20535
|
+
] }) : entitlement.feature.name
|
|
20536
|
+
}
|
|
20537
|
+
) })
|
|
20538
|
+
] })
|
|
20539
|
+
},
|
|
20540
|
+
entitlementIndex
|
|
20541
|
+
);
|
|
20542
|
+
}
|
|
20543
|
+
)
|
|
20218
20544
|
}
|
|
20219
20545
|
),
|
|
20220
20546
|
props.upgrade.isVisible && /* @__PURE__ */ jsx32(
|
|
@@ -20241,7 +20567,7 @@ var PricingTable = forwardRef12(({ children, className, ...rest }, ref) => {
|
|
|
20241
20567
|
)
|
|
20242
20568
|
]
|
|
20243
20569
|
},
|
|
20244
|
-
|
|
20570
|
+
addOnIndex
|
|
20245
20571
|
);
|
|
20246
20572
|
})
|
|
20247
20573
|
}
|
|
@@ -20254,7 +20580,7 @@ var PricingTable = forwardRef12(({ children, className, ...rest }, ref) => {
|
|
|
20254
20580
|
PricingTable.displayName = "PricingTable";
|
|
20255
20581
|
|
|
20256
20582
|
// src/components/elements/upcoming-bill/UpcomingBill.tsx
|
|
20257
|
-
import { forwardRef as forwardRef13, useMemo as
|
|
20583
|
+
import { forwardRef as forwardRef13, useMemo as useMemo12 } from "react";
|
|
20258
20584
|
import { jsx as jsx33, jsxs as jsxs27 } from "react/jsx-runtime";
|
|
20259
20585
|
function resolveDesignProps7(props) {
|
|
20260
20586
|
return {
|
|
@@ -20280,7 +20606,7 @@ var UpcomingBill = forwardRef13(({ className, ...rest }, ref) => {
|
|
|
20280
20606
|
const theme = nt();
|
|
20281
20607
|
const { data } = useEmbed();
|
|
20282
20608
|
const isLightBackground = useIsLightBackground();
|
|
20283
|
-
const { upcomingInvoice, discounts } =
|
|
20609
|
+
const { upcomingInvoice, discounts } = useMemo12(() => {
|
|
20284
20610
|
const discounts2 = (data.subscription?.discounts || []).map((discount) => ({
|
|
20285
20611
|
amountOff: discount.amountOff,
|
|
20286
20612
|
couponId: discount.couponId,
|
|
@@ -20592,14 +20918,28 @@ var ComponentTree = () => {
|
|
|
20592
20918
|
|
|
20593
20919
|
// src/components/embed/Embed.tsx
|
|
20594
20920
|
import { jsx as jsx36 } from "react/jsx-runtime";
|
|
20595
|
-
var SchematicEmbed = ({
|
|
20921
|
+
var SchematicEmbed = ({
|
|
20922
|
+
id,
|
|
20923
|
+
accessToken,
|
|
20924
|
+
apiConfig,
|
|
20925
|
+
debug
|
|
20926
|
+
}) => {
|
|
20596
20927
|
if (accessToken?.length === 0) {
|
|
20597
20928
|
return /* @__PURE__ */ jsx36("div", { children: "Please provide an access token." });
|
|
20598
20929
|
}
|
|
20599
20930
|
if (!accessToken?.startsWith("token_")) {
|
|
20600
20931
|
return /* @__PURE__ */ jsx36("div", { children: 'Invalid access token; your temporary access token will start with "token_".' });
|
|
20601
20932
|
}
|
|
20602
|
-
return /* @__PURE__ */ jsx36(
|
|
20933
|
+
return /* @__PURE__ */ jsx36(
|
|
20934
|
+
EmbedProvider,
|
|
20935
|
+
{
|
|
20936
|
+
id,
|
|
20937
|
+
accessToken,
|
|
20938
|
+
apiConfig,
|
|
20939
|
+
debug,
|
|
20940
|
+
children: /* @__PURE__ */ jsx36(ComponentTree, {})
|
|
20941
|
+
}
|
|
20942
|
+
);
|
|
20603
20943
|
};
|
|
20604
20944
|
export {
|
|
20605
20945
|
Box,
|
|
@@ -20630,6 +20970,7 @@ export {
|
|
|
20630
20970
|
SchematicEmbed,
|
|
20631
20971
|
StyledCard,
|
|
20632
20972
|
Text,
|
|
20973
|
+
TextPropNames,
|
|
20633
20974
|
Tooltip,
|
|
20634
20975
|
UnsubscribeButton,
|
|
20635
20976
|
UpcomingBill,
|