@valpro-labs/ui 1.9.16 → 1.9.18
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/components/blocks/bundle-card.d.ts +2 -2
- package/dist/components/blocks/bundle-card.d.ts.map +1 -1
- package/dist/components/blocks/bundle-card.js +3 -3
- package/dist/components/blocks/bundle-card.js.map +1 -1
- package/dist/components/blocks/skin-tile.js +1 -1
- package/dist/components/blocks/skin-tile.js.map +1 -1
- package/package.json +1 -1
|
@@ -8,7 +8,7 @@ interface BundleCardProps {
|
|
|
8
8
|
currencyIconUrl?: string;
|
|
9
9
|
/** Total price in the bundle's currency. */
|
|
10
10
|
price?: number;
|
|
11
|
-
/** Pre-formatted countdown text (e.g. `"2h 3m"`). Rendered
|
|
11
|
+
/** Pre-formatted countdown text (e.g. `"2h 3m"`). Rendered over the image. */
|
|
12
12
|
countdownText?: string;
|
|
13
13
|
/** Layout: `list` (default) vs `grid` (tighter padding + smaller text). */
|
|
14
14
|
variant?: 'list' | 'grid';
|
|
@@ -25,7 +25,7 @@ interface BundleCardProps {
|
|
|
25
25
|
}
|
|
26
26
|
/**
|
|
27
27
|
* Store bundle tile — hero art fills the card, info bar is pinned to the
|
|
28
|
-
* bottom edge with bundle name
|
|
28
|
+
* bottom edge with bundle name and total price.
|
|
29
29
|
*
|
|
30
30
|
* Data-free: the consumer resolves bundle/currency assets and passes
|
|
31
31
|
* URLs + strings. Countdown text is pre-formatted so this component
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle-card.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/bundle-card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAW/B,UAAU,eAAe;IACvB,2BAA2B;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uCAAuC;IACvC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8EAA8E;IAC9E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2EAA2E;IAC3E,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,sEAAsE;IACtE,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,oFAAoF;IACpF,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC/B,mFAAmF;IACnF,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAClC,8DAA8D;IAC9D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wDAAwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,iBAAS,UAAU,CAAC,EAClB,IAAI,EACJ,OAAO,EACP,eAAe,EACf,KAAK,EACL,aAAa,EACb,OAAgB,EAChB,OAAO,EACP,YAAY,EACZ,eAAe,EACf,SAAiB,EACjB,SAAS,GACV,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"bundle-card.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/bundle-card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAW/B,UAAU,eAAe;IACvB,2BAA2B;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uCAAuC;IACvC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8EAA8E;IAC9E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2EAA2E;IAC3E,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,sEAAsE;IACtE,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,oFAAoF;IACpF,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC/B,mFAAmF;IACnF,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAClC,8DAA8D;IAC9D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wDAAwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,iBAAS,UAAU,CAAC,EAClB,IAAI,EACJ,OAAO,EACP,eAAe,EACf,KAAK,EACL,aAAa,EACb,OAAgB,EAChB,OAAO,EACP,YAAY,EACZ,eAAe,EACf,SAAiB,EACjB,SAAS,GACV,EAAE,eAAe,2CA6FjB;AAED,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,YAAY,EAAE,eAAe,EAAE,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { Pressable, View } from 'react-native';
|
|
3
3
|
import { useCSSVariable } from 'uniwind';
|
|
4
4
|
import { Image } from '../../components/ui/image';
|
|
@@ -7,7 +7,7 @@ import { Text } from '../../components/ui/text';
|
|
|
7
7
|
import { cn } from '../../lib/utils';
|
|
8
8
|
/**
|
|
9
9
|
* Store bundle tile — hero art fills the card, info bar is pinned to the
|
|
10
|
-
* bottom edge with bundle name
|
|
10
|
+
* bottom edge with bundle name and total price.
|
|
11
11
|
*
|
|
12
12
|
* Data-free: the consumer resolves bundle/currency assets and passes
|
|
13
13
|
* URLs + strings. Countdown text is pre-formatted so this component
|
|
@@ -20,7 +20,7 @@ function BundleCard({ name, iconUrl, currencyIconUrl, price, countdownText, vari
|
|
|
20
20
|
if (isLoading) {
|
|
21
21
|
return _jsx(Skeleton, { className: cn('aspect-video w-full rounded-xl', className) });
|
|
22
22
|
}
|
|
23
|
-
const card = (_jsxs(View, { className: cn('bg-card aspect-video overflow-hidden rounded-xl', className), children: [_jsxs(View, { className: "bg-val-blue relative flex-1 items-center justify-center overflow-hidden", children: [iconUrl ? (_jsx(Image, { source: iconUrl, style: { width: '100%', height: '100%' } })) : null, imageOverlay, !iconUrl && missingFallback ? (_jsx(View, { className: "absolute inset-0 items-center justify-center", style: { backgroundColor: 'rgba(0,0,0,0.6)' }, children: missingFallback })) : null
|
|
23
|
+
const card = (_jsxs(View, { className: cn('bg-card aspect-video overflow-hidden rounded-xl', className), children: [_jsxs(View, { className: "bg-val-blue relative flex-1 items-center justify-center overflow-hidden", children: [iconUrl ? (_jsx(Image, { source: iconUrl, style: { width: '100%', height: '100%' } })) : null, imageOverlay, !iconUrl && missingFallback ? (_jsx(View, { className: "absolute inset-0 items-center justify-center", style: { backgroundColor: 'rgba(0,0,0,0.6)' }, children: missingFallback })) : null, countdownText ? (_jsx(View, { className: cn('absolute rounded-md bg-black/60', isGrid ? 'right-1.5 bottom-1.5 px-1.5 py-0.5' : 'right-2 bottom-2 px-2 py-1'), children: _jsx(Text, { className: cn('text-val-white font-semibold tabular-nums', isGrid ? 'text-xs' : 'text-sm'), numberOfLines: 1, children: countdownText }) })) : null] }), _jsxs(View, { className: cn('flex-row items-center justify-between', isGrid ? 'gap-1.5 px-2 py-1.5' : 'gap-3 px-3 py-2'), children: [_jsx(View, { className: "min-w-0 flex-1 flex-row items-center gap-1.5", children: _jsx(Text, { className: cn('text-foreground min-w-0 flex-1 font-semibold tracking-tight uppercase', isGrid ? 'text-sm' : 'text-base'), numberOfLines: 1, children: name }) }), price !== undefined && (_jsxs(View, { className: cn('shrink-0 flex-row items-center', isGrid ? 'gap-0.5' : 'gap-1'), children: [currencyIconUrl ? (_jsx(Image, { source: currencyIconUrl, style: {
|
|
24
24
|
width: isGrid ? 12 : 16,
|
|
25
25
|
height: isGrid ? 12 : 16,
|
|
26
26
|
tintColor: foreground,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle-card.js","sourceRoot":"","sources":["../../../src/components/blocks/bundle-card.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AA2BjC;;;;;;;GAOG;AACH,SAAS,UAAU,CAAC,EAClB,IAAI,EACJ,OAAO,EACP,eAAe,EACf,KAAK,EACL,aAAa,EACb,OAAO,GAAG,MAAM,EAChB,OAAO,EACP,YAAY,EACZ,eAAe,EACf,SAAS,GAAG,KAAK,EACjB,SAAS,GACO;IAChB,MAAM,aAAa,GAAG,cAAc,CAAC,oBAAoB,CAAC,CAAC;IAC3D,MAAM,UAAU,GAAG,OAAO,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;IACjF,MAAM,MAAM,GAAG,OAAO,KAAK,MAAM,CAAC;IAElC,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,KAAC,QAAQ,IAAC,SAAS,EAAE,EAAE,CAAC,gCAAgC,EAAE,SAAS,CAAC,GAAI,CAAC;IAClF,CAAC;IAED,MAAM,IAAI,GAAG,CACX,MAAC,IAAI,IAAC,SAAS,EAAE,EAAE,CAAC,iDAAiD,EAAE,SAAS,CAAC,aAE/E,MAAC,IAAI,IAAC,SAAS,EAAC,yEAAyE,aACtF,OAAO,CAAC,CAAC,CAAC,CACT,KAAC,KAAK,IAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAI,CACrE,CAAC,CAAC,CAAC,IAAI,EACP,YAAY,EACZ,CAAC,OAAO,IAAI,eAAe,CAAC,CAAC,CAAC,CAC7B,KAAC,IAAI,IACH,SAAS,EAAC,8CAA8C,EACxD,KAAK,EAAE,EAAE,eAAe,EAAE,iBAAiB,EAAE,YAC5C,eAAe,GACX,CACR,CAAC,CAAC,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"bundle-card.js","sourceRoot":"","sources":["../../../src/components/blocks/bundle-card.tsx"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ import { cn } from '../../lib/utils';
|
|
|
13
13
|
* `<Pressable>` wrapper for tap handling.
|
|
14
14
|
*/
|
|
15
15
|
function SkinTile({ swatchUrl, isSelected = false, stateIcon, favoriteBadge, className, }) {
|
|
16
|
-
return (_jsxs(View, { className: cn('bg-card relative items-center justify-center overflow-hidden rounded-lg', isSelected && 'ring-val-
|
|
16
|
+
return (_jsxs(View, { className: cn('bg-card relative items-center justify-center overflow-hidden rounded-lg', isSelected && 'ring-val-red ring-2', className), style: { width: 48, height: 48 }, children: [swatchUrl ? (_jsx(Image, { source: swatchUrl, style: { width: '100%', height: '100%' }, contentFit: "cover" })) : null, isSelected ? (_jsx(View, { className: "bg-val-red/20 absolute inset-0", pointerEvents: "none" })) : null, _jsx(View, { className: "absolute inset-0 items-center justify-center", children: _jsx(View, { className: "items-center justify-center", style: {
|
|
17
17
|
width: 20,
|
|
18
18
|
height: 20,
|
|
19
19
|
transform: [{ rotate: '45deg' }],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skin-tile.js","sourceRoot":"","sources":["../../../src/components/blocks/skin-tile.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AA2BjC;;;;;;;;;GASG;AACH,SAAS,QAAQ,CAAC,EAChB,SAAS,EACT,UAAU,GAAG,KAAK,EAClB,SAAS,EACT,aAAa,EACb,SAAS,GACK;IACd,OAAO,CACL,MAAC,IAAI,IACH,SAAS,EAAE,EAAE,CACX,yEAAyE,EACzE,UAAU,IAAI,
|
|
1
|
+
{"version":3,"file":"skin-tile.js","sourceRoot":"","sources":["../../../src/components/blocks/skin-tile.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AA2BjC;;;;;;;;;GASG;AACH,SAAS,QAAQ,CAAC,EAChB,SAAS,EACT,UAAU,GAAG,KAAK,EAClB,SAAS,EACT,aAAa,EACb,SAAS,GACK;IACd,OAAO,CACL,MAAC,IAAI,IACH,SAAS,EAAE,EAAE,CACX,yEAAyE,EACzE,UAAU,IAAI,qBAAqB,EACnC,SAAS,CACV,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,aAC/B,SAAS,CAAC,CAAC,CAAC,CACX,KAAC,KAAK,IACJ,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EACxC,UAAU,EAAC,OAAO,GAClB,CACH,CAAC,CAAC,CAAC,IAAI,EAEP,UAAU,CAAC,CAAC,CAAC,CACZ,KAAC,IAAI,IAAC,SAAS,EAAC,gCAAgC,EAAC,aAAa,EAAC,MAAM,GAAG,CACzE,CAAC,CAAC,CAAC,IAAI,EAER,KAAC,IAAI,IAAC,SAAS,EAAC,8CAA8C,YAC5D,KAAC,IAAI,IACH,SAAS,EAAC,6BAA6B,EACvC,KAAK,EAAE;wBACL,KAAK,EAAE,EAAE;wBACT,MAAM,EAAE,EAAE;wBACV,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;wBAChC,eAAe,EAAE,iBAAiB;wBAClC,WAAW,EAAE,CAAC;wBACd,WAAW,EAAE,uBAAuB;qBACrC,YACA,SAAS,CAAC,CAAC,CAAC,CACX,KAAC,IAAI,IAAC,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,YAAG,SAAS,GAAQ,CACvE,CAAC,CAAC,CAAC,IAAI,GACH,GACF,EAEN,aAAa,CAAC,CAAC,CAAC,CACf,KAAC,IAAI,IAAC,SAAS,EAAC,+BAA+B,YAAE,aAAa,GAAQ,CACvE,CAAC,CAAC,CAAC,IAAI,IACH,CACR,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC"}
|