@almadar/ui 6.10.0 → 6.11.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/{EntityBindingContext-Y4zXyNJZ.d.cts → EntityBindingContext-D5lRu6p1.d.cts} +11 -0
- package/dist/{EntityBindingContext-Y4zXyNJZ.d.ts → EntityBindingContext-D5lRu6p1.d.ts} +11 -0
- package/dist/{GameAudioProvider-Dk_Y3LN3.d.cts → GameAudioProvider-D8GynTNq.d.cts} +1 -1
- package/dist/{GameAudioProvider-Ctceau1s.d.ts → GameAudioProvider-Dozqx4sL.d.ts} +1 -1
- package/dist/avl/index.cjs +250 -106
- package/dist/avl/index.js +209 -65
- package/dist/{avl-schema-parser-DncJLEn9.d.ts → avl-schema-parser-DX-aVCCm.d.ts} +1 -1
- package/dist/{avl-schema-parser-FQ1474v8.d.cts → avl-schema-parser-PVu8rgsy.d.cts} +1 -1
- package/dist/{cn-C7fvp9gH.d.ts → cn-Do5gsPBm.d.cts} +2 -100
- package/dist/{cn-DnLYahyL.d.cts → cn-Do5gsPBm.d.ts} +2 -100
- package/dist/components/index.cjs +103 -68
- package/dist/components/index.d.cts +44 -20
- package/dist/components/index.d.ts +44 -20
- package/dist/components/index.js +64 -29
- package/dist/lib/drawable/three/index.d.cts +3 -4
- package/dist/lib/drawable/three/index.d.ts +3 -4
- package/dist/lib/index.cjs +7 -23
- package/dist/lib/index.d.cts +6 -28
- package/dist/lib/index.d.ts +6 -28
- package/dist/lib/index.js +5 -23
- package/dist/{paintDispatch-B5ObLnUv.d.ts → paintDispatch-CK5uwYEq.d.cts} +50 -3
- package/dist/{paintDispatch-D3R8NNmV.d.cts → paintDispatch-CK5uwYEq.d.ts} +50 -3
- package/dist/providers/index.cjs +129 -78
- package/dist/providers/index.d.cts +5 -3
- package/dist/providers/index.d.ts +5 -3
- package/dist/providers/index.js +90 -39
- package/dist/runtime/index.cjs +249 -105
- package/dist/runtime/index.d.cts +27 -5
- package/dist/runtime/index.d.ts +27 -5
- package/dist/runtime/index.js +208 -64
- package/dist/verificationRegistry-BLsjb1oU.d.cts +110 -0
- package/dist/verificationRegistry-D8bHWD8Q.d.ts +110 -0
- package/package.json +7 -7
- package/dist/types-B3nHgnMG.d.cts +0 -51
- package/dist/types-B3nHgnMG.d.ts +0 -51
|
@@ -19,6 +19,7 @@ var ELK = require('elkjs/lib/elk.bundled.js');
|
|
|
19
19
|
var SyntaxHighlighter = require('react-syntax-highlighter/dist/esm/prism-light.js');
|
|
20
20
|
var dark = require('react-syntax-highlighter/dist/esm/styles/prism/vsc-dark-plus.js');
|
|
21
21
|
var syntax = require('@almadar/syntax');
|
|
22
|
+
var i18n = require('@almadar/core/i18n');
|
|
22
23
|
var langJson = require('react-syntax-highlighter/dist/esm/languages/prism/json.js');
|
|
23
24
|
var langJavascript = require('react-syntax-highlighter/dist/esm/languages/prism/javascript.js');
|
|
24
25
|
var langTypescript = require('react-syntax-highlighter/dist/esm/languages/prism/typescript.js');
|
|
@@ -14114,6 +14115,15 @@ function buildLineProps(errorLines, extraClassName) {
|
|
|
14114
14115
|
};
|
|
14115
14116
|
};
|
|
14116
14117
|
}
|
|
14118
|
+
function translateProgram(source, language, lang) {
|
|
14119
|
+
if (lang === "en") return source;
|
|
14120
|
+
if (language === "lolo") return syntax.translateLolo(source, lang);
|
|
14121
|
+
if (language === "orb") {
|
|
14122
|
+
const translated = syntax.translateOrb(source, lang);
|
|
14123
|
+
return typeof translated === "string" ? translated : source;
|
|
14124
|
+
}
|
|
14125
|
+
return source;
|
|
14126
|
+
}
|
|
14117
14127
|
var dynamicallyLoaded, codeLanguageLoader, orbStyleOverrides, orbStyle, loloStyleOverrides, loloStyle, 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; exports.CodeBlock = void 0;
|
|
14118
14128
|
var init_CodeBlock = __esm({
|
|
14119
14129
|
"components/core/molecules/markdown/CodeBlock.tsx"() {
|
|
@@ -14379,6 +14389,7 @@ var init_CodeBlock = __esm({
|
|
|
14379
14389
|
showLineNumbers = false,
|
|
14380
14390
|
wordWrap = false,
|
|
14381
14391
|
files,
|
|
14392
|
+
naturalLanguages,
|
|
14382
14393
|
actions,
|
|
14383
14394
|
isLoading = false,
|
|
14384
14395
|
error,
|
|
@@ -14425,7 +14436,48 @@ var init_CodeBlock = __esm({
|
|
|
14425
14436
|
"replace"
|
|
14426
14437
|
]
|
|
14427
14438
|
}) => {
|
|
14428
|
-
const
|
|
14439
|
+
const englishCode = typeof rawCode === "string" ? rawCode : String(rawCode ?? "");
|
|
14440
|
+
const naturalTabs = !editable && naturalLanguages && naturalLanguages.length > 1 ? naturalLanguages : void 0;
|
|
14441
|
+
const [naturalLanguage, setNaturalLanguage] = React79.useState(() => naturalTabs?.[0] ?? "en");
|
|
14442
|
+
const activeNaturalLanguage = naturalTabs?.includes(naturalLanguage) === true ? naturalLanguage : naturalTabs?.[0] ?? "en";
|
|
14443
|
+
const translationCache = React79.useMemo(() => /* @__PURE__ */ new Map(), [englishCode, files]);
|
|
14444
|
+
const translateFor = React79.useCallback(
|
|
14445
|
+
(source, sourceLanguage, cacheKey) => {
|
|
14446
|
+
if (activeNaturalLanguage === "en") return source;
|
|
14447
|
+
const key = `${cacheKey}|${sourceLanguage}|${activeNaturalLanguage}`;
|
|
14448
|
+
const hit = translationCache.get(key);
|
|
14449
|
+
if (hit !== void 0) return hit;
|
|
14450
|
+
const translated = translateProgram(source, sourceLanguage, activeNaturalLanguage);
|
|
14451
|
+
translationCache.set(key, translated);
|
|
14452
|
+
return translated;
|
|
14453
|
+
},
|
|
14454
|
+
[translationCache, activeNaturalLanguage]
|
|
14455
|
+
);
|
|
14456
|
+
const code = translateFor(englishCode, language, "code");
|
|
14457
|
+
const naturalTabItems = naturalTabs?.map((lang) => ({
|
|
14458
|
+
id: `lang-${lang}`,
|
|
14459
|
+
label: i18n.coreTables[lang].meta.name,
|
|
14460
|
+
content: null
|
|
14461
|
+
}));
|
|
14462
|
+
const naturalTabStrip = naturalTabs && naturalTabItems ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
14463
|
+
exports.Box,
|
|
14464
|
+
{
|
|
14465
|
+
className: "border-b border-border",
|
|
14466
|
+
dir: i18n.coreTables[activeNaturalLanguage].meta.rtl ? "rtl" : "ltr",
|
|
14467
|
+
"data-testid": "codeblock-language-tabs",
|
|
14468
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
14469
|
+
exports.Tabs,
|
|
14470
|
+
{
|
|
14471
|
+
tabs: naturalTabItems,
|
|
14472
|
+
activeTab: `lang-${activeNaturalLanguage}`,
|
|
14473
|
+
onTabChange: (id) => {
|
|
14474
|
+
const next = naturalTabs.find((lang) => `lang-${lang}` === id);
|
|
14475
|
+
if (next) setNaturalLanguage(next);
|
|
14476
|
+
}
|
|
14477
|
+
}
|
|
14478
|
+
)
|
|
14479
|
+
}
|
|
14480
|
+
) : null;
|
|
14429
14481
|
const activeStyle = resolveHighlightStyle(language);
|
|
14430
14482
|
const overCapacity = code.length > HIGHLIGHT_CAPACITY_BYTES;
|
|
14431
14483
|
const plainCodeColor = plainCodeColorOf(activeStyle);
|
|
@@ -14438,8 +14490,8 @@ var init_CodeBlock = __esm({
|
|
|
14438
14490
|
const [wrap, setWrap] = React79.useState(wordWrap);
|
|
14439
14491
|
const [activeFileIndex, setActiveFileIndex] = React79.useState(0);
|
|
14440
14492
|
const activeFile = files?.[activeFileIndex];
|
|
14441
|
-
const activeCode = activeFile?.code ?? code;
|
|
14442
14493
|
const activeLanguage = activeFile?.language ?? language;
|
|
14494
|
+
const activeCode = activeFile ? translateFor(activeFile.code, activeLanguage, `file-${activeFileIndex}`) : code;
|
|
14443
14495
|
const languageReady = useLanguageReady(activeLanguage);
|
|
14444
14496
|
const viewerStyle = resolveHighlightStyle(activeLanguage);
|
|
14445
14497
|
const viewerPlainCodeColor = plainCodeColorOf(viewerStyle);
|
|
@@ -14924,6 +14976,7 @@ var init_CodeBlock = __esm({
|
|
|
14924
14976
|
content: null
|
|
14925
14977
|
}));
|
|
14926
14978
|
return /* @__PURE__ */ jsxRuntime.jsx(exports.Card, { className: cn("overflow-hidden", className), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { display: "flex", flexDirection: "column" }, children: [
|
|
14979
|
+
naturalTabStrip,
|
|
14927
14980
|
tabItems && tabItems.length > 1 && /* @__PURE__ */ jsxRuntime.jsx(exports.Box, { className: "border-b border-border", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
14928
14981
|
exports.Tabs,
|
|
14929
14982
|
{
|
|
@@ -14985,7 +15038,7 @@ var init_CodeBlock = __esm({
|
|
|
14985
15038
|
]
|
|
14986
15039
|
}
|
|
14987
15040
|
),
|
|
14988
|
-
/* @__PURE__ */ jsxRuntime.jsx(exports.Box, { className: "overflow-auto bg-muted/20", style: { maxHeight }, 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 }) })
|
|
15041
|
+
/* @__PURE__ */ jsxRuntime.jsx(exports.Box, { className: "overflow-auto bg-muted/20", style: { maxHeight }, dir: "ltr", 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 }) })
|
|
14989
15042
|
] }) });
|
|
14990
15043
|
}
|
|
14991
15044
|
const hasHeader = showLanguageBadge || effectiveCopy;
|
|
@@ -15012,6 +15065,7 @@ var init_CodeBlock = __esm({
|
|
|
15012
15065
|
]
|
|
15013
15066
|
}
|
|
15014
15067
|
),
|
|
15068
|
+
naturalTabStrip,
|
|
15015
15069
|
editable ? (
|
|
15016
15070
|
/* GAP-77 / GAP-82 / GAP-83: editable mode = transparent textarea on
|
|
15017
15071
|
top of a Prism-highlighted SyntaxHighlighter overlay.
|
|
@@ -15163,6 +15217,7 @@ var init_CodeBlock = __esm({
|
|
|
15163
15217
|
{
|
|
15164
15218
|
ref: scrollRef,
|
|
15165
15219
|
onCopy: handleSelectionCopy,
|
|
15220
|
+
dir: "ltr",
|
|
15166
15221
|
style: {
|
|
15167
15222
|
flex: 1,
|
|
15168
15223
|
minHeight: 0,
|
|
@@ -15181,7 +15236,7 @@ var init_CodeBlock = __esm({
|
|
|
15181
15236
|
)
|
|
15182
15237
|
] });
|
|
15183
15238
|
},
|
|
15184
|
-
(prev, next) => prev.language === next.language && prev.code === next.code && prev.showCopyButton === next.showCopyButton && prev.showCopy === next.showCopy && prev.maxHeight === next.maxHeight && prev.foldable === next.foldable && prev.editable === next.editable && prev.onChange === next.onChange && prev.errorLines === next.errorLines && prev.mode === next.mode && prev.title === next.title && prev.diff === next.diff && prev.files === next.files && prev.actions === next.actions && prev.isLoading === next.isLoading && prev.error === next.error && prev.editorId === next.editorId && prev.onEditorFocus === next.onEditorFocus && prev.onEditorBlur === next.onEditorBlur && prev.onMotion === next.onMotion && prev.onOperate === next.onOperate && prev.onInsertText === next.onInsertText && prev.onSetMode === next.onSetMode && prev.motions === next.motions && prev.operators === next.operators
|
|
15239
|
+
(prev, next) => prev.language === next.language && prev.code === next.code && prev.showCopyButton === next.showCopyButton && prev.showCopy === next.showCopy && prev.maxHeight === next.maxHeight && prev.foldable === next.foldable && prev.editable === next.editable && prev.onChange === next.onChange && prev.errorLines === next.errorLines && prev.mode === next.mode && prev.title === next.title && prev.diff === next.diff && prev.files === next.files && prev.naturalLanguages === next.naturalLanguages && prev.actions === next.actions && prev.isLoading === next.isLoading && prev.error === next.error && prev.editorId === next.editorId && prev.onEditorFocus === next.onEditorFocus && prev.onEditorBlur === next.onEditorBlur && prev.onMotion === next.onMotion && prev.onOperate === next.onOperate && prev.onInsertText === next.onInsertText && prev.onSetMode === next.onSetMode && prev.motions === next.motions && prev.operators === next.operators
|
|
15185
15240
|
);
|
|
15186
15241
|
exports.CodeBlock.displayName = "CodeBlock";
|
|
15187
15242
|
}
|
|
@@ -18876,26 +18931,6 @@ var init_ButtonGroup = __esm({
|
|
|
18876
18931
|
exports.ButtonGroup.displayName = "ButtonGroup";
|
|
18877
18932
|
}
|
|
18878
18933
|
});
|
|
18879
|
-
function getNestedValue(obj, path) {
|
|
18880
|
-
if (obj === null || obj === void 0 || !path) {
|
|
18881
|
-
return void 0;
|
|
18882
|
-
}
|
|
18883
|
-
if (!path.includes(".")) {
|
|
18884
|
-
return obj[path];
|
|
18885
|
-
}
|
|
18886
|
-
const parts = path.split(".");
|
|
18887
|
-
let value = obj;
|
|
18888
|
-
for (const part of parts) {
|
|
18889
|
-
if (value === null || value === void 0) {
|
|
18890
|
-
return void 0;
|
|
18891
|
-
}
|
|
18892
|
-
if (typeof value !== "object" || Array.isArray(value)) {
|
|
18893
|
-
return void 0;
|
|
18894
|
-
}
|
|
18895
|
-
value = value[part];
|
|
18896
|
-
}
|
|
18897
|
-
return value;
|
|
18898
|
-
}
|
|
18899
18934
|
function resolveImageUrl(value) {
|
|
18900
18935
|
if (typeof value === "string") {
|
|
18901
18936
|
return value;
|
|
@@ -19023,11 +19058,11 @@ function getWeekDays(start) {
|
|
|
19023
19058
|
return days;
|
|
19024
19059
|
}
|
|
19025
19060
|
function eventStartDate(event, startField) {
|
|
19026
|
-
const raw = getNestedValue(event, startField);
|
|
19061
|
+
const raw = core.getNestedValue(event, startField);
|
|
19027
19062
|
return new Date(raw ?? "");
|
|
19028
19063
|
}
|
|
19029
19064
|
function eventEndDate(event, endField) {
|
|
19030
|
-
const raw = getNestedValue(event, endField);
|
|
19065
|
+
const raw = core.getNestedValue(event, endField);
|
|
19031
19066
|
if (raw === void 0 || raw === null || raw === "") return null;
|
|
19032
19067
|
const end = new Date(raw);
|
|
19033
19068
|
return Number.isNaN(end.getTime()) ? null : end;
|
|
@@ -19162,8 +19197,8 @@ function CalendarGrid({
|
|
|
19162
19197
|
}, [longPressEvent, longPressPayload, eventBus]);
|
|
19163
19198
|
const renderChip = children ?? renderItem;
|
|
19164
19199
|
const renderEvent = (event) => {
|
|
19165
|
-
const color = getNestedValue(event, colorField);
|
|
19166
|
-
const label = String(getNestedValue(event, titleField) ?? "");
|
|
19200
|
+
const color = core.getNestedValue(event, colorField);
|
|
19201
|
+
const label = String(core.getNestedValue(event, titleField) ?? "");
|
|
19167
19202
|
const eventIndex = evs.indexOf(event);
|
|
19168
19203
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
19169
19204
|
exports.Box,
|
|
@@ -19284,7 +19319,7 @@ function CalendarGrid({
|
|
|
19284
19319
|
children: /* @__PURE__ */ jsxRuntime.jsxs(exports.VStack, { gap: "xs", children: [
|
|
19285
19320
|
slotEvents.map(renderEvent),
|
|
19286
19321
|
continuingEvents.map((event) => {
|
|
19287
|
-
const color = getNestedValue(event, colorField);
|
|
19322
|
+
const color = core.getNestedValue(event, colorField);
|
|
19288
19323
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
19289
19324
|
exports.Box,
|
|
19290
19325
|
{
|
|
@@ -21011,7 +21046,7 @@ var init_CardGrid = __esm({
|
|
|
21011
21046
|
e.stopPropagation();
|
|
21012
21047
|
if (action.navigatesTo) {
|
|
21013
21048
|
const url = action.navigatesTo.replace(/\{\{row\.(\w+(?:\.\w+)*)\}\}/g, (_, field) => {
|
|
21014
|
-
const value = getNestedValue(itemData, field);
|
|
21049
|
+
const value = core.getNestedValue(itemData, field);
|
|
21015
21050
|
return value !== void 0 && value !== null ? String(value) : "";
|
|
21016
21051
|
});
|
|
21017
21052
|
eventBus.emit("UI:NAVIGATE", { url, row: itemData });
|
|
@@ -21044,8 +21079,8 @@ var init_CardGrid = __esm({
|
|
|
21044
21079
|
return normalizedData.map((item, index) => {
|
|
21045
21080
|
const itemData = item;
|
|
21046
21081
|
const id = itemData.id || String(index);
|
|
21047
|
-
const titleValue = titleField ? getNestedValue(itemData, titleField) : void 0;
|
|
21048
|
-
const statusValue = statusField ? getNestedValue(itemData, statusField) : void 0;
|
|
21082
|
+
const titleValue = titleField ? core.getNestedValue(itemData, titleField) : void 0;
|
|
21083
|
+
const statusValue = statusField ? core.getNestedValue(itemData, statusField) : void 0;
|
|
21049
21084
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
21050
21085
|
exports.Box,
|
|
21051
21086
|
{
|
|
@@ -21060,7 +21095,7 @@ var init_CardGrid = __esm({
|
|
|
21060
21095
|
actionPayload: { row: itemData },
|
|
21061
21096
|
children: [
|
|
21062
21097
|
imageField && (() => {
|
|
21063
|
-
const imgUrl = resolveImageUrl(getNestedValue(itemData, imageField));
|
|
21098
|
+
const imgUrl = resolveImageUrl(core.getNestedValue(itemData, imageField));
|
|
21064
21099
|
if (!imgUrl) return null;
|
|
21065
21100
|
return /* @__PURE__ */ jsxRuntime.jsx(exports.Box, { className: "w-full aspect-video overflow-hidden rounded-t-lg", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
21066
21101
|
"img",
|
|
@@ -21092,7 +21127,7 @@ var init_CardGrid = __esm({
|
|
|
21092
21127
|
)) })
|
|
21093
21128
|
] }) }),
|
|
21094
21129
|
bodyFields.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(exports.Box, { className: "px-4 py-3 flex-1", children: /* @__PURE__ */ jsxRuntime.jsx(exports.VStack, { gap: "xs", children: bodyFields.map((field) => {
|
|
21095
|
-
const value = getNestedValue(itemData, field);
|
|
21130
|
+
const value = core.getNestedValue(itemData, field);
|
|
21096
21131
|
if (value === void 0 || value === null || value === "") return null;
|
|
21097
21132
|
const fieldValue = value;
|
|
21098
21133
|
const boolVal = asBooleanValue(fieldValue);
|
|
@@ -25638,7 +25673,7 @@ function DataGrid({
|
|
|
25638
25673
|
)
|
|
25639
25674
|
);
|
|
25640
25675
|
}
|
|
25641
|
-
const titleValue = getNestedValue(itemData, titleField?.name ?? "");
|
|
25676
|
+
const titleValue = core.getNestedValue(itemData, titleField?.name ?? "");
|
|
25642
25677
|
return wrapDnd(
|
|
25643
25678
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
25644
25679
|
exports.Box,
|
|
@@ -25657,7 +25692,7 @@ function DataGrid({
|
|
|
25657
25692
|
),
|
|
25658
25693
|
children: [
|
|
25659
25694
|
imageField && (() => {
|
|
25660
|
-
const imgUrl = resolveImageUrl(getNestedValue(itemData, imageField));
|
|
25695
|
+
const imgUrl = resolveImageUrl(core.getNestedValue(itemData, imageField));
|
|
25661
25696
|
if (!imgUrl) return null;
|
|
25662
25697
|
return /* @__PURE__ */ jsxRuntime.jsx(exports.Box, { className: "w-full aspect-video overflow-hidden rounded-t-lg", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
25663
25698
|
"img",
|
|
@@ -25694,7 +25729,7 @@ function DataGrid({
|
|
|
25694
25729
|
)
|
|
25695
25730
|
] }),
|
|
25696
25731
|
badgeFields.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(exports.HStack, { gap: "xs", className: "flex-wrap", children: badgeFields.map((field) => {
|
|
25697
|
-
const val = getNestedValue(itemData, field.name);
|
|
25732
|
+
const val = core.getNestedValue(itemData, field.name);
|
|
25698
25733
|
if (val === void 0 || val === null || val === "") return null;
|
|
25699
25734
|
return /* @__PURE__ */ jsxRuntime.jsxs(exports.HStack, { gap: "xs", className: "items-center", children: [
|
|
25700
25735
|
field.icon && renderIconInput(field.icon, { size: "xs" }),
|
|
@@ -25735,12 +25770,12 @@ function DataGrid({
|
|
|
25735
25770
|
] }) }),
|
|
25736
25771
|
bodyFields.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(exports.Box, { className: "px-4 pt-2 pb-4 flex-1", children: /* @__PURE__ */ jsxRuntime.jsxs(exports.VStack, { gap: "xs", children: [
|
|
25737
25772
|
bodyFields.filter((f3) => f3.variant === "caption" && f3.format !== "boolean").map((field) => {
|
|
25738
|
-
const value = getNestedValue(itemData, field.name);
|
|
25773
|
+
const value = core.getNestedValue(itemData, field.name);
|
|
25739
25774
|
if (value === void 0 || value === null || value === "") return null;
|
|
25740
25775
|
return /* @__PURE__ */ jsxRuntime.jsx(exports.Typography, { variant: "small", color: "secondary", className: "line-clamp-2", children: formatValue(value, field.format) }, field.name);
|
|
25741
25776
|
}),
|
|
25742
25777
|
/* @__PURE__ */ jsxRuntime.jsx(exports.HStack, { gap: "md", className: "flex-wrap gap-y-1", children: bodyFields.filter((f3) => f3.variant !== "caption" || f3.format === "boolean").map((field) => {
|
|
25743
|
-
const value = getNestedValue(itemData, field.name);
|
|
25778
|
+
const value = core.getNestedValue(itemData, field.name);
|
|
25744
25779
|
if (value === void 0 || value === null || value === "") return null;
|
|
25745
25780
|
if (field.format === "boolean") {
|
|
25746
25781
|
return /* @__PURE__ */ jsxRuntime.jsxs(exports.HStack, { gap: "xs", className: "items-center", children: [
|
|
@@ -25858,7 +25893,7 @@ function formatValue2(value, format, boolLabels) {
|
|
|
25858
25893
|
function groupData(items, field) {
|
|
25859
25894
|
const groups = /* @__PURE__ */ new Map();
|
|
25860
25895
|
for (const item of items) {
|
|
25861
|
-
const key = String(getNestedValue(item, field) ?? "");
|
|
25896
|
+
const key = String(core.getNestedValue(item, field) ?? "");
|
|
25862
25897
|
const group = groups.get(key);
|
|
25863
25898
|
if (group) group.push(item);
|
|
25864
25899
|
else groups.set(key, [item]);
|
|
@@ -26051,7 +26086,7 @@ function DataList({
|
|
|
26051
26086
|
const contentField = titleField?.name ?? fieldDefs[0]?.name ?? "";
|
|
26052
26087
|
const senderLabel = (itemData, raw) => {
|
|
26053
26088
|
if (!senderLabelField) return raw;
|
|
26054
|
-
const v = getNestedValue(itemData, senderLabelField);
|
|
26089
|
+
const v = core.getNestedValue(itemData, senderLabelField);
|
|
26055
26090
|
return v === void 0 || v === null || v === "" ? raw : String(v);
|
|
26056
26091
|
};
|
|
26057
26092
|
return /* @__PURE__ */ jsxRuntime.jsxs(exports.VStack, { gap: "sm", className: cn("py-2", className), children: [
|
|
@@ -26059,11 +26094,11 @@ function DataList({
|
|
|
26059
26094
|
group.label && /* @__PURE__ */ jsxRuntime.jsx(exports.Divider, { label: group.label, className: "my-2" }),
|
|
26060
26095
|
group.items.map((itemData, index) => {
|
|
26061
26096
|
const id = itemData.id || `${gi}-${index}`;
|
|
26062
|
-
const sender = senderField ? String(getNestedValue(itemData, senderField) ?? "") : "";
|
|
26097
|
+
const sender = senderField ? String(core.getNestedValue(itemData, senderField) ?? "") : "";
|
|
26063
26098
|
const isSent = Boolean(currentUser && sender === currentUser);
|
|
26064
|
-
const content = getNestedValue(itemData, contentField);
|
|
26099
|
+
const content = core.getNestedValue(itemData, contentField);
|
|
26065
26100
|
const timestampField = fieldDefs.find((f3) => f3.format === "date");
|
|
26066
|
-
const timestamp = timestampField ? getNestedValue(itemData, timestampField.name) : null;
|
|
26101
|
+
const timestamp = timestampField ? core.getNestedValue(itemData, timestampField.name) : null;
|
|
26067
26102
|
const metaFields = fieldDefs.filter(
|
|
26068
26103
|
(f3) => f3.name !== contentField && f3.name !== timestampField?.name
|
|
26069
26104
|
);
|
|
@@ -26089,7 +26124,7 @@ function DataList({
|
|
|
26089
26124
|
!isSent && senderField && /* @__PURE__ */ jsxRuntime.jsx(exports.Typography, { variant: "caption", className: "font-semibold mb-0.5", children: senderLabel(itemData, sender) }),
|
|
26090
26125
|
/* @__PURE__ */ jsxRuntime.jsx(exports.Typography, { variant: "body", className: cn(isSent && "text-primary-foreground"), children: content !== void 0 && content !== null ? String(content) : "" }),
|
|
26091
26126
|
metaFields.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(exports.HStack, { gap: "xs", className: "mt-1 flex-wrap", children: metaFields.map((f3) => {
|
|
26092
|
-
const v = getNestedValue(itemData, f3.name);
|
|
26127
|
+
const v = core.getNestedValue(itemData, f3.name);
|
|
26093
26128
|
if (v === void 0 || v === null || v === "") return null;
|
|
26094
26129
|
return f3.variant === "badge" ? (
|
|
26095
26130
|
// `format` applies here too — a boolean field badged
|
|
@@ -26177,7 +26212,7 @@ function DataList({
|
|
|
26177
26212
|
);
|
|
26178
26213
|
}
|
|
26179
26214
|
const id = itemData.id || String(index);
|
|
26180
|
-
const titleValue = getNestedValue(itemData, titleField?.name ?? "");
|
|
26215
|
+
const titleValue = core.getNestedValue(itemData, titleField?.name ?? "");
|
|
26181
26216
|
return wrapDnd(
|
|
26182
26217
|
/* @__PURE__ */ jsxRuntime.jsxs(exports.Box, { "data-entity-row": true, "data-entity-id": id, onClick: rowClickEvent ? handleRowClick(itemData) : void 0, className: cn(rowClickEvent && "cursor-pointer"), children: [
|
|
26183
26218
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -26206,7 +26241,7 @@ function DataList({
|
|
|
26206
26241
|
}
|
|
26207
26242
|
),
|
|
26208
26243
|
badgeFields.map((field) => {
|
|
26209
|
-
const val = getNestedValue(itemData, field.name);
|
|
26244
|
+
const val = core.getNestedValue(itemData, field.name);
|
|
26210
26245
|
if (val === void 0 || val === null) return null;
|
|
26211
26246
|
return /* @__PURE__ */ jsxRuntime.jsxs(exports.HStack, { gap: "xs", className: "items-center flex-shrink-0", children: [
|
|
26212
26247
|
field.icon && renderIconInput2(field.icon, { size: "xs" }),
|
|
@@ -26215,7 +26250,7 @@ function DataList({
|
|
|
26215
26250
|
})
|
|
26216
26251
|
] }),
|
|
26217
26252
|
bodyFields.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(exports.HStack, { gap: "md", className: cn("flex-wrap", isCompact ? "mt-0.5" : "mt-1.5"), children: bodyFields.map((field) => {
|
|
26218
|
-
const value = getNestedValue(itemData, field.name);
|
|
26253
|
+
const value = core.getNestedValue(itemData, field.name);
|
|
26219
26254
|
if (value === void 0 || value === null || value === "") return null;
|
|
26220
26255
|
return /* @__PURE__ */ jsxRuntime.jsxs(exports.HStack, { gap: "xs", className: "items-center", children: [
|
|
26221
26256
|
field.icon && renderIconInput2(field.icon, { size: "xs", className: "text-muted-foreground" }),
|
|
@@ -26235,7 +26270,7 @@ function DataList({
|
|
|
26235
26270
|
] }, field.name);
|
|
26236
26271
|
}) }),
|
|
26237
26272
|
progressFields.map((field) => {
|
|
26238
|
-
const value = getNestedValue(itemData, field.name);
|
|
26273
|
+
const value = core.getNestedValue(itemData, field.name);
|
|
26239
26274
|
if (typeof value !== "number") return null;
|
|
26240
26275
|
return /* @__PURE__ */ jsxRuntime.jsxs(exports.Box, { className: "mt-2 max-w-xs", children: [
|
|
26241
26276
|
/* @__PURE__ */ jsxRuntime.jsxs(exports.HStack, { gap: "xs", className: "items-center mb-1", children: [
|
|
@@ -36102,7 +36137,7 @@ function statusVariant4(value) {
|
|
|
36102
36137
|
function groupData2(items, field) {
|
|
36103
36138
|
const groups = /* @__PURE__ */ new Map();
|
|
36104
36139
|
for (const item of items) {
|
|
36105
|
-
const key = String(getNestedValue(item, field) ?? "");
|
|
36140
|
+
const key = String(core.getNestedValue(item, field) ?? "");
|
|
36106
36141
|
const group = groups.get(key);
|
|
36107
36142
|
if (group) group.push(item);
|
|
36108
36143
|
else groups.set(key, [item]);
|
|
@@ -36218,7 +36253,7 @@ function TableView({
|
|
|
36218
36253
|
const colFloors = React79__namespace.default.useMemo(
|
|
36219
36254
|
() => colDefs.map((col) => {
|
|
36220
36255
|
const longest = data.reduce((widest, row) => {
|
|
36221
|
-
const cell = formatCell(asFieldValue(getNestedValue(row, col.field ?? col.key)), col.format);
|
|
36256
|
+
const cell = formatCell(asFieldValue(core.getNestedValue(row, col.field ?? col.key)), col.format);
|
|
36222
36257
|
return Math.max(widest, cell.length);
|
|
36223
36258
|
}, columnLabel(col).length);
|
|
36224
36259
|
const chrome = col.format === "badge" ? BADGE_CHROME_CH : 0;
|
|
@@ -36310,7 +36345,7 @@ function TableView({
|
|
|
36310
36345
|
}
|
|
36311
36346
|
) }),
|
|
36312
36347
|
hasRenderProp ? /* @__PURE__ */ jsxRuntime.jsx(exports.Box, { className: "flex-1 min-w-0", children: children(row, index) }) : colDefs.map((col) => {
|
|
36313
|
-
const raw = asFieldValue(getNestedValue(row, col.field ?? col.key));
|
|
36348
|
+
const raw = asFieldValue(core.getNestedValue(row, col.field ?? col.key));
|
|
36314
36349
|
const cellBase = cn(
|
|
36315
36350
|
"flex items-center min-w-0",
|
|
36316
36351
|
alignClass[col.align ?? "left"],
|
|
@@ -40377,7 +40412,7 @@ function DocumentDetails({
|
|
|
40377
40412
|
};
|
|
40378
40413
|
const renderValue = (field) => {
|
|
40379
40414
|
const name = fieldName(field);
|
|
40380
|
-
const raw = getNestedValue(entity ?? {}, name);
|
|
40415
|
+
const raw = core.getNestedValue(entity ?? {}, name);
|
|
40381
40416
|
const kind = fieldKind(field, raw);
|
|
40382
40417
|
const label = field.label ?? field.header ?? humanizeFieldName(name);
|
|
40383
40418
|
if (kind === "image") {
|
|
@@ -43084,11 +43119,11 @@ var init_WizardContainer = __esm({
|
|
|
43084
43119
|
});
|
|
43085
43120
|
function calculateComplexity(schema) {
|
|
43086
43121
|
if (!schema) return 1;
|
|
43087
|
-
const entities = schema.dataEntities
|
|
43122
|
+
const entities = schema.dataEntities || 0;
|
|
43088
43123
|
const pages = schema.ui?.pages?.length || 0;
|
|
43089
|
-
const traits2 = schema.traits
|
|
43124
|
+
const traits2 = schema.traits || 0;
|
|
43090
43125
|
const sections = schema.ui?.pages?.reduce(
|
|
43091
|
-
(acc, page) => acc + (page.sections
|
|
43126
|
+
(acc, page) => acc + (page.sections || 0),
|
|
43092
43127
|
0
|
|
43093
43128
|
) || 0;
|
|
43094
43129
|
return entities * 3 + pages * 2 + traits2 * 2 + sections * 1;
|
|
@@ -45635,7 +45670,7 @@ function DataTable({
|
|
|
45635
45670
|
}
|
|
45636
45671
|
) }),
|
|
45637
45672
|
normalizedColumns.map((col) => {
|
|
45638
|
-
const cellValue = getNestedValue(
|
|
45673
|
+
const cellValue = core.getNestedValue(
|
|
45639
45674
|
row,
|
|
45640
45675
|
String(col.key)
|
|
45641
45676
|
);
|
|
@@ -46078,7 +46113,7 @@ var init_DetailPanel = __esm({
|
|
|
46078
46113
|
...section,
|
|
46079
46114
|
fields: section.fields.map((field) => {
|
|
46080
46115
|
if (typeof field === "string") {
|
|
46081
|
-
const value = getNestedValue(normalizedData, field);
|
|
46116
|
+
const value = core.getNestedValue(normalizedData, field);
|
|
46082
46117
|
return {
|
|
46083
46118
|
label: labelFor(field),
|
|
46084
46119
|
value: formatFieldValue2(value, field)
|
|
@@ -46118,7 +46153,7 @@ var init_DetailPanel = __esm({
|
|
|
46118
46153
|
if (otherFields.length > 0) {
|
|
46119
46154
|
const overviewFields = [];
|
|
46120
46155
|
otherFields.forEach((field) => {
|
|
46121
|
-
const value = getNestedValue(normalizedData, field);
|
|
46156
|
+
const value = core.getNestedValue(normalizedData, field);
|
|
46122
46157
|
if (value !== void 0 && value !== null) {
|
|
46123
46158
|
overviewFields.push({
|
|
46124
46159
|
label: labelFor(field),
|
|
@@ -46133,7 +46168,7 @@ var init_DetailPanel = __esm({
|
|
|
46133
46168
|
if (progressFields.length > 0 || metricFields.length > 0) {
|
|
46134
46169
|
const metricsFields = [];
|
|
46135
46170
|
[...progressFields, ...metricFields].forEach((field) => {
|
|
46136
|
-
const value = getNestedValue(normalizedData, field);
|
|
46171
|
+
const value = core.getNestedValue(normalizedData, field);
|
|
46137
46172
|
if (value !== void 0 && value !== null) {
|
|
46138
46173
|
metricsFields.push({
|
|
46139
46174
|
label: labelFor(field),
|
|
@@ -46148,7 +46183,7 @@ var init_DetailPanel = __esm({
|
|
|
46148
46183
|
if (dateFields.length > 0) {
|
|
46149
46184
|
const timelineFields = [];
|
|
46150
46185
|
dateFields.forEach((field) => {
|
|
46151
|
-
const value = getNestedValue(normalizedData, field);
|
|
46186
|
+
const value = core.getNestedValue(normalizedData, field);
|
|
46152
46187
|
if (value !== void 0 && value !== null) {
|
|
46153
46188
|
timelineFields.push({
|
|
46154
46189
|
label: labelFor(field),
|
|
@@ -46163,7 +46198,7 @@ var init_DetailPanel = __esm({
|
|
|
46163
46198
|
if (descriptionFields.length > 0) {
|
|
46164
46199
|
const descFields = [];
|
|
46165
46200
|
descriptionFields.forEach((field) => {
|
|
46166
|
-
const value = getNestedValue(normalizedData, field);
|
|
46201
|
+
const value = core.getNestedValue(normalizedData, field);
|
|
46167
46202
|
if (value !== void 0 && value !== null) {
|
|
46168
46203
|
descFields.push({
|
|
46169
46204
|
label: labelFor(field),
|
|
@@ -46220,7 +46255,7 @@ var init_DetailPanel = __esm({
|
|
|
46220
46255
|
for (const section of sections) {
|
|
46221
46256
|
for (const field of section.fields) {
|
|
46222
46257
|
if (typeof field === "string") {
|
|
46223
|
-
const value = normalizedData ? getNestedValue(normalizedData, field) : void 0;
|
|
46258
|
+
const value = normalizedData ? core.getNestedValue(normalizedData, field) : void 0;
|
|
46224
46259
|
allFields.push({
|
|
46225
46260
|
label: labelFor(field),
|
|
46226
46261
|
value: renderRichFieldValue(value, field, fieldTypeMap[field], metaFor(field))
|
|
@@ -46239,7 +46274,7 @@ var init_DetailPanel = __esm({
|
|
|
46239
46274
|
normalizedData && effectiveFieldNames && effectiveFieldNames.filter(
|
|
46240
46275
|
(f3) => f3.toLowerCase().includes("status") || f3.toLowerCase().includes("priority")
|
|
46241
46276
|
).map((field) => {
|
|
46242
|
-
const value = getNestedValue(normalizedData, field);
|
|
46277
|
+
const value = core.getNestedValue(normalizedData, field);
|
|
46243
46278
|
if (!value) return null;
|
|
46244
46279
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
46245
46280
|
exports.Badge,
|
|
@@ -46370,7 +46405,7 @@ var init_DetailPanel = __esm({
|
|
|
46370
46405
|
normalizedData && effectiveFieldNames && effectiveFieldNames.filter(
|
|
46371
46406
|
(f3) => f3.toLowerCase().includes("progress") || f3.toLowerCase().includes("percent")
|
|
46372
46407
|
).map((field) => {
|
|
46373
|
-
const value = getNestedValue(normalizedData, field);
|
|
46408
|
+
const value = core.getNestedValue(normalizedData, field);
|
|
46374
46409
|
if (value === void 0 || value === null || typeof value !== "number")
|
|
46375
46410
|
return null;
|
|
46376
46411
|
return /* @__PURE__ */ jsxRuntime.jsxs(exports.VStack, { gap: "xs", className: "w-full", children: [
|
|
@@ -48192,14 +48227,14 @@ var init_List = __esm({
|
|
|
48192
48227
|
};
|
|
48193
48228
|
if (effectiveFieldNames && effectiveFieldNames.length > 0) {
|
|
48194
48229
|
const firstField = effectiveFieldNames[0];
|
|
48195
|
-
if (!normalizedItem.title && getNestedValue(item, firstField)) {
|
|
48230
|
+
if (!normalizedItem.title && core.getNestedValue(item, firstField)) {
|
|
48196
48231
|
normalizedItem.title = String(
|
|
48197
|
-
getNestedValue(item, firstField)
|
|
48232
|
+
core.getNestedValue(item, firstField)
|
|
48198
48233
|
);
|
|
48199
48234
|
}
|
|
48200
48235
|
normalizedItem._fields = effectiveFieldNames.reduce(
|
|
48201
48236
|
(acc, field) => {
|
|
48202
|
-
const value = getNestedValue(item, field);
|
|
48237
|
+
const value = core.getNestedValue(item, field);
|
|
48203
48238
|
if (value !== void 0 && value !== null) {
|
|
48204
48239
|
acc[field] = value;
|
|
48205
48240
|
}
|
|
@@ -3,19 +3,19 @@ import React__default, { ReactNode, ErrorInfo } from 'react';
|
|
|
3
3
|
import { Asset, EventKey, EventPayload, EventEmit, AssetUrl, FieldValue, EntityRow, EntityRole, AnimationName, SpriteDirection, AnimationDef, ScenePos, Camera, SoundEntry, EntityWith, TraitConfigValue, EventListen, JsonValue, AssetCatalog, JsonObject, EventPayloadValue, DeclaredTraitConfig, TraitConfig, ControlValue, OrbitalSchema, Trait, OrbitalEntity, FormSubmitPayload, UISlot, EditFocus, TraceSubagent, TraceActivity, TraceChatMessage } from '@almadar/core';
|
|
4
4
|
export { AnimationDef, AnimationName, AudioManifest, BusEvent, BusEventListener, BusEventSource, BusEventListener as EventListener, SoundEntry, SpriteDirection, UISlot, Unsubscribe } from '@almadar/core';
|
|
5
5
|
import { LucideIcon } from 'lucide-react';
|
|
6
|
-
import { C as ColorToken, U as UiError, P as Point, L as LinkAction, I as ImageSource } from '../
|
|
7
|
-
export { R as Rect } from '../
|
|
6
|
+
import { C as ColorToken, U as UiError, D as DrawableNode, P as Point, a as Projector, F as FxOverlayItem, M as MeshShapeKind, b as MeshMaterial, c as DrawGroupProps, d as DrawTextProps, e as DrawMeshProps, L as LinkAction, I as ImageSource } from '../paintDispatch-CK5uwYEq.cjs';
|
|
7
|
+
export { f as FxOverlayKind, R as Rect } from '../paintDispatch-CK5uwYEq.cjs';
|
|
8
8
|
import { SExpr } from '@almadar/evaluator';
|
|
9
|
-
import { U as UnitAnimationState, F as FacingDirection, S as SpriteSheetUrls, g as SpriteFrameDims, R as ResolvedFrame, h as CanvasLighting, i as CanvasPost, a as IsometricUnit, j as CameraState, k as FieldInfo, l as OrbitalTraitInfo, m as OrbitalPageInfo, T as TraitLevelData, E as ExternalLink } from '../avl-schema-parser-
|
|
10
|
-
export { B as BoardTile, G as GameAction, n as GamePhase, o as GameState, p as GameUnit, b as IsometricFeature, I as IsometricTile, P as Position, q as UnitTrait, r as calculateAttackTargets, s as calculateValidMoves, t as createInitialGameState } from '../avl-schema-parser-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
export { G as
|
|
14
|
-
import {
|
|
15
|
-
export { a6 as BloomLevel, a7 as BloomQuizBlock, a8 as BloomQuizBlockProps, a9 as MixedSegment, u as cn, Q as parseLessonSegments, aa as parseMarkdownWithCodeBlocks } from '../cn-DnLYahyL.cjs';
|
|
9
|
+
import { U as UnitAnimationState, F as FacingDirection, S as SpriteSheetUrls, g as SpriteFrameDims, R as ResolvedFrame, h as CanvasLighting, i as CanvasPost, a as IsometricUnit, j as CameraState, k as FieldInfo, l as OrbitalTraitInfo, m as OrbitalPageInfo, T as TraitLevelData, E as ExternalLink } from '../avl-schema-parser-PVu8rgsy.cjs';
|
|
10
|
+
export { B as BoardTile, G as GameAction, n as GamePhase, o as GameState, p as GameUnit, b as IsometricFeature, I as IsometricTile, P as Position, q as UnitTrait, r as calculateAttackTargets, s as calculateValidMoves, t as createInitialGameState } from '../avl-schema-parser-PVu8rgsy.cjs';
|
|
11
|
+
export { G as GameAudioContext, a as GameAudioContextValue, e as GameAudioControls, b as GameAudioProvider, c as GameAudioProviderProps, U as UseGameAudioOptions, f as useGameAudio, u as useGameAudioContext } from '../GameAudioProvider-D8GynTNq.cjs';
|
|
12
|
+
import { i as EditorMotion, j as EditorOperator, C as ContentSegment, L as LessonSegment, F as InteractiveOrbitalType, c as DomLayoutData, e as DomStateNode, V as VisualizerConfig, f as DomTransitionLabel } from '../cn-Do5gsPBm.cjs';
|
|
13
|
+
export { G as BloomLevel, H as BloomQuizBlock, J as BloomQuizBlockProps, M as MixedSegment, o as cn, x as parseLessonSegments, K as parseMarkdownWithCodeBlocks } from '../cn-Do5gsPBm.cjs';
|
|
14
|
+
import { LanguageCode } from '@almadar/core/i18n';
|
|
16
15
|
import { EmojiPickPayload, SelectionChangePayload, ItemActionPayload } from '@almadar/core/patterns';
|
|
17
16
|
import { b as SlotContent, d as SlotPropValue } from '../useUISlots-GNwGLlW2.cjs';
|
|
18
17
|
export { D as DEFAULT_SLOTS, S as SlotAnimation, a as SlotChangeCallback, c as SlotRenderConfig, U as UISlotManager, u as useUISlotManager } from '../useUISlots-GNwGLlW2.cjs';
|
|
18
|
+
import '../verificationRegistry-BLsjb1oU.cjs';
|
|
19
19
|
export { ALMADAR_DND_MIME, AuthContextValue, AuthUser, CanvasGestureCallbacks, CanvasGestureHandlers, CompileResult, CompileStage, DragReorderResult, DraggablePayload, Extension, ExtensionManifest, FileSystemFile, FileSystemStatus, GitHubRepo, GitHubStatus, HistoryChangeSummary, HistoryTimelineItem, I18nContextValue, I18nProvider, InfiniteScrollOptions, InfiniteScrollResult, LongPressHandlers, LongPressOptions, OpenFile, Positioned, PullToRefreshOptions, PullToRefreshResult, QuerySingletonEntity, QuerySingletonResult, QuerySingletonState, QueryState, RenderInterpolationHandle, RenderInterpolationOptions, RevertResult, SelectedFile, SharedEntityStore, SharedEntityStoreContext, SharedEntitySubscriber, SharedEntityWriter, SwipeGestureOptions, SwipeGestureResult, SwipeHandlers, TapRevealOptions, TapRevealResult, TraitListenSpec, TranslateFunction, UseCanvasGesturesOptions, UseCompileResult, UseDraggableOptions, UseDraggableResult, UseDropZoneOptions, UseDropZoneResult, UseExtensionsOptions, UseExtensionsResult, UseFileEditorOptions, UseFileEditorResult, UseFileSystemResult, UseOrbitalHistoryOptions, UseOrbitalHistoryResult, createSharedEntityStore, createTranslate, parseQueryBinding, runTickFrame, useAgentChat, useAuthContext, useCanvasGestures, useCompile, useConnectGitHub, useDeepAgentGeneration, useDisconnectGitHub, useDragReorder, useDraggable, useDropZone, useExtensions, useFileEditor, useFileSystem, useGitHubBranches, useGitHubRepo, useGitHubRepos, useGitHubStatus, useInfiniteScroll, useLongPress, useMediaQuery, useOrbitalHistory, usePreview, usePullToRefresh, useQuerySingleton, useRenderInterpolation, useSharedEntitySnapshot, useSharedEntityStore, useSharedEntityStoreContext, useSwipeGesture, useTapReveal, useTraitListens, useTranslate, useUIEvents, useValidation } from '../hooks/index.cjs';
|
|
20
20
|
export { E as EditorKeyEvent, a as KeyCaptureEntry, K as KeyCaptureTable, U as UseKeyboardRouterOptions, k as keyChord, m as mergeCaptureTables, u as useEmitEvent, b as useEventBus, c as useEventListener, d as useKeyboardRouter } from '../useKeyboardRouter-CVn8lfiX.cjs';
|
|
21
21
|
export { E as EventBusContextType } from '../event-bus-types-Bl78kokd.cjs';
|
|
@@ -5648,6 +5648,15 @@ interface CodeBlockProps {
|
|
|
5648
5648
|
wordWrap?: boolean;
|
|
5649
5649
|
/** Multiple files shown as tabs */
|
|
5650
5650
|
files?: readonly CodeViewerFile[];
|
|
5651
|
+
/**
|
|
5652
|
+
* Show the program in these natural languages as tabs, translating on the
|
|
5653
|
+
* fly. Only meaningful for `language` 'lolo' / 'orb'; ignored otherwise.
|
|
5654
|
+
*
|
|
5655
|
+
* Fewer than two entries renders exactly as without the prop. `editable`
|
|
5656
|
+
* wins: editing a translation is not a thing, so the English source is
|
|
5657
|
+
* shown and this is ignored.
|
|
5658
|
+
*/
|
|
5659
|
+
naturalLanguages?: readonly LanguageCode[];
|
|
5651
5660
|
/** Action badges in the toolbar */
|
|
5652
5661
|
actions?: readonly CodeViewerAction[];
|
|
5653
5662
|
/** Loading state */
|
|
@@ -8331,6 +8340,8 @@ interface SwipeAction {
|
|
|
8331
8340
|
icon?: IconInput;
|
|
8332
8341
|
variant?: 'primary' | 'secondary' | 'danger' | 'ghost';
|
|
8333
8342
|
event: EventKey;
|
|
8343
|
+
/** Payload included with the `event` emit
|
|
8344
|
+
* @payloadFor event */
|
|
8334
8345
|
eventPayload?: EventPayload;
|
|
8335
8346
|
}
|
|
8336
8347
|
interface SwipeableRowProps {
|
|
@@ -8338,7 +8349,7 @@ interface SwipeableRowProps {
|
|
|
8338
8349
|
rightActions?: SwipeAction[];
|
|
8339
8350
|
threshold?: number;
|
|
8340
8351
|
children: React__default.ReactNode;
|
|
8341
|
-
itemData?:
|
|
8352
|
+
itemData?: EntityRow;
|
|
8342
8353
|
className?: string;
|
|
8343
8354
|
}
|
|
8344
8355
|
declare const SwipeableRow: React__default.FC<SwipeableRowProps>;
|
|
@@ -10422,17 +10433,30 @@ declare const WizardContainer: React__default.FC<WizardContainerProps>;
|
|
|
10422
10433
|
* - 4f (61+): Multi-lobe - Violet
|
|
10423
10434
|
*/
|
|
10424
10435
|
|
|
10425
|
-
|
|
10426
|
-
|
|
10427
|
-
|
|
10428
|
-
|
|
10429
|
-
|
|
10430
|
-
|
|
10431
|
-
|
|
10432
|
-
|
|
10433
|
-
|
|
10434
|
-
|
|
10436
|
+
/** One page's contribution to {@link OrbitalVisualizationSchemaSummary} — only
|
|
10437
|
+
* a section COUNT feeds the complexity score (`calculateComplexity`); no
|
|
10438
|
+
* per-section field is ever read, so a count is the honest declared shape. */
|
|
10439
|
+
interface OrbitalVisualizationPageSummary {
|
|
10440
|
+
/** Section count for this page. */
|
|
10441
|
+
sections?: number;
|
|
10442
|
+
}
|
|
10443
|
+
/** A complexity-scoring SUMMARY of a KFlow schema — counts only, never the
|
|
10444
|
+
* full entity/trait/section objects (`calculateComplexity` reads nothing
|
|
10445
|
+
* but `.length`/count fields). The caller computes these counts from
|
|
10446
|
+
* whatever full schema it holds; this component never needs the rows. */
|
|
10447
|
+
interface OrbitalVisualizationSchemaSummary {
|
|
10448
|
+
/** Data-entity count. */
|
|
10449
|
+
dataEntities?: number;
|
|
10450
|
+
ui?: {
|
|
10451
|
+
pages?: OrbitalVisualizationPageSummary[];
|
|
10435
10452
|
};
|
|
10453
|
+
/** Trait count. */
|
|
10454
|
+
traits?: number;
|
|
10455
|
+
}
|
|
10456
|
+
interface OrbitalVisualizationProps {
|
|
10457
|
+
/** Complexity-scoring summary of a KFlow schema (counts only — see
|
|
10458
|
+
* {@link OrbitalVisualizationSchemaSummary}). */
|
|
10459
|
+
schema?: OrbitalVisualizationSchemaSummary;
|
|
10436
10460
|
/** Direct complexity override (1-100+) */
|
|
10437
10461
|
complexity?: number;
|
|
10438
10462
|
/** Size of the visualization */
|