@almadar/ui 5.40.0 → 5.41.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/avl/index.cjs +20 -2
- package/dist/avl/index.js +20 -2
- package/dist/components/game/atoms/ItemSlot.d.ts +5 -2
- package/dist/components/index.cjs +20 -2
- package/dist/components/index.js +20 -2
- package/dist/providers/index.cjs +20 -2
- package/dist/providers/index.js +20 -2
- package/dist/runtime/index.cjs +20 -2
- package/dist/runtime/index.js +20 -2
- package/package.json +1 -1
package/dist/avl/index.cjs
CHANGED
|
@@ -11225,6 +11225,7 @@ var init_ResourceCounter = __esm({
|
|
|
11225
11225
|
}
|
|
11226
11226
|
});
|
|
11227
11227
|
function ItemSlot({
|
|
11228
|
+
assetUrl = DEFAULT_ASSET_URL,
|
|
11228
11229
|
icon = "sword",
|
|
11229
11230
|
label = "Iron Sword",
|
|
11230
11231
|
quantity,
|
|
@@ -11236,6 +11237,7 @@ function ItemSlot({
|
|
|
11236
11237
|
className
|
|
11237
11238
|
}) {
|
|
11238
11239
|
const isClickable = onClick != null;
|
|
11240
|
+
const px = assetSizeMap[size];
|
|
11239
11241
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
11240
11242
|
"button",
|
|
11241
11243
|
{
|
|
@@ -11256,7 +11258,17 @@ function ItemSlot({
|
|
|
11256
11258
|
className
|
|
11257
11259
|
),
|
|
11258
11260
|
children: empty ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground text-base", children: "+" }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
11259
|
-
|
|
11261
|
+
assetUrl ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
11262
|
+
"img",
|
|
11263
|
+
{
|
|
11264
|
+
src: assetUrl,
|
|
11265
|
+
alt: label,
|
|
11266
|
+
width: px,
|
|
11267
|
+
height: px,
|
|
11268
|
+
style: { imageRendering: "pixelated", objectFit: "contain" },
|
|
11269
|
+
className: "flex-shrink-0"
|
|
11270
|
+
}
|
|
11271
|
+
) : icon ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex-shrink-0", children: typeof icon === "string" ? /* @__PURE__ */ jsxRuntime.jsx(Icon, { name: icon }) : /* @__PURE__ */ jsxRuntime.jsx(Icon, { icon }) }) : null,
|
|
11260
11272
|
quantity != null && quantity > 1 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
11261
11273
|
"span",
|
|
11262
11274
|
{
|
|
@@ -11272,7 +11284,7 @@ function ItemSlot({
|
|
|
11272
11284
|
}
|
|
11273
11285
|
);
|
|
11274
11286
|
}
|
|
11275
|
-
var sizeMap6, rarityBorderMap, rarityGlowMap;
|
|
11287
|
+
var sizeMap6, rarityBorderMap, rarityGlowMap, DEFAULT_ASSET_URL, assetSizeMap;
|
|
11276
11288
|
var init_ItemSlot = __esm({
|
|
11277
11289
|
"components/game/atoms/ItemSlot.tsx"() {
|
|
11278
11290
|
"use client";
|
|
@@ -11297,6 +11309,12 @@ var init_ItemSlot = __esm({
|
|
|
11297
11309
|
epic: "shadow-lg",
|
|
11298
11310
|
legendary: "shadow-lg"
|
|
11299
11311
|
};
|
|
11312
|
+
DEFAULT_ASSET_URL = "https://almadar-kflow-assets.web.app/shared/isometric-dungeon/Isometric/chestClosed_E.png";
|
|
11313
|
+
assetSizeMap = {
|
|
11314
|
+
sm: 28,
|
|
11315
|
+
md: 40,
|
|
11316
|
+
lg: 56
|
|
11317
|
+
};
|
|
11300
11318
|
ItemSlot.displayName = "ItemSlot";
|
|
11301
11319
|
}
|
|
11302
11320
|
});
|
package/dist/avl/index.js
CHANGED
|
@@ -11179,6 +11179,7 @@ var init_ResourceCounter = __esm({
|
|
|
11179
11179
|
}
|
|
11180
11180
|
});
|
|
11181
11181
|
function ItemSlot({
|
|
11182
|
+
assetUrl = DEFAULT_ASSET_URL,
|
|
11182
11183
|
icon = "sword",
|
|
11183
11184
|
label = "Iron Sword",
|
|
11184
11185
|
quantity,
|
|
@@ -11190,6 +11191,7 @@ function ItemSlot({
|
|
|
11190
11191
|
className
|
|
11191
11192
|
}) {
|
|
11192
11193
|
const isClickable = onClick != null;
|
|
11194
|
+
const px = assetSizeMap[size];
|
|
11193
11195
|
return /* @__PURE__ */ jsx(
|
|
11194
11196
|
"button",
|
|
11195
11197
|
{
|
|
@@ -11210,7 +11212,17 @@ function ItemSlot({
|
|
|
11210
11212
|
className
|
|
11211
11213
|
),
|
|
11212
11214
|
children: empty ? /* @__PURE__ */ jsx("span", { className: "text-muted-foreground text-base", children: "+" }) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
11213
|
-
|
|
11215
|
+
assetUrl ? /* @__PURE__ */ jsx(
|
|
11216
|
+
"img",
|
|
11217
|
+
{
|
|
11218
|
+
src: assetUrl,
|
|
11219
|
+
alt: label,
|
|
11220
|
+
width: px,
|
|
11221
|
+
height: px,
|
|
11222
|
+
style: { imageRendering: "pixelated", objectFit: "contain" },
|
|
11223
|
+
className: "flex-shrink-0"
|
|
11224
|
+
}
|
|
11225
|
+
) : icon ? /* @__PURE__ */ jsx("span", { className: "flex-shrink-0", children: typeof icon === "string" ? /* @__PURE__ */ jsx(Icon, { name: icon }) : /* @__PURE__ */ jsx(Icon, { icon }) }) : null,
|
|
11214
11226
|
quantity != null && quantity > 1 && /* @__PURE__ */ jsx(
|
|
11215
11227
|
"span",
|
|
11216
11228
|
{
|
|
@@ -11226,7 +11238,7 @@ function ItemSlot({
|
|
|
11226
11238
|
}
|
|
11227
11239
|
);
|
|
11228
11240
|
}
|
|
11229
|
-
var sizeMap6, rarityBorderMap, rarityGlowMap;
|
|
11241
|
+
var sizeMap6, rarityBorderMap, rarityGlowMap, DEFAULT_ASSET_URL, assetSizeMap;
|
|
11230
11242
|
var init_ItemSlot = __esm({
|
|
11231
11243
|
"components/game/atoms/ItemSlot.tsx"() {
|
|
11232
11244
|
"use client";
|
|
@@ -11251,6 +11263,12 @@ var init_ItemSlot = __esm({
|
|
|
11251
11263
|
epic: "shadow-lg",
|
|
11252
11264
|
legendary: "shadow-lg"
|
|
11253
11265
|
};
|
|
11266
|
+
DEFAULT_ASSET_URL = "https://almadar-kflow-assets.web.app/shared/isometric-dungeon/Isometric/chestClosed_E.png";
|
|
11267
|
+
assetSizeMap = {
|
|
11268
|
+
sm: 28,
|
|
11269
|
+
md: 40,
|
|
11270
|
+
lg: 56
|
|
11271
|
+
};
|
|
11254
11272
|
ItemSlot.displayName = "ItemSlot";
|
|
11255
11273
|
}
|
|
11256
11274
|
});
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { type IconInput } from '../../core/atoms/Icon';
|
|
2
|
+
import type { AssetUrl } from '@almadar/core';
|
|
2
3
|
export interface ItemSlotProps {
|
|
3
|
-
/**
|
|
4
|
+
/** Sprite image URL — takes precedence over icon when provided */
|
|
5
|
+
assetUrl?: AssetUrl;
|
|
6
|
+
/** Icon component or emoji — shown only when assetUrl is absent */
|
|
4
7
|
icon?: IconInput;
|
|
5
8
|
/** Item label */
|
|
6
9
|
label?: string;
|
|
@@ -19,7 +22,7 @@ export interface ItemSlotProps {
|
|
|
19
22
|
/** Additional CSS classes */
|
|
20
23
|
className?: string;
|
|
21
24
|
}
|
|
22
|
-
export declare function ItemSlot({ icon, label, quantity, rarity, empty, size, selected, onClick, className, }: ItemSlotProps): import("react/jsx-runtime").JSX.Element;
|
|
25
|
+
export declare function ItemSlot({ assetUrl, icon, label, quantity, rarity, empty, size, selected, onClick, className, }: ItemSlotProps): import("react/jsx-runtime").JSX.Element;
|
|
23
26
|
export declare namespace ItemSlot {
|
|
24
27
|
var displayName: string;
|
|
25
28
|
}
|
|
@@ -20649,6 +20649,7 @@ var init_CounterTemplate = __esm({
|
|
|
20649
20649
|
}
|
|
20650
20650
|
});
|
|
20651
20651
|
function ItemSlot({
|
|
20652
|
+
assetUrl = DEFAULT_ASSET_URL,
|
|
20652
20653
|
icon = "sword",
|
|
20653
20654
|
label = "Iron Sword",
|
|
20654
20655
|
quantity,
|
|
@@ -20660,6 +20661,7 @@ function ItemSlot({
|
|
|
20660
20661
|
className
|
|
20661
20662
|
}) {
|
|
20662
20663
|
const isClickable = onClick != null;
|
|
20664
|
+
const px = assetSizeMap[size];
|
|
20663
20665
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
20664
20666
|
"button",
|
|
20665
20667
|
{
|
|
@@ -20680,7 +20682,17 @@ function ItemSlot({
|
|
|
20680
20682
|
className
|
|
20681
20683
|
),
|
|
20682
20684
|
children: empty ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground text-base", children: "+" }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
20683
|
-
|
|
20685
|
+
assetUrl ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
20686
|
+
"img",
|
|
20687
|
+
{
|
|
20688
|
+
src: assetUrl,
|
|
20689
|
+
alt: label,
|
|
20690
|
+
width: px,
|
|
20691
|
+
height: px,
|
|
20692
|
+
style: { imageRendering: "pixelated", objectFit: "contain" },
|
|
20693
|
+
className: "flex-shrink-0"
|
|
20694
|
+
}
|
|
20695
|
+
) : icon ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex-shrink-0", children: typeof icon === "string" ? /* @__PURE__ */ jsxRuntime.jsx(exports.Icon, { name: icon }) : /* @__PURE__ */ jsxRuntime.jsx(exports.Icon, { icon }) }) : null,
|
|
20684
20696
|
quantity != null && quantity > 1 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
20685
20697
|
"span",
|
|
20686
20698
|
{
|
|
@@ -20696,7 +20708,7 @@ function ItemSlot({
|
|
|
20696
20708
|
}
|
|
20697
20709
|
);
|
|
20698
20710
|
}
|
|
20699
|
-
var sizeMap5, rarityBorderMap, rarityGlowMap;
|
|
20711
|
+
var sizeMap5, rarityBorderMap, rarityGlowMap, DEFAULT_ASSET_URL, assetSizeMap;
|
|
20700
20712
|
var init_ItemSlot = __esm({
|
|
20701
20713
|
"components/game/atoms/ItemSlot.tsx"() {
|
|
20702
20714
|
"use client";
|
|
@@ -20721,6 +20733,12 @@ var init_ItemSlot = __esm({
|
|
|
20721
20733
|
epic: "shadow-lg",
|
|
20722
20734
|
legendary: "shadow-lg"
|
|
20723
20735
|
};
|
|
20736
|
+
DEFAULT_ASSET_URL = "https://almadar-kflow-assets.web.app/shared/isometric-dungeon/Isometric/chestClosed_E.png";
|
|
20737
|
+
assetSizeMap = {
|
|
20738
|
+
sm: 28,
|
|
20739
|
+
md: 40,
|
|
20740
|
+
lg: 56
|
|
20741
|
+
};
|
|
20724
20742
|
ItemSlot.displayName = "ItemSlot";
|
|
20725
20743
|
}
|
|
20726
20744
|
});
|
package/dist/components/index.js
CHANGED
|
@@ -20604,6 +20604,7 @@ var init_CounterTemplate = __esm({
|
|
|
20604
20604
|
}
|
|
20605
20605
|
});
|
|
20606
20606
|
function ItemSlot({
|
|
20607
|
+
assetUrl = DEFAULT_ASSET_URL,
|
|
20607
20608
|
icon = "sword",
|
|
20608
20609
|
label = "Iron Sword",
|
|
20609
20610
|
quantity,
|
|
@@ -20615,6 +20616,7 @@ function ItemSlot({
|
|
|
20615
20616
|
className
|
|
20616
20617
|
}) {
|
|
20617
20618
|
const isClickable = onClick != null;
|
|
20619
|
+
const px = assetSizeMap[size];
|
|
20618
20620
|
return /* @__PURE__ */ jsx(
|
|
20619
20621
|
"button",
|
|
20620
20622
|
{
|
|
@@ -20635,7 +20637,17 @@ function ItemSlot({
|
|
|
20635
20637
|
className
|
|
20636
20638
|
),
|
|
20637
20639
|
children: empty ? /* @__PURE__ */ jsx("span", { className: "text-muted-foreground text-base", children: "+" }) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
20638
|
-
|
|
20640
|
+
assetUrl ? /* @__PURE__ */ jsx(
|
|
20641
|
+
"img",
|
|
20642
|
+
{
|
|
20643
|
+
src: assetUrl,
|
|
20644
|
+
alt: label,
|
|
20645
|
+
width: px,
|
|
20646
|
+
height: px,
|
|
20647
|
+
style: { imageRendering: "pixelated", objectFit: "contain" },
|
|
20648
|
+
className: "flex-shrink-0"
|
|
20649
|
+
}
|
|
20650
|
+
) : icon ? /* @__PURE__ */ jsx("span", { className: "flex-shrink-0", children: typeof icon === "string" ? /* @__PURE__ */ jsx(Icon, { name: icon }) : /* @__PURE__ */ jsx(Icon, { icon }) }) : null,
|
|
20639
20651
|
quantity != null && quantity > 1 && /* @__PURE__ */ jsx(
|
|
20640
20652
|
"span",
|
|
20641
20653
|
{
|
|
@@ -20651,7 +20663,7 @@ function ItemSlot({
|
|
|
20651
20663
|
}
|
|
20652
20664
|
);
|
|
20653
20665
|
}
|
|
20654
|
-
var sizeMap5, rarityBorderMap, rarityGlowMap;
|
|
20666
|
+
var sizeMap5, rarityBorderMap, rarityGlowMap, DEFAULT_ASSET_URL, assetSizeMap;
|
|
20655
20667
|
var init_ItemSlot = __esm({
|
|
20656
20668
|
"components/game/atoms/ItemSlot.tsx"() {
|
|
20657
20669
|
"use client";
|
|
@@ -20676,6 +20688,12 @@ var init_ItemSlot = __esm({
|
|
|
20676
20688
|
epic: "shadow-lg",
|
|
20677
20689
|
legendary: "shadow-lg"
|
|
20678
20690
|
};
|
|
20691
|
+
DEFAULT_ASSET_URL = "https://almadar-kflow-assets.web.app/shared/isometric-dungeon/Isometric/chestClosed_E.png";
|
|
20692
|
+
assetSizeMap = {
|
|
20693
|
+
sm: 28,
|
|
20694
|
+
md: 40,
|
|
20695
|
+
lg: 56
|
|
20696
|
+
};
|
|
20679
20697
|
ItemSlot.displayName = "ItemSlot";
|
|
20680
20698
|
}
|
|
20681
20699
|
});
|
package/dist/providers/index.cjs
CHANGED
|
@@ -7575,6 +7575,7 @@ var init_ResourceCounter = __esm({
|
|
|
7575
7575
|
}
|
|
7576
7576
|
});
|
|
7577
7577
|
function ItemSlot({
|
|
7578
|
+
assetUrl = DEFAULT_ASSET_URL,
|
|
7578
7579
|
icon = "sword",
|
|
7579
7580
|
label = "Iron Sword",
|
|
7580
7581
|
quantity,
|
|
@@ -7586,6 +7587,7 @@ function ItemSlot({
|
|
|
7586
7587
|
className
|
|
7587
7588
|
}) {
|
|
7588
7589
|
const isClickable = onClick != null;
|
|
7590
|
+
const px = assetSizeMap[size];
|
|
7589
7591
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
7590
7592
|
"button",
|
|
7591
7593
|
{
|
|
@@ -7606,7 +7608,17 @@ function ItemSlot({
|
|
|
7606
7608
|
className
|
|
7607
7609
|
),
|
|
7608
7610
|
children: empty ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground text-base", children: "+" }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
7609
|
-
|
|
7611
|
+
assetUrl ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
7612
|
+
"img",
|
|
7613
|
+
{
|
|
7614
|
+
src: assetUrl,
|
|
7615
|
+
alt: label,
|
|
7616
|
+
width: px,
|
|
7617
|
+
height: px,
|
|
7618
|
+
style: { imageRendering: "pixelated", objectFit: "contain" },
|
|
7619
|
+
className: "flex-shrink-0"
|
|
7620
|
+
}
|
|
7621
|
+
) : icon ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex-shrink-0", children: typeof icon === "string" ? /* @__PURE__ */ jsxRuntime.jsx(Icon, { name: icon }) : /* @__PURE__ */ jsxRuntime.jsx(Icon, { icon }) }) : null,
|
|
7610
7622
|
quantity != null && quantity > 1 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
7611
7623
|
"span",
|
|
7612
7624
|
{
|
|
@@ -7622,7 +7634,7 @@ function ItemSlot({
|
|
|
7622
7634
|
}
|
|
7623
7635
|
);
|
|
7624
7636
|
}
|
|
7625
|
-
var sizeMap6, rarityBorderMap, rarityGlowMap;
|
|
7637
|
+
var sizeMap6, rarityBorderMap, rarityGlowMap, DEFAULT_ASSET_URL, assetSizeMap;
|
|
7626
7638
|
var init_ItemSlot = __esm({
|
|
7627
7639
|
"components/game/atoms/ItemSlot.tsx"() {
|
|
7628
7640
|
"use client";
|
|
@@ -7647,6 +7659,12 @@ var init_ItemSlot = __esm({
|
|
|
7647
7659
|
epic: "shadow-lg",
|
|
7648
7660
|
legendary: "shadow-lg"
|
|
7649
7661
|
};
|
|
7662
|
+
DEFAULT_ASSET_URL = "https://almadar-kflow-assets.web.app/shared/isometric-dungeon/Isometric/chestClosed_E.png";
|
|
7663
|
+
assetSizeMap = {
|
|
7664
|
+
sm: 28,
|
|
7665
|
+
md: 40,
|
|
7666
|
+
lg: 56
|
|
7667
|
+
};
|
|
7650
7668
|
ItemSlot.displayName = "ItemSlot";
|
|
7651
7669
|
}
|
|
7652
7670
|
});
|
package/dist/providers/index.js
CHANGED
|
@@ -7529,6 +7529,7 @@ var init_ResourceCounter = __esm({
|
|
|
7529
7529
|
}
|
|
7530
7530
|
});
|
|
7531
7531
|
function ItemSlot({
|
|
7532
|
+
assetUrl = DEFAULT_ASSET_URL,
|
|
7532
7533
|
icon = "sword",
|
|
7533
7534
|
label = "Iron Sword",
|
|
7534
7535
|
quantity,
|
|
@@ -7540,6 +7541,7 @@ function ItemSlot({
|
|
|
7540
7541
|
className
|
|
7541
7542
|
}) {
|
|
7542
7543
|
const isClickable = onClick != null;
|
|
7544
|
+
const px = assetSizeMap[size];
|
|
7543
7545
|
return /* @__PURE__ */ jsx(
|
|
7544
7546
|
"button",
|
|
7545
7547
|
{
|
|
@@ -7560,7 +7562,17 @@ function ItemSlot({
|
|
|
7560
7562
|
className
|
|
7561
7563
|
),
|
|
7562
7564
|
children: empty ? /* @__PURE__ */ jsx("span", { className: "text-muted-foreground text-base", children: "+" }) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
7563
|
-
|
|
7565
|
+
assetUrl ? /* @__PURE__ */ jsx(
|
|
7566
|
+
"img",
|
|
7567
|
+
{
|
|
7568
|
+
src: assetUrl,
|
|
7569
|
+
alt: label,
|
|
7570
|
+
width: px,
|
|
7571
|
+
height: px,
|
|
7572
|
+
style: { imageRendering: "pixelated", objectFit: "contain" },
|
|
7573
|
+
className: "flex-shrink-0"
|
|
7574
|
+
}
|
|
7575
|
+
) : icon ? /* @__PURE__ */ jsx("span", { className: "flex-shrink-0", children: typeof icon === "string" ? /* @__PURE__ */ jsx(Icon, { name: icon }) : /* @__PURE__ */ jsx(Icon, { icon }) }) : null,
|
|
7564
7576
|
quantity != null && quantity > 1 && /* @__PURE__ */ jsx(
|
|
7565
7577
|
"span",
|
|
7566
7578
|
{
|
|
@@ -7576,7 +7588,7 @@ function ItemSlot({
|
|
|
7576
7588
|
}
|
|
7577
7589
|
);
|
|
7578
7590
|
}
|
|
7579
|
-
var sizeMap6, rarityBorderMap, rarityGlowMap;
|
|
7591
|
+
var sizeMap6, rarityBorderMap, rarityGlowMap, DEFAULT_ASSET_URL, assetSizeMap;
|
|
7580
7592
|
var init_ItemSlot = __esm({
|
|
7581
7593
|
"components/game/atoms/ItemSlot.tsx"() {
|
|
7582
7594
|
"use client";
|
|
@@ -7601,6 +7613,12 @@ var init_ItemSlot = __esm({
|
|
|
7601
7613
|
epic: "shadow-lg",
|
|
7602
7614
|
legendary: "shadow-lg"
|
|
7603
7615
|
};
|
|
7616
|
+
DEFAULT_ASSET_URL = "https://almadar-kflow-assets.web.app/shared/isometric-dungeon/Isometric/chestClosed_E.png";
|
|
7617
|
+
assetSizeMap = {
|
|
7618
|
+
sm: 28,
|
|
7619
|
+
md: 40,
|
|
7620
|
+
lg: 56
|
|
7621
|
+
};
|
|
7604
7622
|
ItemSlot.displayName = "ItemSlot";
|
|
7605
7623
|
}
|
|
7606
7624
|
});
|
package/dist/runtime/index.cjs
CHANGED
|
@@ -7486,6 +7486,7 @@ var init_ResourceCounter = __esm({
|
|
|
7486
7486
|
}
|
|
7487
7487
|
});
|
|
7488
7488
|
function ItemSlot({
|
|
7489
|
+
assetUrl = DEFAULT_ASSET_URL,
|
|
7489
7490
|
icon = "sword",
|
|
7490
7491
|
label = "Iron Sword",
|
|
7491
7492
|
quantity,
|
|
@@ -7497,6 +7498,7 @@ function ItemSlot({
|
|
|
7497
7498
|
className
|
|
7498
7499
|
}) {
|
|
7499
7500
|
const isClickable = onClick != null;
|
|
7501
|
+
const px = assetSizeMap[size];
|
|
7500
7502
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
7501
7503
|
"button",
|
|
7502
7504
|
{
|
|
@@ -7517,7 +7519,17 @@ function ItemSlot({
|
|
|
7517
7519
|
className
|
|
7518
7520
|
),
|
|
7519
7521
|
children: empty ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground text-base", children: "+" }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
7520
|
-
|
|
7522
|
+
assetUrl ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
7523
|
+
"img",
|
|
7524
|
+
{
|
|
7525
|
+
src: assetUrl,
|
|
7526
|
+
alt: label,
|
|
7527
|
+
width: px,
|
|
7528
|
+
height: px,
|
|
7529
|
+
style: { imageRendering: "pixelated", objectFit: "contain" },
|
|
7530
|
+
className: "flex-shrink-0"
|
|
7531
|
+
}
|
|
7532
|
+
) : icon ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex-shrink-0", children: typeof icon === "string" ? /* @__PURE__ */ jsxRuntime.jsx(Icon, { name: icon }) : /* @__PURE__ */ jsxRuntime.jsx(Icon, { icon }) }) : null,
|
|
7521
7533
|
quantity != null && quantity > 1 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
7522
7534
|
"span",
|
|
7523
7535
|
{
|
|
@@ -7533,7 +7545,7 @@ function ItemSlot({
|
|
|
7533
7545
|
}
|
|
7534
7546
|
);
|
|
7535
7547
|
}
|
|
7536
|
-
var sizeMap6, rarityBorderMap, rarityGlowMap;
|
|
7548
|
+
var sizeMap6, rarityBorderMap, rarityGlowMap, DEFAULT_ASSET_URL, assetSizeMap;
|
|
7537
7549
|
var init_ItemSlot = __esm({
|
|
7538
7550
|
"components/game/atoms/ItemSlot.tsx"() {
|
|
7539
7551
|
"use client";
|
|
@@ -7558,6 +7570,12 @@ var init_ItemSlot = __esm({
|
|
|
7558
7570
|
epic: "shadow-lg",
|
|
7559
7571
|
legendary: "shadow-lg"
|
|
7560
7572
|
};
|
|
7573
|
+
DEFAULT_ASSET_URL = "https://almadar-kflow-assets.web.app/shared/isometric-dungeon/Isometric/chestClosed_E.png";
|
|
7574
|
+
assetSizeMap = {
|
|
7575
|
+
sm: 28,
|
|
7576
|
+
md: 40,
|
|
7577
|
+
lg: 56
|
|
7578
|
+
};
|
|
7561
7579
|
ItemSlot.displayName = "ItemSlot";
|
|
7562
7580
|
}
|
|
7563
7581
|
});
|
package/dist/runtime/index.js
CHANGED
|
@@ -7440,6 +7440,7 @@ var init_ResourceCounter = __esm({
|
|
|
7440
7440
|
}
|
|
7441
7441
|
});
|
|
7442
7442
|
function ItemSlot({
|
|
7443
|
+
assetUrl = DEFAULT_ASSET_URL,
|
|
7443
7444
|
icon = "sword",
|
|
7444
7445
|
label = "Iron Sword",
|
|
7445
7446
|
quantity,
|
|
@@ -7451,6 +7452,7 @@ function ItemSlot({
|
|
|
7451
7452
|
className
|
|
7452
7453
|
}) {
|
|
7453
7454
|
const isClickable = onClick != null;
|
|
7455
|
+
const px = assetSizeMap[size];
|
|
7454
7456
|
return /* @__PURE__ */ jsx(
|
|
7455
7457
|
"button",
|
|
7456
7458
|
{
|
|
@@ -7471,7 +7473,17 @@ function ItemSlot({
|
|
|
7471
7473
|
className
|
|
7472
7474
|
),
|
|
7473
7475
|
children: empty ? /* @__PURE__ */ jsx("span", { className: "text-muted-foreground text-base", children: "+" }) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
7474
|
-
|
|
7476
|
+
assetUrl ? /* @__PURE__ */ jsx(
|
|
7477
|
+
"img",
|
|
7478
|
+
{
|
|
7479
|
+
src: assetUrl,
|
|
7480
|
+
alt: label,
|
|
7481
|
+
width: px,
|
|
7482
|
+
height: px,
|
|
7483
|
+
style: { imageRendering: "pixelated", objectFit: "contain" },
|
|
7484
|
+
className: "flex-shrink-0"
|
|
7485
|
+
}
|
|
7486
|
+
) : icon ? /* @__PURE__ */ jsx("span", { className: "flex-shrink-0", children: typeof icon === "string" ? /* @__PURE__ */ jsx(Icon, { name: icon }) : /* @__PURE__ */ jsx(Icon, { icon }) }) : null,
|
|
7475
7487
|
quantity != null && quantity > 1 && /* @__PURE__ */ jsx(
|
|
7476
7488
|
"span",
|
|
7477
7489
|
{
|
|
@@ -7487,7 +7499,7 @@ function ItemSlot({
|
|
|
7487
7499
|
}
|
|
7488
7500
|
);
|
|
7489
7501
|
}
|
|
7490
|
-
var sizeMap6, rarityBorderMap, rarityGlowMap;
|
|
7502
|
+
var sizeMap6, rarityBorderMap, rarityGlowMap, DEFAULT_ASSET_URL, assetSizeMap;
|
|
7491
7503
|
var init_ItemSlot = __esm({
|
|
7492
7504
|
"components/game/atoms/ItemSlot.tsx"() {
|
|
7493
7505
|
"use client";
|
|
@@ -7512,6 +7524,12 @@ var init_ItemSlot = __esm({
|
|
|
7512
7524
|
epic: "shadow-lg",
|
|
7513
7525
|
legendary: "shadow-lg"
|
|
7514
7526
|
};
|
|
7527
|
+
DEFAULT_ASSET_URL = "https://almadar-kflow-assets.web.app/shared/isometric-dungeon/Isometric/chestClosed_E.png";
|
|
7528
|
+
assetSizeMap = {
|
|
7529
|
+
sm: 28,
|
|
7530
|
+
md: 40,
|
|
7531
|
+
lg: 56
|
|
7532
|
+
};
|
|
7515
7533
|
ItemSlot.displayName = "ItemSlot";
|
|
7516
7534
|
}
|
|
7517
7535
|
});
|