@schematichq/schematic-react 0.2.0-rc.8 → 0.2.0-rc.9
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/schematic-react.cjs.js +405 -172
- package/dist/schematic-react.d.ts +69 -0
- package/dist/schematic-react.esm.js +407 -174
- package/package.json +1 -1
@@ -7836,6 +7836,35 @@ function HydrateComponentResponseFromJSONTyped(json, ignoreDiscriminator) {
|
|
7836
7836
|
};
|
7837
7837
|
}
|
7838
7838
|
|
7839
|
+
// src/api/models/PreviewSubscriptionChangeResponseData.ts
|
7840
|
+
function PreviewSubscriptionChangeResponseDataFromJSON(json) {
|
7841
|
+
return PreviewSubscriptionChangeResponseDataFromJSONTyped(json, false);
|
7842
|
+
}
|
7843
|
+
function PreviewSubscriptionChangeResponseDataFromJSONTyped(json, ignoreDiscriminator) {
|
7844
|
+
if (json == null) {
|
7845
|
+
return json;
|
7846
|
+
}
|
7847
|
+
return {
|
7848
|
+
dueNow: json["due_now"],
|
7849
|
+
newCharges: json["new_charges"],
|
7850
|
+
proration: json["proration"]
|
7851
|
+
};
|
7852
|
+
}
|
7853
|
+
|
7854
|
+
// src/api/models/PreviewCheckoutResponse.ts
|
7855
|
+
function PreviewCheckoutResponseFromJSON(json) {
|
7856
|
+
return PreviewCheckoutResponseFromJSONTyped(json, false);
|
7857
|
+
}
|
7858
|
+
function PreviewCheckoutResponseFromJSONTyped(json, ignoreDiscriminator) {
|
7859
|
+
if (json == null) {
|
7860
|
+
return json;
|
7861
|
+
}
|
7862
|
+
return {
|
7863
|
+
data: PreviewSubscriptionChangeResponseDataFromJSON(json["data"]),
|
7864
|
+
params: json["params"]
|
7865
|
+
};
|
7866
|
+
}
|
7867
|
+
|
7839
7868
|
// src/api/apis/CheckoutApi.ts
|
7840
7869
|
var CheckoutApi = class extends BaseAPI {
|
7841
7870
|
/**
|
@@ -7924,6 +7953,51 @@ var CheckoutApi = class extends BaseAPI {
|
|
7924
7953
|
);
|
7925
7954
|
return await response.value();
|
7926
7955
|
}
|
7956
|
+
/**
|
7957
|
+
* Preview checkout
|
7958
|
+
*/
|
7959
|
+
async previewCheckoutRaw(requestParameters, initOverrides) {
|
7960
|
+
if (requestParameters["changeSubscriptionRequestBody"] == null) {
|
7961
|
+
throw new RequiredError(
|
7962
|
+
"changeSubscriptionRequestBody",
|
7963
|
+
'Required parameter "changeSubscriptionRequestBody" was null or undefined when calling previewCheckout().'
|
7964
|
+
);
|
7965
|
+
}
|
7966
|
+
const queryParameters = {};
|
7967
|
+
const headerParameters = {};
|
7968
|
+
headerParameters["Content-Type"] = "application/json";
|
7969
|
+
if (this.configuration && this.configuration.apiKey) {
|
7970
|
+
headerParameters["X-Schematic-Api-Key"] = await this.configuration.apiKey(
|
7971
|
+
"X-Schematic-Api-Key"
|
7972
|
+
);
|
7973
|
+
}
|
7974
|
+
const response = await this.request(
|
7975
|
+
{
|
7976
|
+
path: `/checkout/preview`,
|
7977
|
+
method: "POST",
|
7978
|
+
headers: headerParameters,
|
7979
|
+
query: queryParameters,
|
7980
|
+
body: ChangeSubscriptionRequestBodyToJSON(
|
7981
|
+
requestParameters["changeSubscriptionRequestBody"]
|
7982
|
+
)
|
7983
|
+
},
|
7984
|
+
initOverrides
|
7985
|
+
);
|
7986
|
+
return new JSONApiResponse(
|
7987
|
+
response,
|
7988
|
+
(jsonValue) => PreviewCheckoutResponseFromJSON(jsonValue)
|
7989
|
+
);
|
7990
|
+
}
|
7991
|
+
/**
|
7992
|
+
* Preview checkout
|
7993
|
+
*/
|
7994
|
+
async previewCheckout(requestParameters, initOverrides) {
|
7995
|
+
const response = await this.previewCheckoutRaw(
|
7996
|
+
requestParameters,
|
7997
|
+
initOverrides
|
7998
|
+
);
|
7999
|
+
return await response.value();
|
8000
|
+
}
|
7927
8001
|
};
|
7928
8002
|
|
7929
8003
|
// src/context/embed.tsx
|
@@ -9668,11 +9742,19 @@ function toPrettyDate(date) {
|
|
9668
9742
|
year: "numeric"
|
9669
9743
|
}).format(new Date(date));
|
9670
9744
|
}
|
9745
|
+
function getMonthName(date) {
|
9746
|
+
return new Intl.DateTimeFormat("en-US", {
|
9747
|
+
month: "long"
|
9748
|
+
}).format(new Date(date));
|
9749
|
+
}
|
9671
9750
|
|
9672
9751
|
// src/utils/string.ts
|
9673
9752
|
function camelToHyphen(str) {
|
9674
9753
|
return str.replace(/([a-z][A-Z])/g, (g2) => `${g2[0]}-${g2[1].toLowerCase()}`);
|
9675
9754
|
}
|
9755
|
+
function formatNumber(num) {
|
9756
|
+
return new Intl.NumberFormat("en-US").format(num);
|
9757
|
+
}
|
9676
9758
|
function formatCurrency(amount) {
|
9677
9759
|
try {
|
9678
9760
|
const dollars = amount / 100;
|
@@ -9701,6 +9783,18 @@ function formatCurrency(amount) {
|
|
9701
9783
|
}).format(amount / 100);
|
9702
9784
|
}
|
9703
9785
|
}
|
9786
|
+
function formatOrdinal(n) {
|
9787
|
+
const enOrdinalRules = new Intl.PluralRules("en-US", { type: "ordinal" });
|
9788
|
+
const suffixes = /* @__PURE__ */ new Map([
|
9789
|
+
["one", "st"],
|
9790
|
+
["two", "nd"],
|
9791
|
+
["few", "rd"],
|
9792
|
+
["other", "th"]
|
9793
|
+
]);
|
9794
|
+
const rule = enOrdinalRules.select(n);
|
9795
|
+
const suffix = suffixes.get(rule);
|
9796
|
+
return `${n}${suffix}`;
|
9797
|
+
}
|
9704
9798
|
|
9705
9799
|
// src/const/index.ts
|
9706
9800
|
var TEXT_BASE_SIZE = 16;
|
@@ -10156,7 +10250,7 @@ var ProgressBar = ({
|
|
10156
10250
|
};
|
10157
10251
|
|
10158
10252
|
// src/components/elements/plan-manager/CheckoutDialog.tsx
|
10159
|
-
import { useMemo as useMemo6, useState as useState3 } from "react";
|
10253
|
+
import { useCallback as useCallback5, useMemo as useMemo6, useState as useState3 } from "react";
|
10160
10254
|
var import_pluralize = __toESM(require_pluralize());
|
10161
10255
|
|
10162
10256
|
// src/components/elements/payment-method/PaymentMethod.tsx
|
@@ -10665,8 +10759,8 @@ var FeatureName = ({
|
|
10665
10759
|
if (entitlement.metricPeriod) {
|
10666
10760
|
period = {
|
10667
10761
|
current_day: "day",
|
10668
|
-
current_month: "
|
10669
|
-
current_year: "
|
10762
|
+
current_month: "month",
|
10763
|
+
current_year: "year"
|
10670
10764
|
}[entitlement.metricPeriod];
|
10671
10765
|
}
|
10672
10766
|
return /* @__PURE__ */ jsx11(Flex, { $alignItems: "center", children: /* @__PURE__ */ jsxs6(
|
@@ -10677,12 +10771,8 @@ var FeatureName = ({
|
|
10677
10771
|
$weight: theme.typography.text.fontWeight,
|
10678
10772
|
$color: theme.typography.text.color,
|
10679
10773
|
children: [
|
10680
|
-
typeof entitlement.valueNumeric === "number" ? (0, import_pluralize.default)(
|
10681
|
-
|
10682
|
-
entitlement.valueNumeric,
|
10683
|
-
true
|
10684
|
-
) : `Unlimited ${(0, import_pluralize.default)(entitlement.feature.name)}`,
|
10685
|
-
period && `/${period}`
|
10774
|
+
typeof entitlement.valueNumeric === "number" ? `${formatNumber(entitlement.valueNumeric)} ${(0, import_pluralize.default)(entitlement.feature.name, entitlement.valueNumeric)}` : `Unlimited ${(0, import_pluralize.default)(entitlement.feature.name)}`,
|
10775
|
+
period && ` per ${period}`
|
10686
10776
|
]
|
10687
10777
|
}
|
10688
10778
|
) });
|
@@ -10708,6 +10798,7 @@ var CheckoutDialog = () => {
|
|
10708
10798
|
() => data.company?.plan?.planPeriod || "month"
|
10709
10799
|
);
|
10710
10800
|
const [selectedPlan, setSelectedPlan] = useState3();
|
10801
|
+
const [charges, setCharges] = useState3();
|
10711
10802
|
const [paymentMethodId, setPaymentMethodId] = useState3();
|
10712
10803
|
const [isLoading, setIsLoading] = useState3(false);
|
10713
10804
|
const [error, setError] = useState3();
|
@@ -10750,9 +10841,54 @@ var CheckoutDialog = () => {
|
|
10750
10841
|
}
|
10751
10842
|
return 0;
|
10752
10843
|
}, [selectedPlan]);
|
10844
|
+
const subscriptionPrice = useMemo6(() => {
|
10845
|
+
if (!selectedPlan || !selectedPlan.monthlyPrice || !selectedPlan.yearlyPrice) {
|
10846
|
+
return;
|
10847
|
+
}
|
10848
|
+
return formatCurrency(
|
10849
|
+
(planPeriod === "month" ? selectedPlan.monthlyPrice : selectedPlan.yearlyPrice)?.price
|
10850
|
+
);
|
10851
|
+
}, [selectedPlan, planPeriod]);
|
10753
10852
|
const isLightBackground = useMemo6(() => {
|
10754
10853
|
return hexToHSL(theme.card.background).l > 50;
|
10755
10854
|
}, [theme.card.background]);
|
10855
|
+
const selectPlan = useCallback5(
|
10856
|
+
async (plan, newPeriod) => {
|
10857
|
+
setSelectedPlan(plan);
|
10858
|
+
setCharges(void 0);
|
10859
|
+
const period = newPeriod || planPeriod;
|
10860
|
+
const priceId = (period === "month" ? plan?.monthlyPrice : plan?.yearlyPrice)?.id;
|
10861
|
+
if (!priceId || !api) {
|
10862
|
+
return;
|
10863
|
+
}
|
10864
|
+
try {
|
10865
|
+
setIsLoading(true);
|
10866
|
+
const { data: data2 } = await api.previewCheckout({
|
10867
|
+
changeSubscriptionRequestBody: {
|
10868
|
+
newPlanId: plan.id,
|
10869
|
+
newPriceId: priceId
|
10870
|
+
}
|
10871
|
+
});
|
10872
|
+
setCharges(data2);
|
10873
|
+
} catch {
|
10874
|
+
setError(
|
10875
|
+
"Error retrieving plan details. Please try again in a moment."
|
10876
|
+
);
|
10877
|
+
} finally {
|
10878
|
+
setIsLoading(false);
|
10879
|
+
}
|
10880
|
+
},
|
10881
|
+
[api, planPeriod]
|
10882
|
+
);
|
10883
|
+
const changePlanPeriod = useCallback5(
|
10884
|
+
(period) => {
|
10885
|
+
setPlanPeriod(period);
|
10886
|
+
if (selectedPlan) {
|
10887
|
+
selectPlan(selectedPlan, period);
|
10888
|
+
}
|
10889
|
+
},
|
10890
|
+
[selectedPlan, selectPlan]
|
10891
|
+
);
|
10756
10892
|
const allowCheckout = api && selectedPlan && selectedPlan?.id !== currentPlan?.id && (paymentMethod && !showPaymentForm || paymentMethodId) && !isLoading;
|
10757
10893
|
return /* @__PURE__ */ jsxs6(Modal, { size: "lg", children: [
|
10758
10894
|
/* @__PURE__ */ jsx11(ModalHeader, { bordered: true, children: /* @__PURE__ */ jsxs6(Flex, { $gap: "1rem", children: [
|
@@ -10887,7 +11023,15 @@ var CheckoutDialog = () => {
|
|
10887
11023
|
}
|
10888
11024
|
)
|
10889
11025
|
] }),
|
10890
|
-
/* @__PURE__ */ jsx11(Flex, { $flexWrap: "wrap", $gap: "1rem", $flexGrow: "1", children: availablePlans
|
11026
|
+
/* @__PURE__ */ jsx11(Flex, { $flexWrap: "wrap", $gap: "1rem", $flexGrow: "1", children: availablePlans.sort((a2, b2) => {
|
11027
|
+
if (planPeriod === "year" && a2.yearlyPrice && b2.yearlyPrice) {
|
11028
|
+
return a2.yearlyPrice?.price - b2.yearlyPrice?.price;
|
11029
|
+
}
|
11030
|
+
if (planPeriod === "month" && a2.monthlyPrice && b2.monthlyPrice) {
|
11031
|
+
return a2.monthlyPrice.price - b2.monthlyPrice.price;
|
11032
|
+
}
|
11033
|
+
return 0;
|
11034
|
+
}).map((plan) => {
|
10891
11035
|
return /* @__PURE__ */ jsxs6(
|
10892
11036
|
Flex,
|
10893
11037
|
{
|
@@ -11029,7 +11173,7 @@ var CheckoutDialog = () => {
|
|
11029
11173
|
{
|
11030
11174
|
disabled: plan.valid === false,
|
11031
11175
|
...plan.valid === true && {
|
11032
|
-
onClick: () =>
|
11176
|
+
onClick: () => selectPlan(plan)
|
11033
11177
|
},
|
11034
11178
|
$size: "sm",
|
11035
11179
|
$color: "primary",
|
@@ -11144,7 +11288,7 @@ var CheckoutDialog = () => {
|
|
11144
11288
|
/* @__PURE__ */ jsx11(
|
11145
11289
|
Flex,
|
11146
11290
|
{
|
11147
|
-
onClick: () =>
|
11291
|
+
onClick: () => changePlanPeriod("month"),
|
11148
11292
|
$justifyContent: "center",
|
11149
11293
|
$alignItems: "center",
|
11150
11294
|
$padding: "0.25rem 0.5rem",
|
@@ -11168,7 +11312,7 @@ var CheckoutDialog = () => {
|
|
11168
11312
|
/* @__PURE__ */ jsx11(
|
11169
11313
|
Flex,
|
11170
11314
|
{
|
11171
|
-
onClick: () =>
|
11315
|
+
onClick: () => changePlanPeriod("year"),
|
11172
11316
|
$justifyContent: "center",
|
11173
11317
|
$alignItems: "center",
|
11174
11318
|
$padding: "0.25rem 0.5rem",
|
@@ -11210,7 +11354,7 @@ var CheckoutDialog = () => {
|
|
11210
11354
|
{
|
11211
11355
|
$flexDirection: "column",
|
11212
11356
|
$position: "relative",
|
11213
|
-
$gap: "
|
11357
|
+
$gap: "0.5rem",
|
11214
11358
|
$width: "100%",
|
11215
11359
|
$height: "auto",
|
11216
11360
|
$padding: "1.5rem",
|
@@ -11265,14 +11409,14 @@ var CheckoutDialog = () => {
|
|
11265
11409
|
}
|
11266
11410
|
) })
|
11267
11411
|
] }),
|
11268
|
-
selectedPlan && /* @__PURE__ */ jsxs6(
|
11412
|
+
selectedPlan && /* @__PURE__ */ jsxs6(Box, { $marginBottom: "1rem", children: [
|
11269
11413
|
/* @__PURE__ */ jsx11(
|
11270
11414
|
Box,
|
11271
11415
|
{
|
11272
11416
|
$width: "100%",
|
11273
11417
|
$textAlign: "left",
|
11274
11418
|
$opacity: "50%",
|
11275
|
-
$marginBottom: "
|
11419
|
+
$marginBottom: "0.25rem",
|
11276
11420
|
$marginTop: "-0.25rem",
|
11277
11421
|
children: /* @__PURE__ */ jsx11(
|
11278
11422
|
Icon2,
|
@@ -11314,6 +11458,51 @@ var CheckoutDialog = () => {
|
|
11314
11458
|
) })
|
11315
11459
|
] })
|
11316
11460
|
] })
|
11461
|
+
] }),
|
11462
|
+
charges?.proration && /* @__PURE__ */ jsxs6(Fragment, { children: [
|
11463
|
+
/* @__PURE__ */ jsx11(Box, { $opacity: "0.625", children: /* @__PURE__ */ jsx11(
|
11464
|
+
Text,
|
11465
|
+
{
|
11466
|
+
$font: theme.typography.text.fontFamily,
|
11467
|
+
$size: 14,
|
11468
|
+
$weight: theme.typography.text.fontWeight,
|
11469
|
+
$color: theme.typography.text.color,
|
11470
|
+
children: charges?.proration && charges.proration > 0 ? "Proration" : "Credits"
|
11471
|
+
}
|
11472
|
+
) }),
|
11473
|
+
/* @__PURE__ */ jsx11(Flex, { $flexDirection: "column", $gap: "0.5rem", children: currentPlan && /* @__PURE__ */ jsxs6(
|
11474
|
+
Flex,
|
11475
|
+
{
|
11476
|
+
$justifyContent: "space-between",
|
11477
|
+
$alignItems: "center",
|
11478
|
+
$gap: "1rem",
|
11479
|
+
children: [
|
11480
|
+
/* @__PURE__ */ jsx11(Flex, { children: /* @__PURE__ */ jsxs6(
|
11481
|
+
Text,
|
11482
|
+
{
|
11483
|
+
$font: theme.typography.heading4.fontFamily,
|
11484
|
+
$size: theme.typography.heading4.fontSize,
|
11485
|
+
$weight: theme.typography.heading4.fontWeight,
|
11486
|
+
$color: theme.typography.heading4.color,
|
11487
|
+
children: [
|
11488
|
+
"Unused time with ",
|
11489
|
+
currentPlan.name
|
11490
|
+
]
|
11491
|
+
}
|
11492
|
+
) }),
|
11493
|
+
/* @__PURE__ */ jsx11(Flex, { children: /* @__PURE__ */ jsx11(
|
11494
|
+
Text,
|
11495
|
+
{
|
11496
|
+
$font: theme.typography.text.fontFamily,
|
11497
|
+
$size: theme.typography.text.fontSize,
|
11498
|
+
$weight: theme.typography.text.fontWeight,
|
11499
|
+
$color: theme.typography.text.color,
|
11500
|
+
children: formatCurrency(charges.proration)
|
11501
|
+
}
|
11502
|
+
) })
|
11503
|
+
]
|
11504
|
+
}
|
11505
|
+
) })
|
11317
11506
|
] })
|
11318
11507
|
]
|
11319
11508
|
}
|
@@ -11328,7 +11517,7 @@ var CheckoutDialog = () => {
|
|
11328
11517
|
$height: "auto",
|
11329
11518
|
$padding: "1.5rem",
|
11330
11519
|
children: [
|
11331
|
-
selectedPlan && /* @__PURE__ */ jsxs6(Flex, { $justifyContent: "space-between", children: [
|
11520
|
+
selectedPlan && subscriptionPrice && /* @__PURE__ */ jsxs6(Flex, { $justifyContent: "space-between", children: [
|
11332
11521
|
/* @__PURE__ */ jsx11(Box, { $opacity: "0.625", children: /* @__PURE__ */ jsxs6(
|
11333
11522
|
Text,
|
11334
11523
|
{
|
@@ -11338,8 +11527,7 @@ var CheckoutDialog = () => {
|
|
11338
11527
|
$color: theme.typography.text.color,
|
11339
11528
|
children: [
|
11340
11529
|
planPeriod === "month" ? "Monthly" : "Yearly",
|
11341
|
-
" total:"
|
11342
|
-
" "
|
11530
|
+
" total:"
|
11343
11531
|
]
|
11344
11532
|
}
|
11345
11533
|
) }),
|
@@ -11351,15 +11539,35 @@ var CheckoutDialog = () => {
|
|
11351
11539
|
$weight: theme.typography.text.fontWeight,
|
11352
11540
|
$color: theme.typography.text.color,
|
11353
11541
|
children: [
|
11354
|
-
|
11355
|
-
(planPeriod === "month" ? selectedPlan.monthlyPrice : selectedPlan.yearlyPrice)?.price ?? 0
|
11356
|
-
),
|
11542
|
+
subscriptionPrice,
|
11357
11543
|
"/",
|
11358
11544
|
planPeriod
|
11359
11545
|
]
|
11360
11546
|
}
|
11361
11547
|
) })
|
11362
11548
|
] }),
|
11549
|
+
charges && /* @__PURE__ */ jsxs6(Flex, { $justifyContent: "space-between", children: [
|
11550
|
+
/* @__PURE__ */ jsx11(Box, { $opacity: "0.625", children: /* @__PURE__ */ jsx11(
|
11551
|
+
Text,
|
11552
|
+
{
|
11553
|
+
$font: theme.typography.text.fontFamily,
|
11554
|
+
$size: theme.typography.text.fontSize,
|
11555
|
+
$weight: theme.typography.text.fontWeight,
|
11556
|
+
$color: theme.typography.text.color,
|
11557
|
+
children: "Due today:"
|
11558
|
+
}
|
11559
|
+
) }),
|
11560
|
+
/* @__PURE__ */ jsx11(Box, { children: /* @__PURE__ */ jsx11(
|
11561
|
+
Text,
|
11562
|
+
{
|
11563
|
+
$font: theme.typography.text.fontFamily,
|
11564
|
+
$size: theme.typography.text.fontSize,
|
11565
|
+
$weight: theme.typography.text.fontWeight,
|
11566
|
+
$color: theme.typography.text.color,
|
11567
|
+
children: formatCurrency(charges.dueNow)
|
11568
|
+
}
|
11569
|
+
) })
|
11570
|
+
] }),
|
11363
11571
|
checkoutStage === "plan" ? /* @__PURE__ */ jsx11(
|
11364
11572
|
StyledButton,
|
11365
11573
|
{
|
@@ -11412,24 +11620,25 @@ var CheckoutDialog = () => {
|
|
11412
11620
|
children: "Pay now"
|
11413
11621
|
}
|
11414
11622
|
),
|
11415
|
-
/* @__PURE__ */ jsx11(Box, {
|
11623
|
+
!isLoading && error && /* @__PURE__ */ jsx11(Box, { children: /* @__PURE__ */ jsx11(
|
11416
11624
|
Text,
|
11417
11625
|
{
|
11418
11626
|
$font: theme.typography.text.fontFamily,
|
11419
11627
|
$size: theme.typography.text.fontSize,
|
11420
|
-
$weight:
|
11421
|
-
$color:
|
11422
|
-
children:
|
11628
|
+
$weight: 500,
|
11629
|
+
$color: "#DB6669",
|
11630
|
+
children: error
|
11423
11631
|
}
|
11424
11632
|
) }),
|
11425
|
-
|
11633
|
+
/* @__PURE__ */ jsx11(Box, { $opacity: "0.625", children: /* @__PURE__ */ jsx11(
|
11426
11634
|
Text,
|
11427
11635
|
{
|
11428
11636
|
$font: theme.typography.text.fontFamily,
|
11429
11637
|
$size: theme.typography.text.fontSize,
|
11430
|
-
$weight:
|
11431
|
-
$color:
|
11432
|
-
children:
|
11638
|
+
$weight: theme.typography.text.fontWeight,
|
11639
|
+
$color: theme.typography.text.color,
|
11640
|
+
children: checkoutStage === "plan" ? "Discounts & credits applied at checkout" : subscriptionPrice && `You will be billed ${subscriptionPrice} for this subscription
|
11641
|
+
every ${planPeriod} on the ${data.subscription?.latestInvoice?.dueDate && formatOrdinal(new Date(data.subscription.latestInvoice.dueDate).getDate())} ${planPeriod === "year" && data.subscription?.latestInvoice?.dueDate ? `of ${getMonthName(data.subscription.latestInvoice.dueDate)}` : ""} unless you unsubscribe.`
|
11433
11642
|
}
|
11434
11643
|
) })
|
11435
11644
|
]
|
@@ -11479,9 +11688,9 @@ var PlanManager = forwardRef2(({ children, className, portal, ...rest }, ref) =>
|
|
11479
11688
|
const { currentPlan, canChangePlan } = useMemo7(() => {
|
11480
11689
|
return {
|
11481
11690
|
currentPlan: data.company?.plan,
|
11482
|
-
canChangePlan: stripe !== null
|
11691
|
+
canChangePlan: data.activePlans.length > 0 && data.stripeEmbed?.publishableKey && data.stripeEmbed?.setupIntentClientSecret && stripe !== null
|
11483
11692
|
};
|
11484
|
-
}, [data.company, stripe]);
|
11693
|
+
}, [data.company, data.activePlans, data.stripeEmbed, stripe]);
|
11485
11694
|
return /* @__PURE__ */ jsxs7("div", { ref, className, children: [
|
11486
11695
|
/* @__PURE__ */ jsx12(
|
11487
11696
|
Flex,
|
@@ -11555,9 +11764,9 @@ var PlanManager = forwardRef2(({ children, className, portal, ...rest }, ref) =>
|
|
11555
11764
|
});
|
11556
11765
|
|
11557
11766
|
// src/components/elements/included-features/IncludedFeatures.tsx
|
11558
|
-
import { forwardRef as forwardRef3, useMemo as useMemo8 } from "react";
|
11767
|
+
import { forwardRef as forwardRef3, useLayoutEffect, useMemo as useMemo8, useRef as useRef3 } from "react";
|
11559
11768
|
var import_pluralize2 = __toESM(require_pluralize());
|
11560
|
-
import { jsx as jsx13, jsxs as jsxs8 } from "react/jsx-runtime";
|
11769
|
+
import { Fragment as Fragment2, jsx as jsx13, jsxs as jsxs8 } from "react/jsx-runtime";
|
11561
11770
|
function resolveDesignProps3(props) {
|
11562
11771
|
return {
|
11563
11772
|
header: {
|
@@ -11584,6 +11793,7 @@ var IncludedFeatures = forwardRef3(({ className, ...rest }, ref) => {
|
|
11584
11793
|
const props = resolveDesignProps3(rest);
|
11585
11794
|
const theme = nt();
|
11586
11795
|
const { data } = useEmbed();
|
11796
|
+
const elements = useRef3([]);
|
11587
11797
|
const features = useMemo8(() => {
|
11588
11798
|
return (data.featureUsage?.features || []).map(
|
11589
11799
|
({
|
@@ -11614,6 +11824,34 @@ var IncludedFeatures = forwardRef3(({ className, ...rest }, ref) => {
|
|
11614
11824
|
const isLightBackground = useMemo8(() => {
|
11615
11825
|
return hexToHSL(theme.card.background).l > 50;
|
11616
11826
|
}, [theme.card.background]);
|
11827
|
+
useLayoutEffect(() => {
|
11828
|
+
const assignRows = (parent) => {
|
11829
|
+
let isWrapped = true;
|
11830
|
+
[...parent.children].forEach((el) => {
|
11831
|
+
if (!(el instanceof HTMLElement)) {
|
11832
|
+
return;
|
11833
|
+
}
|
11834
|
+
if (!el.previousElementSibling || el.offsetLeft <= el.previousElementSibling.offsetLeft) {
|
11835
|
+
isWrapped = !isWrapped;
|
11836
|
+
}
|
11837
|
+
if (isWrapped) {
|
11838
|
+
el.style.textAlign = "left";
|
11839
|
+
} else if (el.previousElementSibling) {
|
11840
|
+
el.style.textAlign = "right";
|
11841
|
+
}
|
11842
|
+
});
|
11843
|
+
};
|
11844
|
+
elements.current.forEach((el) => {
|
11845
|
+
if (!el) return;
|
11846
|
+
const observer = new ResizeObserver((entries) => {
|
11847
|
+
entries.forEach((entry) => {
|
11848
|
+
assignRows(entry.target);
|
11849
|
+
});
|
11850
|
+
});
|
11851
|
+
observer.observe(el);
|
11852
|
+
assignRows(el);
|
11853
|
+
});
|
11854
|
+
}, [elements.current.length]);
|
11617
11855
|
return /* @__PURE__ */ jsxs8(Flex, { ref, className, $flexDirection: "column", $gap: "1.5rem", children: [
|
11618
11856
|
props.header.isVisible && /* @__PURE__ */ jsx13(Box, { children: /* @__PURE__ */ jsx13(
|
11619
11857
|
Text,
|
@@ -11635,6 +11873,7 @@ var IncludedFeatures = forwardRef3(({ className, ...rest }, ref) => {
|
|
11635
11873
|
/* @__PURE__ */ jsxs8(
|
11636
11874
|
Flex,
|
11637
11875
|
{
|
11876
|
+
ref: (el) => elements.current.push(el),
|
11638
11877
|
$flexWrap: "wrap",
|
11639
11878
|
$justifyContent: "space-between",
|
11640
11879
|
$alignItems: "center",
|
@@ -11663,7 +11902,7 @@ var IncludedFeatures = forwardRef3(({ className, ...rest }, ref) => {
|
|
11663
11902
|
}
|
11664
11903
|
) })
|
11665
11904
|
] }),
|
11666
|
-
allocationType === "numeric" && feature?.name && /* @__PURE__ */ jsxs8(Box, { $textAlign: "right", children: [
|
11905
|
+
allocationType === "numeric" && feature?.name && /* @__PURE__ */ jsxs8(Box, { $textAlign: "right", $paddingLeft: "3.5rem", children: [
|
11667
11906
|
props.entitlement.isVisible && /* @__PURE__ */ jsx13(
|
11668
11907
|
Text,
|
11669
11908
|
{
|
@@ -11673,7 +11912,7 @@ var IncludedFeatures = forwardRef3(({ className, ...rest }, ref) => {
|
|
11673
11912
|
$weight: theme.typography[props.entitlement.fontStyle].fontWeight,
|
11674
11913
|
$lineHeight: 1.5,
|
11675
11914
|
$color: theme.typography[props.entitlement.fontStyle].color,
|
11676
|
-
children: typeof allocation === "number" ? (0, import_pluralize2.default)(feature.name, allocation
|
11915
|
+
children: typeof allocation === "number" ? `${formatNumber(allocation)} ${(0, import_pluralize2.default)(feature.name, allocation)}` : `Unlimited ${(0, import_pluralize2.default)(feature.name)}`
|
11677
11916
|
}
|
11678
11917
|
),
|
11679
11918
|
props.usage.isVisible && /* @__PURE__ */ jsx13(
|
@@ -11685,7 +11924,7 @@ var IncludedFeatures = forwardRef3(({ className, ...rest }, ref) => {
|
|
11685
11924
|
$weight: theme.typography[props.usage.fontStyle].fontWeight,
|
11686
11925
|
$lineHeight: 1.5,
|
11687
11926
|
$color: theme.typography[props.usage.fontStyle].color,
|
11688
|
-
children: typeof allocation === "number" ? `${usage} of ${allocation} used` : `${usage} used`
|
11927
|
+
children: typeof usage === "number" && /* @__PURE__ */ jsx13(Fragment2, { children: typeof allocation === "number" ? `${formatNumber(usage)} of ${formatNumber(allocation)} used` : `${formatNumber(usage)} used` })
|
11689
11928
|
}
|
11690
11929
|
)
|
11691
11930
|
] })
|
@@ -11917,14 +12156,19 @@ var UpcomingBill = forwardRef5(({ className, ...rest }, ref) => {
|
|
11917
12156
|
children: formatCurrency(upcomingInvoice.amountDue)
|
11918
12157
|
}
|
11919
12158
|
) }),
|
11920
|
-
/* @__PURE__ */ jsx15(Box, { $maxWidth: "10rem", $lineHeight: "1", $textAlign: "right", children: /* @__PURE__ */
|
12159
|
+
/* @__PURE__ */ jsx15(Box, { $maxWidth: "10rem", $lineHeight: "1", $textAlign: "right", children: /* @__PURE__ */ jsxs10(
|
11921
12160
|
Text,
|
11922
12161
|
{
|
11923
12162
|
$font: theme.typography[props.contractEndDate.fontStyle].fontFamily,
|
11924
12163
|
$size: theme.typography[props.contractEndDate.fontStyle].fontSize,
|
11925
12164
|
$weight: theme.typography[props.contractEndDate.fontStyle].fontWeight,
|
11926
12165
|
$color: theme.typography[props.contractEndDate.fontStyle].color,
|
11927
|
-
children:
|
12166
|
+
children: [
|
12167
|
+
"Estimated",
|
12168
|
+
" ",
|
12169
|
+
upcomingInvoice.interval === "year" ? "yearly" : "monthly",
|
12170
|
+
" bill."
|
12171
|
+
]
|
11928
12172
|
}
|
11929
12173
|
) })
|
11930
12174
|
] })
|
@@ -12048,7 +12292,7 @@ var Root = forwardRef7(
|
|
12048
12292
|
);
|
12049
12293
|
|
12050
12294
|
// src/components/layout/viewport/Viewport.tsx
|
12051
|
-
import { forwardRef as
|
12295
|
+
import { forwardRef as forwardRef9 } from "react";
|
12052
12296
|
|
12053
12297
|
// src/components/layout/viewport/styles.ts
|
12054
12298
|
var StyledViewport = dt.div`
|
@@ -12060,53 +12304,131 @@ var StyledViewport = dt.div`
|
|
12060
12304
|
`;
|
12061
12305
|
|
12062
12306
|
// src/components/layout/RenderLayout.tsx
|
12063
|
-
import { useState as useState4 } from "react";
|
12064
|
-
|
12065
|
-
|
12066
|
-
|
12307
|
+
import { useEffect as useEffect4, useState as useState4 } from "react";
|
12308
|
+
|
12309
|
+
// src/components/layout/card/Card.tsx
|
12310
|
+
import { forwardRef as forwardRef8 } from "react";
|
12311
|
+
|
12312
|
+
// src/components/layout/card/styles.ts
|
12313
|
+
var StyledCard = dt.div(
|
12314
|
+
({
|
12315
|
+
theme,
|
12316
|
+
$sectionLayout = "merged",
|
12317
|
+
$borderRadius = 8,
|
12318
|
+
$padding = 48,
|
12319
|
+
$shadow = true
|
12320
|
+
}) => {
|
12321
|
+
return lt`
|
12322
|
+
box-sizing: border-box;
|
12323
|
+
font-size: ${TEXT_BASE_SIZE}px;
|
12324
|
+
|
12325
|
+
*,
|
12326
|
+
*::before,
|
12327
|
+
*::after {
|
12328
|
+
box-sizing: inherit;
|
12329
|
+
}
|
12330
|
+
|
12331
|
+
> * {
|
12332
|
+
padding: ${$padding * 0.75 / TEXT_BASE_SIZE}rem
|
12333
|
+
${$padding / TEXT_BASE_SIZE}rem;
|
12334
|
+
color: ${theme.typography.text.color};
|
12335
|
+
}
|
12336
|
+
|
12337
|
+
${() => {
|
12338
|
+
const { l: l2 } = hexToHSL(theme.card.background);
|
12339
|
+
const borderColor = l2 > 50 ? "hsla(0, 0%, 0%, 0.1)" : "hsla(0, 0%, 100%, 0.2)";
|
12340
|
+
const borderRadius = `${$borderRadius / TEXT_BASE_SIZE}rem`;
|
12341
|
+
const boxShadow = "0px 1px 20px 0px #1018280F, 0px 1px 3px 0px #1018281A";
|
12342
|
+
if ($sectionLayout === "merged") {
|
12343
|
+
return lt`
|
12344
|
+
background: ${({ theme: theme2 }) => theme2.card.background};
|
12345
|
+
border-radius: ${borderRadius};
|
12346
|
+
|
12347
|
+
${$shadow && `box-shadow: ${boxShadow};`}
|
12348
|
+
|
12349
|
+
> :not(:last-child) {
|
12350
|
+
border-bottom: 1px solid ${borderColor};
|
12351
|
+
}
|
12352
|
+
`;
|
12353
|
+
}
|
12354
|
+
return lt`
|
12355
|
+
> :not(:last-child) {
|
12356
|
+
margin-bottom: 1rem;
|
12357
|
+
}
|
12358
|
+
|
12359
|
+
> * {
|
12360
|
+
background: ${theme.card.background};
|
12361
|
+
border-radius: ${borderRadius};
|
12362
|
+
${$shadow && `box-shadow: ${boxShadow};`}
|
12363
|
+
}
|
12364
|
+
`;
|
12365
|
+
}}
|
12366
|
+
`;
|
12367
|
+
}
|
12368
|
+
);
|
12369
|
+
|
12370
|
+
// src/components/layout/card/Card.tsx
|
12371
|
+
import { jsx as jsx18 } from "react/jsx-runtime";
|
12372
|
+
var Card = forwardRef8(
|
12373
|
+
({ children, className }, ref) => {
|
12374
|
+
const theme = nt();
|
12375
|
+
return /* @__PURE__ */ jsx18(
|
12376
|
+
StyledCard,
|
12377
|
+
{
|
12378
|
+
ref,
|
12379
|
+
className,
|
12380
|
+
$sectionLayout: theme?.sectionLayout,
|
12381
|
+
$borderRadius: theme?.card?.borderRadius,
|
12382
|
+
$padding: theme?.card?.padding,
|
12383
|
+
$shadow: theme?.card?.hasShadow,
|
12384
|
+
children
|
12385
|
+
}
|
12386
|
+
);
|
12387
|
+
}
|
12388
|
+
);
|
12389
|
+
|
12390
|
+
// src/components/layout/RenderLayout.tsx
|
12391
|
+
import { jsx as jsx19, jsxs as jsxs12 } from "react/jsx-runtime";
|
12392
|
+
var Disabled = () => {
|
12067
12393
|
const theme = nt();
|
12068
|
-
return /* @__PURE__ */
|
12394
|
+
return /* @__PURE__ */ jsx19(Box, { $width: "max-content", $height: "max-content", $margin: "0 auto", children: /* @__PURE__ */ jsx19(Card, { children: /* @__PURE__ */ jsxs12(
|
12069
12395
|
Flex,
|
12070
12396
|
{
|
12071
12397
|
$flexDirection: "column",
|
12072
|
-
$padding: `${theme.card.padding / TEXT_BASE_SIZE}rem`,
|
12073
|
-
$width: "100%",
|
12074
|
-
$height: "auto",
|
12075
|
-
$borderRadius: `${theme.card.borderRadius / TEXT_BASE_SIZE}rem`,
|
12076
|
-
$backgroundColor: theme.card.background,
|
12077
|
-
$alignItems: "center",
|
12078
12398
|
$justifyContent: "center",
|
12399
|
+
$alignItems: "center",
|
12400
|
+
$whiteSpace: "nowrap",
|
12079
12401
|
children: [
|
12080
|
-
/* @__PURE__ */
|
12081
|
-
|
12402
|
+
/* @__PURE__ */ jsx19(Box, { $marginBottom: "0.5rem", children: /* @__PURE__ */ jsx19(
|
12403
|
+
Text,
|
12082
12404
|
{
|
12083
|
-
|
12084
|
-
$
|
12085
|
-
$
|
12086
|
-
$
|
12405
|
+
as: "h1",
|
12406
|
+
$font: theme.typography.heading1.fontFamily,
|
12407
|
+
$size: theme.typography.heading1.fontSize,
|
12408
|
+
$weight: theme.typography.heading1.fontWeight,
|
12087
12409
|
$color: theme.typography.heading1.color,
|
12088
|
-
children: "
|
12410
|
+
children: "Portal not found"
|
12089
12411
|
}
|
12090
|
-
),
|
12091
|
-
/* @__PURE__ */
|
12092
|
-
|
12412
|
+
) }),
|
12413
|
+
/* @__PURE__ */ jsx19(
|
12414
|
+
Text,
|
12093
12415
|
{
|
12094
|
-
|
12095
|
-
$
|
12096
|
-
$
|
12097
|
-
$
|
12416
|
+
as: "p",
|
12417
|
+
$font: theme.typography.text.fontFamily,
|
12418
|
+
$size: theme.typography.text.fontSize,
|
12419
|
+
$weight: theme.typography.text.fontWeight,
|
12098
12420
|
$color: theme.typography.text.color,
|
12099
|
-
children: "
|
12421
|
+
children: "Please try again later."
|
12100
12422
|
}
|
12101
12423
|
)
|
12102
12424
|
]
|
12103
12425
|
}
|
12104
|
-
) });
|
12426
|
+
) }) });
|
12105
12427
|
};
|
12106
|
-
var
|
12107
|
-
const [isOpen, setIsOpen] = useState4(true);
|
12428
|
+
var Success = () => {
|
12108
12429
|
const theme = nt();
|
12109
12430
|
const { hydrate, data, api, setLayout, isPending } = useEmbed();
|
12431
|
+
const [isOpen, setIsOpen] = useState4(true);
|
12110
12432
|
useEffect4(() => {
|
12111
12433
|
if (api && data.component?.id) {
|
12112
12434
|
hydrate();
|
@@ -12118,31 +12440,23 @@ var SuccessState = () => {
|
|
12118
12440
|
setLayout("portal");
|
12119
12441
|
}
|
12120
12442
|
}, [isPending, isOpen, setLayout]);
|
12121
|
-
return /* @__PURE__ */ jsxs12(
|
12443
|
+
return /* @__PURE__ */ jsx19(Box, { $width: "max-content", $height: "max-content", $margin: "0 auto", children: /* @__PURE__ */ jsx19(Card, { children: /* @__PURE__ */ jsxs12(
|
12122
12444
|
Flex,
|
12123
12445
|
{
|
12124
12446
|
$flexDirection: "column",
|
12125
12447
|
$justifyContent: "center",
|
12126
12448
|
$alignItems: "center",
|
12127
|
-
$gap: `${32 / TEXT_BASE_SIZE}rem`,
|
12128
|
-
$width: "min-content",
|
12129
|
-
$height: "min-content",
|
12130
|
-
$margin: "auto",
|
12131
|
-
$padding: `${theme.card.padding / TEXT_BASE_SIZE}rem ${theme.card.padding * 1.5 / TEXT_BASE_SIZE}rem`,
|
12132
12449
|
$whiteSpace: "nowrap",
|
12133
|
-
$backgroundColor: theme.card.background,
|
12134
|
-
$borderRadius: "0.5rem",
|
12135
|
-
$boxShadow: "0px 1px 20px 0px #1018280F, 0px 1px 3px 0px #1018281A;",
|
12136
12450
|
children: [
|
12137
|
-
/* @__PURE__ */
|
12451
|
+
/* @__PURE__ */ jsx19(Box, { $marginBottom: "1.5rem", children: /* @__PURE__ */ jsx19(
|
12138
12452
|
IconRound,
|
12139
12453
|
{
|
12140
12454
|
name: "check",
|
12141
12455
|
size: "3xl",
|
12142
12456
|
colors: [theme.card.background, theme.primary]
|
12143
12457
|
}
|
12144
|
-
),
|
12145
|
-
/* @__PURE__ */
|
12458
|
+
) }),
|
12459
|
+
/* @__PURE__ */ jsx19(Box, { $marginBottom: "0.5rem", children: /* @__PURE__ */ jsx19(
|
12146
12460
|
Text,
|
12147
12461
|
{
|
12148
12462
|
as: "h1",
|
@@ -12152,8 +12466,8 @@ var SuccessState = () => {
|
|
12152
12466
|
$color: theme.typography.heading1.color,
|
12153
12467
|
children: "Subscription updated!"
|
12154
12468
|
}
|
12155
|
-
),
|
12156
|
-
/* @__PURE__ */
|
12469
|
+
) }),
|
12470
|
+
/* @__PURE__ */ jsx19(
|
12157
12471
|
Text,
|
12158
12472
|
{
|
12159
12473
|
as: "p",
|
@@ -12161,37 +12475,37 @@ var SuccessState = () => {
|
|
12161
12475
|
$size: theme.typography.text.fontSize,
|
12162
12476
|
$weight: theme.typography.text.fontWeight,
|
12163
12477
|
$color: theme.typography.text.color,
|
12164
|
-
children: "Loading
|
12478
|
+
children: "Loading\u2026"
|
12165
12479
|
}
|
12166
12480
|
)
|
12167
12481
|
]
|
12168
12482
|
}
|
12169
|
-
);
|
12483
|
+
) }) });
|
12170
12484
|
};
|
12171
12485
|
var RenderLayout = ({ children }) => {
|
12172
12486
|
const { layout } = useEmbed();
|
12173
12487
|
switch (layout) {
|
12174
12488
|
case "disabled":
|
12175
|
-
return /* @__PURE__ */
|
12489
|
+
return /* @__PURE__ */ jsx19(Disabled, {});
|
12176
12490
|
case "success":
|
12177
|
-
return /* @__PURE__ */
|
12491
|
+
return /* @__PURE__ */ jsx19(Success, {});
|
12178
12492
|
default:
|
12179
12493
|
return children;
|
12180
12494
|
}
|
12181
12495
|
};
|
12182
12496
|
|
12183
12497
|
// src/components/layout/viewport/Viewport.tsx
|
12184
|
-
import { jsx as
|
12185
|
-
var Viewport =
|
12498
|
+
import { jsx as jsx20 } from "react/jsx-runtime";
|
12499
|
+
var Viewport = forwardRef9(
|
12186
12500
|
({ children, ...props }, ref) => {
|
12187
12501
|
const theme = nt();
|
12188
|
-
return /* @__PURE__ */
|
12502
|
+
return /* @__PURE__ */ jsx20(
|
12189
12503
|
StyledViewport,
|
12190
12504
|
{
|
12191
12505
|
ref,
|
12192
12506
|
$numberOfColumns: theme.numberOfColumns,
|
12193
12507
|
...props,
|
12194
|
-
children: /* @__PURE__ */
|
12508
|
+
children: /* @__PURE__ */ jsx20(RenderLayout, { children })
|
12195
12509
|
}
|
12196
12510
|
);
|
12197
12511
|
}
|
@@ -12200,87 +12514,6 @@ var Viewport = forwardRef8(
|
|
12200
12514
|
// src/components/layout/column/Column.tsx
|
12201
12515
|
import { forwardRef as forwardRef10 } from "react";
|
12202
12516
|
|
12203
|
-
// src/components/layout/card/Card.tsx
|
12204
|
-
import { forwardRef as forwardRef9 } from "react";
|
12205
|
-
|
12206
|
-
// src/components/layout/card/styles.ts
|
12207
|
-
var StyledCard = dt.div(
|
12208
|
-
({
|
12209
|
-
theme,
|
12210
|
-
$sectionLayout = "merged",
|
12211
|
-
$borderRadius = 8,
|
12212
|
-
$padding = 48,
|
12213
|
-
$shadow = true
|
12214
|
-
}) => {
|
12215
|
-
return lt`
|
12216
|
-
box-sizing: border-box;
|
12217
|
-
font-size: ${TEXT_BASE_SIZE}px;
|
12218
|
-
|
12219
|
-
*,
|
12220
|
-
*::before,
|
12221
|
-
*::after {
|
12222
|
-
box-sizing: inherit;
|
12223
|
-
}
|
12224
|
-
|
12225
|
-
> * {
|
12226
|
-
padding: ${$padding * 0.75 / TEXT_BASE_SIZE}rem
|
12227
|
-
${$padding / TEXT_BASE_SIZE}rem;
|
12228
|
-
color: ${theme.typography.text.color};
|
12229
|
-
}
|
12230
|
-
|
12231
|
-
${() => {
|
12232
|
-
const { l: l2 } = hexToHSL(theme.card.background);
|
12233
|
-
const borderColor = l2 > 50 ? "hsla(0, 0%, 0%, 0.1)" : "hsla(0, 0%, 100%, 0.2)";
|
12234
|
-
const borderRadius = `${$borderRadius / TEXT_BASE_SIZE}rem`;
|
12235
|
-
const boxShadow = "0px 1px 20px 0px #1018280F, 0px 1px 3px 0px #1018281A";
|
12236
|
-
if ($sectionLayout === "merged") {
|
12237
|
-
return lt`
|
12238
|
-
background: ${({ theme: theme2 }) => theme2.card.background};
|
12239
|
-
border-radius: ${borderRadius};
|
12240
|
-
|
12241
|
-
${$shadow && `box-shadow: ${boxShadow};`}
|
12242
|
-
|
12243
|
-
> :not(:last-child) {
|
12244
|
-
border-bottom: 1px solid ${borderColor};
|
12245
|
-
}
|
12246
|
-
`;
|
12247
|
-
}
|
12248
|
-
return lt`
|
12249
|
-
> :not(:last-child) {
|
12250
|
-
margin-bottom: 1rem;
|
12251
|
-
}
|
12252
|
-
|
12253
|
-
> * {
|
12254
|
-
background: ${theme.card.background};
|
12255
|
-
border-radius: ${borderRadius};
|
12256
|
-
${$shadow && `box-shadow: ${boxShadow};`}
|
12257
|
-
}
|
12258
|
-
`;
|
12259
|
-
}}
|
12260
|
-
`;
|
12261
|
-
}
|
12262
|
-
);
|
12263
|
-
|
12264
|
-
// src/components/layout/card/Card.tsx
|
12265
|
-
import { jsx as jsx20 } from "react/jsx-runtime";
|
12266
|
-
var Card = forwardRef9(
|
12267
|
-
({ children, className }, ref) => {
|
12268
|
-
const theme = nt();
|
12269
|
-
return /* @__PURE__ */ jsx20(
|
12270
|
-
StyledCard,
|
12271
|
-
{
|
12272
|
-
ref,
|
12273
|
-
className,
|
12274
|
-
$sectionLayout: theme?.sectionLayout,
|
12275
|
-
$borderRadius: theme?.card?.borderRadius,
|
12276
|
-
$padding: theme?.card?.padding,
|
12277
|
-
$shadow: theme?.card?.hasShadow,
|
12278
|
-
children
|
12279
|
-
}
|
12280
|
-
);
|
12281
|
-
}
|
12282
|
-
);
|
12283
|
-
|
12284
12517
|
// src/components/layout/column/styles.ts
|
12285
12518
|
var StyledColumn = dt.div`
|
12286
12519
|
flex-grow: 1;
|
@@ -12336,7 +12569,7 @@ function createRenderer(options) {
|
|
12336
12569
|
}
|
12337
12570
|
|
12338
12571
|
// src/components/embed/ComponentTree.tsx
|
12339
|
-
import { Fragment as
|
12572
|
+
import { Fragment as Fragment3, jsx as jsx22, jsxs as jsxs13 } from "react/jsx-runtime";
|
12340
12573
|
var Loading = () => {
|
12341
12574
|
const theme = nt();
|
12342
12575
|
return /* @__PURE__ */ jsx22(
|
@@ -12404,7 +12637,7 @@ var ComponentTree = () => {
|
|
12404
12637
|
if (Children.count(children) === 0) {
|
12405
12638
|
return /* @__PURE__ */ jsx22(Loading, {});
|
12406
12639
|
}
|
12407
|
-
return /* @__PURE__ */ jsx22(
|
12640
|
+
return /* @__PURE__ */ jsx22(Fragment3, { children });
|
12408
12641
|
};
|
12409
12642
|
|
12410
12643
|
// src/components/embed/Embed.tsx
|