@almadar/ui 4.21.0 → 4.22.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/avl/index.cjs +17 -13
- package/dist/avl/index.js +17 -13
- package/dist/components/index.cjs +17 -13
- package/dist/components/index.js +17 -13
- package/dist/components/molecules/Accordion.d.ts +5 -1
- package/dist/components/molecules/CalendarGrid.d.ts +8 -5
- package/dist/components/molecules/Card.d.ts +3 -3
- package/dist/components/molecules/Carousel.d.ts +4 -1
- package/dist/components/molecules/DataGrid.d.ts +9 -3
- package/dist/components/molecules/DataList.d.ts +9 -3
- package/dist/components/molecules/EmptyState.d.ts +2 -1
- package/dist/components/molecules/ErrorState.d.ts +2 -1
- package/dist/components/molecules/MapView.d.ts +7 -3
- package/dist/components/molecules/Modal.d.ts +2 -1
- package/dist/components/molecules/Pagination.d.ts +7 -2
- package/dist/components/molecules/SidePanel.d.ts +2 -1
- package/dist/components/molecules/Tabs.d.ts +4 -1
- package/dist/components/molecules/Toast.d.ts +3 -2
- package/dist/components/molecules/WizardProgress.d.ts +4 -1
- package/dist/components/molecules/game/ActionButtons.d.ts +5 -1
- package/dist/components/molecules/game/CraftingRecipe.d.ts +4 -1
- package/dist/components/molecules/game/DPad.d.ts +5 -1
- package/dist/components/molecules/game/DialogueBox.d.ts +7 -5
- package/dist/components/molecules/game/InventoryGrid.d.ts +4 -1
- package/dist/components/molecules/game/InventoryPanel.d.ts +12 -6
- package/dist/components/molecules/game/IsometricCanvas.d.ts +13 -4
- package/dist/components/molecules/game/PlatformerCanvas.d.ts +9 -4
- package/dist/components/organisms/GraphCanvas.d.ts +4 -2
- package/dist/components/organisms/MediaGallery.d.ts +4 -1
- package/dist/components/organisms/PageHeader.d.ts +2 -1
- package/dist/components/organisms/Sidebar.d.ts +6 -3
- package/dist/components/organisms/SignaturePad.d.ts +5 -2
- package/dist/components/organisms/game/BattleBoard.d.ts +20 -8
- package/dist/components/organisms/game/CanvasEffect.d.ts +2 -1
- package/dist/components/organisms/game/CastleBoard.d.ts +14 -3
- package/dist/components/organisms/game/GameCanvas3D.d.ts +52 -8
- package/dist/components/organisms/game/TraitSlot.d.ts +7 -2
- package/dist/components/organisms/game/WorldMapBoard.d.ts +22 -5
- package/dist/components/organisms/game/hooks/useBattleState.d.ts +19 -7
- package/dist/components/organisms/game/puzzles/builder/BuilderBoard.d.ts +5 -1
- package/dist/components/organisms/game/puzzles/classifier/ClassifierBoard.d.ts +5 -1
- package/dist/components/organisms/game/puzzles/debugger/DebuggerBoard.d.ts +5 -1
- package/dist/components/organisms/game/puzzles/event-handler/EventHandlerBoard.d.ts +5 -2
- package/dist/components/organisms/game/puzzles/negotiator/NegotiatorBoard.d.ts +5 -1
- package/dist/components/organisms/game/puzzles/sequencer/SequencerBoard.d.ts +8 -2
- package/dist/components/organisms/game/puzzles/simulator/SimulatorBoard.d.ts +5 -1
- package/dist/components/organisms/game/puzzles/state-architect/StateArchitectBoard.d.ts +6 -2
- package/dist/components/organisms/game/three/hooks/useGameCanvas3DEvents.d.ts +52 -8
- package/dist/providers/index.cjs +17 -13
- package/dist/providers/index.js +17 -13
- package/dist/runtime/index.cjs +17 -13
- package/dist/runtime/index.js +17 -13
- package/package.json +2 -2
package/dist/runtime/index.js
CHANGED
|
@@ -18423,6 +18423,7 @@ function formatValue(value, format) {
|
|
|
18423
18423
|
function DataGrid({
|
|
18424
18424
|
entity,
|
|
18425
18425
|
fields,
|
|
18426
|
+
columns,
|
|
18426
18427
|
itemActions,
|
|
18427
18428
|
cols,
|
|
18428
18429
|
gap = "md",
|
|
@@ -18444,6 +18445,7 @@ function DataGrid({
|
|
|
18444
18445
|
const { t } = useTranslate();
|
|
18445
18446
|
const [selectedIds, setSelectedIds] = useState(/* @__PURE__ */ new Set());
|
|
18446
18447
|
const [visibleCount, setVisibleCount] = useState(pageSize || Infinity);
|
|
18448
|
+
const fieldDefs = fields ?? columns ?? [];
|
|
18447
18449
|
const allData = Array.isArray(entity) ? entity : entity ? [entity] : [];
|
|
18448
18450
|
const data = pageSize > 0 ? allData.slice(0, visibleCount) : allData;
|
|
18449
18451
|
const hasMoreLocal = pageSize > 0 && visibleCount < allData.length;
|
|
@@ -18471,9 +18473,9 @@ function DataGrid({
|
|
|
18471
18473
|
return next;
|
|
18472
18474
|
});
|
|
18473
18475
|
}, [data, selectionEvent, eventBus]);
|
|
18474
|
-
const titleField =
|
|
18475
|
-
const badgeFields =
|
|
18476
|
-
const bodyFields =
|
|
18476
|
+
const titleField = fieldDefs.find((f3) => f3.variant === "h3" || f3.variant === "h4") ?? fieldDefs[0];
|
|
18477
|
+
const badgeFields = fieldDefs.filter((f3) => f3.variant === "badge" && f3 !== titleField);
|
|
18478
|
+
const bodyFields = fieldDefs.filter((f3) => f3 !== titleField && !badgeFields.includes(f3));
|
|
18477
18479
|
const primaryActions = itemActions?.filter((a) => a.variant !== "danger") ?? [];
|
|
18478
18480
|
const dangerActions = itemActions?.filter((a) => a.variant === "danger") ?? [];
|
|
18479
18481
|
const handleActionClick = (action, itemData) => (e) => {
|
|
@@ -18486,7 +18488,7 @@ function DataGrid({
|
|
|
18486
18488
|
};
|
|
18487
18489
|
const hasRenderProp = typeof children === "function";
|
|
18488
18490
|
useEffect(() => {
|
|
18489
|
-
if (data.length > 0 && !hasRenderProp &&
|
|
18491
|
+
if (data.length > 0 && !hasRenderProp && fieldDefs.length === 0) {
|
|
18490
18492
|
const renderItemRaw = schemaRenderItem;
|
|
18491
18493
|
const isFnLambda = Array.isArray(renderItemRaw) && renderItemRaw.length >= 3 && (renderItemRaw[0] === "fn" || renderItemRaw[0] === "lambda");
|
|
18492
18494
|
dataGridLog.warn("renderItem-unresolved", {
|
|
@@ -18494,7 +18496,7 @@ function DataGrid({
|
|
|
18494
18496
|
renderItemIsFnLambda: isFnLambda
|
|
18495
18497
|
});
|
|
18496
18498
|
}
|
|
18497
|
-
}, [data, hasRenderProp, schemaRenderItem,
|
|
18499
|
+
}, [data, hasRenderProp, schemaRenderItem, fieldDefs]);
|
|
18498
18500
|
const gridTemplateColumns = cols ? void 0 : `repeat(auto-fit, minmax(min(${minCardWidth}px, 100%), 1fr))`;
|
|
18499
18501
|
const colsClass = cols ? {
|
|
18500
18502
|
1: "grid-cols-1",
|
|
@@ -18799,6 +18801,7 @@ function groupData(items, field) {
|
|
|
18799
18801
|
function DataList({
|
|
18800
18802
|
entity,
|
|
18801
18803
|
fields,
|
|
18804
|
+
columns,
|
|
18802
18805
|
itemActions,
|
|
18803
18806
|
gap = "none",
|
|
18804
18807
|
variant = "default",
|
|
@@ -18828,6 +18831,7 @@ function DataList({
|
|
|
18828
18831
|
const eventBus = useEventBus();
|
|
18829
18832
|
const { t } = useTranslate();
|
|
18830
18833
|
const [visibleCount, setVisibleCount] = React113__default.useState(pageSize || Infinity);
|
|
18834
|
+
const fieldDefs = fields ?? columns ?? [];
|
|
18831
18835
|
const allData = Array.isArray(entity) ? entity : entity ? [entity] : [];
|
|
18832
18836
|
const data = pageSize > 0 ? allData.slice(0, visibleCount) : allData;
|
|
18833
18837
|
const hasMoreLocal = pageSize > 0 && visibleCount < allData.length;
|
|
@@ -18842,7 +18846,7 @@ function DataList({
|
|
|
18842
18846
|
const isFnLambda = Array.isArray(renderItemRaw) && renderItemRaw.length >= 3 && (renderItemRaw[0] === "fn" || renderItemRaw[0] === "lambda");
|
|
18843
18847
|
dataListLog.warn("renderItem-unresolved", {
|
|
18844
18848
|
rowCount: data.length,
|
|
18845
|
-
fieldsCount:
|
|
18849
|
+
fieldsCount: fieldDefs.length,
|
|
18846
18850
|
renderItemTypeOf,
|
|
18847
18851
|
renderItemIsArray: Array.isArray(renderItemRaw),
|
|
18848
18852
|
renderItemIsFnLambda: isFnLambda,
|
|
@@ -18851,11 +18855,11 @@ function DataList({
|
|
|
18851
18855
|
sampleRowKeys: sampleKeys
|
|
18852
18856
|
});
|
|
18853
18857
|
}
|
|
18854
|
-
}, [data, hasRenderProp, schemaRenderItem, children,
|
|
18855
|
-
const titleField =
|
|
18856
|
-
const badgeFields =
|
|
18857
|
-
const progressFields =
|
|
18858
|
-
const bodyFields =
|
|
18858
|
+
}, [data, hasRenderProp, schemaRenderItem, children, fieldDefs]);
|
|
18859
|
+
const titleField = fieldDefs.find((f3) => f3.variant === "h3" || f3.variant === "h4") ?? fieldDefs[0];
|
|
18860
|
+
const badgeFields = fieldDefs.filter((f3) => f3.variant === "badge" && f3 !== titleField);
|
|
18861
|
+
const progressFields = fieldDefs.filter((f3) => f3.variant === "progress");
|
|
18862
|
+
const bodyFields = fieldDefs.filter(
|
|
18859
18863
|
(f3) => f3 !== titleField && !badgeFields.includes(f3) && !progressFields.includes(f3)
|
|
18860
18864
|
);
|
|
18861
18865
|
const handleActionClick = (action, itemData) => (e) => {
|
|
@@ -18887,7 +18891,7 @@ function DataList({
|
|
|
18887
18891
|
if (isMessage) {
|
|
18888
18892
|
const items2 = data.map((item) => item);
|
|
18889
18893
|
const groups2 = groupBy ? groupData(items2, groupBy) : [{ label: "", items: items2 }];
|
|
18890
|
-
const contentField = titleField?.name ??
|
|
18894
|
+
const contentField = titleField?.name ?? fieldDefs[0]?.name ?? "";
|
|
18891
18895
|
return /* @__PURE__ */ jsx(VStack, { gap: "sm", className: cn("py-2", className), children: groups2.map((group, gi) => /* @__PURE__ */ jsxs(React113__default.Fragment, { children: [
|
|
18892
18896
|
group.label && /* @__PURE__ */ jsx(Divider, { label: group.label, className: "my-2" }),
|
|
18893
18897
|
group.items.map((itemData, index) => {
|
|
@@ -18895,7 +18899,7 @@ function DataList({
|
|
|
18895
18899
|
const sender = senderField ? String(getNestedValue(itemData, senderField) ?? "") : "";
|
|
18896
18900
|
const isSent = Boolean(currentUser && sender === currentUser);
|
|
18897
18901
|
const content = getNestedValue(itemData, contentField);
|
|
18898
|
-
const timestampField =
|
|
18902
|
+
const timestampField = fieldDefs.find((f3) => f3.format === "date");
|
|
18899
18903
|
const timestamp = timestampField ? getNestedValue(itemData, timestampField.name) : null;
|
|
18900
18904
|
return /* @__PURE__ */ jsx(
|
|
18901
18905
|
Box,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@almadar/ui",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.22.1",
|
|
4
4
|
"description": "React UI components, hooks, and providers for Almadar",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/components/index.js",
|
|
@@ -118,7 +118,7 @@
|
|
|
118
118
|
"access": "public"
|
|
119
119
|
},
|
|
120
120
|
"dependencies": {
|
|
121
|
-
"@almadar/core": "^7.
|
|
121
|
+
"@almadar/core": "^7.10.0",
|
|
122
122
|
"@almadar/evaluator": ">=2.9.2",
|
|
123
123
|
"@almadar/patterns": ">=2.17.1",
|
|
124
124
|
"@almadar/runtime": "^6.0.0",
|