@almadar/ui 6.53.1 → 6.54.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/Typography-CFI7JUVE.js +5 -0
- package/dist/{UISlotRenderer-P7A4SZSK.js → UISlotRenderer-QUEG6WFM.js} +7 -7
- package/dist/avl/index.cjs +709 -970
- package/dist/avl/index.js +24 -20
- package/dist/{avl-3d-context-MAt_NuU9.d.ts → avl-3d-context-BpBKZIbc.d.ts} +1 -0
- package/dist/{chunk-DQTV6QVS.js → chunk-4HC5HRHB.js} +53 -2
- package/dist/{chunk-HB4C27KU.js → chunk-4UP6BZ4R.js} +1 -1
- package/dist/{chunk-UOTYAPV5.js → chunk-FJDS4SVD.js} +3 -3
- package/dist/{chunk-QVXLKFUQ.js → chunk-MCKFWPT2.js} +1 -1
- package/dist/{chunk-7KSLPY56.js → chunk-N2V4LHFQ.js} +1 -0
- package/dist/{chunk-HUG25TT3.js → chunk-U2FGMHQP.js} +448 -885
- package/dist/{chunk-53VTY5CC.js → chunk-U3CGKPOK.js} +253 -92
- package/dist/{chunk-7LM6I3NA.js → chunk-Z5IYJU44.js} +1 -0
- package/dist/{chunk-FUQASYEW.js → chunk-Z7JWXIRE.js} +2 -2
- package/dist/components/index.cjs +449 -879
- package/dist/components/index.d.ts +5 -1
- package/dist/components/index.js +15 -16
- package/dist/context/index.cjs +2 -0
- package/dist/context/index.js +3 -1
- package/dist/hooks/index.cjs +6 -0
- package/dist/hooks/index.d.ts +10 -1
- package/dist/hooks/index.js +3 -4
- package/dist/lib/drawable/three/index.cjs +2 -0
- package/dist/lib/drawable/three/index.d.ts +2 -2
- package/dist/lib/drawable/three/index.js +6 -6
- package/dist/lib/index.cjs +1 -0
- package/dist/lib/index.js +3 -3
- package/dist/locales/index.cjs +3 -0
- package/dist/locales/index.js +3 -1
- package/dist/providers/index.cjs +444 -879
- package/dist/providers/index.d.ts +1 -1
- package/dist/providers/index.js +8 -8
- package/dist/runtime/index.cjs +3992 -4237
- package/dist/runtime/index.d.ts +22 -4
- package/dist/runtime/index.js +15 -12
- package/dist/ssr/index.cjs +2 -1
- package/dist/ssr/index.js +2 -1
- package/locales/ar.json +1 -0
- package/locales/en.json +1 -0
- package/locales/sl.json +1 -0
- package/package.json +7 -6
- package/scripts/audit-tailwind-safelist.ts +21 -1
- package/tailwind-preset.cjs +5 -6
- package/themes/_fonts.css +6 -4
- package/themes/_presets.css +2 -0
- package/themes/almadar-heritage.css +373 -0
- package/themes/orb.css +373 -0
- package/dist/Typography-7QEWUTW3.js +0 -5
- package/dist/chunk-E37BYSXY.js +0 -51
package/dist/avl/index.cjs
CHANGED
|
@@ -17,6 +17,7 @@ var ui = require('@almadar/runtime/ui');
|
|
|
17
17
|
var SyntaxHighlighter = require('react-syntax-highlighter/dist/esm/prism-light.js');
|
|
18
18
|
var createHighlightElement = require('react-syntax-highlighter/dist/esm/create-element.js');
|
|
19
19
|
var dark = require('react-syntax-highlighter/dist/esm/styles/prism/vsc-dark-plus.js');
|
|
20
|
+
var light = require('react-syntax-highlighter/dist/esm/styles/prism/vs.js');
|
|
20
21
|
var syntax = require('@almadar/syntax');
|
|
21
22
|
var i18n = require('@almadar/core/i18n');
|
|
22
23
|
var langJson = require('react-syntax-highlighter/dist/esm/languages/prism/json.js');
|
|
@@ -103,6 +104,7 @@ var LucideIcons2__namespace = /*#__PURE__*/_interopNamespace(LucideIcons2);
|
|
|
103
104
|
var SyntaxHighlighter__default = /*#__PURE__*/_interopDefault(SyntaxHighlighter);
|
|
104
105
|
var createHighlightElement__default = /*#__PURE__*/_interopDefault(createHighlightElement);
|
|
105
106
|
var dark__default = /*#__PURE__*/_interopDefault(dark);
|
|
107
|
+
var light__default = /*#__PURE__*/_interopDefault(light);
|
|
106
108
|
var langJson__default = /*#__PURE__*/_interopDefault(langJson);
|
|
107
109
|
var langJavascript__default = /*#__PURE__*/_interopDefault(langJavascript);
|
|
108
110
|
var langTypescript__default = /*#__PURE__*/_interopDefault(langTypescript);
|
|
@@ -480,6 +482,7 @@ var init_avl_theme = __esm({
|
|
|
480
482
|
"std-json": avlBlend("var(--color-success)", 60, "var(--color-foreground)"),
|
|
481
483
|
"std-time": avlBlend("var(--color-info)", 50, "var(--color-success)"),
|
|
482
484
|
"std-format": avlBlend("var(--color-success)", 60, "var(--color-background)"),
|
|
485
|
+
"std-i18n": avlBlend("var(--color-info)", 60, "var(--color-background)"),
|
|
483
486
|
"std-async": avlBlend("var(--color-accent)", 50, "var(--color-error)"),
|
|
484
487
|
"std-nn": avlBlend("var(--color-primary)", 60, "var(--color-accent)"),
|
|
485
488
|
"std-tensor": avlBlend("var(--color-primary)", 60, "var(--color-info)"),
|
|
@@ -3632,6 +3635,7 @@ var init_en = __esm({
|
|
|
3632
3635
|
"status.draft": "Draft",
|
|
3633
3636
|
"status.archived": "Archived",
|
|
3634
3637
|
"error.generic": "Something went wrong",
|
|
3638
|
+
"error.traitMountFailed": "{{trait}} failed to start",
|
|
3635
3639
|
"error.retry": "Try again",
|
|
3636
3640
|
"error.notFound": "Not found",
|
|
3637
3641
|
"error.loadFailed": "Failed to load: {{message}}",
|
|
@@ -7346,7 +7350,7 @@ var init_Button = __esm({
|
|
|
7346
7350
|
const testId = dataTestId ?? (action ? `action-${action}` : void 0);
|
|
7347
7351
|
const content = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
7348
7352
|
busy && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "almadar-busy-indicator absolute inset-0 flex items-center justify-center", "aria-hidden": "true", children: /* @__PURE__ */ jsxRuntime.jsx(LucideIcons2.Loader2, { className: "h-icon-default w-icon-default animate-spin" }) }),
|
|
7349
|
-
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: cn("inline-flex items-center justify-
|
|
7353
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: cn("inline-flex flex-1 min-w-0 items-center [justify-content:inherit] gap-2", busy && "almadar-busy-content"), children: [
|
|
7350
7354
|
resolvedLeftIcon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex-shrink-0", children: resolvedLeftIcon }),
|
|
7351
7355
|
(Array.isArray(children) ? children.length > 0 : Boolean(children)) ? children : label ? /* @__PURE__ */ jsxRuntime.jsx("span", { ...{ [INLINE_TEXT_ATTR]: "label" }, children: label }) : label,
|
|
7352
7356
|
resolvedRightIcon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex-shrink-0", children: resolvedRightIcon })
|
|
@@ -13358,12 +13362,13 @@ var init_Skeleton = __esm({
|
|
|
13358
13362
|
Skeleton.displayName = "Skeleton";
|
|
13359
13363
|
}
|
|
13360
13364
|
});
|
|
13361
|
-
function resolveMarkerExpression(expression, entity, config, state) {
|
|
13365
|
+
function resolveMarkerExpression(expression, entity, config, state, i18n) {
|
|
13362
13366
|
const ctx = runtime.createContextFromBindings({
|
|
13363
13367
|
entity,
|
|
13364
13368
|
payload: {},
|
|
13365
13369
|
state,
|
|
13366
|
-
...config !== void 0 ? { config } : {}
|
|
13370
|
+
...config !== void 0 ? { config } : {},
|
|
13371
|
+
...i18n !== void 0 ? { locale: i18n.locale, messages: i18n.messages } : {}
|
|
13367
13372
|
});
|
|
13368
13373
|
return runtime.interpolateValue(expression, ctx);
|
|
13369
13374
|
}
|
|
@@ -13375,9 +13380,9 @@ function isPlainObject(value) {
|
|
|
13375
13380
|
if (typeof value === "function") return false;
|
|
13376
13381
|
return true;
|
|
13377
13382
|
}
|
|
13378
|
-
function cachedContainer(value, scopeTrait, entity, config, state) {
|
|
13383
|
+
function cachedContainer(value, scopeTrait, entity, config, state, i18n) {
|
|
13379
13384
|
const hit = containerResolutionCache.get(value);
|
|
13380
|
-
return hit !== void 0 && hit.entity === entity && hit.config === config && hit.state === state && hit.scopeTrait === scopeTrait ? hit.resolved : void 0;
|
|
13385
|
+
return hit !== void 0 && hit.entity === entity && hit.config === config && hit.state === state && hit.i18n === i18n && hit.scopeTrait === scopeTrait ? hit.resolved : void 0;
|
|
13381
13386
|
}
|
|
13382
13387
|
function isEvaluatorResolvedData(value) {
|
|
13383
13388
|
return evaluatorResolvedData.has(value);
|
|
@@ -13408,14 +13413,14 @@ function subtreeHasMarker(value) {
|
|
|
13408
13413
|
markerPresenceCache.set(value, found);
|
|
13409
13414
|
return found;
|
|
13410
13415
|
}
|
|
13411
|
-
function walkValue(value, scopeTrait, entity, config, state) {
|
|
13416
|
+
function walkValue(value, scopeTrait, entity, config, state, i18n) {
|
|
13412
13417
|
if (core.isRenderBindingMarker(value)) {
|
|
13413
13418
|
const cached = markerResolutionCache.get(value);
|
|
13414
|
-
if (cached !== void 0 && cached.entity === entity && cached.config === config && cached.state === state) {
|
|
13419
|
+
if (cached !== void 0 && cached.entity === entity && cached.config === config && cached.state === state && cached.i18n === i18n) {
|
|
13415
13420
|
return { resolved: cached.resolved, changed: true };
|
|
13416
13421
|
}
|
|
13417
|
-
const resolved = resolveMarkerExpression(value.expression, entity, config, state);
|
|
13418
|
-
markerResolutionCache.set(value, { entity, config, state, resolved });
|
|
13422
|
+
const resolved = resolveMarkerExpression(value.expression, entity, config, state, i18n);
|
|
13423
|
+
markerResolutionCache.set(value, { entity, config, state, i18n, resolved });
|
|
13419
13424
|
if (resolved !== null && typeof resolved === "object" && !React93__namespace.default.isValidElement(resolved) && !(resolved instanceof Date)) {
|
|
13420
13425
|
resolvedMarkerFree.add(resolved);
|
|
13421
13426
|
evaluatorResolvedData.add(resolved);
|
|
@@ -13427,14 +13432,14 @@ function walkValue(value, scopeTrait, entity, config, state) {
|
|
|
13427
13432
|
brandResolved(value);
|
|
13428
13433
|
return { resolved: value, changed: false };
|
|
13429
13434
|
}
|
|
13430
|
-
const cachedArray = cachedContainer(value, scopeTrait, entity, config, state);
|
|
13435
|
+
const cachedArray = cachedContainer(value, scopeTrait, entity, config, state, i18n);
|
|
13431
13436
|
if (cachedArray !== void 0) return { resolved: cachedArray, changed: true };
|
|
13432
13437
|
const out = [];
|
|
13433
13438
|
let changed = false;
|
|
13434
13439
|
for (const item of value) {
|
|
13435
13440
|
const element = item;
|
|
13436
13441
|
const wasMarker = core.isRenderBindingMarker(element);
|
|
13437
|
-
const { resolved, changed: itemChanged } = walkValue(element, scopeTrait, entity, config, state);
|
|
13442
|
+
const { resolved, changed: itemChanged } = walkValue(element, scopeTrait, entity, config, state, i18n);
|
|
13438
13443
|
if (wasMarker && Array.isArray(resolved)) {
|
|
13439
13444
|
out.push(...resolved);
|
|
13440
13445
|
changed = true;
|
|
@@ -13445,7 +13450,7 @@ function walkValue(value, scopeTrait, entity, config, state) {
|
|
|
13445
13450
|
}
|
|
13446
13451
|
brandResolved(out);
|
|
13447
13452
|
if (!changed) return { resolved: value, changed: false };
|
|
13448
|
-
containerResolutionCache.set(value, { entity, config, state, scopeTrait, resolved: out });
|
|
13453
|
+
containerResolutionCache.set(value, { entity, config, state, i18n, scopeTrait, resolved: out });
|
|
13449
13454
|
return { resolved: out, changed: true };
|
|
13450
13455
|
}
|
|
13451
13456
|
if (isPlainObject(value)) {
|
|
@@ -13457,37 +13462,37 @@ function walkValue(value, scopeTrait, entity, config, state) {
|
|
|
13457
13462
|
if (typeof sourceTrait === "string" && sourceTrait !== scopeTrait) {
|
|
13458
13463
|
return { resolved: value, changed: false };
|
|
13459
13464
|
}
|
|
13460
|
-
const cachedObject = cachedContainer(value, scopeTrait, entity, config, state);
|
|
13465
|
+
const cachedObject = cachedContainer(value, scopeTrait, entity, config, state, i18n);
|
|
13461
13466
|
if (cachedObject !== void 0) return { resolved: cachedObject, changed: true };
|
|
13462
13467
|
const out = {};
|
|
13463
13468
|
let changed = false;
|
|
13464
13469
|
for (const [key, item] of Object.entries(value)) {
|
|
13465
|
-
const { resolved, changed: itemChanged } = walkValue(item, scopeTrait, entity, config, state);
|
|
13470
|
+
const { resolved, changed: itemChanged } = walkValue(item, scopeTrait, entity, config, state, i18n);
|
|
13466
13471
|
out[key] = resolved;
|
|
13467
13472
|
if (itemChanged) changed = true;
|
|
13468
13473
|
}
|
|
13469
13474
|
brandResolved(out);
|
|
13470
13475
|
if (!changed) return { resolved: value, changed: false };
|
|
13471
|
-
containerResolutionCache.set(value, { entity, config, state, scopeTrait, resolved: out });
|
|
13476
|
+
containerResolutionCache.set(value, { entity, config, state, i18n, scopeTrait, resolved: out });
|
|
13472
13477
|
return { resolved: out, changed: true };
|
|
13473
13478
|
}
|
|
13474
13479
|
return { resolved: value, changed: false };
|
|
13475
13480
|
}
|
|
13476
|
-
function resolveRenderBindingMarkers(props, scopeTrait, entity, config, state) {
|
|
13481
|
+
function resolveRenderBindingMarkers(props, scopeTrait, entity, config, state, i18n) {
|
|
13477
13482
|
if (props === null || typeof props !== "object") return props;
|
|
13478
13483
|
if (resolvedMarkerFree.has(props)) return props;
|
|
13479
|
-
const cached = cachedContainer(props, scopeTrait, entity, config, state);
|
|
13484
|
+
const cached = cachedContainer(props, scopeTrait, entity, config, state, i18n);
|
|
13480
13485
|
if (cached !== void 0) return cached;
|
|
13481
13486
|
const out = {};
|
|
13482
13487
|
let changed = false;
|
|
13483
13488
|
for (const [key, value] of Object.entries(props)) {
|
|
13484
|
-
const { resolved, changed: propChanged } = walkValue(value, scopeTrait, entity, config, state);
|
|
13489
|
+
const { resolved, changed: propChanged } = walkValue(value, scopeTrait, entity, config, state, i18n);
|
|
13485
13490
|
out[key] = resolved;
|
|
13486
13491
|
if (propChanged) changed = true;
|
|
13487
13492
|
}
|
|
13488
13493
|
brandResolved(out);
|
|
13489
13494
|
if (!changed) return props;
|
|
13490
|
-
containerResolutionCache.set(props, { entity, config, state, scopeTrait, resolved: out });
|
|
13495
|
+
containerResolutionCache.set(props, { entity, config, state, i18n, scopeTrait, resolved: out });
|
|
13491
13496
|
return out;
|
|
13492
13497
|
}
|
|
13493
13498
|
var markerPresenceCache, markerResolutionCache, containerResolutionCache, resolvedMarkerFree, evaluatorResolvedData;
|
|
@@ -16695,6 +16700,35 @@ function withTokenTypes(node) {
|
|
|
16695
16700
|
function renderWithTokenTypes({ rows, stylesheet, useInlineStyles }) {
|
|
16696
16701
|
return rows.map((node, i) => createHighlightElement__default.default({ node: withTokenTypes(node), stylesheet, useInlineStyles, key: `code-segment-${i}` }));
|
|
16697
16702
|
}
|
|
16703
|
+
function island(value, style) {
|
|
16704
|
+
return { type: "element", tagName: "span", properties: { className: [], "data-bidi-island": "", style }, children: [{ type: "text", value }] };
|
|
16705
|
+
}
|
|
16706
|
+
function splitLtrWords(value) {
|
|
16707
|
+
const out = [];
|
|
16708
|
+
let last = 0;
|
|
16709
|
+
for (const match of value.matchAll(LTR_WORD)) {
|
|
16710
|
+
const start = match.index ?? 0;
|
|
16711
|
+
if (start > last) out.push({ type: "text", value: value.slice(last, start) });
|
|
16712
|
+
out.push(island(match[0], LTR_ISLAND_STYLE));
|
|
16713
|
+
last = start + match[0].length;
|
|
16714
|
+
}
|
|
16715
|
+
if (last < value.length) out.push({ type: "text", value: value.slice(last) });
|
|
16716
|
+
return out;
|
|
16717
|
+
}
|
|
16718
|
+
function withBidiIslands(node) {
|
|
16719
|
+
if (node.type === "text") return splitLtrWords(String(node.value ?? ""));
|
|
16720
|
+
if (node.type !== "element") return [node];
|
|
16721
|
+
const classes = node.properties?.className;
|
|
16722
|
+
if (Array.isArray(classes) && classes.includes("string")) {
|
|
16723
|
+
return [{ ...node, properties: { ...node.properties, className: classes, "data-bidi-island": "", style: STRING_ISLAND_STYLE } }];
|
|
16724
|
+
}
|
|
16725
|
+
return [{ ...node, ...node.children ? { children: node.children.flatMap(withBidiIslands) } : {} }];
|
|
16726
|
+
}
|
|
16727
|
+
function renderRtlCode({ rows, stylesheet, useInlineStyles }) {
|
|
16728
|
+
return rows.map(
|
|
16729
|
+
(node, i) => withBidiIslands(node).map((n, j) => createHighlightElement__default.default({ node: n, stylesheet, useInlineStyles, key: `code-rtl-${i}-${j}` }))
|
|
16730
|
+
);
|
|
16731
|
+
}
|
|
16698
16732
|
function tokenClassAt(layer, offset) {
|
|
16699
16733
|
const walker = document.createTreeWalker(layer, NodeFilter.SHOW_TEXT);
|
|
16700
16734
|
let pos = 0;
|
|
@@ -16751,10 +16785,9 @@ function useLanguageReady(language) {
|
|
|
16751
16785
|
}, [language]);
|
|
16752
16786
|
return ready;
|
|
16753
16787
|
}
|
|
16754
|
-
function resolveHighlightStyle(lang) {
|
|
16755
|
-
if (lang === "orb") return
|
|
16756
|
-
|
|
16757
|
-
return dark__default.default;
|
|
16788
|
+
function resolveHighlightStyle(lang, scheme) {
|
|
16789
|
+
if (lang === "orb" || lang === "lolo") return HIGHLIGHT_STYLES[scheme][lang];
|
|
16790
|
+
return SCHEME_BASE[scheme];
|
|
16758
16791
|
}
|
|
16759
16792
|
function plainCodeColorOf(style) {
|
|
16760
16793
|
return style['code[class*="language-"]']?.color ?? "#d4d4d4";
|
|
@@ -16789,7 +16822,7 @@ function translateProgram(source, language, lang) {
|
|
|
16789
16822
|
}
|
|
16790
16823
|
return source;
|
|
16791
16824
|
}
|
|
16792
|
-
var dynamicallyLoaded, codeLanguageLoader, orbStyleOverrides,
|
|
16825
|
+
var dynamicallyLoaded, codeLanguageLoader, orbStyleOverrides, loloStyleOverrides, SCHEME_BASE, HIGHLIGHT_STYLES, MONO_EDITOR_FONT, GHOST_COLOR, GUTTER_COLOR, caretOf, LTR_WORD, LTR_ISLAND_STYLE, STRING_ISLAND_STYLE, DIAGNOSTIC_ERROR_COLOR, DIAGNOSTIC_WARNING_COLOR, EDITOR_LINE_PX, log5, CODE_LANGUAGES, CODE_LANGUAGE_SET, DIFF_STYLES, DIFF_STYLE_FALLBACK, LINE_PROPS_FN, HIDDEN_LINE_NUMBERS, HIGHLIGHT_CAPACITY_BYTES, MONO_FONT_FAMILY, VIEWER_LINE_NUMBER_STYLE, VIEWER_LINE_NUMBER_STYLE_RTL, CodeBlock;
|
|
16793
16826
|
var init_CodeBlock = __esm({
|
|
16794
16827
|
"components/core/molecules/markdown/CodeBlock.tsx"() {
|
|
16795
16828
|
init_cn();
|
|
@@ -16892,52 +16925,64 @@ var init_CodeBlock = __esm({
|
|
|
16892
16925
|
SyntaxHighlighter__default.default.registerLanguage("lolo", syntax.loloLanguage);
|
|
16893
16926
|
dynamicallyLoaded = /* @__PURE__ */ new Set();
|
|
16894
16927
|
codeLanguageLoader = null;
|
|
16895
|
-
orbStyleOverrides = {
|
|
16896
|
-
"orb-binding": { color:
|
|
16897
|
-
"orb-effect": { color:
|
|
16898
|
-
"orb-event": { color:
|
|
16899
|
-
"orb-slot": { color:
|
|
16900
|
-
"orb-structural": { color:
|
|
16901
|
-
"orb-field-type": { color:
|
|
16902
|
-
"orb-persistence": { color:
|
|
16903
|
-
"orb-pattern": { color:
|
|
16904
|
-
"orb-behavior": { color:
|
|
16905
|
-
"orb-unknown-op": { color:
|
|
16906
|
-
"orb-op-arithmetic": { color:
|
|
16907
|
-
"orb-op-comparison": { color:
|
|
16908
|
-
"orb-op-logic": { color:
|
|
16909
|
-
"orb-op-string": { color:
|
|
16910
|
-
"orb-op-collection": { color:
|
|
16911
|
-
"orb-op-time": { color:
|
|
16912
|
-
"orb-op-control": { color:
|
|
16913
|
-
"orb-op-async": { color:
|
|
16914
|
-
};
|
|
16915
|
-
|
|
16916
|
-
|
|
16917
|
-
"lolo-
|
|
16918
|
-
"lolo-
|
|
16919
|
-
"
|
|
16920
|
-
"
|
|
16921
|
-
"lolo-
|
|
16922
|
-
"lolo-
|
|
16923
|
-
"lolo-
|
|
16924
|
-
"lolo-
|
|
16925
|
-
"lolo-
|
|
16926
|
-
"lolo-
|
|
16927
|
-
"lolo-op-
|
|
16928
|
-
"lolo-op-
|
|
16929
|
-
"lolo-op-
|
|
16930
|
-
"lolo-op-
|
|
16931
|
-
"lolo-op-
|
|
16932
|
-
"lolo-op-
|
|
16933
|
-
"lolo-op-
|
|
16934
|
-
|
|
16935
|
-
};
|
|
16936
|
-
|
|
16928
|
+
orbStyleOverrides = (c) => ({
|
|
16929
|
+
"orb-binding": { color: c.binding, fontWeight: "bold" },
|
|
16930
|
+
"orb-effect": { color: c.effect, fontWeight: "bold" },
|
|
16931
|
+
"orb-event": { color: c.event },
|
|
16932
|
+
"orb-slot": { color: c.uiSlot },
|
|
16933
|
+
"orb-structural": { color: c.structural },
|
|
16934
|
+
"orb-field-type": { color: c.fieldType },
|
|
16935
|
+
"orb-persistence": { color: c.persistence },
|
|
16936
|
+
"orb-pattern": { color: c.pattern },
|
|
16937
|
+
"orb-behavior": { color: c.behavior },
|
|
16938
|
+
"orb-unknown-op": { color: c.error, textDecoration: "wavy underline" },
|
|
16939
|
+
"orb-op-arithmetic": { color: c.arithmetic, fontWeight: "bold" },
|
|
16940
|
+
"orb-op-comparison": { color: c.comparison },
|
|
16941
|
+
"orb-op-logic": { color: c.logic },
|
|
16942
|
+
"orb-op-string": { color: c.string },
|
|
16943
|
+
"orb-op-collection": { color: c.collection },
|
|
16944
|
+
"orb-op-time": { color: c.time },
|
|
16945
|
+
"orb-op-control": { color: c.control },
|
|
16946
|
+
"orb-op-async": { color: c.async }
|
|
16947
|
+
});
|
|
16948
|
+
loloStyleOverrides = (c) => ({
|
|
16949
|
+
"lolo-binding": { color: c.binding, fontWeight: "bold" },
|
|
16950
|
+
"lolo-event": { color: c.event },
|
|
16951
|
+
"lolo-effect": { color: c.effect, fontWeight: "bold" },
|
|
16952
|
+
"keyword": { color: c.loloKeyword },
|
|
16953
|
+
"lolo-constructor": { color: c.loloConstructor },
|
|
16954
|
+
"lolo-arrow": { color: c.loloArrow },
|
|
16955
|
+
"lolo-reference": { color: c.loloReference },
|
|
16956
|
+
"lolo-type": { color: c.fieldType },
|
|
16957
|
+
"lolo-persistence": { color: c.persistence },
|
|
16958
|
+
"lolo-unknown-op": { color: c.error },
|
|
16959
|
+
"lolo-op-arithmetic": { color: c.arithmetic, fontWeight: "bold" },
|
|
16960
|
+
"lolo-op-comparison": { color: c.comparison },
|
|
16961
|
+
"lolo-op-logic": { color: c.logic },
|
|
16962
|
+
"lolo-op-string": { color: c.string },
|
|
16963
|
+
"lolo-op-collection": { color: c.collection },
|
|
16964
|
+
"lolo-op-time": { color: c.time },
|
|
16965
|
+
"lolo-op-control": { color: c.control },
|
|
16966
|
+
"lolo-op-async": { color: c.async }
|
|
16967
|
+
});
|
|
16968
|
+
SCHEME_BASE = { dark: dark__default.default, light: light__default.default };
|
|
16969
|
+
HIGHLIGHT_STYLES = {
|
|
16970
|
+
dark: {
|
|
16971
|
+
orb: { ...dark__default.default, ...orbStyleOverrides(syntax.ORB_COLORS.dark) },
|
|
16972
|
+
lolo: { ...dark__default.default, ...loloStyleOverrides(syntax.ORB_COLORS.dark) }
|
|
16973
|
+
},
|
|
16974
|
+
light: {
|
|
16975
|
+
orb: { ...light__default.default, ...orbStyleOverrides(syntax.ORB_COLORS.light) },
|
|
16976
|
+
lolo: { ...light__default.default, ...loloStyleOverrides(syntax.ORB_COLORS.light) }
|
|
16977
|
+
}
|
|
16978
|
+
};
|
|
16937
16979
|
MONO_EDITOR_FONT = 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Courier New", monospace';
|
|
16938
16980
|
GHOST_COLOR = "#7f848e";
|
|
16939
16981
|
GUTTER_COLOR = "#858585";
|
|
16940
16982
|
caretOf = (ta) => ta.selectionDirection === "backward" ? ta.selectionStart : ta.selectionEnd;
|
|
16983
|
+
LTR_WORD = /[A-Za-z0-9_$@?][A-Za-z0-9_$@?.!-]*/g;
|
|
16984
|
+
LTR_ISLAND_STYLE = { unicodeBidi: "isolate", direction: "ltr" };
|
|
16985
|
+
STRING_ISLAND_STYLE = { unicodeBidi: "plaintext" };
|
|
16941
16986
|
DIAGNOSTIC_ERROR_COLOR = "#f14c4c";
|
|
16942
16987
|
DIAGNOSTIC_WARNING_COLOR = "#cca700";
|
|
16943
16988
|
EDITOR_LINE_PX = 19.5;
|
|
@@ -17037,7 +17082,7 @@ var init_CodeBlock = __esm({
|
|
|
17037
17082
|
LINE_PROPS_FN = (n) => ({ "data-line": String(n - 1) });
|
|
17038
17083
|
HIDDEN_LINE_NUMBERS = { display: "none" };
|
|
17039
17084
|
HIGHLIGHT_CAPACITY_BYTES = 512 * 1024;
|
|
17040
|
-
MONO_FONT_FAMILY = 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Courier New", monospace';
|
|
17085
|
+
MONO_FONT_FAMILY = 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Courier New", "IBM Plex Sans Arabic", "Noto Sans Arabic", monospace';
|
|
17041
17086
|
VIEWER_LINE_NUMBER_STYLE = {
|
|
17042
17087
|
minWidth: "2.5em",
|
|
17043
17088
|
paddingRight: "1rem",
|
|
@@ -17046,6 +17091,15 @@ var init_CodeBlock = __esm({
|
|
|
17046
17091
|
opacity: 0.5,
|
|
17047
17092
|
fontVariantNumeric: "tabular-nums"
|
|
17048
17093
|
};
|
|
17094
|
+
VIEWER_LINE_NUMBER_STYLE_RTL = {
|
|
17095
|
+
minWidth: "2.5em",
|
|
17096
|
+
paddingRight: 0,
|
|
17097
|
+
paddingLeft: "1rem",
|
|
17098
|
+
textAlign: "left",
|
|
17099
|
+
userSelect: "none",
|
|
17100
|
+
opacity: 0.5,
|
|
17101
|
+
fontVariantNumeric: "tabular-nums"
|
|
17102
|
+
};
|
|
17049
17103
|
CodeBlock = React93__namespace.default.memo(
|
|
17050
17104
|
({
|
|
17051
17105
|
code: rawCode,
|
|
@@ -17125,8 +17179,12 @@ var init_CodeBlock = __esm({
|
|
|
17125
17179
|
}) => {
|
|
17126
17180
|
const englishCode = typeof rawCode === "string" ? rawCode : String(rawCode ?? "");
|
|
17127
17181
|
const naturalTabs = !editable && naturalLanguages && naturalLanguages.length > 1 ? naturalLanguages : void 0;
|
|
17128
|
-
const
|
|
17182
|
+
const { locale: pageLocale } = hooks.useTranslate();
|
|
17183
|
+
const [naturalLanguage, setNaturalLanguage] = React93.useState(
|
|
17184
|
+
() => naturalTabs?.find((lang) => lang === pageLocale) ?? naturalTabs?.[0] ?? "en"
|
|
17185
|
+
);
|
|
17129
17186
|
const activeNaturalLanguage = naturalTabs?.includes(naturalLanguage) === true ? naturalLanguage : naturalTabs?.[0] ?? "en";
|
|
17187
|
+
const codeDir = naturalTabs && i18n.coreTables[activeNaturalLanguage].meta.rtl ? "rtl" : "ltr";
|
|
17130
17188
|
const translationCache = React93.useMemo(() => /* @__PURE__ */ new Map(), [englishCode, files]);
|
|
17131
17189
|
const translateFor = React93.useCallback(
|
|
17132
17190
|
(source, sourceLanguage, cacheKey) => {
|
|
@@ -17165,11 +17223,12 @@ var init_CodeBlock = __esm({
|
|
|
17165
17223
|
)
|
|
17166
17224
|
}
|
|
17167
17225
|
) : null;
|
|
17168
|
-
const activeStyle = resolveHighlightStyle(language);
|
|
17226
|
+
const activeStyle = resolveHighlightStyle(language, "dark");
|
|
17169
17227
|
const overCapacity = code.length > HIGHLIGHT_CAPACITY_BYTES;
|
|
17170
17228
|
const plainCodeColor = plainCodeColorOf(activeStyle);
|
|
17171
17229
|
const eventBus = useEventBus();
|
|
17172
17230
|
const { t } = hooks.useTranslate();
|
|
17231
|
+
const { resolvedMode } = context.useTheme();
|
|
17173
17232
|
const scrollRef = React93.useRef(null);
|
|
17174
17233
|
const codeRef = React93.useRef(null);
|
|
17175
17234
|
const savedScrollLeftRef = React93.useRef(0);
|
|
@@ -17180,7 +17239,7 @@ var init_CodeBlock = __esm({
|
|
|
17180
17239
|
const activeLanguage = activeFile?.language ?? language;
|
|
17181
17240
|
const activeCode = activeFile ? translateFor(activeFile.code, activeLanguage, `file-${activeFileIndex}`) : code;
|
|
17182
17241
|
const languageReady = useLanguageReady(activeLanguage);
|
|
17183
|
-
const viewerStyle = resolveHighlightStyle(activeLanguage);
|
|
17242
|
+
const viewerStyle = resolveHighlightStyle(activeLanguage, resolvedMode);
|
|
17184
17243
|
const viewerPlainCodeColor = plainCodeColorOf(viewerStyle);
|
|
17185
17244
|
const diffLines = React93.useMemo(() => {
|
|
17186
17245
|
if (propDiff && propDiff.length > 0) return propDiff;
|
|
@@ -17518,8 +17577,9 @@ var init_CodeBlock = __esm({
|
|
|
17518
17577
|
wrapLines: true,
|
|
17519
17578
|
wrapLongLines: wrap,
|
|
17520
17579
|
showLineNumbers,
|
|
17521
|
-
lineNumberStyle: VIEWER_LINE_NUMBER_STYLE,
|
|
17580
|
+
lineNumberStyle: codeDir === "rtl" ? VIEWER_LINE_NUMBER_STYLE_RTL : VIEWER_LINE_NUMBER_STYLE,
|
|
17522
17581
|
lineProps: viewerLineProps,
|
|
17582
|
+
renderer: codeDir === "rtl" ? renderRtlCode : void 0,
|
|
17523
17583
|
customStyle: {
|
|
17524
17584
|
backgroundColor: "transparent",
|
|
17525
17585
|
borderRadius: 0,
|
|
@@ -17529,13 +17589,15 @@ var init_CodeBlock = __esm({
|
|
|
17529
17589
|
wordBreak: wrap ? "break-all" : "normal",
|
|
17530
17590
|
fontFamily: MONO_FONT_FAMILY,
|
|
17531
17591
|
fontSize: "12px",
|
|
17532
|
-
lineHeight: "1.6"
|
|
17592
|
+
lineHeight: "1.6",
|
|
17593
|
+
direction: codeDir,
|
|
17594
|
+
textAlign: "start"
|
|
17533
17595
|
},
|
|
17534
|
-
codeTagProps: { style: { fontFamily: MONO_FONT_FAMILY, fontSize: "12px", lineHeight: "1.6" } },
|
|
17596
|
+
codeTagProps: { style: { fontFamily: MONO_FONT_FAMILY, fontSize: "12px", lineHeight: "1.6", direction: codeDir, textAlign: "start" } },
|
|
17535
17597
|
children: activeCode
|
|
17536
17598
|
}
|
|
17537
17599
|
),
|
|
17538
|
-
[activeCode, viewerOverCapacity, viewerPlainCodeColor, activeLanguage, viewerStyle, wrap, showLineNumbers, viewerLineProps, languageReady]
|
|
17600
|
+
[activeCode, viewerOverCapacity, viewerPlainCodeColor, activeLanguage, viewerStyle, wrap, showLineNumbers, viewerLineProps, languageReady, codeDir]
|
|
17539
17601
|
);
|
|
17540
17602
|
const diffOverCapacity = React93.useMemo(
|
|
17541
17603
|
() => !!diffLines && diffLines.reduce((n, l) => n + l.content.length + 1, 0) > HIGHLIGHT_CAPACITY_BYTES,
|
|
@@ -17805,33 +17867,35 @@ var init_CodeBlock = __esm({
|
|
|
17805
17867
|
]
|
|
17806
17868
|
}
|
|
17807
17869
|
),
|
|
17808
|
-
/* @__PURE__ */ jsxRuntime.jsx(Box, { className: "overflow-auto bg-muted/20", style: { maxHeight }, dir:
|
|
17870
|
+
/* @__PURE__ */ jsxRuntime.jsx(Box, { className: "overflow-auto bg-muted/20", style: { maxHeight }, dir: codeDir, children: diffLines ? /* @__PURE__ */ jsxRuntime.jsx("div", { style: { display: "flex", flexDirection: "column" }, className: "font-mono text-xs", children: diffRowElements }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "font-mono text-xs", children: viewerHighlightedElement }) })
|
|
17809
17871
|
] }) });
|
|
17810
17872
|
}
|
|
17811
|
-
const hasHeader = showLanguageBadge
|
|
17873
|
+
const hasHeader = showLanguageBadge;
|
|
17874
|
+
const copyButton = effectiveCopy ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
17875
|
+
Button,
|
|
17876
|
+
{
|
|
17877
|
+
variant: "ghost",
|
|
17878
|
+
size: "sm",
|
|
17879
|
+
onClick: handleCopy,
|
|
17880
|
+
className: `opacity-0 group-hover:opacity-100 focus:opacity-100 transition-opacity text-muted-foreground hover:text-foreground${hasHeader ? "" : " absolute top-2 end-2 z-10"}`,
|
|
17881
|
+
"aria-label": t("common.copy"),
|
|
17882
|
+
children: copied ? /* @__PURE__ */ jsxRuntime.jsx(Icon, { name: "check", className: "w-4 h-4 text-success" }) : /* @__PURE__ */ jsxRuntime.jsx(Icon, { name: "copy", className: "w-4 h-4" })
|
|
17883
|
+
}
|
|
17884
|
+
) : null;
|
|
17812
17885
|
return /* @__PURE__ */ jsxRuntime.jsxs(Box, { ...domPassthrough(a11yRest), className: `relative group not-prose ${className || ""}`, style: { display: "flex", flexDirection: "column", height: "100%" }, children: [
|
|
17813
|
-
hasHeader
|
|
17886
|
+
hasHeader ? /* @__PURE__ */ jsxRuntime.jsxs(
|
|
17814
17887
|
HStack,
|
|
17815
17888
|
{
|
|
17816
17889
|
justify: "between",
|
|
17817
17890
|
align: "center",
|
|
17818
17891
|
className: "px-3 py-2 bg-[var(--color-card)] rounded-t-container border-b border-border",
|
|
17892
|
+
"data-testid": "code-block-header",
|
|
17819
17893
|
children: [
|
|
17820
|
-
|
|
17821
|
-
|
|
17822
|
-
Button,
|
|
17823
|
-
{
|
|
17824
|
-
variant: "ghost",
|
|
17825
|
-
size: "sm",
|
|
17826
|
-
onClick: handleCopy,
|
|
17827
|
-
className: "opacity-0 group-hover:opacity-100 focus:opacity-100 transition-opacity text-muted-foreground hover:text-foreground",
|
|
17828
|
-
"aria-label": t("common.copy"),
|
|
17829
|
-
children: copied ? /* @__PURE__ */ jsxRuntime.jsx(Icon, { name: "check", className: "w-4 h-4 text-success" }) : /* @__PURE__ */ jsxRuntime.jsx(Icon, { name: "copy", className: "w-4 h-4" })
|
|
17830
|
-
}
|
|
17831
|
-
)
|
|
17894
|
+
/* @__PURE__ */ jsxRuntime.jsx(Badge, { variant: "default", size: "sm", children: language }),
|
|
17895
|
+
copyButton
|
|
17832
17896
|
]
|
|
17833
17897
|
}
|
|
17834
|
-
),
|
|
17898
|
+
) : copyButton,
|
|
17835
17899
|
naturalTabStrip,
|
|
17836
17900
|
editable ? (
|
|
17837
17901
|
/* GAP-77 / GAP-82 / GAP-83: editable mode = transparent textarea on
|
|
@@ -32488,7 +32552,7 @@ function DataList({
|
|
|
32488
32552
|
return f3.variant === "badge" ? (
|
|
32489
32553
|
// `format` applies here too — a boolean field badged
|
|
32490
32554
|
// without it renders the raw "false" instead of "No".
|
|
32491
|
-
/* @__PURE__ */ jsxRuntime.jsx(Badge, { variant: badgeVariantFor(String(v), f3.colorMap), children: formatValue2(v, f3.format, fmt2, relationsData?.[f3.name]) }, f3.name)
|
|
32555
|
+
/* @__PURE__ */ jsxRuntime.jsx(Badge, { variant: badgeVariantFor(String(v), f3.colorMap), children: valueLabelFor(formatValue2(v, f3.format, fmt2, relationsData?.[f3.name]), f3.labels) }, f3.name)
|
|
32492
32556
|
) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
32493
32557
|
Typography,
|
|
32494
32558
|
{
|
|
@@ -32651,7 +32715,7 @@ function DataList({
|
|
|
32651
32715
|
if (val === void 0 || val === null || val === "") return null;
|
|
32652
32716
|
return /* @__PURE__ */ jsxRuntime.jsxs(HStack, { gap: "xs", className: "items-center flex-shrink-0", children: [
|
|
32653
32717
|
field.icon && renderIconInput2(field.icon, { size: "xs" }),
|
|
32654
|
-
/* @__PURE__ */ jsxRuntime.jsx(Badge, { variant: badgeVariantFor(String(val), field.colorMap), children: formatValue2(val, field.format, fmt2, relationsData?.[field.name]) })
|
|
32718
|
+
/* @__PURE__ */ jsxRuntime.jsx(Badge, { variant: badgeVariantFor(String(val), field.colorMap), children: valueLabelFor(formatValue2(val, field.format, fmt2, relationsData?.[field.name]), field.labels) })
|
|
32655
32719
|
] }, field.name);
|
|
32656
32720
|
})
|
|
32657
32721
|
] }),
|
|
@@ -33200,13 +33264,13 @@ var init_MapView = __esm({
|
|
|
33200
33264
|
shadowSize: [41, 41]
|
|
33201
33265
|
});
|
|
33202
33266
|
L.Marker.prototype.options.icon = defaultIcon;
|
|
33203
|
-
const { useEffect:
|
|
33267
|
+
const { useEffect: useEffect82, useRef: useRef85, useCallback: useCallback107, useState: useState118 } = React93__namespace.default;
|
|
33204
33268
|
const { Typography: Typography2 } = await Promise.resolve().then(() => (init_Typography(), Typography_exports));
|
|
33205
33269
|
const { useEventBus: useEventBus2 } = await Promise.resolve().then(() => (init_useEventBus(), useEventBus_exports));
|
|
33206
33270
|
function MapUpdater({ centerLat, centerLng, zoom }) {
|
|
33207
33271
|
const map = useMap();
|
|
33208
33272
|
const prevRef = useRef85({ centerLat, centerLng, zoom });
|
|
33209
|
-
|
|
33273
|
+
useEffect82(() => {
|
|
33210
33274
|
const prev = prevRef.current;
|
|
33211
33275
|
if (prev.centerLat !== centerLat || prev.centerLng !== centerLng || prev.zoom !== zoom) {
|
|
33212
33276
|
map.setView([centerLat, centerLng], zoom);
|
|
@@ -33217,7 +33281,7 @@ var init_MapView = __esm({
|
|
|
33217
33281
|
}
|
|
33218
33282
|
function MapClickHandler({ onMapClick }) {
|
|
33219
33283
|
const map = useMap();
|
|
33220
|
-
|
|
33284
|
+
useEffect82(() => {
|
|
33221
33285
|
if (!onMapClick) return;
|
|
33222
33286
|
const handler = (e) => {
|
|
33223
33287
|
onMapClick(e.latlng.lat, e.latlng.lng);
|
|
@@ -33248,7 +33312,7 @@ var init_MapView = __esm({
|
|
|
33248
33312
|
}) {
|
|
33249
33313
|
const contentSurface = providers.useContentSurface(surface);
|
|
33250
33314
|
const eventBus = useEventBus2();
|
|
33251
|
-
const [clickedPosition, setClickedPosition] =
|
|
33315
|
+
const [clickedPosition, setClickedPosition] = useState118(null);
|
|
33252
33316
|
const handleMapClick = useCallback107((lat, lng) => {
|
|
33253
33317
|
if (showClickedPin) {
|
|
33254
33318
|
setClickedPosition({ lat, lng });
|
|
@@ -35890,7 +35954,7 @@ var init_DocSidebar = __esm({
|
|
|
35890
35954
|
className: cn(
|
|
35891
35955
|
"h-auto w-full justify-start rounded-interactive px-3 py-1.5 text-sm font-normal",
|
|
35892
35956
|
depth > 0 && "ml-2",
|
|
35893
|
-
item.active ? "bg-primary/
|
|
35957
|
+
item.active ? "bg-primary/[0.08] text-foreground font-semibold" : "text-muted-foreground"
|
|
35894
35958
|
),
|
|
35895
35959
|
children: label
|
|
35896
35960
|
}
|
|
@@ -44258,11 +44322,23 @@ var init_Header = __esm({
|
|
|
44258
44322
|
variant = "mobile",
|
|
44259
44323
|
look = "compact-bar",
|
|
44260
44324
|
onLogoClick,
|
|
44325
|
+
brandHref,
|
|
44261
44326
|
className,
|
|
44262
44327
|
...rest
|
|
44263
44328
|
}) => {
|
|
44264
44329
|
const { t } = hooks.useTranslate();
|
|
44265
44330
|
const resolvedSearchPlaceholder = searchPlaceholder ?? t("common.search");
|
|
44331
|
+
const brandContent = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
44332
|
+
logo ? typeof logo === "string" ? /* @__PURE__ */ jsxRuntime.jsx(Avatar, { src: logo, alt: brandName, size: "sm" }) : logo : logoSrc ? /* @__PURE__ */ jsxRuntime.jsx(Avatar, { src: logoSrc, alt: brandName, size: "sm" }) : null,
|
|
44333
|
+
brandName && /* @__PURE__ */ jsxRuntime.jsx(
|
|
44334
|
+
Typography,
|
|
44335
|
+
{
|
|
44336
|
+
variant: "h5",
|
|
44337
|
+
className: "text-lg text-foreground",
|
|
44338
|
+
children: brandName
|
|
44339
|
+
}
|
|
44340
|
+
)
|
|
44341
|
+
] });
|
|
44266
44342
|
const userInitials = userAvatar?.initials || userName?.[0]?.toUpperCase() || "U";
|
|
44267
44343
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
44268
44344
|
Box,
|
|
@@ -44289,7 +44365,16 @@ var init_Header = __esm({
|
|
|
44289
44365
|
children: isMenuOpen ? /* @__PURE__ */ jsxRuntime.jsx(LucideIcons2.X, { size: 24 }) : /* @__PURE__ */ jsxRuntime.jsx(LucideIcons2.Menu, { size: 24 })
|
|
44290
44366
|
}
|
|
44291
44367
|
),
|
|
44292
|
-
/* @__PURE__ */ jsxRuntime.
|
|
44368
|
+
brandHref ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
44369
|
+
Button,
|
|
44370
|
+
{
|
|
44371
|
+
variant: "ghost",
|
|
44372
|
+
href: brandHref,
|
|
44373
|
+
"aria-label": brandName,
|
|
44374
|
+
className: "gap-2 px-0 hover:bg-transparent",
|
|
44375
|
+
children: brandContent
|
|
44376
|
+
}
|
|
44377
|
+
) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
44293
44378
|
HStack,
|
|
44294
44379
|
{
|
|
44295
44380
|
gap: "none",
|
|
@@ -44300,17 +44385,7 @@ var init_Header = __esm({
|
|
|
44300
44385
|
),
|
|
44301
44386
|
...pressableProps(onLogoClick),
|
|
44302
44387
|
"aria-label": onLogoClick ? brandName : void 0,
|
|
44303
|
-
children:
|
|
44304
|
-
logo ? typeof logo === "string" ? /* @__PURE__ */ jsxRuntime.jsx(Avatar, { src: logo, alt: brandName, size: "sm" }) : logo : logoSrc ? /* @__PURE__ */ jsxRuntime.jsx(Avatar, { src: logoSrc, alt: brandName, size: "sm" }) : null,
|
|
44305
|
-
brandName && /* @__PURE__ */ jsxRuntime.jsx(
|
|
44306
|
-
Typography,
|
|
44307
|
-
{
|
|
44308
|
-
variant: "h5",
|
|
44309
|
-
className: "text-lg text-foreground",
|
|
44310
|
-
children: brandName
|
|
44311
|
-
}
|
|
44312
|
-
)
|
|
44313
|
-
]
|
|
44388
|
+
children: brandContent
|
|
44314
44389
|
}
|
|
44315
44390
|
)
|
|
44316
44391
|
] }),
|
|
@@ -54303,8 +54378,8 @@ var init_VersionDiff = __esm({
|
|
|
54303
54378
|
}
|
|
54304
54379
|
),
|
|
54305
54380
|
/* @__PURE__ */ jsxRuntime.jsx(Box, { className: "overflow-auto bg-muted/20", style: { maxHeight: 600 }, children: isEmpty ? /* @__PURE__ */ jsxRuntime.jsx(Box, { className: "py-8", "data-testid": "version-diff-empty", children: /* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "body2", color: "muted", align: "center", children: t("versionDiff.noChanges") }) }) : activeView === "side-by-side" ? /* @__PURE__ */ jsxRuntime.jsxs(Box, { className: "grid grid-cols-1 md:grid-cols-2", children: [
|
|
54306
|
-
/* @__PURE__ */ jsxRuntime.jsx(Box, { className: "border-b md:border-b-0 md:border-r border-border", "data-testid": "version-diff-before", children: renderColumn("before") }),
|
|
54307
|
-
/* @__PURE__ */ jsxRuntime.jsx(Box, { "data-testid": "version-diff-after", children: renderColumn("after") })
|
|
54381
|
+
/* @__PURE__ */ jsxRuntime.jsx(Box, { className: "min-w-0 overflow-x-auto border-b md:border-b-0 md:border-r border-border", "data-testid": "version-diff-before", children: renderColumn("before") }),
|
|
54382
|
+
/* @__PURE__ */ jsxRuntime.jsx(Box, { className: "min-w-0 overflow-x-auto", "data-testid": "version-diff-after", children: renderColumn("after") })
|
|
54308
54383
|
] }) : /* @__PURE__ */ jsxRuntime.jsx(VStack, { gap: "none", className: "font-mono text-xs", children: shown.map((row, idx) => {
|
|
54309
54384
|
if (row.kind === "header") return renderHeader(row.header, `i-h-${idx}`);
|
|
54310
54385
|
if (row.kind === "gap") return renderGap(row, `i-g-${row.id}`);
|
|
@@ -54912,775 +54987,263 @@ var init_component_registry_generated = __esm({
|
|
|
54912
54987
|
init_WizardNavigation();
|
|
54913
54988
|
init_WizardProgress();
|
|
54914
54989
|
COMPONENT_REGISTRY = {
|
|
54915
|
-
|
|
54916
|
-
|
|
54917
|
-
|
|
54918
|
-
|
|
54919
|
-
|
|
54920
|
-
|
|
54921
|
-
|
|
54922
|
-
|
|
54923
|
-
|
|
54924
|
-
|
|
54925
|
-
|
|
54926
|
-
|
|
54927
|
-
|
|
54928
|
-
|
|
54929
|
-
|
|
54930
|
-
|
|
54931
|
-
|
|
54932
|
-
|
|
54933
|
-
|
|
54934
|
-
|
|
54935
|
-
|
|
54936
|
-
|
|
54937
|
-
|
|
54938
|
-
|
|
54939
|
-
|
|
54940
|
-
|
|
54941
|
-
|
|
54942
|
-
|
|
54943
|
-
|
|
54944
|
-
|
|
54945
|
-
|
|
54946
|
-
|
|
54947
|
-
|
|
54948
|
-
|
|
54949
|
-
|
|
54950
|
-
|
|
54951
|
-
|
|
54952
|
-
|
|
54953
|
-
|
|
54954
|
-
|
|
54955
|
-
|
|
54956
|
-
|
|
54957
|
-
|
|
54958
|
-
|
|
54959
|
-
|
|
54960
|
-
|
|
54961
|
-
|
|
54962
|
-
|
|
54963
|
-
|
|
54964
|
-
|
|
54965
|
-
|
|
54966
|
-
|
|
54967
|
-
|
|
54968
|
-
|
|
54969
|
-
|
|
54970
|
-
|
|
54971
|
-
|
|
54972
|
-
|
|
54973
|
-
|
|
54974
|
-
|
|
54975
|
-
|
|
54976
|
-
|
|
54977
|
-
|
|
54978
|
-
|
|
54979
|
-
|
|
54980
|
-
|
|
54981
|
-
|
|
54982
|
-
|
|
54983
|
-
|
|
54984
|
-
|
|
54985
|
-
|
|
54986
|
-
|
|
54987
|
-
|
|
54988
|
-
|
|
54989
|
-
|
|
54990
|
-
|
|
54991
|
-
|
|
54992
|
-
|
|
54993
|
-
|
|
54994
|
-
|
|
54995
|
-
|
|
54996
|
-
|
|
54997
|
-
|
|
54998
|
-
|
|
54999
|
-
|
|
55000
|
-
|
|
55001
|
-
|
|
55002
|
-
|
|
55003
|
-
|
|
55004
|
-
|
|
55005
|
-
|
|
55006
|
-
|
|
55007
|
-
|
|
55008
|
-
|
|
55009
|
-
|
|
55010
|
-
|
|
55011
|
-
|
|
55012
|
-
|
|
55013
|
-
|
|
55014
|
-
|
|
55015
|
-
|
|
55016
|
-
|
|
55017
|
-
|
|
55018
|
-
|
|
55019
|
-
|
|
55020
|
-
|
|
55021
|
-
|
|
55022
|
-
|
|
55023
|
-
|
|
55024
|
-
|
|
55025
|
-
|
|
55026
|
-
|
|
55027
|
-
|
|
55028
|
-
|
|
55029
|
-
|
|
55030
|
-
|
|
55031
|
-
|
|
55032
|
-
|
|
55033
|
-
|
|
55034
|
-
|
|
55035
|
-
|
|
55036
|
-
|
|
55037
|
-
|
|
55038
|
-
|
|
55039
|
-
|
|
55040
|
-
|
|
55041
|
-
|
|
55042
|
-
|
|
55043
|
-
|
|
55044
|
-
|
|
55045
|
-
|
|
55046
|
-
|
|
55047
|
-
|
|
55048
|
-
|
|
55049
|
-
|
|
55050
|
-
|
|
55051
|
-
|
|
55052
|
-
|
|
55053
|
-
|
|
55054
|
-
|
|
55055
|
-
|
|
55056
|
-
|
|
55057
|
-
|
|
55058
|
-
|
|
55059
|
-
|
|
55060
|
-
|
|
55061
|
-
|
|
55062
|
-
|
|
55063
|
-
|
|
55064
|
-
|
|
55065
|
-
|
|
55066
|
-
|
|
55067
|
-
|
|
55068
|
-
|
|
55069
|
-
|
|
55070
|
-
|
|
55071
|
-
|
|
55072
|
-
|
|
55073
|
-
|
|
55074
|
-
|
|
55075
|
-
|
|
55076
|
-
|
|
55077
|
-
|
|
55078
|
-
|
|
55079
|
-
|
|
55080
|
-
|
|
55081
|
-
|
|
55082
|
-
|
|
55083
|
-
|
|
55084
|
-
|
|
55085
|
-
|
|
55086
|
-
|
|
55087
|
-
|
|
55088
|
-
|
|
55089
|
-
|
|
55090
|
-
|
|
55091
|
-
|
|
55092
|
-
|
|
55093
|
-
|
|
55094
|
-
|
|
55095
|
-
|
|
55096
|
-
|
|
55097
|
-
|
|
55098
|
-
|
|
55099
|
-
|
|
55100
|
-
|
|
55101
|
-
|
|
55102
|
-
|
|
55103
|
-
|
|
55104
|
-
|
|
55105
|
-
|
|
55106
|
-
|
|
55107
|
-
|
|
55108
|
-
|
|
55109
|
-
|
|
55110
|
-
|
|
55111
|
-
|
|
55112
|
-
|
|
55113
|
-
|
|
55114
|
-
|
|
55115
|
-
|
|
55116
|
-
|
|
55117
|
-
|
|
55118
|
-
|
|
55119
|
-
|
|
55120
|
-
|
|
55121
|
-
|
|
55122
|
-
|
|
55123
|
-
|
|
55124
|
-
|
|
55125
|
-
|
|
55126
|
-
|
|
55127
|
-
|
|
55128
|
-
|
|
55129
|
-
|
|
55130
|
-
|
|
55131
|
-
|
|
55132
|
-
|
|
55133
|
-
|
|
55134
|
-
|
|
55135
|
-
|
|
55136
|
-
|
|
55137
|
-
|
|
55138
|
-
|
|
55139
|
-
|
|
55140
|
-
|
|
55141
|
-
|
|
55142
|
-
|
|
55143
|
-
|
|
55144
|
-
|
|
55145
|
-
|
|
55146
|
-
|
|
55147
|
-
|
|
55148
|
-
|
|
55149
|
-
|
|
55150
|
-
|
|
55151
|
-
|
|
55152
|
-
|
|
55153
|
-
|
|
55154
|
-
|
|
55155
|
-
|
|
55156
|
-
|
|
55157
|
-
|
|
55158
|
-
|
|
55159
|
-
|
|
55160
|
-
|
|
55161
|
-
|
|
55162
|
-
|
|
55163
|
-
|
|
55164
|
-
|
|
55165
|
-
|
|
55166
|
-
|
|
55167
|
-
|
|
55168
|
-
|
|
55169
|
-
|
|
55170
|
-
get "DrawText"() {
|
|
55171
|
-
return DrawText;
|
|
55172
|
-
},
|
|
55173
|
-
get "DrawTextLayer"() {
|
|
55174
|
-
return DrawTextLayer;
|
|
55175
|
-
},
|
|
55176
|
-
get "Drawer"() {
|
|
55177
|
-
return Drawer;
|
|
55178
|
-
},
|
|
55179
|
-
get "DrawerSlot"() {
|
|
55180
|
-
return DrawerSlot;
|
|
55181
|
-
},
|
|
55182
|
-
get "EdgeDecoration"() {
|
|
55183
|
-
return EdgeDecoration;
|
|
55184
|
-
},
|
|
55185
|
-
get "EmojiPicker"() {
|
|
55186
|
-
return EmojiPicker;
|
|
55187
|
-
},
|
|
55188
|
-
get "EmptyState"() {
|
|
55189
|
-
return EmptyState;
|
|
55190
|
-
},
|
|
55191
|
-
get "ErrorBoundary"() {
|
|
55192
|
-
return ErrorBoundary;
|
|
55193
|
-
},
|
|
55194
|
-
get "ErrorState"() {
|
|
55195
|
-
return ErrorState;
|
|
55196
|
-
},
|
|
55197
|
-
get "FeatureCard"() {
|
|
55198
|
-
return FeatureCard;
|
|
55199
|
-
},
|
|
55200
|
-
get "FeatureGrid"() {
|
|
55201
|
-
return FeatureGrid;
|
|
55202
|
-
},
|
|
55203
|
-
get "FileTree"() {
|
|
55204
|
-
return FileTree;
|
|
55205
|
-
},
|
|
55206
|
-
get "FilterGroup"() {
|
|
55207
|
-
return FilterGroup;
|
|
55208
|
-
},
|
|
55209
|
-
get "FilterPill"() {
|
|
55210
|
-
return FilterPill;
|
|
55211
|
-
},
|
|
55212
|
-
get "Flex"() {
|
|
55213
|
-
return Flex;
|
|
55214
|
-
},
|
|
55215
|
-
get "FlipCard"() {
|
|
55216
|
-
return FlipCard;
|
|
55217
|
-
},
|
|
55218
|
-
get "FlipContainer"() {
|
|
55219
|
-
return FlipContainer;
|
|
55220
|
-
},
|
|
55221
|
-
get "FloatingActionButton"() {
|
|
55222
|
-
return FloatingActionButton;
|
|
55223
|
-
},
|
|
55224
|
-
get "FloatingToolbar"() {
|
|
55225
|
-
return FloatingToolbar;
|
|
55226
|
-
},
|
|
55227
|
-
get "Form"() {
|
|
55228
|
-
return Form;
|
|
55229
|
-
},
|
|
55230
|
-
get "FormField"() {
|
|
55231
|
-
return FormField;
|
|
55232
|
-
},
|
|
55233
|
-
get "FormLayout"() {
|
|
55234
|
-
return FormLayout;
|
|
55235
|
-
},
|
|
55236
|
-
get "FormSectionHeader"() {
|
|
55237
|
-
return FormSectionHeader;
|
|
55238
|
-
},
|
|
55239
|
-
get "FxOverlay"() {
|
|
55240
|
-
return FxOverlay;
|
|
55241
|
-
},
|
|
55242
|
-
get "GameAudioCue"() {
|
|
55243
|
-
return GameAudioCue;
|
|
55244
|
-
},
|
|
55245
|
-
get "GameAudioToggle"() {
|
|
55246
|
-
return GameAudioToggle;
|
|
55247
|
-
},
|
|
55248
|
-
get "GameHud"() {
|
|
55249
|
-
return GameHud;
|
|
55250
|
-
},
|
|
55251
|
-
get "GameIcon"() {
|
|
55252
|
-
return GameIcon;
|
|
55253
|
-
},
|
|
55254
|
-
get "GameMenu"() {
|
|
55255
|
-
return GameMenu;
|
|
55256
|
-
},
|
|
55257
|
-
get "GameShell"() {
|
|
55258
|
-
return GameShell;
|
|
55259
|
-
},
|
|
55260
|
-
get "Gantt"() {
|
|
55261
|
-
return Gantt;
|
|
55262
|
-
},
|
|
55263
|
-
get "GenericAppTemplate"() {
|
|
55264
|
-
return GenericAppTemplate;
|
|
55265
|
-
},
|
|
55266
|
-
get "GeometricPattern"() {
|
|
55267
|
-
return GeometricPattern;
|
|
55268
|
-
},
|
|
55269
|
-
get "GradientDivider"() {
|
|
55270
|
-
return GradientDivider;
|
|
55271
|
-
},
|
|
55272
|
-
get "GraphCanvas"() {
|
|
55273
|
-
return GraphCanvas;
|
|
55274
|
-
},
|
|
55275
|
-
get "GraphView"() {
|
|
55276
|
-
return GraphView;
|
|
55277
|
-
},
|
|
55278
|
-
get "Grid"() {
|
|
55279
|
-
return Grid;
|
|
55280
|
-
},
|
|
55281
|
-
get "HStack"() {
|
|
55282
|
-
return HStack;
|
|
55283
|
-
},
|
|
55284
|
-
get "Header"() {
|
|
55285
|
-
return Header;
|
|
55286
|
-
},
|
|
55287
|
-
get "HealthBar"() {
|
|
55288
|
-
return HealthBar;
|
|
55289
|
-
},
|
|
55290
|
-
get "Icon"() {
|
|
55291
|
-
return Icon;
|
|
55292
|
-
},
|
|
55293
|
-
get "IconButton"() {
|
|
55294
|
-
return IconButtonPattern;
|
|
55295
|
-
},
|
|
55296
|
-
get "IconButtonPattern"() {
|
|
55297
|
-
return IconButtonPattern;
|
|
55298
|
-
},
|
|
55299
|
-
get "Image"() {
|
|
55300
|
-
return Image2;
|
|
55301
|
-
},
|
|
55302
|
-
get "ImportPreviewTree"() {
|
|
55303
|
-
return ImportPreviewTree;
|
|
55304
|
-
},
|
|
55305
|
-
get "ImportProgress"() {
|
|
55306
|
-
return ImportProgress;
|
|
55307
|
-
},
|
|
55308
|
-
get "ImportSourcePicker"() {
|
|
55309
|
-
return ImportSourcePicker;
|
|
55310
|
-
},
|
|
55311
|
-
get "InfiniteScrollSentinel"() {
|
|
55312
|
-
return InfiniteScrollSentinel;
|
|
55313
|
-
},
|
|
55314
|
-
get "Input"() {
|
|
55315
|
-
return Input;
|
|
55316
|
-
},
|
|
55317
|
-
get "InputGroup"() {
|
|
55318
|
-
return InputGroup;
|
|
55319
|
-
},
|
|
55320
|
-
get "JazariStateMachine"() {
|
|
55321
|
-
return JazariStateMachine;
|
|
55322
|
-
},
|
|
55323
|
-
get "Label"() {
|
|
55324
|
-
return LabelPattern;
|
|
55325
|
-
},
|
|
55326
|
-
get "LabelPattern"() {
|
|
55327
|
-
return LabelPattern;
|
|
55328
|
-
},
|
|
55329
|
-
get "LawReferenceTooltip"() {
|
|
55330
|
-
return LawReferenceTooltip;
|
|
55331
|
-
},
|
|
55332
|
-
get "LearningCanvas"() {
|
|
55333
|
-
return LearningCanvas;
|
|
55334
|
-
},
|
|
55335
|
-
get "Lightbox"() {
|
|
55336
|
-
return Lightbox;
|
|
55337
|
-
},
|
|
55338
|
-
get "LikertScale"() {
|
|
55339
|
-
return LikertScale;
|
|
55340
|
-
},
|
|
55341
|
-
get "LineChart"() {
|
|
55342
|
-
return LineChart2;
|
|
55343
|
-
},
|
|
55344
|
-
get "LoadingState"() {
|
|
55345
|
-
return LoadingState;
|
|
55346
|
-
},
|
|
55347
|
-
get "MapView"() {
|
|
55348
|
-
return MapView;
|
|
55349
|
-
},
|
|
55350
|
-
get "MarkdownContent"() {
|
|
55351
|
-
return MarkdownContent;
|
|
55352
|
-
},
|
|
55353
|
-
get "MasterDetailLayout"() {
|
|
55354
|
-
return MasterDetailLayout;
|
|
55355
|
-
},
|
|
55356
|
-
get "MathCanvas"() {
|
|
55357
|
-
return MathCanvas;
|
|
55358
|
-
},
|
|
55359
|
-
get "MatrixQuestion"() {
|
|
55360
|
-
return MatrixQuestion;
|
|
55361
|
-
},
|
|
55362
|
-
get "MediaGallery"() {
|
|
55363
|
-
return MediaGallery;
|
|
55364
|
-
},
|
|
55365
|
-
get "Menu"() {
|
|
55366
|
-
return Menu;
|
|
55367
|
-
},
|
|
55368
|
-
get "Meter"() {
|
|
55369
|
-
return Meter;
|
|
55370
|
-
},
|
|
55371
|
-
get "Modal"() {
|
|
55372
|
-
return Modal;
|
|
55373
|
-
},
|
|
55374
|
-
get "ModalSlot"() {
|
|
55375
|
-
return ModalSlot;
|
|
55376
|
-
},
|
|
55377
|
-
get "ModuleCard"() {
|
|
55378
|
-
return exports.ModuleCard;
|
|
55379
|
-
},
|
|
55380
|
-
get "Navigation"() {
|
|
55381
|
-
return Navigation;
|
|
55382
|
-
},
|
|
55383
|
-
get "NumberStepper"() {
|
|
55384
|
-
return NumberStepper;
|
|
55385
|
-
},
|
|
55386
|
-
get "OptionConstraintGroup"() {
|
|
55387
|
-
return OptionConstraintGroup;
|
|
55388
|
-
},
|
|
55389
|
-
get "OrbitalVisualization"() {
|
|
55390
|
-
return OrbitalVisualization;
|
|
55391
|
-
},
|
|
55392
|
-
get "Overlay"() {
|
|
55393
|
-
return Overlay;
|
|
55394
|
-
},
|
|
55395
|
-
get "PageHeader"() {
|
|
55396
|
-
return PageHeader;
|
|
55397
|
-
},
|
|
55398
|
-
get "PageTransition"() {
|
|
55399
|
-
return PageTransition;
|
|
55400
|
-
},
|
|
55401
|
-
get "Pagination"() {
|
|
55402
|
-
return Pagination;
|
|
55403
|
-
},
|
|
55404
|
-
get "PatternTile"() {
|
|
55405
|
-
return PatternTile;
|
|
55406
|
-
},
|
|
55407
|
-
get "PhysicsCanvas"() {
|
|
55408
|
-
return PhysicsCanvas;
|
|
55409
|
-
},
|
|
55410
|
-
get "Popover"() {
|
|
55411
|
-
return Popover;
|
|
55412
|
-
},
|
|
55413
|
-
get "PositionedCanvas"() {
|
|
55414
|
-
return PositionedCanvas;
|
|
55415
|
-
},
|
|
55416
|
-
get "Presence"() {
|
|
55417
|
-
return Presence;
|
|
55418
|
-
},
|
|
55419
|
-
get "ProgressBar"() {
|
|
55420
|
-
return ProgressBar;
|
|
55421
|
-
},
|
|
55422
|
-
get "ProgressDots"() {
|
|
55423
|
-
return ProgressDots;
|
|
55424
|
-
},
|
|
55425
|
-
get "PullToRefresh"() {
|
|
55426
|
-
return PullToRefresh;
|
|
55427
|
-
},
|
|
55428
|
-
get "QrScanner"() {
|
|
55429
|
-
return QrScanner;
|
|
55430
|
-
},
|
|
55431
|
-
get "QuizBlock"() {
|
|
55432
|
-
return QuizBlock;
|
|
55433
|
-
},
|
|
55434
|
-
get "Radio"() {
|
|
55435
|
-
return Radio;
|
|
55436
|
-
},
|
|
55437
|
-
get "RangeSlider"() {
|
|
55438
|
-
return RangeSlider;
|
|
55439
|
-
},
|
|
55440
|
-
get "ReflectionBlock"() {
|
|
55441
|
-
return ReflectionBlock;
|
|
55442
|
-
},
|
|
55443
|
-
get "RelationSelect"() {
|
|
55444
|
-
return RelationSelect;
|
|
55445
|
-
},
|
|
55446
|
-
get "RepeatableFormSection"() {
|
|
55447
|
-
return RepeatableFormSection;
|
|
55448
|
-
},
|
|
55449
|
-
get "ReplyTree"() {
|
|
55450
|
-
return ReplyTree;
|
|
55451
|
-
},
|
|
55452
|
-
get "RichTextEditor"() {
|
|
55453
|
-
return RichTextEditor;
|
|
55454
|
-
},
|
|
55455
|
-
get "RuntimeDebugger"() {
|
|
55456
|
-
return RuntimeDebugger;
|
|
55457
|
-
},
|
|
55458
|
-
get "ScaledDiagram"() {
|
|
55459
|
-
return ScaledDiagram;
|
|
55460
|
-
},
|
|
55461
|
-
get "ScoreDisplay"() {
|
|
55462
|
-
return ScoreDisplay;
|
|
55463
|
-
},
|
|
55464
|
-
get "SearchInput"() {
|
|
55465
|
-
return SearchInput;
|
|
55466
|
-
},
|
|
55467
|
-
get "Section"() {
|
|
55468
|
-
return Section;
|
|
55469
|
-
},
|
|
55470
|
-
get "SectionHeader"() {
|
|
55471
|
-
return SectionHeader;
|
|
55472
|
-
},
|
|
55473
|
-
get "SegmentRenderer"() {
|
|
55474
|
-
return SegmentRenderer;
|
|
55475
|
-
},
|
|
55476
|
-
get "Select"() {
|
|
55477
|
-
return Select;
|
|
55478
|
-
},
|
|
55479
|
-
get "SequenceBar"() {
|
|
55480
|
-
return SequenceBar;
|
|
55481
|
-
},
|
|
55482
|
-
get "SidePanel"() {
|
|
55483
|
-
return SidePanel;
|
|
55484
|
-
},
|
|
55485
|
-
get "Sidebar"() {
|
|
55486
|
-
return Sidebar;
|
|
55487
|
-
},
|
|
55488
|
-
get "SignaturePad"() {
|
|
55489
|
-
return SignaturePad;
|
|
55490
|
-
},
|
|
55491
|
-
get "SimpleGrid"() {
|
|
55492
|
-
return SimpleGrid;
|
|
55493
|
-
},
|
|
55494
|
-
get "Skeleton"() {
|
|
55495
|
-
return Skeleton;
|
|
55496
|
-
},
|
|
55497
|
-
get "SocialProof"() {
|
|
55498
|
-
return SocialProof;
|
|
55499
|
-
},
|
|
55500
|
-
get "SortableList"() {
|
|
55501
|
-
return SortableList;
|
|
55502
|
-
},
|
|
55503
|
-
get "Spacer"() {
|
|
55504
|
-
return SpacerPattern;
|
|
55505
|
-
},
|
|
55506
|
-
get "SpacerPattern"() {
|
|
55507
|
-
return SpacerPattern;
|
|
55508
|
-
},
|
|
55509
|
-
get "Sparkline"() {
|
|
55510
|
-
return Sparkline;
|
|
55511
|
-
},
|
|
55512
|
-
get "Spinner"() {
|
|
55513
|
-
return Spinner;
|
|
55514
|
-
},
|
|
55515
|
-
get "Split"() {
|
|
55516
|
-
return Split;
|
|
55517
|
-
},
|
|
55518
|
-
get "SplitPane"() {
|
|
55519
|
-
return SplitPane;
|
|
55520
|
-
},
|
|
55521
|
-
get "Stack"() {
|
|
55522
|
-
return Stack;
|
|
55523
|
-
},
|
|
55524
|
-
get "StarRating"() {
|
|
55525
|
-
return StarRating;
|
|
55526
|
-
},
|
|
55527
|
-
get "StatBadge"() {
|
|
55528
|
-
return StatBadge;
|
|
55529
|
-
},
|
|
55530
|
-
get "StatCard"() {
|
|
55531
|
-
return StatCard;
|
|
55532
|
-
},
|
|
55533
|
-
get "StatDisplay"() {
|
|
55534
|
-
return StatDisplay;
|
|
55535
|
-
},
|
|
55536
|
-
get "StateGraph"() {
|
|
55537
|
-
return StateGraph;
|
|
55538
|
-
},
|
|
55539
|
-
get "StateJsonView"() {
|
|
55540
|
-
return StateJsonView;
|
|
55541
|
-
},
|
|
55542
|
-
get "StateMachineView"() {
|
|
55543
|
-
return StateMachineView;
|
|
55544
|
-
},
|
|
55545
|
-
get "StatusDot"() {
|
|
55546
|
-
return StatusDot;
|
|
55547
|
-
},
|
|
55548
|
-
get "SubagentTracePanel"() {
|
|
55549
|
-
return SubagentTracePanel;
|
|
55550
|
-
},
|
|
55551
|
-
get "SvgBranch"() {
|
|
55552
|
-
return SvgBranch;
|
|
55553
|
-
},
|
|
55554
|
-
get "SvgConnection"() {
|
|
55555
|
-
return SvgConnection;
|
|
55556
|
-
},
|
|
55557
|
-
get "SvgFlow"() {
|
|
55558
|
-
return SvgFlow;
|
|
55559
|
-
},
|
|
55560
|
-
get "SvgGrid"() {
|
|
55561
|
-
return SvgGrid;
|
|
55562
|
-
},
|
|
55563
|
-
get "SvgLobe"() {
|
|
55564
|
-
return SvgLobe;
|
|
55565
|
-
},
|
|
55566
|
-
get "SvgMesh"() {
|
|
55567
|
-
return SvgMesh;
|
|
55568
|
-
},
|
|
55569
|
-
get "SvgMorph"() {
|
|
55570
|
-
return SvgMorph;
|
|
55571
|
-
},
|
|
55572
|
-
get "SvgNode"() {
|
|
55573
|
-
return SvgNode;
|
|
55574
|
-
},
|
|
55575
|
-
get "SvgPulse"() {
|
|
55576
|
-
return SvgPulse;
|
|
55577
|
-
},
|
|
55578
|
-
get "SvgRing"() {
|
|
55579
|
-
return SvgRing;
|
|
55580
|
-
},
|
|
55581
|
-
get "SvgShield"() {
|
|
55582
|
-
return SvgShield;
|
|
55583
|
-
},
|
|
55584
|
-
get "SvgStack"() {
|
|
55585
|
-
return SvgStack;
|
|
55586
|
-
},
|
|
55587
|
-
get "SwipeableRow"() {
|
|
55588
|
-
return SwipeableRow;
|
|
55589
|
-
},
|
|
55590
|
-
get "Switch"() {
|
|
55591
|
-
return Switch;
|
|
55592
|
-
},
|
|
55593
|
-
get "TabbedContainer"() {
|
|
55594
|
-
return TabbedContainer;
|
|
55595
|
-
},
|
|
55596
|
-
get "TableView"() {
|
|
55597
|
-
return TableView;
|
|
55598
|
-
},
|
|
55599
|
-
get "Tabs"() {
|
|
55600
|
-
return Tabs;
|
|
55601
|
-
},
|
|
55602
|
-
get "TagInput"() {
|
|
55603
|
-
return TagInput;
|
|
55604
|
-
},
|
|
55605
|
-
get "TextHighlight"() {
|
|
55606
|
-
return TextHighlight;
|
|
55607
|
-
},
|
|
55608
|
-
get "Textarea"() {
|
|
55609
|
-
return Textarea;
|
|
55610
|
-
},
|
|
55611
|
-
get "ThemeToggle"() {
|
|
55612
|
-
return ThemeToggle;
|
|
55613
|
-
},
|
|
55614
|
-
get "TimeSlotCell"() {
|
|
55615
|
-
return TimeSlotCell;
|
|
55616
|
-
},
|
|
55617
|
-
get "Timeline"() {
|
|
55618
|
-
return Timeline;
|
|
55619
|
-
},
|
|
55620
|
-
get "TimerDisplay"() {
|
|
55621
|
-
return TimerDisplay;
|
|
55622
|
-
},
|
|
55623
|
-
get "Toast"() {
|
|
55624
|
-
return Toast;
|
|
55625
|
-
},
|
|
55626
|
-
get "ToastSlot"() {
|
|
55627
|
-
return ToastSlot;
|
|
55628
|
-
},
|
|
55629
|
-
get "Tooltip"() {
|
|
55630
|
-
return Tooltip;
|
|
55631
|
-
},
|
|
55632
|
-
get "TopNavItem"() {
|
|
55633
|
-
return TopNavItem;
|
|
55634
|
-
},
|
|
55635
|
-
get "TraitFrame"() {
|
|
55636
|
-
return TraitFrame;
|
|
55637
|
-
},
|
|
55638
|
-
get "TraitSlot"() {
|
|
55639
|
-
return TraitSlot;
|
|
55640
|
-
},
|
|
55641
|
-
get "TrendIndicator"() {
|
|
55642
|
-
return TrendIndicator;
|
|
55643
|
-
},
|
|
55644
|
-
get "TypewriterText"() {
|
|
55645
|
-
return TypewriterText;
|
|
55646
|
-
},
|
|
55647
|
-
get "Typography"() {
|
|
55648
|
-
return Typography;
|
|
55649
|
-
},
|
|
55650
|
-
get "UISlotComponent"() {
|
|
55651
|
-
return UISlotComponent;
|
|
55652
|
-
},
|
|
55653
|
-
get "UISlotRenderer"() {
|
|
55654
|
-
return UISlotRenderer;
|
|
55655
|
-
},
|
|
55656
|
-
get "UploadDropZone"() {
|
|
55657
|
-
return UploadDropZone;
|
|
55658
|
-
},
|
|
55659
|
-
get "VStack"() {
|
|
55660
|
-
return VStack;
|
|
55661
|
-
},
|
|
55662
|
-
get "VersionDiff"() {
|
|
55663
|
-
return VersionDiff;
|
|
55664
|
-
},
|
|
55665
|
-
get "ViolationAlert"() {
|
|
55666
|
-
return ViolationAlert;
|
|
55667
|
-
},
|
|
55668
|
-
get "VoteStack"() {
|
|
55669
|
-
return VoteStack;
|
|
55670
|
-
},
|
|
55671
|
-
get "WizardContainer"() {
|
|
55672
|
-
return WizardContainer;
|
|
55673
|
-
},
|
|
55674
|
-
get "WizardNavigation"() {
|
|
55675
|
-
return WizardNavigation;
|
|
55676
|
-
},
|
|
55677
|
-
get "WizardProgress"() {
|
|
55678
|
-
return WizardProgress;
|
|
55679
|
-
},
|
|
54990
|
+
"Accordion": Accordion,
|
|
54991
|
+
"ActionPalette": ActionPalette,
|
|
54992
|
+
"ActionTile": ActionTile,
|
|
54993
|
+
"ActivationBlock": ActivationBlock,
|
|
54994
|
+
"AgentActivityFeed": AgentActivityFeed,
|
|
54995
|
+
"AgentActivityRow": AgentActivityRow,
|
|
54996
|
+
"AgentChatFeed": AgentChatFeed,
|
|
54997
|
+
"Alert": AlertPattern,
|
|
54998
|
+
"AlertPattern": AlertPattern,
|
|
54999
|
+
"AlgoGraphCanvas": AlgoGraphCanvas,
|
|
55000
|
+
"AlgorithmCanvas": AlgorithmCanvas,
|
|
55001
|
+
"AnimatedCounter": AnimatedCounter,
|
|
55002
|
+
"AnimatedGraphic": AnimatedGraphic,
|
|
55003
|
+
"AnimatedReveal": AnimatedReveal,
|
|
55004
|
+
"Aside": Aside,
|
|
55005
|
+
"AtlasImage": AtlasImage,
|
|
55006
|
+
"AtlasPanel": AtlasPanel,
|
|
55007
|
+
"AuthLayout": AuthLayout,
|
|
55008
|
+
"Avatar": Avatar,
|
|
55009
|
+
"Badge": Badge,
|
|
55010
|
+
"BehaviorView": exports.BehaviorView,
|
|
55011
|
+
"BiologyCanvas": BiologyCanvas,
|
|
55012
|
+
"BloomQuizBlock": BloomQuizBlock,
|
|
55013
|
+
"Box": BoxPattern,
|
|
55014
|
+
"BoxPattern": BoxPattern,
|
|
55015
|
+
"BranchingLogicBuilder": BranchingLogicBuilder,
|
|
55016
|
+
"Breadcrumb": Breadcrumb,
|
|
55017
|
+
"Button": ButtonPattern,
|
|
55018
|
+
"ButtonGroup": ButtonGroup,
|
|
55019
|
+
"ButtonPattern": ButtonPattern,
|
|
55020
|
+
"CalendarGrid": CalendarGrid,
|
|
55021
|
+
"Canvas": Canvas,
|
|
55022
|
+
"Canvas2D": Canvas2D,
|
|
55023
|
+
"Card": Card,
|
|
55024
|
+
"Carousel": Carousel,
|
|
55025
|
+
"Center": Center,
|
|
55026
|
+
"ChangeList": ChangeList,
|
|
55027
|
+
"Chart": Chart,
|
|
55028
|
+
"ChartLegend": ChartLegend,
|
|
55029
|
+
"ChatBar": ChatBar,
|
|
55030
|
+
"Checkbox": Checkbox,
|
|
55031
|
+
"ChemistryCanvas": ChemistryCanvas,
|
|
55032
|
+
"ChoiceButton": ChoiceButton,
|
|
55033
|
+
"CodeBlock": CodeBlock,
|
|
55034
|
+
"CodeRunnerPanel": CodeRunnerPanel,
|
|
55035
|
+
"CommandPalette": CommandPalette,
|
|
55036
|
+
"CommitRow": CommitRow,
|
|
55037
|
+
"ConditionalWrapper": ConditionalWrapper,
|
|
55038
|
+
"ConfettiEffect": ConfettiEffect,
|
|
55039
|
+
"ConfirmDialog": ConfirmDialog,
|
|
55040
|
+
"ConnectionBlock": ConnectionBlock,
|
|
55041
|
+
"Container": Container,
|
|
55042
|
+
"ContentRenderer": ContentRenderer,
|
|
55043
|
+
"ControlButton": ControlButton,
|
|
55044
|
+
"ControlGrid": ControlGrid,
|
|
55045
|
+
"CounterTemplate": CounterTemplate,
|
|
55046
|
+
"DashboardGrid": DashboardGrid,
|
|
55047
|
+
"DashboardLayout": DashboardLayout,
|
|
55048
|
+
"DataGrid": DataGrid,
|
|
55049
|
+
"DataList": DataList,
|
|
55050
|
+
"DateRangePicker": DateRangePicker,
|
|
55051
|
+
"DateRangeSelector": DateRangeSelector,
|
|
55052
|
+
"DayCell": DayCell,
|
|
55053
|
+
"DetailPanel": DetailPanel,
|
|
55054
|
+
"Dialog": Dialog,
|
|
55055
|
+
"DialogueBubble": DialogueBubble,
|
|
55056
|
+
"Divider": DividerPattern,
|
|
55057
|
+
"DividerPattern": DividerPattern,
|
|
55058
|
+
"DocBreadcrumb": DocBreadcrumb,
|
|
55059
|
+
"DocPagination": DocPagination,
|
|
55060
|
+
"DocSearch": DocSearch,
|
|
55061
|
+
"DocSidebar": DocSidebar,
|
|
55062
|
+
"DocTOC": DocTOC,
|
|
55063
|
+
"DockLayout": DockLayout,
|
|
55064
|
+
"DocumentDetails": DocumentDetails,
|
|
55065
|
+
"DocumentPanel": DocumentPanel,
|
|
55066
|
+
"DocumentViewer": DocumentViewer,
|
|
55067
|
+
"DrawFxLayer": DrawFxLayer,
|
|
55068
|
+
"DrawGroup": DrawGroup,
|
|
55069
|
+
"DrawMesh": DrawMesh,
|
|
55070
|
+
"DrawShape": DrawShape,
|
|
55071
|
+
"DrawShapeLayer": DrawShapeLayer,
|
|
55072
|
+
"DrawSkinnedMesh": DrawSkinnedMesh,
|
|
55073
|
+
"DrawSprite": DrawSprite,
|
|
55074
|
+
"DrawSpriteLayer": DrawSpriteLayer,
|
|
55075
|
+
"DrawText": DrawText,
|
|
55076
|
+
"DrawTextLayer": DrawTextLayer,
|
|
55077
|
+
"Drawer": Drawer,
|
|
55078
|
+
"DrawerSlot": DrawerSlot,
|
|
55079
|
+
"EdgeDecoration": EdgeDecoration,
|
|
55080
|
+
"EmojiPicker": EmojiPicker,
|
|
55081
|
+
"EmptyState": EmptyState,
|
|
55082
|
+
"ErrorBoundary": ErrorBoundary,
|
|
55083
|
+
"ErrorState": ErrorState,
|
|
55084
|
+
"FeatureCard": FeatureCard,
|
|
55085
|
+
"FeatureGrid": FeatureGrid,
|
|
55086
|
+
"FileTree": FileTree,
|
|
55087
|
+
"FilterGroup": FilterGroup,
|
|
55088
|
+
"FilterPill": FilterPill,
|
|
55089
|
+
"Flex": Flex,
|
|
55090
|
+
"FlipCard": FlipCard,
|
|
55091
|
+
"FlipContainer": FlipContainer,
|
|
55092
|
+
"FloatingActionButton": FloatingActionButton,
|
|
55093
|
+
"FloatingToolbar": FloatingToolbar,
|
|
55094
|
+
"Form": Form,
|
|
55095
|
+
"FormField": FormField,
|
|
55096
|
+
"FormLayout": FormLayout,
|
|
55097
|
+
"FormSectionHeader": FormSectionHeader,
|
|
55098
|
+
"FxOverlay": FxOverlay,
|
|
55099
|
+
"GameAudioCue": GameAudioCue,
|
|
55100
|
+
"GameAudioToggle": GameAudioToggle,
|
|
55101
|
+
"GameHud": GameHud,
|
|
55102
|
+
"GameIcon": GameIcon,
|
|
55103
|
+
"GameMenu": GameMenu,
|
|
55104
|
+
"GameShell": GameShell,
|
|
55105
|
+
"Gantt": Gantt,
|
|
55106
|
+
"GenericAppTemplate": GenericAppTemplate,
|
|
55107
|
+
"GeometricPattern": GeometricPattern,
|
|
55108
|
+
"GradientDivider": GradientDivider,
|
|
55109
|
+
"GraphCanvas": GraphCanvas,
|
|
55110
|
+
"GraphView": GraphView,
|
|
55111
|
+
"Grid": Grid,
|
|
55112
|
+
"HStack": HStack,
|
|
55113
|
+
"Header": Header,
|
|
55114
|
+
"HealthBar": HealthBar,
|
|
55115
|
+
"Icon": Icon,
|
|
55116
|
+
"IconButton": IconButtonPattern,
|
|
55117
|
+
"IconButtonPattern": IconButtonPattern,
|
|
55118
|
+
"Image": Image2,
|
|
55119
|
+
"ImportPreviewTree": ImportPreviewTree,
|
|
55120
|
+
"ImportProgress": ImportProgress,
|
|
55121
|
+
"ImportSourcePicker": ImportSourcePicker,
|
|
55122
|
+
"InfiniteScrollSentinel": InfiniteScrollSentinel,
|
|
55123
|
+
"Input": Input,
|
|
55124
|
+
"InputGroup": InputGroup,
|
|
55125
|
+
"JazariStateMachine": JazariStateMachine,
|
|
55126
|
+
"Label": LabelPattern,
|
|
55127
|
+
"LabelPattern": LabelPattern,
|
|
55128
|
+
"LawReferenceTooltip": LawReferenceTooltip,
|
|
55129
|
+
"LearningCanvas": LearningCanvas,
|
|
55130
|
+
"Lightbox": Lightbox,
|
|
55131
|
+
"LikertScale": LikertScale,
|
|
55132
|
+
"LineChart": LineChart2,
|
|
55133
|
+
"LoadingState": LoadingState,
|
|
55134
|
+
"MapView": MapView,
|
|
55135
|
+
"MarkdownContent": MarkdownContent,
|
|
55136
|
+
"MasterDetailLayout": MasterDetailLayout,
|
|
55137
|
+
"MathCanvas": MathCanvas,
|
|
55138
|
+
"MatrixQuestion": MatrixQuestion,
|
|
55139
|
+
"MediaGallery": MediaGallery,
|
|
55140
|
+
"Menu": Menu,
|
|
55141
|
+
"Meter": Meter,
|
|
55142
|
+
"Modal": Modal,
|
|
55143
|
+
"ModalSlot": ModalSlot,
|
|
55144
|
+
"ModuleCard": exports.ModuleCard,
|
|
55145
|
+
"Navigation": Navigation,
|
|
55146
|
+
"NumberStepper": NumberStepper,
|
|
55147
|
+
"OptionConstraintGroup": OptionConstraintGroup,
|
|
55148
|
+
"OrbitalVisualization": OrbitalVisualization,
|
|
55149
|
+
"Overlay": Overlay,
|
|
55150
|
+
"PageHeader": PageHeader,
|
|
55151
|
+
"PageTransition": PageTransition,
|
|
55152
|
+
"Pagination": Pagination,
|
|
55153
|
+
"PatternTile": PatternTile,
|
|
55154
|
+
"PhysicsCanvas": PhysicsCanvas,
|
|
55155
|
+
"Popover": Popover,
|
|
55156
|
+
"PositionedCanvas": PositionedCanvas,
|
|
55157
|
+
"Presence": Presence,
|
|
55158
|
+
"ProgressBar": ProgressBar,
|
|
55159
|
+
"ProgressDots": ProgressDots,
|
|
55160
|
+
"PullToRefresh": PullToRefresh,
|
|
55161
|
+
"QrScanner": QrScanner,
|
|
55162
|
+
"QuizBlock": QuizBlock,
|
|
55163
|
+
"Radio": Radio,
|
|
55164
|
+
"RangeSlider": RangeSlider,
|
|
55165
|
+
"ReflectionBlock": ReflectionBlock,
|
|
55166
|
+
"RelationSelect": RelationSelect,
|
|
55167
|
+
"RepeatableFormSection": RepeatableFormSection,
|
|
55168
|
+
"ReplyTree": ReplyTree,
|
|
55169
|
+
"RichTextEditor": RichTextEditor,
|
|
55170
|
+
"RuntimeDebugger": RuntimeDebugger,
|
|
55171
|
+
"ScaledDiagram": ScaledDiagram,
|
|
55172
|
+
"ScoreDisplay": ScoreDisplay,
|
|
55173
|
+
"SearchInput": SearchInput,
|
|
55174
|
+
"Section": Section,
|
|
55175
|
+
"SectionHeader": SectionHeader,
|
|
55176
|
+
"SegmentRenderer": SegmentRenderer,
|
|
55177
|
+
"Select": Select,
|
|
55178
|
+
"SequenceBar": SequenceBar,
|
|
55179
|
+
"SidePanel": SidePanel,
|
|
55180
|
+
"Sidebar": Sidebar,
|
|
55181
|
+
"SignaturePad": SignaturePad,
|
|
55182
|
+
"SimpleGrid": SimpleGrid,
|
|
55183
|
+
"Skeleton": Skeleton,
|
|
55184
|
+
"SocialProof": SocialProof,
|
|
55185
|
+
"SortableList": SortableList,
|
|
55186
|
+
"Spacer": SpacerPattern,
|
|
55187
|
+
"SpacerPattern": SpacerPattern,
|
|
55188
|
+
"Sparkline": Sparkline,
|
|
55189
|
+
"Spinner": Spinner,
|
|
55190
|
+
"Split": Split,
|
|
55191
|
+
"SplitPane": SplitPane,
|
|
55192
|
+
"Stack": Stack,
|
|
55193
|
+
"StarRating": StarRating,
|
|
55194
|
+
"StatBadge": StatBadge,
|
|
55195
|
+
"StatCard": StatCard,
|
|
55196
|
+
"StatDisplay": StatDisplay,
|
|
55197
|
+
"StateGraph": StateGraph,
|
|
55198
|
+
"StateJsonView": StateJsonView,
|
|
55199
|
+
"StateMachineView": StateMachineView,
|
|
55200
|
+
"StatusDot": StatusDot,
|
|
55201
|
+
"SubagentTracePanel": SubagentTracePanel,
|
|
55202
|
+
"SvgBranch": SvgBranch,
|
|
55203
|
+
"SvgConnection": SvgConnection,
|
|
55204
|
+
"SvgFlow": SvgFlow,
|
|
55205
|
+
"SvgGrid": SvgGrid,
|
|
55206
|
+
"SvgLobe": SvgLobe,
|
|
55207
|
+
"SvgMesh": SvgMesh,
|
|
55208
|
+
"SvgMorph": SvgMorph,
|
|
55209
|
+
"SvgNode": SvgNode,
|
|
55210
|
+
"SvgPulse": SvgPulse,
|
|
55211
|
+
"SvgRing": SvgRing,
|
|
55212
|
+
"SvgShield": SvgShield,
|
|
55213
|
+
"SvgStack": SvgStack,
|
|
55214
|
+
"SwipeableRow": SwipeableRow,
|
|
55215
|
+
"Switch": Switch,
|
|
55216
|
+
"TabbedContainer": TabbedContainer,
|
|
55217
|
+
"TableView": TableView,
|
|
55218
|
+
"Tabs": Tabs,
|
|
55219
|
+
"TagInput": TagInput,
|
|
55220
|
+
"TextHighlight": TextHighlight,
|
|
55221
|
+
"Textarea": Textarea,
|
|
55222
|
+
"ThemeToggle": ThemeToggle,
|
|
55223
|
+
"TimeSlotCell": TimeSlotCell,
|
|
55224
|
+
"Timeline": Timeline,
|
|
55225
|
+
"TimerDisplay": TimerDisplay,
|
|
55226
|
+
"Toast": Toast,
|
|
55227
|
+
"ToastSlot": ToastSlot,
|
|
55228
|
+
"Tooltip": Tooltip,
|
|
55229
|
+
"TopNavItem": TopNavItem,
|
|
55230
|
+
"TraitFrame": TraitFrame,
|
|
55231
|
+
"TraitSlot": TraitSlot,
|
|
55232
|
+
"TrendIndicator": TrendIndicator,
|
|
55233
|
+
"TypewriterText": TypewriterText,
|
|
55234
|
+
"Typography": Typography,
|
|
55235
|
+
"UISlotComponent": UISlotComponent,
|
|
55236
|
+
"UISlotRenderer": UISlotRenderer,
|
|
55237
|
+
"UploadDropZone": UploadDropZone,
|
|
55238
|
+
"VStack": VStack,
|
|
55239
|
+
"VersionDiff": VersionDiff,
|
|
55240
|
+
"ViolationAlert": ViolationAlert,
|
|
55241
|
+
"VoteStack": VoteStack,
|
|
55242
|
+
"WizardContainer": WizardContainer,
|
|
55243
|
+
"WizardNavigation": WizardNavigation,
|
|
55244
|
+
"WizardProgress": WizardProgress,
|
|
55680
55245
|
// Semantic aliases
|
|
55681
|
-
|
|
55682
|
-
return TextPattern;
|
|
55683
|
-
}
|
|
55246
|
+
"Text": TextPattern
|
|
55684
55247
|
};
|
|
55685
55248
|
}
|
|
55686
55249
|
});
|
|
@@ -55967,6 +55530,7 @@ function UISlotComponentInner({
|
|
|
55967
55530
|
const awaiting = isPortalSlot(slot) ? void 0 : awaitingSkeleton ?? runtimeAwaiting;
|
|
55968
55531
|
const regionClassName = fallback !== void 0 ? cn("contents", className) : className;
|
|
55969
55532
|
const binding = providers.useEntityBindingSnapshot(rawContent?.sourceTrait);
|
|
55533
|
+
const i18n = hooks.useRenderI18n();
|
|
55970
55534
|
const content = React93.useMemo(() => {
|
|
55971
55535
|
if (!rawContent) return rawContent;
|
|
55972
55536
|
const resolvedProps = resolveRenderBindingMarkers(
|
|
@@ -55974,10 +55538,11 @@ function UISlotComponentInner({
|
|
|
55974
55538
|
rawContent.sourceTrait,
|
|
55975
55539
|
binding.entity,
|
|
55976
55540
|
binding.config,
|
|
55977
|
-
binding.state
|
|
55541
|
+
binding.state,
|
|
55542
|
+
i18n
|
|
55978
55543
|
);
|
|
55979
55544
|
return resolvedProps === rawContent.props ? rawContent : { ...rawContent, props: resolvedProps };
|
|
55980
|
-
}, [rawContent, binding.entity, binding.config, binding.state]);
|
|
55545
|
+
}, [rawContent, binding.entity, binding.config, binding.state, i18n]);
|
|
55981
55546
|
const animatedPortal = isAnimatedPortalSlot(slot);
|
|
55982
55547
|
const holdForPending = useScopeHasPending(React93.useContext(PendingScopeContext));
|
|
55983
55548
|
const runtimePresence = useSlotPresence(portal && animatedPortal ? content ?? null : null, holdForPending);
|
|
@@ -56615,9 +56180,10 @@ function SlotContentRenderer({
|
|
|
56615
56180
|
const ambientScope = providers.useTraitScope();
|
|
56616
56181
|
const bindingTrait = content.sourceTrait ?? ambientScope?.trait;
|
|
56617
56182
|
const binding = providers.useEntityBindingSnapshot(bindingTrait);
|
|
56183
|
+
const i18n = hooks.useRenderI18n();
|
|
56618
56184
|
const liveProps = React93.useMemo(
|
|
56619
|
-
() => resolveRenderBindingMarkers(content.props, bindingTrait, binding.entity, binding.config, binding.state),
|
|
56620
|
-
[content.props, bindingTrait, binding.entity, binding.config, binding.state]
|
|
56185
|
+
() => resolveRenderBindingMarkers(content.props, bindingTrait, binding.entity, binding.config, binding.state, i18n),
|
|
56186
|
+
[content.props, bindingTrait, binding.entity, binding.config, binding.state, i18n]
|
|
56621
56187
|
);
|
|
56622
56188
|
const propsObj = typeof liveProps === "string" ? {} : liveProps;
|
|
56623
56189
|
const entityProp = propsObj.entity;
|
|
@@ -61164,6 +60730,10 @@ I18nContext.displayName = "I18nContext";
|
|
|
61164
60730
|
function useTranslate157() {
|
|
61165
60731
|
return React93.useContext(I18nContext);
|
|
61166
60732
|
}
|
|
60733
|
+
function useRenderI18n2() {
|
|
60734
|
+
const { locale, messages } = React93.useContext(I18nContext);
|
|
60735
|
+
return React93.useMemo(() => messages !== void 0 ? { locale, messages } : void 0, [locale, messages]);
|
|
60736
|
+
}
|
|
61167
60737
|
|
|
61168
60738
|
// hooks/useInlineTextEdit.ts
|
|
61169
60739
|
init_inlineText();
|
|
@@ -61731,11 +61301,11 @@ function marqueeHits(marquee, boxes) {
|
|
|
61731
61301
|
);
|
|
61732
61302
|
}
|
|
61733
61303
|
function axisPositionFrom(axis, constraint, offset) {
|
|
61734
|
-
const start =
|
|
61735
|
-
const end =
|
|
61304
|
+
const start = axis === "x" ? offset.left : offset.top;
|
|
61305
|
+
const end = axis === "x" ? offset.right : offset.bottom;
|
|
61736
61306
|
if (constraint === "center") return { constraint, start: (start - end) / 2, end: 0 };
|
|
61737
61307
|
if (constraint !== "scale") return { constraint, start, end };
|
|
61738
|
-
const size2 =
|
|
61308
|
+
const size2 = axis === "x" ? offset.parentWidth : offset.parentHeight;
|
|
61739
61309
|
return size2 > 0 ? { constraint, start: start / size2 * 100, end: end / size2 * 100 } : { constraint, start: 0, end: 0 };
|
|
61740
61310
|
}
|
|
61741
61311
|
var edgesX = (r2) => [r2.left, r2.left + r2.width / 2, r2.left + r2.width];
|
|
@@ -62316,9 +61886,9 @@ function getTabClientId() {
|
|
|
62316
61886
|
return tabClientId;
|
|
62317
61887
|
}
|
|
62318
61888
|
var log11 = logger.createLogger("almadar:ui:circuit-kernel");
|
|
62319
|
-
function postUnmounts(transport, traits2) {
|
|
61889
|
+
function postUnmounts(transport, traits2, locale) {
|
|
62320
61890
|
for (const [traitName, orbitalName] of traits2) {
|
|
62321
|
-
transport.send(orbitalName, { event: runtime.UNMOUNT_EVENT, targetTrait: traitName, clientId: getTabClientId() }).catch((err) => log11.warn("unmount-post-failed", { trait: traitName, orbital: orbitalName, error: String(err) }));
|
|
61891
|
+
transport.send(orbitalName, { event: runtime.UNMOUNT_EVENT, targetTrait: traitName, clientId: getTabClientId(), locale }).catch((err) => log11.warn("unmount-post-failed", { trait: traitName, orbital: orbitalName, error: String(err) }));
|
|
62322
61892
|
}
|
|
62323
61893
|
}
|
|
62324
61894
|
function restrictTraitIndex(full, activeNames) {
|
|
@@ -62339,6 +61909,10 @@ function useCircuitKernel(traitBindings, options) {
|
|
|
62339
61909
|
[activeTraitKey, fullTraitIndex]
|
|
62340
61910
|
);
|
|
62341
61911
|
const mountedRef = React93.useRef(/* @__PURE__ */ new Map());
|
|
61912
|
+
const { locale } = useTranslate157();
|
|
61913
|
+
const i18n = useRenderI18n2();
|
|
61914
|
+
const localeRef = React93.useRef(locale);
|
|
61915
|
+
localeRef.current = locale;
|
|
62342
61916
|
const transport = options.transport;
|
|
62343
61917
|
const topologyPending = options.awaitTopology === true;
|
|
62344
61918
|
React93.useEffect(() => {
|
|
@@ -62347,12 +61921,12 @@ function useCircuitKernel(traitBindings, options) {
|
|
|
62347
61921
|
const dropped = [...mounted].filter(([name]) => !traitIndex.byName.has(name));
|
|
62348
61922
|
mounted.clear();
|
|
62349
61923
|
for (const [name, entry] of traitIndex.byName) mounted.set(name, entry.orbitalName);
|
|
62350
|
-
postUnmounts(transport, dropped);
|
|
61924
|
+
postUnmounts(transport, dropped, localeRef.current);
|
|
62351
61925
|
}, [traitIndex, transport, topologyPending]);
|
|
62352
61926
|
React93.useEffect(() => {
|
|
62353
61927
|
if (transport === void 0) return;
|
|
62354
61928
|
const mounted = mountedRef.current;
|
|
62355
|
-
return () => postUnmounts(transport, [...mounted]);
|
|
61929
|
+
return () => postUnmounts(transport, [...mounted], localeRef.current);
|
|
62356
61930
|
}, [transport]);
|
|
62357
61931
|
const store = React93.useMemo(() => {
|
|
62358
61932
|
const traitDefs = Array.from(traitIndex.byName.values(), (entry) => entry.traitDef);
|
|
@@ -62363,42 +61937,43 @@ function useCircuitKernel(traitBindings, options) {
|
|
|
62363
61937
|
};
|
|
62364
61938
|
return runtime.createMemoryCircuitStore(traitDefs, config, options.observer);
|
|
62365
61939
|
}, [traitIndex, options.guardMode, options.strictBindings, options.contextExtensions, options.observer]);
|
|
62366
|
-
const
|
|
62367
|
-
|
|
62368
|
-
|
|
62369
|
-
|
|
62370
|
-
|
|
62371
|
-
|
|
62372
|
-
|
|
62373
|
-
|
|
62374
|
-
|
|
62375
|
-
|
|
62376
|
-
|
|
62377
|
-
|
|
62378
|
-
|
|
62379
|
-
|
|
62380
|
-
|
|
62381
|
-
|
|
62382
|
-
|
|
62383
|
-
|
|
62384
|
-
|
|
62385
|
-
|
|
62386
|
-
|
|
62387
|
-
|
|
62388
|
-
|
|
62389
|
-
|
|
62390
|
-
|
|
62391
|
-
|
|
62392
|
-
|
|
62393
|
-
|
|
62394
|
-
|
|
62395
|
-
|
|
62396
|
-
|
|
62397
|
-
);
|
|
61940
|
+
const localTransportOptions = {
|
|
61941
|
+
traitIndex,
|
|
61942
|
+
store,
|
|
61943
|
+
...options.callService !== void 0 ? { callService: options.callService } : {},
|
|
61944
|
+
...options.user !== void 0 ? { user: options.user } : {},
|
|
61945
|
+
...options.guardMode !== void 0 ? { guardMode: options.guardMode } : {},
|
|
61946
|
+
...options.strictBindings !== void 0 ? { strictBindings: options.strictBindings } : {},
|
|
61947
|
+
...options.contextExtensions !== void 0 ? { contextExtensions: options.contextExtensions } : {},
|
|
61948
|
+
...options.debug !== void 0 ? { debug: options.debug } : {},
|
|
61949
|
+
...options.logContext !== void 0 ? { logContext: options.logContext } : {}
|
|
61950
|
+
};
|
|
61951
|
+
const offlineTransport = React93.useMemo(
|
|
61952
|
+
() => options.transport !== void 0 || options.persistence === void 0 ? void 0 : runtime.createLocalStoreTransport({ ...localTransportOptions, persistence: options.persistence }),
|
|
61953
|
+
[
|
|
61954
|
+
options.transport,
|
|
61955
|
+
options.persistence,
|
|
61956
|
+
traitIndex,
|
|
61957
|
+
store,
|
|
61958
|
+
options.callService,
|
|
61959
|
+
options.user,
|
|
61960
|
+
options.guardMode,
|
|
61961
|
+
options.strictBindings,
|
|
61962
|
+
options.contextExtensions,
|
|
61963
|
+
options.debug,
|
|
61964
|
+
options.logContext
|
|
61965
|
+
]
|
|
61966
|
+
);
|
|
61967
|
+
const routedTransport = React93.useMemo(() => {
|
|
61968
|
+
if (options.browserStore === void 0) return void 0;
|
|
61969
|
+
const local = runtime.createLocalStoreTransport({ ...localTransportOptions, traitIndex: fullTraitIndex, persistence: options.browserStore, clientRelays: true });
|
|
61970
|
+
const remote = options.transport ?? offlineTransport;
|
|
61971
|
+
return runtime.createResidenceTransport({ local, ...remote !== void 0 ? { remote } : {}, traitIndex: fullTraitIndex });
|
|
62398
61972
|
}, [
|
|
61973
|
+
options.browserStore,
|
|
62399
61974
|
options.transport,
|
|
62400
|
-
|
|
62401
|
-
|
|
61975
|
+
offlineTransport,
|
|
61976
|
+
fullTraitIndex,
|
|
62402
61977
|
store,
|
|
62403
61978
|
options.callService,
|
|
62404
61979
|
options.user,
|
|
@@ -62408,7 +61983,7 @@ function useCircuitKernel(traitBindings, options) {
|
|
|
62408
61983
|
options.debug,
|
|
62409
61984
|
options.logContext
|
|
62410
61985
|
]);
|
|
62411
|
-
const baseTransport = options.transport ?? offlineTransport;
|
|
61986
|
+
const baseTransport = routedTransport ?? options.transport ?? offlineTransport;
|
|
62412
61987
|
const effectiveTransport = React93.useMemo(
|
|
62413
61988
|
() => baseTransport === void 0 ? void 0 : recordingTransport(baseTransport),
|
|
62414
61989
|
[baseTransport]
|
|
@@ -62433,6 +62008,8 @@ function useCircuitKernel(traitBindings, options) {
|
|
|
62433
62008
|
store,
|
|
62434
62009
|
...options.persistence !== void 0 ? { persistence: options.persistence } : {},
|
|
62435
62010
|
...options.user !== void 0 ? { user: options.user } : {},
|
|
62011
|
+
locale,
|
|
62012
|
+
...i18n !== void 0 ? { messages: { [i18n.locale]: i18n.messages } } : {},
|
|
62436
62013
|
...options.guardMode !== void 0 ? { guardMode: options.guardMode } : {},
|
|
62437
62014
|
...options.strictBindings !== void 0 ? { strictBindings: options.strictBindings } : {},
|
|
62438
62015
|
...options.contextExtensions !== void 0 ? { contextExtensions: options.contextExtensions } : {},
|
|
@@ -62448,6 +62025,8 @@ function useCircuitKernel(traitBindings, options) {
|
|
|
62448
62025
|
store,
|
|
62449
62026
|
options.persistence,
|
|
62450
62027
|
options.user,
|
|
62028
|
+
locale,
|
|
62029
|
+
i18n,
|
|
62451
62030
|
options.guardMode,
|
|
62452
62031
|
options.strictBindings,
|
|
62453
62032
|
options.contextExtensions,
|
|
@@ -62456,12 +62035,19 @@ function useCircuitKernel(traitBindings, options) {
|
|
|
62456
62035
|
topology,
|
|
62457
62036
|
effectiveTransport
|
|
62458
62037
|
]);
|
|
62459
|
-
const kernel = React93.useMemo(() =>
|
|
62460
|
-
|
|
62461
|
-
|
|
62462
|
-
|
|
62463
|
-
|
|
62464
|
-
|
|
62038
|
+
const kernel = React93.useMemo(() => {
|
|
62039
|
+
const stamp = (request) => ({
|
|
62040
|
+
...request,
|
|
62041
|
+
clientId: request.clientId ?? getTabClientId(),
|
|
62042
|
+
locale: request.locale ?? locale
|
|
62043
|
+
});
|
|
62044
|
+
return {
|
|
62045
|
+
store: rawKernel.store,
|
|
62046
|
+
dispatch: (request, hooks) => rawKernel.dispatch(stamp(request), hooks),
|
|
62047
|
+
dispatchMount: (seeds, hooks, base = {}) => rawKernel.dispatchMount(seeds, hooks, stamp(base)),
|
|
62048
|
+
dispatchProgress: (request) => rawKernel.dispatchProgress(stamp(request))
|
|
62049
|
+
};
|
|
62050
|
+
}, [rawKernel, locale]);
|
|
62465
62051
|
return { kernel, store, traitIndex, transport: effectiveTransport };
|
|
62466
62052
|
}
|
|
62467
62053
|
|
|
@@ -62945,11 +62531,12 @@ async function runCircuitEffects(params) {
|
|
|
62945
62531
|
// hooks/circuit/useCallsiteCapture.ts
|
|
62946
62532
|
var log14 = logger.createLogger("almadar:ui:circuit:callsite-capture");
|
|
62947
62533
|
function useCallsiteCapture(traitBindings, store, traitIndex, slotFlush, options) {
|
|
62948
|
-
return React93.useCallback(async function reRender(traitName, callsitePayload, entityByTrait, visited = /* @__PURE__ */ new Set(), serverComposed = /* @__PURE__ */ new Set(), keepComposed = false) {
|
|
62534
|
+
return React93.useCallback(async function reRender(traitName, callsitePayload, entityByTrait, visited = /* @__PURE__ */ new Set(), serverComposed = /* @__PURE__ */ new Set(), keepComposed = false, composedBy) {
|
|
62949
62535
|
const children = options.callsiteCaptureChildrenByTrait?.get(traitName);
|
|
62950
62536
|
if (!children || children.size === 0) return;
|
|
62951
62537
|
const bindingMap = new Map(traitBindings.map((b) => [b.trait.name, b]));
|
|
62952
62538
|
for (const childName of children) {
|
|
62539
|
+
if (composedBy !== void 0 && !composedBy.has(childName)) continue;
|
|
62953
62540
|
if (visited.has(childName)) continue;
|
|
62954
62541
|
visited.add(childName);
|
|
62955
62542
|
const childBinding = bindingMap.get(childName);
|
|
@@ -63003,7 +62590,7 @@ function useCallsiteCapture(traitBindings, store, traitIndex, slotFlush, options
|
|
|
63003
62590
|
{ event: lifecycleEvent, state: entry.result.previousState, entity: childBinding.linkedEntity }
|
|
63004
62591
|
);
|
|
63005
62592
|
}
|
|
63006
|
-
await reRender(childName, composedWith, entityByTrait, visited, serverComposed, keepComposed);
|
|
62593
|
+
await reRender(childName, composedWith, entityByTrait, visited, serverComposed, keepComposed, core.traitsEmbeddedByEffects(indexed.irTrait, entry.result.effects));
|
|
63007
62594
|
}
|
|
63008
62595
|
}, [traitBindings, store, traitIndex, slotFlush, options.callsiteCaptureChildrenByTrait, options.eventBus, options.navigate, options.navigateBack, options.user]);
|
|
63009
62596
|
}
|
|
@@ -63297,6 +62884,7 @@ function useAwaitingSkeletonSource(store, traitIndex, embeddedTraits) {
|
|
|
63297
62884
|
}
|
|
63298
62885
|
|
|
63299
62886
|
// hooks/useTraitStateMachine.ts
|
|
62887
|
+
var MOUNT_ERROR_SOURCE = "$mount";
|
|
63300
62888
|
var stateLog = logger.createLogger("almadar:ui:state-transitions");
|
|
63301
62889
|
function diffDroppedTraitNames(prev, next) {
|
|
63302
62890
|
const dropped = [];
|
|
@@ -63311,6 +62899,7 @@ function normalizeEventKey(eventKey) {
|
|
|
63311
62899
|
function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
63312
62900
|
const eventBus = useEventBus();
|
|
63313
62901
|
const { user: contextViewer } = providers.useUser();
|
|
62902
|
+
const { t } = useTranslate157();
|
|
63314
62903
|
const userContext = options.user ?? contextViewer ?? void 0;
|
|
63315
62904
|
const observer2 = React93.useMemo(() => createCircuitVerificationObserver(), []);
|
|
63316
62905
|
const { kernel, store, traitIndex, transport } = useCircuitKernel(traitBindings, {
|
|
@@ -63320,6 +62909,7 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
63320
62909
|
...options.carriesCircuitState !== void 0 ? { carriesCircuitState: options.carriesCircuitState } : {},
|
|
63321
62910
|
...options.awaitTopology !== void 0 ? { awaitTopology: options.awaitTopology } : {},
|
|
63322
62911
|
...options.persistence !== void 0 ? { persistence: options.persistence } : {},
|
|
62912
|
+
...options.browserStore !== void 0 ? { browserStore: options.browserStore } : {},
|
|
63323
62913
|
...options.callService !== void 0 ? { callService: options.callService } : {},
|
|
63324
62914
|
...userContext !== void 0 ? { user: userContext } : {},
|
|
63325
62915
|
...options.debug !== void 0 ? { debug: options.debug } : {},
|
|
@@ -63358,11 +62948,11 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
63358
62948
|
name: trait.name,
|
|
63359
62949
|
currentState: state?.currentState ?? trait.states[0]?.name ?? "unknown",
|
|
63360
62950
|
states: trait.states.map((s) => s.name),
|
|
63361
|
-
transitions: trait.transitions.flatMap((
|
|
63362
|
-
const froms = Array.isArray(
|
|
63363
|
-
return froms.map((f3) => ({ from: f3, to:
|
|
62951
|
+
transitions: trait.transitions.flatMap((t2) => {
|
|
62952
|
+
const froms = Array.isArray(t2.from) ? t2.from : [t2.from];
|
|
62953
|
+
return froms.map((f3) => ({ from: f3, to: t2.to, event: t2.event, guard: t2.guard ? String(t2.guard) : void 0 }));
|
|
63364
62954
|
}),
|
|
63365
|
-
guards: trait.transitions.filter((
|
|
62955
|
+
guards: trait.transitions.filter((t2) => t2.guard).map((t2) => ({ name: String(t2.guard) })),
|
|
63366
62956
|
transitionCount: 0
|
|
63367
62957
|
};
|
|
63368
62958
|
registerTrait(info);
|
|
@@ -63400,7 +62990,9 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
63400
62990
|
}
|
|
63401
62991
|
const repainted = new Set(repaints.map((e) => e.traitName));
|
|
63402
62992
|
const serverComposed = new Set([...store.callsitePayloads].filter(([child, composed]) => composedBefore.get(child) !== composed).map(([child]) => child));
|
|
63403
|
-
|
|
62993
|
+
const irTrait = traitIndex.byName.get(traitName)?.irTrait;
|
|
62994
|
+
const composedBy = irTrait !== void 0 ? core.traitsEmbeddedByEvent(irTrait, eventKey) : void 0;
|
|
62995
|
+
await reRenderCallsiteCaptureChildren(traitName, payload ?? {}, entityByTrait, repainted, serverComposed, false, composedBy);
|
|
63404
62996
|
}
|
|
63405
62997
|
options.onEventProcessed?.(eventKey, payload);
|
|
63406
62998
|
}, [traitIndex, store, reRenderCallsiteCaptureChildren, options.onEventProcessed]);
|
|
@@ -63469,8 +63061,8 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
63469
63061
|
React93.useEffect(() => {
|
|
63470
63062
|
if (!transport?.subscribe) return;
|
|
63471
63063
|
return transport.subscribe((emitted, target) => {
|
|
63472
|
-
for (const
|
|
63473
|
-
void (target === "origin" ? progressAndSettle(
|
|
63064
|
+
for (const t2 of runtime.collectListenerTargets(traitIndex, emitted.source, emitted.event, emitted.payload)) {
|
|
63065
|
+
void (target === "origin" ? progressAndSettle(t2.listenerTrait, t2.triggers, t2.payload) : dispatchAndSettle(t2.listenerTrait, t2.triggers, t2.payload));
|
|
63474
63066
|
}
|
|
63475
63067
|
}, { clientId: getTabClientId() });
|
|
63476
63068
|
}, [transport, traitIndex, progressAndSettle, dispatchAndSettle]);
|
|
@@ -63542,26 +63134,75 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
63542
63134
|
for (const traitName of left) mount.initialized.delete(traitName);
|
|
63543
63135
|
store.mount.unmounted(left);
|
|
63544
63136
|
const entering = [];
|
|
63137
|
+
const embeddedChildren = new Set([...options.callsiteCaptureChildrenByTrait?.values() ?? []].flatMap((c) => [...c]));
|
|
63545
63138
|
for (const binding of traitBindings) {
|
|
63546
63139
|
const traitName = binding.trait.name;
|
|
63547
63140
|
if (mount.initialized.has(traitName)) continue;
|
|
63548
63141
|
mount.initialized.add(traitName);
|
|
63142
|
+
const indexed = traitIndex.byName.get(traitName);
|
|
63143
|
+
if (embeddedChildren.has(traitName) && indexed !== void 0 && (core.traitReferencesCallsitePayload(indexed.irTrait) || core.configReferencesCallsitePayload(indexed.config)) && store.manager.repaintLifecycleEvent(traitName) !== void 0 && !store.callsitePayloads.has(traitName)) {
|
|
63144
|
+
continue;
|
|
63145
|
+
}
|
|
63549
63146
|
const lifecycleEvent = runtime.LIFECYCLE_EVENTS.find((evt) => store.manager.canHandleEvent(traitName, evt));
|
|
63550
63147
|
if (lifecycleEvent !== void 0) entering.push({ trait: traitName, event: lifecycleEvent });
|
|
63551
63148
|
}
|
|
63552
63149
|
store.mount.mounting(entering.map((e) => e.trait));
|
|
63553
63150
|
if (entering.length > 0) {
|
|
63151
|
+
uiSlots.clearBySource("main", MOUNT_ERROR_SOURCE);
|
|
63554
63152
|
void mountAndSettle(entering, { ...options.initPayload ?? {} }).catch((err) => {
|
|
63555
|
-
|
|
63153
|
+
const traits2 = entering.map((e) => e.trait);
|
|
63154
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
63155
|
+
const failed = err instanceof runtime.TraitMountError ? err.trait : traits2.join(", ");
|
|
63156
|
+
const cause = err instanceof runtime.TraitMountError ? err.original : err;
|
|
63157
|
+
stateLog.warn("mount:failed", { traits: traits2, failed, error: message, stack: cause instanceof Error ? cause.stack : void 0 });
|
|
63158
|
+
uiSlots.render({
|
|
63159
|
+
target: "main",
|
|
63160
|
+
pattern: "error-state",
|
|
63161
|
+
props: { title: t("error.traitMountFailed", { trait: failed }), message, "data-testid": core.TRAIT_MOUNT_ERROR_TESTID },
|
|
63162
|
+
sourceTrait: MOUNT_ERROR_SOURCE
|
|
63163
|
+
});
|
|
63556
63164
|
});
|
|
63557
63165
|
}
|
|
63558
63166
|
mountedRef.current = mount;
|
|
63559
|
-
}, [traitBindings, store, mountAndSettle, mountKey]);
|
|
63167
|
+
}, [traitBindings, store, mountAndSettle, mountKey, uiSlots, traitIndex, options.callsiteCaptureChildrenByTrait, t]);
|
|
63560
63168
|
React93.useSyncExternalStore(store.subscribe, store.getVersion, store.getVersion);
|
|
63561
63169
|
const traitStates = React93.useMemo(() => store.manager.getAllStates(), [store, store.getVersion()]);
|
|
63562
63170
|
return { traitStates, sendEvent, getTraitState, canHandleEvent, entityBindingSource, awaitingSkeletonSource };
|
|
63563
63171
|
}
|
|
63564
63172
|
|
|
63173
|
+
// runtime/OrbPreview.tsx
|
|
63174
|
+
init_LoadingState();
|
|
63175
|
+
init_ErrorState();
|
|
63176
|
+
function useBrowserStore(appName, orbitals, locale) {
|
|
63177
|
+
const entities = React93.useMemo(() => orbitals.flatMap(core.orbitalInlineEntities).filter(core.storesRowsInBrowser), [orbitals]);
|
|
63178
|
+
const [state, setState] = React93.useState(() => entities.length === 0 ? { status: "none" } : { status: "opening" });
|
|
63179
|
+
React93.useEffect(() => {
|
|
63180
|
+
if (entities.length === 0) {
|
|
63181
|
+
setState({ status: "none" });
|
|
63182
|
+
return;
|
|
63183
|
+
}
|
|
63184
|
+
let cancelled = false;
|
|
63185
|
+
let opened;
|
|
63186
|
+
setState({ status: "opening" });
|
|
63187
|
+
const open = async () => {
|
|
63188
|
+
try {
|
|
63189
|
+
const store = await runtime.openBrowserStore(runtime.browserStoreName(appName, locale), orbitals, void 0, locale);
|
|
63190
|
+
if (store === null) return;
|
|
63191
|
+
opened = store;
|
|
63192
|
+
if (!cancelled) setState({ status: "ready", store });
|
|
63193
|
+
} catch (err) {
|
|
63194
|
+
if (!cancelled) setState({ status: "failed", error: err instanceof Error ? err : new Error(String(err)) });
|
|
63195
|
+
}
|
|
63196
|
+
};
|
|
63197
|
+
void open();
|
|
63198
|
+
return () => {
|
|
63199
|
+
cancelled = true;
|
|
63200
|
+
opened?.close();
|
|
63201
|
+
};
|
|
63202
|
+
}, [appName, locale, entities, orbitals]);
|
|
63203
|
+
return state;
|
|
63204
|
+
}
|
|
63205
|
+
|
|
63565
63206
|
// runtime/fitContent.ts
|
|
63566
63207
|
var IDENTITY2 = { scale: 1, x: 0, y: 0 };
|
|
63567
63208
|
function fitContentTransform(box, content) {
|
|
@@ -63620,7 +63261,7 @@ function appPathFromHref(href, hostHrefBase) {
|
|
|
63620
63261
|
if (!href.startsWith(`${root}/`)) return null;
|
|
63621
63262
|
return href.slice(root.length);
|
|
63622
63263
|
}
|
|
63623
|
-
function TraitInitializer({ traits: traits2, routeParams, mountKey, orbitals, onNavigate, onNavigateBack, onLocalFallback, localFallbackTimeoutMs, persistence, traitConfigsByName, embeddedTraits, callsiteCaptureChildrenByTrait, hasBridge, children }) {
|
|
63264
|
+
function TraitInitializer({ traits: traits2, routeParams, mountKey, orbitals, onNavigate, onNavigateBack, onLocalFallback, localFallbackTimeoutMs, persistence, browserStore, traitConfigsByName, embeddedTraits, callsiteCaptureChildrenByTrait, hasBridge, children }) {
|
|
63624
63265
|
const bridge = providers.useServerBridge();
|
|
63625
63266
|
const uiSlots = context.useUISlots();
|
|
63626
63267
|
React93.useEffect(() => {
|
|
@@ -63639,7 +63280,8 @@ function TraitInitializer({ traits: traits2, routeParams, mountKey, orbitals, on
|
|
|
63639
63280
|
...callsiteCaptureChildrenByTrait !== void 0 ? { callsiteCaptureChildrenByTrait } : {},
|
|
63640
63281
|
initPayload: routeParams,
|
|
63641
63282
|
...mountKey !== void 0 ? { mountKey } : {},
|
|
63642
|
-
...hasBridge ? { transport: bridge.transport, carriesCircuitState: bridge.carriesCircuitState, awaitTopology: !bridge.topologyKnown } : { persistence }
|
|
63283
|
+
...hasBridge ? { transport: bridge.transport, carriesCircuitState: bridge.carriesCircuitState, awaitTopology: !bridge.topologyKnown } : { persistence },
|
|
63284
|
+
...browserStore !== void 0 ? { browserStore } : {}
|
|
63643
63285
|
});
|
|
63644
63286
|
return /* @__PURE__ */ jsxRuntime.jsx(providers.EntityBindingContext.Provider, { value: entityBindingSource, children: /* @__PURE__ */ jsxRuntime.jsx(providers.AwaitingSkeletonContext.Provider, { value: awaitingSkeletonSource, children }) });
|
|
63645
63287
|
}
|
|
@@ -63825,6 +63467,8 @@ function SchemaRunner({ schema, serverUrl, transport, getAccessToken, mockData,
|
|
|
63825
63467
|
return set;
|
|
63826
63468
|
}, [schema, pageName]);
|
|
63827
63469
|
const activeOrbitalTheme = React93.useMemo(() => resolvePreviewTheme(schema, pageName), [schema, pageName]);
|
|
63470
|
+
const { locale } = hooks.useTranslate();
|
|
63471
|
+
const browserStore = useBrowserStore(schema.name ?? "app", schema.orbitals, locale);
|
|
63828
63472
|
const inner = /* @__PURE__ */ jsxRuntime.jsx(providers.VerificationProvider, { enabled: true, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
63829
63473
|
providers.EntitySchemaProvider,
|
|
63830
63474
|
{
|
|
@@ -63847,11 +63491,16 @@ function SchemaRunner({ schema, serverUrl, transport, getAccessToken, mockData,
|
|
|
63847
63491
|
onLocalFallback,
|
|
63848
63492
|
localFallbackTimeoutMs,
|
|
63849
63493
|
persistence,
|
|
63494
|
+
...browserStore.status === "ready" ? { browserStore: browserStore.store } : {},
|
|
63850
63495
|
children: /* @__PURE__ */ jsxRuntime.jsx(providers.OrbitalThemeProvider, { theme: activeOrbitalTheme, override: themeOverride, children: /* @__PURE__ */ jsxRuntime.jsx(Box, { className: "h-full min-h-full overflow-auto p-4", children: /* @__PURE__ */ jsxRuntime.jsx(UISlotRenderer, { includeHud: true, hudMode: "inline", includeFloating: true, pageKey: pageName }) }) })
|
|
63851
63496
|
}
|
|
63852
63497
|
)
|
|
63853
63498
|
}
|
|
63854
63499
|
) });
|
|
63500
|
+
if (browserStore.status === "opening") return /* @__PURE__ */ jsxRuntime.jsx(LoadingState, {});
|
|
63501
|
+
if (browserStore.status === "failed") {
|
|
63502
|
+
return /* @__PURE__ */ jsxRuntime.jsx(ErrorState, { "data-testid": "browser-store-error", message: browserStore.error.message });
|
|
63503
|
+
}
|
|
63855
63504
|
if (serverUrl || transport) {
|
|
63856
63505
|
return /* @__PURE__ */ jsxRuntime.jsx(providers.ServerBridgeProvider, { schema, serverUrl, transport, getAccessToken, children: inner });
|
|
63857
63506
|
}
|
|
@@ -63884,7 +63533,10 @@ function OrbPreview({
|
|
|
63884
63533
|
onPageChange,
|
|
63885
63534
|
user = null,
|
|
63886
63535
|
localFallbackTimeoutMs,
|
|
63887
|
-
themeOverride
|
|
63536
|
+
themeOverride,
|
|
63537
|
+
lazyLoader,
|
|
63538
|
+
schemaPath,
|
|
63539
|
+
onUnmatchedNavigate
|
|
63888
63540
|
}) {
|
|
63889
63541
|
if (serverUrl && transport) {
|
|
63890
63542
|
throw new Error("OrbPreview accepts serverUrl OR transport, not both");
|
|
@@ -63933,12 +63585,44 @@ function OrbPreview({
|
|
|
63933
63585
|
return [];
|
|
63934
63586
|
}
|
|
63935
63587
|
}, [parsedSchema]);
|
|
63588
|
+
const lazyPages = React93.useMemo(() => parsedSchema?.lazyPages ?? [], [parsedSchema]);
|
|
63589
|
+
const matchRoute = React93.useCallback((path) => {
|
|
63590
|
+
const candidates = [
|
|
63591
|
+
...pages.map((entry) => ({ kind: "page", entry, path: entry.page.path })),
|
|
63592
|
+
...lazyPages.map((page) => ({ kind: "lazy", page, path: page.path }))
|
|
63593
|
+
];
|
|
63594
|
+
const hit = providers.matchPathAmong(candidates, path, (c) => c.path);
|
|
63595
|
+
if (!hit) return null;
|
|
63596
|
+
return hit.candidate.kind === "page" ? { kind: "page", entry: hit.candidate.entry, params: hit.params } : { kind: "lazy", page: hit.candidate.page, params: hit.params };
|
|
63597
|
+
}, [pages, lazyPages]);
|
|
63598
|
+
const initialRoute = React93.useMemo(
|
|
63599
|
+
() => initialPagePath ? matchRoute(initialPagePath) : null,
|
|
63600
|
+
[matchRoute, initialPagePath]
|
|
63601
|
+
);
|
|
63936
63602
|
const initialPageMatch = React93.useMemo(() => {
|
|
63937
|
-
if (!
|
|
63938
|
-
|
|
63939
|
-
|
|
63940
|
-
|
|
63941
|
-
|
|
63603
|
+
if (initialRoute?.kind !== "page" || !initialRoute.entry.page.name) return void 0;
|
|
63604
|
+
return { name: initialRoute.entry.page.name, params: initialRoute.params };
|
|
63605
|
+
}, [initialRoute]);
|
|
63606
|
+
const [lazyRoute, setLazyRoute] = React93.useState(
|
|
63607
|
+
initialRoute?.kind === "lazy" && initialPagePath ? { page: initialRoute.page, path: initialPagePath } : null
|
|
63608
|
+
);
|
|
63609
|
+
const [lazyLoad, setLazyLoad] = React93.useState({ status: "loading" });
|
|
63610
|
+
React93.useEffect(() => {
|
|
63611
|
+
if (!lazyRoute) return;
|
|
63612
|
+
if (!lazyLoader) {
|
|
63613
|
+
setLazyLoad({ status: "error", error: `No loader for lazy page ${lazyRoute.page.path} (${lazyRoute.page.orbRef})` });
|
|
63614
|
+
return;
|
|
63615
|
+
}
|
|
63616
|
+
let cancelled = false;
|
|
63617
|
+
setLazyLoad({ status: "loading" });
|
|
63618
|
+
void runtime.loadLazyPage(lazyLoader, lazyRoute.page, schemaPath).then((result) => {
|
|
63619
|
+
if (cancelled) return;
|
|
63620
|
+
setLazyLoad(result.success ? { status: "ready", schema: result.data } : { status: "error", error: result.error });
|
|
63621
|
+
});
|
|
63622
|
+
return () => {
|
|
63623
|
+
cancelled = true;
|
|
63624
|
+
};
|
|
63625
|
+
}, [lazyRoute?.page, lazyLoader, schemaPath]);
|
|
63942
63626
|
const initialPageName = initialPageMatch?.name;
|
|
63943
63627
|
const [currentPage, setCurrentPage] = React93.useState(initialPageName);
|
|
63944
63628
|
const [routeParams, setRouteParams] = React93.useState(initialPageMatch?.params ?? {});
|
|
@@ -63948,8 +63632,9 @@ function OrbPreview({
|
|
|
63948
63632
|
prevInitialPagePathRef.current = initialPagePath;
|
|
63949
63633
|
setCurrentPage(initialPageName);
|
|
63950
63634
|
setRouteParams(initialPageMatch?.params ?? {});
|
|
63635
|
+
setLazyRoute(initialRoute?.kind === "lazy" && initialPagePath ? { page: initialRoute.page, path: initialPagePath } : null);
|
|
63951
63636
|
}
|
|
63952
|
-
}, [initialPagePath, initialPageName, initialPageMatch]);
|
|
63637
|
+
}, [initialPagePath, initialPageName, initialPageMatch, initialRoute]);
|
|
63953
63638
|
const currentPagePath = React93.useMemo(() => {
|
|
63954
63639
|
const activePageName = currentPage ?? pages[0]?.page.name;
|
|
63955
63640
|
const resolved = pages.find((p) => p.page.name === activePageName)?.page.path;
|
|
@@ -63964,10 +63649,30 @@ function OrbPreview({
|
|
|
63964
63649
|
return pattern.replace(/:([A-Za-z0-9_]+)/g, (whole, key) => routeParams[key] ?? whole);
|
|
63965
63650
|
}, [currentPagePath, routeParams]);
|
|
63966
63651
|
const navStackRef = React93.useRef(null);
|
|
63652
|
+
const announcePage = React93.useCallback((path) => {
|
|
63653
|
+
if (onPageChange) {
|
|
63654
|
+
onPageChange(path);
|
|
63655
|
+
} else if (!isolated && typeof window !== "undefined") {
|
|
63656
|
+
const url = new URL(window.location.href);
|
|
63657
|
+
url.searchParams.set("page", path);
|
|
63658
|
+
window.history.pushState({}, "", url.toString());
|
|
63659
|
+
window.dispatchEvent(new PopStateEvent("popstate"));
|
|
63660
|
+
}
|
|
63661
|
+
}, [isolated, onPageChange]);
|
|
63967
63662
|
const handleNavigate = React93.useCallback((path, navState) => {
|
|
63968
|
-
const
|
|
63969
|
-
|
|
63970
|
-
|
|
63663
|
+
const route = matchRoute(path);
|
|
63664
|
+
if (!route) {
|
|
63665
|
+
onUnmatchedNavigate?.(path);
|
|
63666
|
+
return;
|
|
63667
|
+
}
|
|
63668
|
+
if (route.kind === "lazy") {
|
|
63669
|
+
setLazyRoute({ page: route.page, path });
|
|
63670
|
+
announcePage(path);
|
|
63671
|
+
return;
|
|
63672
|
+
}
|
|
63673
|
+
setLazyRoute(null);
|
|
63674
|
+
const match = route.entry;
|
|
63675
|
+
const params = { ...route.params, ...navState ?? {} };
|
|
63971
63676
|
navLog.debug("handleNavigate", () => ({
|
|
63972
63677
|
path,
|
|
63973
63678
|
matched: match?.page.name ?? null,
|
|
@@ -63975,19 +63680,12 @@ function OrbPreview({
|
|
|
63975
63680
|
navState: navState ? JSON.stringify(navState) : void 0,
|
|
63976
63681
|
availablePaths: pages.map((p) => p.page.path)
|
|
63977
63682
|
}));
|
|
63978
|
-
if (match
|
|
63683
|
+
if (match.page.name) {
|
|
63979
63684
|
setRouteParams(params);
|
|
63980
63685
|
setCurrentPage(match.page.name);
|
|
63981
|
-
|
|
63982
|
-
onPageChange(path);
|
|
63983
|
-
} else if (!isolated && typeof window !== "undefined") {
|
|
63984
|
-
const url = new URL(window.location.href);
|
|
63985
|
-
url.searchParams.set("page", path);
|
|
63986
|
-
window.history.pushState({}, "", url.toString());
|
|
63987
|
-
window.dispatchEvent(new PopStateEvent("popstate"));
|
|
63988
|
-
}
|
|
63686
|
+
announcePage(path);
|
|
63989
63687
|
}
|
|
63990
|
-
}, [pages,
|
|
63688
|
+
}, [pages, matchRoute, announcePage, onUnmatchedNavigate]);
|
|
63991
63689
|
const handleNavigateEffect = React93.useCallback(
|
|
63992
63690
|
(path, params, crumb) => {
|
|
63993
63691
|
navStackRef.current?.beginNavigate(path, crumb);
|
|
@@ -64052,6 +63750,33 @@ function OrbPreview({
|
|
|
64052
63750
|
navLog.info("interceptor:installed", { pageCount: pages.length, paths: pages.map((p) => p.page.path) });
|
|
64053
63751
|
return () => el.removeEventListener("click", handler, true);
|
|
64054
63752
|
}, [pages, handleNavigate, isolated, hostHrefBase]);
|
|
63753
|
+
if (lazyRoute) {
|
|
63754
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Box, { ref: containerRef, className: `overflow-auto ${className ?? ""}`, style: { height }, children: [
|
|
63755
|
+
lazyLoad.status === "loading" && /* @__PURE__ */ jsxRuntime.jsx(LoadingState, {}),
|
|
63756
|
+
lazyLoad.status === "error" && /* @__PURE__ */ jsxRuntime.jsx(ErrorState, { "data-testid": "lazy-page-error", message: lazyLoad.error }),
|
|
63757
|
+
lazyLoad.status === "ready" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
63758
|
+
OrbPreview,
|
|
63759
|
+
{
|
|
63760
|
+
schema: lazyLoad.schema,
|
|
63761
|
+
autoMock,
|
|
63762
|
+
height: "100%",
|
|
63763
|
+
className: "border-0",
|
|
63764
|
+
serverUrl,
|
|
63765
|
+
transport,
|
|
63766
|
+
getAccessToken,
|
|
63767
|
+
initialPagePath: lazyRoute.path,
|
|
63768
|
+
user,
|
|
63769
|
+
isolated,
|
|
63770
|
+
fit,
|
|
63771
|
+
onPageChange: announcePage,
|
|
63772
|
+
themeOverride,
|
|
63773
|
+
lazyLoader,
|
|
63774
|
+
onUnmatchedNavigate: handleNavigate
|
|
63775
|
+
},
|
|
63776
|
+
lazyRoute.page.orbRef
|
|
63777
|
+
)
|
|
63778
|
+
] });
|
|
63779
|
+
}
|
|
64055
63780
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
64056
63781
|
Box,
|
|
64057
63782
|
{
|
|
@@ -64123,7 +63848,9 @@ function BrowserPlayground({
|
|
|
64123
63848
|
paused,
|
|
64124
63849
|
fit,
|
|
64125
63850
|
onPageChange,
|
|
64126
|
-
viewer
|
|
63851
|
+
viewer,
|
|
63852
|
+
messages,
|
|
63853
|
+
locale
|
|
64127
63854
|
}) {
|
|
64128
63855
|
const [runtime$1] = React93.useState(
|
|
64129
63856
|
() => new OrbitalServerRuntime.OrbitalServerRuntime({ mode, debug: false, ...viewer !== void 0 ? { defaultUser: viewer } : {} })
|
|
@@ -64139,10 +63866,10 @@ function BrowserPlayground({
|
|
|
64139
63866
|
const registrationReady = React93.useMemo(() => {
|
|
64140
63867
|
const orbitalNames = schema.orbitals.map((o) => o.name);
|
|
64141
63868
|
playgroundLog.debug("register:start", { schema: schema.name, orbitalNames });
|
|
64142
|
-
return runtime$1.register(schema).then(() => {
|
|
63869
|
+
return runtime$1.register(schema, messages !== void 0 ? { messages } : {}).then(() => {
|
|
64143
63870
|
playgroundLog.debug("register:done", { schema: schema.name, orbitalNames });
|
|
64144
63871
|
});
|
|
64145
|
-
}, [runtime$1, schema]);
|
|
63872
|
+
}, [runtime$1, schema, messages]);
|
|
64146
63873
|
const teardownTimerRef = React93.useRef(null);
|
|
64147
63874
|
React93.useEffect(() => {
|
|
64148
63875
|
if (teardownTimerRef.current !== null) {
|
|
@@ -64172,7 +63899,13 @@ function BrowserPlayground({
|
|
|
64172
63899
|
),
|
|
64173
63900
|
[runtime$1, registrationReady]
|
|
64174
63901
|
);
|
|
64175
|
-
|
|
63902
|
+
const viewerLocale = locale ?? schema.locales?.[0];
|
|
63903
|
+
const i18n$1 = React93.useMemo(() => {
|
|
63904
|
+
if (viewerLocale === void 0 || messages === void 0) return void 0;
|
|
63905
|
+
const catalog = messages[viewerLocale] ?? {};
|
|
63906
|
+
return { locale: viewerLocale, direction: i18n.localeDirection(viewerLocale), t: hooks.createTranslate(catalog), messages: catalog };
|
|
63907
|
+
}, [viewerLocale, messages]);
|
|
63908
|
+
const preview = /* @__PURE__ */ jsxRuntime.jsx(
|
|
64176
63909
|
OrbPreview,
|
|
64177
63910
|
{
|
|
64178
63911
|
schema,
|
|
@@ -64186,6 +63919,7 @@ function BrowserPlayground({
|
|
|
64186
63919
|
isolated: true
|
|
64187
63920
|
}
|
|
64188
63921
|
);
|
|
63922
|
+
return i18n$1 !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx(hooks.I18nProvider, { value: i18n$1, children: preview }) : preview;
|
|
64189
63923
|
}
|
|
64190
63924
|
|
|
64191
63925
|
// components/avl/molecules/OrbPreviewNode.tsx
|
|
@@ -67460,7 +67194,11 @@ function AppearanceSection({ patternConfig, themeManifest, onPropChange, onToken
|
|
|
67460
67194
|
{
|
|
67461
67195
|
checked: position.absolute,
|
|
67462
67196
|
label: t("orbInspector.absolute"),
|
|
67463
|
-
|
|
67197
|
+
disabled: !offsetInParent && !position.absolute,
|
|
67198
|
+
onChange: (on) => {
|
|
67199
|
+
if (!on) write({ ...position, absolute: false });
|
|
67200
|
+
else if (offsetInParent) write({ absolute: true, x: axisPositionFrom("x", "start", offsetInParent), y: axisPositionFrom("y", "start", offsetInParent) });
|
|
67201
|
+
}
|
|
67464
67202
|
}
|
|
67465
67203
|
),
|
|
67466
67204
|
position.absolute && ["x", "y"].map((axis) => /* @__PURE__ */ jsxRuntime.jsxs(Box, { className: "flex items-center gap-2", "data-testid": `inspector-constraint-${axis}`, children: [
|
|
@@ -67471,9 +67209,10 @@ function AppearanceSection({ patternConfig, themeManifest, onPropChange, onToken
|
|
|
67471
67209
|
value: position[axis].constraint,
|
|
67472
67210
|
"aria-label": t(axis === "x" ? "orbInspector.constraintHorizontal" : "orbInspector.constraintVertical"),
|
|
67473
67211
|
options: CONSTRAINTS.map((c) => ({ value: c, label: t(CONSTRAINT_LABELS[axis][c]) })),
|
|
67212
|
+
disabled: !offsetInParent,
|
|
67474
67213
|
onValueChange: (v) => {
|
|
67475
67214
|
const constraint = CONSTRAINTS.find((c) => c === v);
|
|
67476
|
-
if (constraint) write({ ...position, [axis]: axisPositionFrom(axis, constraint, offsetInParent) });
|
|
67215
|
+
if (constraint && offsetInParent) write({ ...position, [axis]: axisPositionFrom(axis, constraint, offsetInParent) });
|
|
67477
67216
|
},
|
|
67478
67217
|
className: "flex-1 text-xs h-6"
|
|
67479
67218
|
}
|