@almadar/ui 5.5.9 → 5.7.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/avl/index.cjs +37 -14
- package/dist/avl/index.js +37 -14
- package/dist/components/index.cjs +8 -7
- package/dist/components/index.js +8 -7
- package/dist/marketing/index.cjs +5 -4
- package/dist/marketing/index.js +5 -4
- package/dist/providers/index.cjs +8 -7
- package/dist/providers/index.js +8 -7
- package/dist/runtime/index.cjs +37 -14
- package/dist/runtime/index.js +37 -14
- package/package.json +2 -2
package/dist/avl/index.cjs
CHANGED
|
@@ -13718,7 +13718,7 @@ var init_AboutPageTemplate = __esm({
|
|
|
13718
13718
|
background: resolved.hero.background
|
|
13719
13719
|
}
|
|
13720
13720
|
),
|
|
13721
|
-
resolved.articles.map((article, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
13721
|
+
(Array.isArray(resolved.articles) ? resolved.articles : []).map((article, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
13722
13722
|
Box,
|
|
13723
13723
|
{
|
|
13724
13724
|
className: cn("py-12", index % 2 !== 0 && "bg-muted/20"),
|
|
@@ -33832,7 +33832,7 @@ var init_FeatureGrid = __esm({
|
|
|
33832
33832
|
cols: columns,
|
|
33833
33833
|
gap,
|
|
33834
33834
|
className: cn(className),
|
|
33835
|
-
children: items.map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
33835
|
+
children: (Array.isArray(items) ? items : []).map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
33836
33836
|
}
|
|
33837
33837
|
);
|
|
33838
33838
|
};
|
|
@@ -34158,7 +34158,7 @@ var init_SplitSection = __esm({
|
|
|
34158
34158
|
const textContent = /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "md", className: "flex-1 min-w-0", children: [
|
|
34159
34159
|
/* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "h2", children: title }),
|
|
34160
34160
|
typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "body", color: "muted", children: description }) : description,
|
|
34161
|
-
bullets && bullets.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxRuntime.jsxs(HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
34161
|
+
Array.isArray(bullets) && bullets.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxRuntime.jsxs(HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
34162
34162
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
34163
34163
|
Icon,
|
|
34164
34164
|
{
|
|
@@ -37963,6 +37963,7 @@ var init_MarketingFooter = __esm({
|
|
|
37963
37963
|
logo,
|
|
37964
37964
|
className
|
|
37965
37965
|
}) => {
|
|
37966
|
+
const safeColumns = Array.isArray(columns) ? columns : [];
|
|
37966
37967
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
37967
37968
|
Box,
|
|
37968
37969
|
{
|
|
@@ -37976,7 +37977,7 @@ var init_MarketingFooter = __esm({
|
|
|
37976
37977
|
children: /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "lg", className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: [
|
|
37977
37978
|
/* @__PURE__ */ jsxRuntime.jsxs(HStack, { gap: "lg", align: "start", className: "flex-wrap w-full justify-between", children: [
|
|
37978
37979
|
logo && /* @__PURE__ */ jsxRuntime.jsx(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: logo.href ? /* @__PURE__ */ jsxRuntime.jsx("a", { href: logo.href, children: /* @__PURE__ */ jsxRuntime.jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }) : /* @__PURE__ */ jsxRuntime.jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }),
|
|
37979
|
-
|
|
37980
|
+
safeColumns.map((col) => /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: [
|
|
37980
37981
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
37981
37982
|
Typography,
|
|
37982
37983
|
{
|
|
@@ -37985,7 +37986,7 @@ var init_MarketingFooter = __esm({
|
|
|
37985
37986
|
children: col.title
|
|
37986
37987
|
}
|
|
37987
37988
|
),
|
|
37988
|
-
col.items.map((item) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
37989
|
+
(Array.isArray(col.items) ? col.items : []).map((item) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
37989
37990
|
"a",
|
|
37990
37991
|
{
|
|
37991
37992
|
href: item.href,
|
|
@@ -41950,7 +41951,7 @@ var init_LandingPageTemplate = __esm({
|
|
|
41950
41951
|
background: resolved.hero.background
|
|
41951
41952
|
}
|
|
41952
41953
|
),
|
|
41953
|
-
resolved.features.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(Box, { className: "bg-muted/20 py-16", children: /* @__PURE__ */ jsxRuntime.jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "lg", children: [
|
|
41954
|
+
Array.isArray(resolved.features) && resolved.features.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(Box, { className: "bg-muted/20 py-16", children: /* @__PURE__ */ jsxRuntime.jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "lg", children: [
|
|
41954
41955
|
/* @__PURE__ */ jsxRuntime.jsx(SectionHeader, { title: "Features" }),
|
|
41955
41956
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
41956
41957
|
FeatureGrid,
|
|
@@ -43767,7 +43768,7 @@ var init_PricingPageTemplate = __esm({
|
|
|
43767
43768
|
/* @__PURE__ */ jsxRuntime.jsx(Box, { className: "py-16", children: /* @__PURE__ */ jsxRuntime.jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
43768
43769
|
PricingGrid,
|
|
43769
43770
|
{
|
|
43770
|
-
plans: resolved.plans.map((plan) => ({
|
|
43771
|
+
plans: (Array.isArray(resolved.plans) ? resolved.plans : []).map((plan) => ({
|
|
43771
43772
|
name: plan.name,
|
|
43772
43773
|
price: plan.price,
|
|
43773
43774
|
description: plan.description,
|
|
@@ -60300,6 +60301,14 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
60300
60301
|
}));
|
|
60301
60302
|
void slotSource;
|
|
60302
60303
|
for (const [slot, patterns] of pendingSlots) {
|
|
60304
|
+
stateLog.debug("flush:slot", {
|
|
60305
|
+
traitName,
|
|
60306
|
+
slot,
|
|
60307
|
+
patternCount: patterns.length,
|
|
60308
|
+
event: eventKey,
|
|
60309
|
+
transition: `${result.previousState}->${result.newState}`,
|
|
60310
|
+
cleared: patterns.length === 0
|
|
60311
|
+
});
|
|
60303
60312
|
flushSlot(traitName, slot, patterns);
|
|
60304
60313
|
}
|
|
60305
60314
|
} catch (error) {
|
|
@@ -60531,7 +60540,11 @@ function createHttpTransport(serverUrl) {
|
|
|
60531
60540
|
const result = await res.json();
|
|
60532
60541
|
return !!result.success;
|
|
60533
60542
|
} catch (err) {
|
|
60534
|
-
|
|
60543
|
+
if (err instanceof TypeError) {
|
|
60544
|
+
serverBridgeLog.warn("Registration failed", { error: err.message });
|
|
60545
|
+
} else {
|
|
60546
|
+
serverBridgeLog.error("Registration failed", { error: err instanceof Error ? err : String(err) });
|
|
60547
|
+
}
|
|
60535
60548
|
return false;
|
|
60536
60549
|
}
|
|
60537
60550
|
},
|
|
@@ -60649,12 +60662,22 @@ function ServerBridgeProvider({
|
|
|
60649
60662
|
}
|
|
60650
60663
|
return { effects, meta };
|
|
60651
60664
|
} catch (err) {
|
|
60652
|
-
|
|
60653
|
-
|
|
60654
|
-
|
|
60655
|
-
|
|
60656
|
-
|
|
60657
|
-
|
|
60665
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
60666
|
+
if (err instanceof TypeError) {
|
|
60667
|
+
xOrbitalLog.warn("response:network", {
|
|
60668
|
+
orbital: orbitalName,
|
|
60669
|
+
event,
|
|
60670
|
+
error: msg,
|
|
60671
|
+
reason: "peer endpoint unreachable (expected in standalone single-orbital mode)"
|
|
60672
|
+
});
|
|
60673
|
+
} else {
|
|
60674
|
+
xOrbitalLog.error("response:network", {
|
|
60675
|
+
orbital: orbitalName,
|
|
60676
|
+
event,
|
|
60677
|
+
error: msg
|
|
60678
|
+
});
|
|
60679
|
+
}
|
|
60680
|
+
return { effects: [], meta: { ...emptyMeta, error: msg } };
|
|
60658
60681
|
}
|
|
60659
60682
|
}, [connected, transport, eventBus]);
|
|
60660
60683
|
React98.useEffect(() => {
|
package/dist/avl/index.js
CHANGED
|
@@ -13669,7 +13669,7 @@ var init_AboutPageTemplate = __esm({
|
|
|
13669
13669
|
background: resolved.hero.background
|
|
13670
13670
|
}
|
|
13671
13671
|
),
|
|
13672
|
-
resolved.articles.map((article, index) => /* @__PURE__ */ jsx(
|
|
13672
|
+
(Array.isArray(resolved.articles) ? resolved.articles : []).map((article, index) => /* @__PURE__ */ jsx(
|
|
13673
13673
|
Box,
|
|
13674
13674
|
{
|
|
13675
13675
|
className: cn("py-12", index % 2 !== 0 && "bg-muted/20"),
|
|
@@ -33783,7 +33783,7 @@ var init_FeatureGrid = __esm({
|
|
|
33783
33783
|
cols: columns,
|
|
33784
33784
|
gap,
|
|
33785
33785
|
className: cn(className),
|
|
33786
|
-
children: items.map((item, index) => /* @__PURE__ */ jsx(FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
33786
|
+
children: (Array.isArray(items) ? items : []).map((item, index) => /* @__PURE__ */ jsx(FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
33787
33787
|
}
|
|
33788
33788
|
);
|
|
33789
33789
|
};
|
|
@@ -34109,7 +34109,7 @@ var init_SplitSection = __esm({
|
|
|
34109
34109
|
const textContent = /* @__PURE__ */ jsxs(VStack, { gap: "md", className: "flex-1 min-w-0", children: [
|
|
34110
34110
|
/* @__PURE__ */ jsx(Typography, { variant: "h2", children: title }),
|
|
34111
34111
|
typeof description === "string" ? /* @__PURE__ */ jsx(Typography, { variant: "body", color: "muted", children: description }) : description,
|
|
34112
|
-
bullets && bullets.length > 0 && /* @__PURE__ */ jsx(VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxs(HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
34112
|
+
Array.isArray(bullets) && bullets.length > 0 && /* @__PURE__ */ jsx(VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxs(HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
34113
34113
|
/* @__PURE__ */ jsx(
|
|
34114
34114
|
Icon,
|
|
34115
34115
|
{
|
|
@@ -37914,6 +37914,7 @@ var init_MarketingFooter = __esm({
|
|
|
37914
37914
|
logo,
|
|
37915
37915
|
className
|
|
37916
37916
|
}) => {
|
|
37917
|
+
const safeColumns = Array.isArray(columns) ? columns : [];
|
|
37917
37918
|
return /* @__PURE__ */ jsx(
|
|
37918
37919
|
Box,
|
|
37919
37920
|
{
|
|
@@ -37927,7 +37928,7 @@ var init_MarketingFooter = __esm({
|
|
|
37927
37928
|
children: /* @__PURE__ */ jsxs(VStack, { gap: "lg", className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: [
|
|
37928
37929
|
/* @__PURE__ */ jsxs(HStack, { gap: "lg", align: "start", className: "flex-wrap w-full justify-between", children: [
|
|
37929
37930
|
logo && /* @__PURE__ */ jsx(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: logo.href ? /* @__PURE__ */ jsx("a", { href: logo.href, children: /* @__PURE__ */ jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }) : /* @__PURE__ */ jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }),
|
|
37930
|
-
|
|
37931
|
+
safeColumns.map((col) => /* @__PURE__ */ jsxs(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: [
|
|
37931
37932
|
/* @__PURE__ */ jsx(
|
|
37932
37933
|
Typography,
|
|
37933
37934
|
{
|
|
@@ -37936,7 +37937,7 @@ var init_MarketingFooter = __esm({
|
|
|
37936
37937
|
children: col.title
|
|
37937
37938
|
}
|
|
37938
37939
|
),
|
|
37939
|
-
col.items.map((item) => /* @__PURE__ */ jsx(
|
|
37940
|
+
(Array.isArray(col.items) ? col.items : []).map((item) => /* @__PURE__ */ jsx(
|
|
37940
37941
|
"a",
|
|
37941
37942
|
{
|
|
37942
37943
|
href: item.href,
|
|
@@ -41901,7 +41902,7 @@ var init_LandingPageTemplate = __esm({
|
|
|
41901
41902
|
background: resolved.hero.background
|
|
41902
41903
|
}
|
|
41903
41904
|
),
|
|
41904
|
-
resolved.features.length > 0 && /* @__PURE__ */ jsx(Box, { className: "bg-muted/20 py-16", children: /* @__PURE__ */ jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxs(VStack, { gap: "lg", children: [
|
|
41905
|
+
Array.isArray(resolved.features) && resolved.features.length > 0 && /* @__PURE__ */ jsx(Box, { className: "bg-muted/20 py-16", children: /* @__PURE__ */ jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxs(VStack, { gap: "lg", children: [
|
|
41905
41906
|
/* @__PURE__ */ jsx(SectionHeader, { title: "Features" }),
|
|
41906
41907
|
/* @__PURE__ */ jsx(
|
|
41907
41908
|
FeatureGrid,
|
|
@@ -43718,7 +43719,7 @@ var init_PricingPageTemplate = __esm({
|
|
|
43718
43719
|
/* @__PURE__ */ jsx(Box, { className: "py-16", children: /* @__PURE__ */ jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsx(
|
|
43719
43720
|
PricingGrid,
|
|
43720
43721
|
{
|
|
43721
|
-
plans: resolved.plans.map((plan) => ({
|
|
43722
|
+
plans: (Array.isArray(resolved.plans) ? resolved.plans : []).map((plan) => ({
|
|
43722
43723
|
name: plan.name,
|
|
43723
43724
|
price: plan.price,
|
|
43724
43725
|
description: plan.description,
|
|
@@ -60251,6 +60252,14 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
60251
60252
|
}));
|
|
60252
60253
|
void slotSource;
|
|
60253
60254
|
for (const [slot, patterns] of pendingSlots) {
|
|
60255
|
+
stateLog.debug("flush:slot", {
|
|
60256
|
+
traitName,
|
|
60257
|
+
slot,
|
|
60258
|
+
patternCount: patterns.length,
|
|
60259
|
+
event: eventKey,
|
|
60260
|
+
transition: `${result.previousState}->${result.newState}`,
|
|
60261
|
+
cleared: patterns.length === 0
|
|
60262
|
+
});
|
|
60254
60263
|
flushSlot(traitName, slot, patterns);
|
|
60255
60264
|
}
|
|
60256
60265
|
} catch (error) {
|
|
@@ -60482,7 +60491,11 @@ function createHttpTransport(serverUrl) {
|
|
|
60482
60491
|
const result = await res.json();
|
|
60483
60492
|
return !!result.success;
|
|
60484
60493
|
} catch (err) {
|
|
60485
|
-
|
|
60494
|
+
if (err instanceof TypeError) {
|
|
60495
|
+
serverBridgeLog.warn("Registration failed", { error: err.message });
|
|
60496
|
+
} else {
|
|
60497
|
+
serverBridgeLog.error("Registration failed", { error: err instanceof Error ? err : String(err) });
|
|
60498
|
+
}
|
|
60486
60499
|
return false;
|
|
60487
60500
|
}
|
|
60488
60501
|
},
|
|
@@ -60600,12 +60613,22 @@ function ServerBridgeProvider({
|
|
|
60600
60613
|
}
|
|
60601
60614
|
return { effects, meta };
|
|
60602
60615
|
} catch (err) {
|
|
60603
|
-
|
|
60604
|
-
|
|
60605
|
-
|
|
60606
|
-
|
|
60607
|
-
|
|
60608
|
-
|
|
60616
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
60617
|
+
if (err instanceof TypeError) {
|
|
60618
|
+
xOrbitalLog.warn("response:network", {
|
|
60619
|
+
orbital: orbitalName,
|
|
60620
|
+
event,
|
|
60621
|
+
error: msg,
|
|
60622
|
+
reason: "peer endpoint unreachable (expected in standalone single-orbital mode)"
|
|
60623
|
+
});
|
|
60624
|
+
} else {
|
|
60625
|
+
xOrbitalLog.error("response:network", {
|
|
60626
|
+
orbital: orbitalName,
|
|
60627
|
+
event,
|
|
60628
|
+
error: msg
|
|
60629
|
+
});
|
|
60630
|
+
}
|
|
60631
|
+
return { effects: [], meta: { ...emptyMeta, error: msg } };
|
|
60609
60632
|
}
|
|
60610
60633
|
}, [connected, transport, eventBus]);
|
|
60611
60634
|
useEffect(() => {
|
|
@@ -7775,7 +7775,7 @@ var init_AboutPageTemplate = __esm({
|
|
|
7775
7775
|
background: resolved.hero.background
|
|
7776
7776
|
}
|
|
7777
7777
|
),
|
|
7778
|
-
resolved.articles.map((article, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
7778
|
+
(Array.isArray(resolved.articles) ? resolved.articles : []).map((article, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
7779
7779
|
exports.Box,
|
|
7780
7780
|
{
|
|
7781
7781
|
className: cn("py-12", index % 2 !== 0 && "bg-muted/20"),
|
|
@@ -29291,7 +29291,7 @@ var init_FeatureGrid = __esm({
|
|
|
29291
29291
|
cols: columns,
|
|
29292
29292
|
gap,
|
|
29293
29293
|
className: cn(className),
|
|
29294
|
-
children: items.map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(exports.FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
29294
|
+
children: (Array.isArray(items) ? items : []).map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(exports.FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
29295
29295
|
}
|
|
29296
29296
|
);
|
|
29297
29297
|
};
|
|
@@ -29617,7 +29617,7 @@ var init_SplitSection = __esm({
|
|
|
29617
29617
|
const textContent = /* @__PURE__ */ jsxRuntime.jsxs(exports.VStack, { gap: "md", className: "flex-1 min-w-0", children: [
|
|
29618
29618
|
/* @__PURE__ */ jsxRuntime.jsx(exports.Typography, { variant: "h2", children: title }),
|
|
29619
29619
|
typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(exports.Typography, { variant: "body", color: "muted", children: description }) : description,
|
|
29620
|
-
bullets && bullets.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(exports.VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxRuntime.jsxs(exports.HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
29620
|
+
Array.isArray(bullets) && bullets.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(exports.VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxRuntime.jsxs(exports.HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
29621
29621
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
29622
29622
|
exports.Icon,
|
|
29623
29623
|
{
|
|
@@ -33422,6 +33422,7 @@ var init_MarketingFooter = __esm({
|
|
|
33422
33422
|
logo,
|
|
33423
33423
|
className
|
|
33424
33424
|
}) => {
|
|
33425
|
+
const safeColumns = Array.isArray(columns) ? columns : [];
|
|
33425
33426
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
33426
33427
|
exports.Box,
|
|
33427
33428
|
{
|
|
@@ -33435,7 +33436,7 @@ var init_MarketingFooter = __esm({
|
|
|
33435
33436
|
children: /* @__PURE__ */ jsxRuntime.jsxs(exports.VStack, { gap: "lg", className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: [
|
|
33436
33437
|
/* @__PURE__ */ jsxRuntime.jsxs(exports.HStack, { gap: "lg", align: "start", className: "flex-wrap w-full justify-between", children: [
|
|
33437
33438
|
logo && /* @__PURE__ */ jsxRuntime.jsx(exports.VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: logo.href ? /* @__PURE__ */ jsxRuntime.jsx("a", { href: logo.href, children: /* @__PURE__ */ jsxRuntime.jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }) : /* @__PURE__ */ jsxRuntime.jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }),
|
|
33438
|
-
|
|
33439
|
+
safeColumns.map((col) => /* @__PURE__ */ jsxRuntime.jsxs(exports.VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: [
|
|
33439
33440
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
33440
33441
|
exports.Typography,
|
|
33441
33442
|
{
|
|
@@ -33444,7 +33445,7 @@ var init_MarketingFooter = __esm({
|
|
|
33444
33445
|
children: col.title
|
|
33445
33446
|
}
|
|
33446
33447
|
),
|
|
33447
|
-
col.items.map((item) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
33448
|
+
(Array.isArray(col.items) ? col.items : []).map((item) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
33448
33449
|
"a",
|
|
33449
33450
|
{
|
|
33450
33451
|
href: item.href,
|
|
@@ -38008,7 +38009,7 @@ var init_LandingPageTemplate = __esm({
|
|
|
38008
38009
|
background: resolved.hero.background
|
|
38009
38010
|
}
|
|
38010
38011
|
),
|
|
38011
|
-
resolved.features.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(exports.Box, { className: "bg-muted/20 py-16", children: /* @__PURE__ */ jsxRuntime.jsx(exports.Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxRuntime.jsxs(exports.VStack, { gap: "lg", children: [
|
|
38012
|
+
Array.isArray(resolved.features) && resolved.features.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(exports.Box, { className: "bg-muted/20 py-16", children: /* @__PURE__ */ jsxRuntime.jsx(exports.Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxRuntime.jsxs(exports.VStack, { gap: "lg", children: [
|
|
38012
38013
|
/* @__PURE__ */ jsxRuntime.jsx(exports.SectionHeader, { title: "Features" }),
|
|
38013
38014
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
38014
38015
|
exports.FeatureGrid,
|
|
@@ -39918,7 +39919,7 @@ var init_PricingPageTemplate = __esm({
|
|
|
39918
39919
|
/* @__PURE__ */ jsxRuntime.jsx(exports.Box, { className: "py-16", children: /* @__PURE__ */ jsxRuntime.jsx(exports.Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
39919
39920
|
exports.PricingGrid,
|
|
39920
39921
|
{
|
|
39921
|
-
plans: resolved.plans.map((plan) => ({
|
|
39922
|
+
plans: (Array.isArray(resolved.plans) ? resolved.plans : []).map((plan) => ({
|
|
39922
39923
|
name: plan.name,
|
|
39923
39924
|
price: plan.price,
|
|
39924
39925
|
description: plan.description,
|
package/dist/components/index.js
CHANGED
|
@@ -7726,7 +7726,7 @@ var init_AboutPageTemplate = __esm({
|
|
|
7726
7726
|
background: resolved.hero.background
|
|
7727
7727
|
}
|
|
7728
7728
|
),
|
|
7729
|
-
resolved.articles.map((article, index) => /* @__PURE__ */ jsx(
|
|
7729
|
+
(Array.isArray(resolved.articles) ? resolved.articles : []).map((article, index) => /* @__PURE__ */ jsx(
|
|
7730
7730
|
Box,
|
|
7731
7731
|
{
|
|
7732
7732
|
className: cn("py-12", index % 2 !== 0 && "bg-muted/20"),
|
|
@@ -29242,7 +29242,7 @@ var init_FeatureGrid = __esm({
|
|
|
29242
29242
|
cols: columns,
|
|
29243
29243
|
gap,
|
|
29244
29244
|
className: cn(className),
|
|
29245
|
-
children: items.map((item, index) => /* @__PURE__ */ jsx(FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
29245
|
+
children: (Array.isArray(items) ? items : []).map((item, index) => /* @__PURE__ */ jsx(FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
29246
29246
|
}
|
|
29247
29247
|
);
|
|
29248
29248
|
};
|
|
@@ -29568,7 +29568,7 @@ var init_SplitSection = __esm({
|
|
|
29568
29568
|
const textContent = /* @__PURE__ */ jsxs(VStack, { gap: "md", className: "flex-1 min-w-0", children: [
|
|
29569
29569
|
/* @__PURE__ */ jsx(Typography, { variant: "h2", children: title }),
|
|
29570
29570
|
typeof description === "string" ? /* @__PURE__ */ jsx(Typography, { variant: "body", color: "muted", children: description }) : description,
|
|
29571
|
-
bullets && bullets.length > 0 && /* @__PURE__ */ jsx(VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxs(HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
29571
|
+
Array.isArray(bullets) && bullets.length > 0 && /* @__PURE__ */ jsx(VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxs(HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
29572
29572
|
/* @__PURE__ */ jsx(
|
|
29573
29573
|
Icon,
|
|
29574
29574
|
{
|
|
@@ -33373,6 +33373,7 @@ var init_MarketingFooter = __esm({
|
|
|
33373
33373
|
logo,
|
|
33374
33374
|
className
|
|
33375
33375
|
}) => {
|
|
33376
|
+
const safeColumns = Array.isArray(columns) ? columns : [];
|
|
33376
33377
|
return /* @__PURE__ */ jsx(
|
|
33377
33378
|
Box,
|
|
33378
33379
|
{
|
|
@@ -33386,7 +33387,7 @@ var init_MarketingFooter = __esm({
|
|
|
33386
33387
|
children: /* @__PURE__ */ jsxs(VStack, { gap: "lg", className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: [
|
|
33387
33388
|
/* @__PURE__ */ jsxs(HStack, { gap: "lg", align: "start", className: "flex-wrap w-full justify-between", children: [
|
|
33388
33389
|
logo && /* @__PURE__ */ jsx(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: logo.href ? /* @__PURE__ */ jsx("a", { href: logo.href, children: /* @__PURE__ */ jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }) : /* @__PURE__ */ jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }),
|
|
33389
|
-
|
|
33390
|
+
safeColumns.map((col) => /* @__PURE__ */ jsxs(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: [
|
|
33390
33391
|
/* @__PURE__ */ jsx(
|
|
33391
33392
|
Typography,
|
|
33392
33393
|
{
|
|
@@ -33395,7 +33396,7 @@ var init_MarketingFooter = __esm({
|
|
|
33395
33396
|
children: col.title
|
|
33396
33397
|
}
|
|
33397
33398
|
),
|
|
33398
|
-
col.items.map((item) => /* @__PURE__ */ jsx(
|
|
33399
|
+
(Array.isArray(col.items) ? col.items : []).map((item) => /* @__PURE__ */ jsx(
|
|
33399
33400
|
"a",
|
|
33400
33401
|
{
|
|
33401
33402
|
href: item.href,
|
|
@@ -37959,7 +37960,7 @@ var init_LandingPageTemplate = __esm({
|
|
|
37959
37960
|
background: resolved.hero.background
|
|
37960
37961
|
}
|
|
37961
37962
|
),
|
|
37962
|
-
resolved.features.length > 0 && /* @__PURE__ */ jsx(Box, { className: "bg-muted/20 py-16", children: /* @__PURE__ */ jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxs(VStack, { gap: "lg", children: [
|
|
37963
|
+
Array.isArray(resolved.features) && resolved.features.length > 0 && /* @__PURE__ */ jsx(Box, { className: "bg-muted/20 py-16", children: /* @__PURE__ */ jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxs(VStack, { gap: "lg", children: [
|
|
37963
37964
|
/* @__PURE__ */ jsx(SectionHeader, { title: "Features" }),
|
|
37964
37965
|
/* @__PURE__ */ jsx(
|
|
37965
37966
|
FeatureGrid,
|
|
@@ -39869,7 +39870,7 @@ var init_PricingPageTemplate = __esm({
|
|
|
39869
39870
|
/* @__PURE__ */ jsx(Box, { className: "py-16", children: /* @__PURE__ */ jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsx(
|
|
39870
39871
|
PricingGrid,
|
|
39871
39872
|
{
|
|
39872
|
-
plans: resolved.plans.map((plan) => ({
|
|
39873
|
+
plans: (Array.isArray(resolved.plans) ? resolved.plans : []).map((plan) => ({
|
|
39873
39874
|
name: plan.name,
|
|
39874
39875
|
price: plan.price,
|
|
39875
39876
|
description: plan.description,
|
package/dist/marketing/index.cjs
CHANGED
|
@@ -4649,7 +4649,7 @@ var FeatureGrid = ({
|
|
|
4649
4649
|
cols: columns,
|
|
4650
4650
|
gap,
|
|
4651
4651
|
className: cn(className),
|
|
4652
|
-
children: items.map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
4652
|
+
children: (Array.isArray(items) ? items : []).map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
4653
4653
|
}
|
|
4654
4654
|
);
|
|
4655
4655
|
};
|
|
@@ -4748,7 +4748,7 @@ var SplitSection = ({
|
|
|
4748
4748
|
const textContent = /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "md", className: "flex-1 min-w-0", children: [
|
|
4749
4749
|
/* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "h2", children: title }),
|
|
4750
4750
|
typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "body", color: "muted", children: description }) : description,
|
|
4751
|
-
bullets && bullets.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxRuntime.jsxs(HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
4751
|
+
Array.isArray(bullets) && bullets.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxRuntime.jsxs(HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
4752
4752
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4753
4753
|
Icon,
|
|
4754
4754
|
{
|
|
@@ -5245,6 +5245,7 @@ var MarketingFooter = ({
|
|
|
5245
5245
|
logo,
|
|
5246
5246
|
className
|
|
5247
5247
|
}) => {
|
|
5248
|
+
const safeColumns = Array.isArray(columns) ? columns : [];
|
|
5248
5249
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5249
5250
|
Box,
|
|
5250
5251
|
{
|
|
@@ -5258,7 +5259,7 @@ var MarketingFooter = ({
|
|
|
5258
5259
|
children: /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "lg", className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: [
|
|
5259
5260
|
/* @__PURE__ */ jsxRuntime.jsxs(HStack, { gap: "lg", align: "start", className: "flex-wrap w-full justify-between", children: [
|
|
5260
5261
|
logo && /* @__PURE__ */ jsxRuntime.jsx(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: logo.href ? /* @__PURE__ */ jsxRuntime.jsx("a", { href: logo.href, children: /* @__PURE__ */ jsxRuntime.jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }) : /* @__PURE__ */ jsxRuntime.jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }),
|
|
5261
|
-
|
|
5262
|
+
safeColumns.map((col) => /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: [
|
|
5262
5263
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5263
5264
|
Typography,
|
|
5264
5265
|
{
|
|
@@ -5267,7 +5268,7 @@ var MarketingFooter = ({
|
|
|
5267
5268
|
children: col.title
|
|
5268
5269
|
}
|
|
5269
5270
|
),
|
|
5270
|
-
col.items.map((item) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
5271
|
+
(Array.isArray(col.items) ? col.items : []).map((item) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
5271
5272
|
"a",
|
|
5272
5273
|
{
|
|
5273
5274
|
href: item.href,
|
package/dist/marketing/index.js
CHANGED
|
@@ -4622,7 +4622,7 @@ var FeatureGrid = ({
|
|
|
4622
4622
|
cols: columns,
|
|
4623
4623
|
gap,
|
|
4624
4624
|
className: cn(className),
|
|
4625
|
-
children: items.map((item, index) => /* @__PURE__ */ jsx(FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
4625
|
+
children: (Array.isArray(items) ? items : []).map((item, index) => /* @__PURE__ */ jsx(FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
4626
4626
|
}
|
|
4627
4627
|
);
|
|
4628
4628
|
};
|
|
@@ -4721,7 +4721,7 @@ var SplitSection = ({
|
|
|
4721
4721
|
const textContent = /* @__PURE__ */ jsxs(VStack, { gap: "md", className: "flex-1 min-w-0", children: [
|
|
4722
4722
|
/* @__PURE__ */ jsx(Typography, { variant: "h2", children: title }),
|
|
4723
4723
|
typeof description === "string" ? /* @__PURE__ */ jsx(Typography, { variant: "body", color: "muted", children: description }) : description,
|
|
4724
|
-
bullets && bullets.length > 0 && /* @__PURE__ */ jsx(VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxs(HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
4724
|
+
Array.isArray(bullets) && bullets.length > 0 && /* @__PURE__ */ jsx(VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxs(HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
4725
4725
|
/* @__PURE__ */ jsx(
|
|
4726
4726
|
Icon,
|
|
4727
4727
|
{
|
|
@@ -5218,6 +5218,7 @@ var MarketingFooter = ({
|
|
|
5218
5218
|
logo,
|
|
5219
5219
|
className
|
|
5220
5220
|
}) => {
|
|
5221
|
+
const safeColumns = Array.isArray(columns) ? columns : [];
|
|
5221
5222
|
return /* @__PURE__ */ jsx(
|
|
5222
5223
|
Box,
|
|
5223
5224
|
{
|
|
@@ -5231,7 +5232,7 @@ var MarketingFooter = ({
|
|
|
5231
5232
|
children: /* @__PURE__ */ jsxs(VStack, { gap: "lg", className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: [
|
|
5232
5233
|
/* @__PURE__ */ jsxs(HStack, { gap: "lg", align: "start", className: "flex-wrap w-full justify-between", children: [
|
|
5233
5234
|
logo && /* @__PURE__ */ jsx(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: logo.href ? /* @__PURE__ */ jsx("a", { href: logo.href, children: /* @__PURE__ */ jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }) : /* @__PURE__ */ jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }),
|
|
5234
|
-
|
|
5235
|
+
safeColumns.map((col) => /* @__PURE__ */ jsxs(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: [
|
|
5235
5236
|
/* @__PURE__ */ jsx(
|
|
5236
5237
|
Typography,
|
|
5237
5238
|
{
|
|
@@ -5240,7 +5241,7 @@ var MarketingFooter = ({
|
|
|
5240
5241
|
children: col.title
|
|
5241
5242
|
}
|
|
5242
5243
|
),
|
|
5243
|
-
col.items.map((item) => /* @__PURE__ */ jsx(
|
|
5244
|
+
(Array.isArray(col.items) ? col.items : []).map((item) => /* @__PURE__ */ jsx(
|
|
5244
5245
|
"a",
|
|
5245
5246
|
{
|
|
5246
5247
|
href: item.href,
|
package/dist/providers/index.cjs
CHANGED
|
@@ -9343,7 +9343,7 @@ var init_AboutPageTemplate = __esm({
|
|
|
9343
9343
|
background: resolved.hero.background
|
|
9344
9344
|
}
|
|
9345
9345
|
),
|
|
9346
|
-
resolved.articles.map((article, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
9346
|
+
(Array.isArray(resolved.articles) ? resolved.articles : []).map((article, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
9347
9347
|
Box,
|
|
9348
9348
|
{
|
|
9349
9349
|
className: cn("py-12", index % 2 !== 0 && "bg-muted/20"),
|
|
@@ -30244,7 +30244,7 @@ var init_FeatureGrid = __esm({
|
|
|
30244
30244
|
cols: columns,
|
|
30245
30245
|
gap,
|
|
30246
30246
|
className: cn(className),
|
|
30247
|
-
children: items.map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
30247
|
+
children: (Array.isArray(items) ? items : []).map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
30248
30248
|
}
|
|
30249
30249
|
);
|
|
30250
30250
|
};
|
|
@@ -30570,7 +30570,7 @@ var init_SplitSection = __esm({
|
|
|
30570
30570
|
const textContent = /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "md", className: "flex-1 min-w-0", children: [
|
|
30571
30571
|
/* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "h2", children: title }),
|
|
30572
30572
|
typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "body", color: "muted", children: description }) : description,
|
|
30573
|
-
bullets && bullets.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxRuntime.jsxs(HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
30573
|
+
Array.isArray(bullets) && bullets.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxRuntime.jsxs(HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
30574
30574
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
30575
30575
|
Icon,
|
|
30576
30576
|
{
|
|
@@ -34375,6 +34375,7 @@ var init_MarketingFooter = __esm({
|
|
|
34375
34375
|
logo,
|
|
34376
34376
|
className
|
|
34377
34377
|
}) => {
|
|
34378
|
+
const safeColumns = Array.isArray(columns) ? columns : [];
|
|
34378
34379
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
34379
34380
|
Box,
|
|
34380
34381
|
{
|
|
@@ -34388,7 +34389,7 @@ var init_MarketingFooter = __esm({
|
|
|
34388
34389
|
children: /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "lg", className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: [
|
|
34389
34390
|
/* @__PURE__ */ jsxRuntime.jsxs(HStack, { gap: "lg", align: "start", className: "flex-wrap w-full justify-between", children: [
|
|
34390
34391
|
logo && /* @__PURE__ */ jsxRuntime.jsx(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: logo.href ? /* @__PURE__ */ jsxRuntime.jsx("a", { href: logo.href, children: /* @__PURE__ */ jsxRuntime.jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }) : /* @__PURE__ */ jsxRuntime.jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }),
|
|
34391
|
-
|
|
34392
|
+
safeColumns.map((col) => /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: [
|
|
34392
34393
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
34393
34394
|
Typography,
|
|
34394
34395
|
{
|
|
@@ -34397,7 +34398,7 @@ var init_MarketingFooter = __esm({
|
|
|
34397
34398
|
children: col.title
|
|
34398
34399
|
}
|
|
34399
34400
|
),
|
|
34400
|
-
col.items.map((item) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
34401
|
+
(Array.isArray(col.items) ? col.items : []).map((item) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
34401
34402
|
"a",
|
|
34402
34403
|
{
|
|
34403
34404
|
href: item.href,
|
|
@@ -38765,7 +38766,7 @@ var init_LandingPageTemplate = __esm({
|
|
|
38765
38766
|
background: resolved.hero.background
|
|
38766
38767
|
}
|
|
38767
38768
|
),
|
|
38768
|
-
resolved.features.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(Box, { className: "bg-muted/20 py-16", children: /* @__PURE__ */ jsxRuntime.jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "lg", children: [
|
|
38769
|
+
Array.isArray(resolved.features) && resolved.features.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(Box, { className: "bg-muted/20 py-16", children: /* @__PURE__ */ jsxRuntime.jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "lg", children: [
|
|
38769
38770
|
/* @__PURE__ */ jsxRuntime.jsx(SectionHeader, { title: "Features" }),
|
|
38770
38771
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
38771
38772
|
FeatureGrid,
|
|
@@ -40582,7 +40583,7 @@ var init_PricingPageTemplate = __esm({
|
|
|
40582
40583
|
/* @__PURE__ */ jsxRuntime.jsx(Box, { className: "py-16", children: /* @__PURE__ */ jsxRuntime.jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
40583
40584
|
PricingGrid,
|
|
40584
40585
|
{
|
|
40585
|
-
plans: resolved.plans.map((plan) => ({
|
|
40586
|
+
plans: (Array.isArray(resolved.plans) ? resolved.plans : []).map((plan) => ({
|
|
40586
40587
|
name: plan.name,
|
|
40587
40588
|
price: plan.price,
|
|
40588
40589
|
description: plan.description,
|
package/dist/providers/index.js
CHANGED
|
@@ -9294,7 +9294,7 @@ var init_AboutPageTemplate = __esm({
|
|
|
9294
9294
|
background: resolved.hero.background
|
|
9295
9295
|
}
|
|
9296
9296
|
),
|
|
9297
|
-
resolved.articles.map((article, index) => /* @__PURE__ */ jsx(
|
|
9297
|
+
(Array.isArray(resolved.articles) ? resolved.articles : []).map((article, index) => /* @__PURE__ */ jsx(
|
|
9298
9298
|
Box,
|
|
9299
9299
|
{
|
|
9300
9300
|
className: cn("py-12", index % 2 !== 0 && "bg-muted/20"),
|
|
@@ -30195,7 +30195,7 @@ var init_FeatureGrid = __esm({
|
|
|
30195
30195
|
cols: columns,
|
|
30196
30196
|
gap,
|
|
30197
30197
|
className: cn(className),
|
|
30198
|
-
children: items.map((item, index) => /* @__PURE__ */ jsx(FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
30198
|
+
children: (Array.isArray(items) ? items : []).map((item, index) => /* @__PURE__ */ jsx(FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
30199
30199
|
}
|
|
30200
30200
|
);
|
|
30201
30201
|
};
|
|
@@ -30521,7 +30521,7 @@ var init_SplitSection = __esm({
|
|
|
30521
30521
|
const textContent = /* @__PURE__ */ jsxs(VStack, { gap: "md", className: "flex-1 min-w-0", children: [
|
|
30522
30522
|
/* @__PURE__ */ jsx(Typography, { variant: "h2", children: title }),
|
|
30523
30523
|
typeof description === "string" ? /* @__PURE__ */ jsx(Typography, { variant: "body", color: "muted", children: description }) : description,
|
|
30524
|
-
bullets && bullets.length > 0 && /* @__PURE__ */ jsx(VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxs(HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
30524
|
+
Array.isArray(bullets) && bullets.length > 0 && /* @__PURE__ */ jsx(VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxs(HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
30525
30525
|
/* @__PURE__ */ jsx(
|
|
30526
30526
|
Icon,
|
|
30527
30527
|
{
|
|
@@ -34326,6 +34326,7 @@ var init_MarketingFooter = __esm({
|
|
|
34326
34326
|
logo,
|
|
34327
34327
|
className
|
|
34328
34328
|
}) => {
|
|
34329
|
+
const safeColumns = Array.isArray(columns) ? columns : [];
|
|
34329
34330
|
return /* @__PURE__ */ jsx(
|
|
34330
34331
|
Box,
|
|
34331
34332
|
{
|
|
@@ -34339,7 +34340,7 @@ var init_MarketingFooter = __esm({
|
|
|
34339
34340
|
children: /* @__PURE__ */ jsxs(VStack, { gap: "lg", className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: [
|
|
34340
34341
|
/* @__PURE__ */ jsxs(HStack, { gap: "lg", align: "start", className: "flex-wrap w-full justify-between", children: [
|
|
34341
34342
|
logo && /* @__PURE__ */ jsx(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: logo.href ? /* @__PURE__ */ jsx("a", { href: logo.href, children: /* @__PURE__ */ jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }) : /* @__PURE__ */ jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }),
|
|
34342
|
-
|
|
34343
|
+
safeColumns.map((col) => /* @__PURE__ */ jsxs(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: [
|
|
34343
34344
|
/* @__PURE__ */ jsx(
|
|
34344
34345
|
Typography,
|
|
34345
34346
|
{
|
|
@@ -34348,7 +34349,7 @@ var init_MarketingFooter = __esm({
|
|
|
34348
34349
|
children: col.title
|
|
34349
34350
|
}
|
|
34350
34351
|
),
|
|
34351
|
-
col.items.map((item) => /* @__PURE__ */ jsx(
|
|
34352
|
+
(Array.isArray(col.items) ? col.items : []).map((item) => /* @__PURE__ */ jsx(
|
|
34352
34353
|
"a",
|
|
34353
34354
|
{
|
|
34354
34355
|
href: item.href,
|
|
@@ -38716,7 +38717,7 @@ var init_LandingPageTemplate = __esm({
|
|
|
38716
38717
|
background: resolved.hero.background
|
|
38717
38718
|
}
|
|
38718
38719
|
),
|
|
38719
|
-
resolved.features.length > 0 && /* @__PURE__ */ jsx(Box, { className: "bg-muted/20 py-16", children: /* @__PURE__ */ jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxs(VStack, { gap: "lg", children: [
|
|
38720
|
+
Array.isArray(resolved.features) && resolved.features.length > 0 && /* @__PURE__ */ jsx(Box, { className: "bg-muted/20 py-16", children: /* @__PURE__ */ jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxs(VStack, { gap: "lg", children: [
|
|
38720
38721
|
/* @__PURE__ */ jsx(SectionHeader, { title: "Features" }),
|
|
38721
38722
|
/* @__PURE__ */ jsx(
|
|
38722
38723
|
FeatureGrid,
|
|
@@ -40533,7 +40534,7 @@ var init_PricingPageTemplate = __esm({
|
|
|
40533
40534
|
/* @__PURE__ */ jsx(Box, { className: "py-16", children: /* @__PURE__ */ jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsx(
|
|
40534
40535
|
PricingGrid,
|
|
40535
40536
|
{
|
|
40536
|
-
plans: resolved.plans.map((plan) => ({
|
|
40537
|
+
plans: (Array.isArray(resolved.plans) ? resolved.plans : []).map((plan) => ({
|
|
40537
40538
|
name: plan.name,
|
|
40538
40539
|
price: plan.price,
|
|
40539
40540
|
description: plan.description,
|
package/dist/runtime/index.cjs
CHANGED
|
@@ -9231,7 +9231,7 @@ var init_AboutPageTemplate = __esm({
|
|
|
9231
9231
|
background: resolved.hero.background
|
|
9232
9232
|
}
|
|
9233
9233
|
),
|
|
9234
|
-
resolved.articles.map((article, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
9234
|
+
(Array.isArray(resolved.articles) ? resolved.articles : []).map((article, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
9235
9235
|
Box,
|
|
9236
9236
|
{
|
|
9237
9237
|
className: cn("py-12", index % 2 !== 0 && "bg-muted/20"),
|
|
@@ -29811,7 +29811,7 @@ var init_FeatureGrid = __esm({
|
|
|
29811
29811
|
cols: columns,
|
|
29812
29812
|
gap,
|
|
29813
29813
|
className: cn(className),
|
|
29814
|
-
children: items.map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
29814
|
+
children: (Array.isArray(items) ? items : []).map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
29815
29815
|
}
|
|
29816
29816
|
);
|
|
29817
29817
|
};
|
|
@@ -30137,7 +30137,7 @@ var init_SplitSection = __esm({
|
|
|
30137
30137
|
const textContent = /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "md", className: "flex-1 min-w-0", children: [
|
|
30138
30138
|
/* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "h2", children: title }),
|
|
30139
30139
|
typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "body", color: "muted", children: description }) : description,
|
|
30140
|
-
bullets && bullets.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxRuntime.jsxs(HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
30140
|
+
Array.isArray(bullets) && bullets.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxRuntime.jsxs(HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
30141
30141
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
30142
30142
|
Icon,
|
|
30143
30143
|
{
|
|
@@ -33942,6 +33942,7 @@ var init_MarketingFooter = __esm({
|
|
|
33942
33942
|
logo,
|
|
33943
33943
|
className
|
|
33944
33944
|
}) => {
|
|
33945
|
+
const safeColumns = Array.isArray(columns) ? columns : [];
|
|
33945
33946
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
33946
33947
|
Box,
|
|
33947
33948
|
{
|
|
@@ -33955,7 +33956,7 @@ var init_MarketingFooter = __esm({
|
|
|
33955
33956
|
children: /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "lg", className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: [
|
|
33956
33957
|
/* @__PURE__ */ jsxRuntime.jsxs(HStack, { gap: "lg", align: "start", className: "flex-wrap w-full justify-between", children: [
|
|
33957
33958
|
logo && /* @__PURE__ */ jsxRuntime.jsx(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: logo.href ? /* @__PURE__ */ jsxRuntime.jsx("a", { href: logo.href, children: /* @__PURE__ */ jsxRuntime.jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }) : /* @__PURE__ */ jsxRuntime.jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }),
|
|
33958
|
-
|
|
33959
|
+
safeColumns.map((col) => /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: [
|
|
33959
33960
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
33960
33961
|
Typography,
|
|
33961
33962
|
{
|
|
@@ -33964,7 +33965,7 @@ var init_MarketingFooter = __esm({
|
|
|
33964
33965
|
children: col.title
|
|
33965
33966
|
}
|
|
33966
33967
|
),
|
|
33967
|
-
col.items.map((item) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
33968
|
+
(Array.isArray(col.items) ? col.items : []).map((item) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
33968
33969
|
"a",
|
|
33969
33970
|
{
|
|
33970
33971
|
href: item.href,
|
|
@@ -38332,7 +38333,7 @@ var init_LandingPageTemplate = __esm({
|
|
|
38332
38333
|
background: resolved.hero.background
|
|
38333
38334
|
}
|
|
38334
38335
|
),
|
|
38335
|
-
resolved.features.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(Box, { className: "bg-muted/20 py-16", children: /* @__PURE__ */ jsxRuntime.jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "lg", children: [
|
|
38336
|
+
Array.isArray(resolved.features) && resolved.features.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(Box, { className: "bg-muted/20 py-16", children: /* @__PURE__ */ jsxRuntime.jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "lg", children: [
|
|
38336
38337
|
/* @__PURE__ */ jsxRuntime.jsx(SectionHeader, { title: "Features" }),
|
|
38337
38338
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
38338
38339
|
FeatureGrid,
|
|
@@ -40149,7 +40150,7 @@ var init_PricingPageTemplate = __esm({
|
|
|
40149
40150
|
/* @__PURE__ */ jsxRuntime.jsx(Box, { className: "py-16", children: /* @__PURE__ */ jsxRuntime.jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
40150
40151
|
PricingGrid,
|
|
40151
40152
|
{
|
|
40152
|
-
plans: resolved.plans.map((plan) => ({
|
|
40153
|
+
plans: (Array.isArray(resolved.plans) ? resolved.plans : []).map((plan) => ({
|
|
40153
40154
|
name: plan.name,
|
|
40154
40155
|
price: plan.price,
|
|
40155
40156
|
description: plan.description,
|
|
@@ -47705,6 +47706,14 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
47705
47706
|
}));
|
|
47706
47707
|
void slotSource;
|
|
47707
47708
|
for (const [slot, patterns] of pendingSlots) {
|
|
47709
|
+
stateLog.debug("flush:slot", {
|
|
47710
|
+
traitName,
|
|
47711
|
+
slot,
|
|
47712
|
+
patternCount: patterns.length,
|
|
47713
|
+
event: eventKey,
|
|
47714
|
+
transition: `${result.previousState}->${result.newState}`,
|
|
47715
|
+
cleared: patterns.length === 0
|
|
47716
|
+
});
|
|
47708
47717
|
flushSlot(traitName, slot, patterns);
|
|
47709
47718
|
}
|
|
47710
47719
|
} catch (error) {
|
|
@@ -48173,7 +48182,11 @@ function createHttpTransport(serverUrl) {
|
|
|
48173
48182
|
const result = await res.json();
|
|
48174
48183
|
return !!result.success;
|
|
48175
48184
|
} catch (err) {
|
|
48176
|
-
|
|
48185
|
+
if (err instanceof TypeError) {
|
|
48186
|
+
serverBridgeLog.warn("Registration failed", { error: err.message });
|
|
48187
|
+
} else {
|
|
48188
|
+
serverBridgeLog.error("Registration failed", { error: err instanceof Error ? err : String(err) });
|
|
48189
|
+
}
|
|
48177
48190
|
return false;
|
|
48178
48191
|
}
|
|
48179
48192
|
},
|
|
@@ -48291,12 +48304,22 @@ function ServerBridgeProvider({
|
|
|
48291
48304
|
}
|
|
48292
48305
|
return { effects, meta };
|
|
48293
48306
|
} catch (err) {
|
|
48294
|
-
|
|
48295
|
-
|
|
48296
|
-
|
|
48297
|
-
|
|
48298
|
-
|
|
48299
|
-
|
|
48307
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
48308
|
+
if (err instanceof TypeError) {
|
|
48309
|
+
xOrbitalLog.warn("response:network", {
|
|
48310
|
+
orbital: orbitalName,
|
|
48311
|
+
event,
|
|
48312
|
+
error: msg,
|
|
48313
|
+
reason: "peer endpoint unreachable (expected in standalone single-orbital mode)"
|
|
48314
|
+
});
|
|
48315
|
+
} else {
|
|
48316
|
+
xOrbitalLog.error("response:network", {
|
|
48317
|
+
orbital: orbitalName,
|
|
48318
|
+
event,
|
|
48319
|
+
error: msg
|
|
48320
|
+
});
|
|
48321
|
+
}
|
|
48322
|
+
return { effects: [], meta: { ...emptyMeta, error: msg } };
|
|
48300
48323
|
}
|
|
48301
48324
|
}, [connected, transport, eventBus]);
|
|
48302
48325
|
React85.useEffect(() => {
|
package/dist/runtime/index.js
CHANGED
|
@@ -9182,7 +9182,7 @@ var init_AboutPageTemplate = __esm({
|
|
|
9182
9182
|
background: resolved.hero.background
|
|
9183
9183
|
}
|
|
9184
9184
|
),
|
|
9185
|
-
resolved.articles.map((article, index) => /* @__PURE__ */ jsx(
|
|
9185
|
+
(Array.isArray(resolved.articles) ? resolved.articles : []).map((article, index) => /* @__PURE__ */ jsx(
|
|
9186
9186
|
Box,
|
|
9187
9187
|
{
|
|
9188
9188
|
className: cn("py-12", index % 2 !== 0 && "bg-muted/20"),
|
|
@@ -29762,7 +29762,7 @@ var init_FeatureGrid = __esm({
|
|
|
29762
29762
|
cols: columns,
|
|
29763
29763
|
gap,
|
|
29764
29764
|
className: cn(className),
|
|
29765
|
-
children: items.map((item, index) => /* @__PURE__ */ jsx(FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
29765
|
+
children: (Array.isArray(items) ? items : []).map((item, index) => /* @__PURE__ */ jsx(FeatureCard, { ...item }, `${item.title}-${index}`))
|
|
29766
29766
|
}
|
|
29767
29767
|
);
|
|
29768
29768
|
};
|
|
@@ -30088,7 +30088,7 @@ var init_SplitSection = __esm({
|
|
|
30088
30088
|
const textContent = /* @__PURE__ */ jsxs(VStack, { gap: "md", className: "flex-1 min-w-0", children: [
|
|
30089
30089
|
/* @__PURE__ */ jsx(Typography, { variant: "h2", children: title }),
|
|
30090
30090
|
typeof description === "string" ? /* @__PURE__ */ jsx(Typography, { variant: "body", color: "muted", children: description }) : description,
|
|
30091
|
-
bullets && bullets.length > 0 && /* @__PURE__ */ jsx(VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxs(HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
30091
|
+
Array.isArray(bullets) && bullets.length > 0 && /* @__PURE__ */ jsx(VStack, { gap: "sm", children: bullets.map((bullet, index) => /* @__PURE__ */ jsxs(HStack, { gap: "sm", align: "start", className: "mt-0.5", children: [
|
|
30092
30092
|
/* @__PURE__ */ jsx(
|
|
30093
30093
|
Icon,
|
|
30094
30094
|
{
|
|
@@ -33893,6 +33893,7 @@ var init_MarketingFooter = __esm({
|
|
|
33893
33893
|
logo,
|
|
33894
33894
|
className
|
|
33895
33895
|
}) => {
|
|
33896
|
+
const safeColumns = Array.isArray(columns) ? columns : [];
|
|
33896
33897
|
return /* @__PURE__ */ jsx(
|
|
33897
33898
|
Box,
|
|
33898
33899
|
{
|
|
@@ -33906,7 +33907,7 @@ var init_MarketingFooter = __esm({
|
|
|
33906
33907
|
children: /* @__PURE__ */ jsxs(VStack, { gap: "lg", className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: [
|
|
33907
33908
|
/* @__PURE__ */ jsxs(HStack, { gap: "lg", align: "start", className: "flex-wrap w-full justify-between", children: [
|
|
33908
33909
|
logo && /* @__PURE__ */ jsx(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: logo.href ? /* @__PURE__ */ jsx("a", { href: logo.href, children: /* @__PURE__ */ jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }) : /* @__PURE__ */ jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }),
|
|
33909
|
-
|
|
33910
|
+
safeColumns.map((col) => /* @__PURE__ */ jsxs(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: [
|
|
33910
33911
|
/* @__PURE__ */ jsx(
|
|
33911
33912
|
Typography,
|
|
33912
33913
|
{
|
|
@@ -33915,7 +33916,7 @@ var init_MarketingFooter = __esm({
|
|
|
33915
33916
|
children: col.title
|
|
33916
33917
|
}
|
|
33917
33918
|
),
|
|
33918
|
-
col.items.map((item) => /* @__PURE__ */ jsx(
|
|
33919
|
+
(Array.isArray(col.items) ? col.items : []).map((item) => /* @__PURE__ */ jsx(
|
|
33919
33920
|
"a",
|
|
33920
33921
|
{
|
|
33921
33922
|
href: item.href,
|
|
@@ -38283,7 +38284,7 @@ var init_LandingPageTemplate = __esm({
|
|
|
38283
38284
|
background: resolved.hero.background
|
|
38284
38285
|
}
|
|
38285
38286
|
),
|
|
38286
|
-
resolved.features.length > 0 && /* @__PURE__ */ jsx(Box, { className: "bg-muted/20 py-16", children: /* @__PURE__ */ jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxs(VStack, { gap: "lg", children: [
|
|
38287
|
+
Array.isArray(resolved.features) && resolved.features.length > 0 && /* @__PURE__ */ jsx(Box, { className: "bg-muted/20 py-16", children: /* @__PURE__ */ jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsxs(VStack, { gap: "lg", children: [
|
|
38287
38288
|
/* @__PURE__ */ jsx(SectionHeader, { title: "Features" }),
|
|
38288
38289
|
/* @__PURE__ */ jsx(
|
|
38289
38290
|
FeatureGrid,
|
|
@@ -40100,7 +40101,7 @@ var init_PricingPageTemplate = __esm({
|
|
|
40100
40101
|
/* @__PURE__ */ jsx(Box, { className: "py-16", children: /* @__PURE__ */ jsx(Container, { size: "xl", padding: "lg", children: /* @__PURE__ */ jsx(
|
|
40101
40102
|
PricingGrid,
|
|
40102
40103
|
{
|
|
40103
|
-
plans: resolved.plans.map((plan) => ({
|
|
40104
|
+
plans: (Array.isArray(resolved.plans) ? resolved.plans : []).map((plan) => ({
|
|
40104
40105
|
name: plan.name,
|
|
40105
40106
|
price: plan.price,
|
|
40106
40107
|
description: plan.description,
|
|
@@ -47656,6 +47657,14 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
47656
47657
|
}));
|
|
47657
47658
|
void slotSource;
|
|
47658
47659
|
for (const [slot, patterns] of pendingSlots) {
|
|
47660
|
+
stateLog.debug("flush:slot", {
|
|
47661
|
+
traitName,
|
|
47662
|
+
slot,
|
|
47663
|
+
patternCount: patterns.length,
|
|
47664
|
+
event: eventKey,
|
|
47665
|
+
transition: `${result.previousState}->${result.newState}`,
|
|
47666
|
+
cleared: patterns.length === 0
|
|
47667
|
+
});
|
|
47659
47668
|
flushSlot(traitName, slot, patterns);
|
|
47660
47669
|
}
|
|
47661
47670
|
} catch (error) {
|
|
@@ -48124,7 +48133,11 @@ function createHttpTransport(serverUrl) {
|
|
|
48124
48133
|
const result = await res.json();
|
|
48125
48134
|
return !!result.success;
|
|
48126
48135
|
} catch (err) {
|
|
48127
|
-
|
|
48136
|
+
if (err instanceof TypeError) {
|
|
48137
|
+
serverBridgeLog.warn("Registration failed", { error: err.message });
|
|
48138
|
+
} else {
|
|
48139
|
+
serverBridgeLog.error("Registration failed", { error: err instanceof Error ? err : String(err) });
|
|
48140
|
+
}
|
|
48128
48141
|
return false;
|
|
48129
48142
|
}
|
|
48130
48143
|
},
|
|
@@ -48242,12 +48255,22 @@ function ServerBridgeProvider({
|
|
|
48242
48255
|
}
|
|
48243
48256
|
return { effects, meta };
|
|
48244
48257
|
} catch (err) {
|
|
48245
|
-
|
|
48246
|
-
|
|
48247
|
-
|
|
48248
|
-
|
|
48249
|
-
|
|
48250
|
-
|
|
48258
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
48259
|
+
if (err instanceof TypeError) {
|
|
48260
|
+
xOrbitalLog.warn("response:network", {
|
|
48261
|
+
orbital: orbitalName,
|
|
48262
|
+
event,
|
|
48263
|
+
error: msg,
|
|
48264
|
+
reason: "peer endpoint unreachable (expected in standalone single-orbital mode)"
|
|
48265
|
+
});
|
|
48266
|
+
} else {
|
|
48267
|
+
xOrbitalLog.error("response:network", {
|
|
48268
|
+
orbital: orbitalName,
|
|
48269
|
+
event,
|
|
48270
|
+
error: msg
|
|
48271
|
+
});
|
|
48272
|
+
}
|
|
48273
|
+
return { effects: [], meta: { ...emptyMeta, error: msg } };
|
|
48251
48274
|
}
|
|
48252
48275
|
}, [connected, transport, eventBus]);
|
|
48253
48276
|
useEffect(() => {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@almadar/ui",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.7.0",
|
|
4
4
|
"description": "React UI components, hooks, and providers for Almadar",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": [
|
|
@@ -133,7 +133,7 @@
|
|
|
133
133
|
"@almadar/evaluator": ">=2.9.2",
|
|
134
134
|
"@almadar/logger": "^1.3.0",
|
|
135
135
|
"@almadar/patterns": "^2.26.0",
|
|
136
|
-
"@almadar/runtime": "^6.
|
|
136
|
+
"@almadar/runtime": "^6.7.0",
|
|
137
137
|
"@almadar/std": ">=6.4.1",
|
|
138
138
|
"@almadar/syntax": ">=1.3.1",
|
|
139
139
|
"@dnd-kit/core": "^6.3.1",
|