@valpro-labs/ui 1.0.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/LICENSE +21 -0
- package/README.md +9 -0
- package/dist/components/blocks/accessory-card.d.ts +37 -0
- package/dist/components/blocks/accessory-card.d.ts.map +1 -0
- package/dist/components/blocks/accessory-card.js +42 -0
- package/dist/components/blocks/accessory-card.js.map +1 -0
- package/dist/components/blocks/agent-card.d.ts +28 -0
- package/dist/components/blocks/agent-card.d.ts.map +1 -0
- package/dist/components/blocks/agent-card.js +21 -0
- package/dist/components/blocks/agent-card.js.map +1 -0
- package/dist/components/blocks/bundle-card.d.ts +37 -0
- package/dist/components/blocks/bundle-card.d.ts.map +1 -0
- package/dist/components/blocks/bundle-card.js +33 -0
- package/dist/components/blocks/bundle-card.js.map +1 -0
- package/dist/components/blocks/daily-progress-skeleton.d.ts +8 -0
- package/dist/components/blocks/daily-progress-skeleton.d.ts.map +1 -0
- package/dist/components/blocks/daily-progress-skeleton.js +31 -0
- package/dist/components/blocks/daily-progress-skeleton.js.map +1 -0
- package/dist/components/blocks/daily-progress.d.ts +16 -0
- package/dist/components/blocks/daily-progress.d.ts.map +1 -0
- package/dist/components/blocks/daily-progress.js +209 -0
- package/dist/components/blocks/daily-progress.js.map +1 -0
- package/dist/components/blocks/expression-wheel.d.ts +30 -0
- package/dist/components/blocks/expression-wheel.d.ts.map +1 -0
- package/dist/components/blocks/expression-wheel.js +76 -0
- package/dist/components/blocks/expression-wheel.js.map +1 -0
- package/dist/components/blocks/friend-party-others-row.d.ts +20 -0
- package/dist/components/blocks/friend-party-others-row.d.ts.map +1 -0
- package/dist/components/blocks/friend-party-others-row.js +17 -0
- package/dist/components/blocks/friend-party-others-row.js.map +1 -0
- package/dist/components/blocks/friend-row-skeleton.d.ts +13 -0
- package/dist/components/blocks/friend-row-skeleton.d.ts.map +1 -0
- package/dist/components/blocks/friend-row-skeleton.js +14 -0
- package/dist/components/blocks/friend-row-skeleton.js.map +1 -0
- package/dist/components/blocks/friend-row.d.ts +39 -0
- package/dist/components/blocks/friend-row.d.ts.map +1 -0
- package/dist/components/blocks/friend-row.js +39 -0
- package/dist/components/blocks/friend-row.js.map +1 -0
- package/dist/components/blocks/index.d.ts +2 -0
- package/dist/components/blocks/index.d.ts.map +1 -0
- package/dist/components/blocks/index.js +4 -0
- package/dist/components/blocks/index.js.map +1 -0
- package/dist/components/blocks/item-bought-overlay.d.ts +32 -0
- package/dist/components/blocks/item-bought-overlay.d.ts.map +1 -0
- package/dist/components/blocks/item-bought-overlay.js +20 -0
- package/dist/components/blocks/item-bought-overlay.js.map +1 -0
- package/dist/components/blocks/map-banner.d.ts +39 -0
- package/dist/components/blocks/map-banner.d.ts.map +1 -0
- package/dist/components/blocks/map-banner.js +22 -0
- package/dist/components/blocks/map-banner.js.map +1 -0
- package/dist/components/blocks/match-card-skeleton.d.ts +13 -0
- package/dist/components/blocks/match-card-skeleton.d.ts.map +1 -0
- package/dist/components/blocks/match-card-skeleton.js +14 -0
- package/dist/components/blocks/match-card-skeleton.js.map +1 -0
- package/dist/components/blocks/match-card.d.ts +52 -0
- package/dist/components/blocks/match-card.d.ts.map +1 -0
- package/dist/components/blocks/match-card.js +48 -0
- package/dist/components/blocks/match-card.js.map +1 -0
- package/dist/components/blocks/match-info-row.d.ts +30 -0
- package/dist/components/blocks/match-info-row.d.ts.map +1 -0
- package/dist/components/blocks/match-info-row.js +18 -0
- package/dist/components/blocks/match-info-row.js.map +1 -0
- package/dist/components/blocks/mission-card-skeleton.d.ts +15 -0
- package/dist/components/blocks/mission-card-skeleton.d.ts.map +1 -0
- package/dist/components/blocks/mission-card-skeleton.js +16 -0
- package/dist/components/blocks/mission-card-skeleton.js.map +1 -0
- package/dist/components/blocks/mission-card.d.ts +28 -0
- package/dist/components/blocks/mission-card.d.ts.map +1 -0
- package/dist/components/blocks/mission-card.js +32 -0
- package/dist/components/blocks/mission-card.js.map +1 -0
- package/dist/components/blocks/mission-list.d.ts +42 -0
- package/dist/components/blocks/mission-list.d.ts.map +1 -0
- package/dist/components/blocks/mission-list.js +27 -0
- package/dist/components/blocks/mission-list.js.map +1 -0
- package/dist/components/blocks/offer-card.d.ts +44 -0
- package/dist/components/blocks/offer-card.d.ts.map +1 -0
- package/dist/components/blocks/offer-card.js +71 -0
- package/dist/components/blocks/offer-card.js.map +1 -0
- package/dist/components/blocks/owned-item-card.d.ts +54 -0
- package/dist/components/blocks/owned-item-card.d.ts.map +1 -0
- package/dist/components/blocks/owned-item-card.js +37 -0
- package/dist/components/blocks/owned-item-card.js.map +1 -0
- package/dist/components/blocks/player-card-skeleton.d.ts +13 -0
- package/dist/components/blocks/player-card-skeleton.d.ts.map +1 -0
- package/dist/components/blocks/player-card-skeleton.js +14 -0
- package/dist/components/blocks/player-card-skeleton.js.map +1 -0
- package/dist/components/blocks/player-card.d.ts +28 -0
- package/dist/components/blocks/player-card.d.ts.map +1 -0
- package/dist/components/blocks/player-card.js +22 -0
- package/dist/components/blocks/player-card.js.map +1 -0
- package/dist/components/blocks/player-row.d.ts +37 -0
- package/dist/components/blocks/player-row.d.ts.map +1 -0
- package/dist/components/blocks/player-row.js +23 -0
- package/dist/components/blocks/player-row.js.map +1 -0
- package/dist/components/blocks/rank-card.d.ts +42 -0
- package/dist/components/blocks/rank-card.d.ts.map +1 -0
- package/dist/components/blocks/rank-card.js +23 -0
- package/dist/components/blocks/rank-card.js.map +1 -0
- package/dist/components/blocks/rank-pyramid.d.ts +35 -0
- package/dist/components/blocks/rank-pyramid.d.ts.map +1 -0
- package/dist/components/blocks/rank-pyramid.js +97 -0
- package/dist/components/blocks/rank-pyramid.js.map +1 -0
- package/dist/components/blocks/rank-tier-card-skeleton.d.ts +13 -0
- package/dist/components/blocks/rank-tier-card-skeleton.d.ts.map +1 -0
- package/dist/components/blocks/rank-tier-card-skeleton.js +14 -0
- package/dist/components/blocks/rank-tier-card-skeleton.js.map +1 -0
- package/dist/components/blocks/rank-tier-card.d.ts +27 -0
- package/dist/components/blocks/rank-tier-card.d.ts.map +1 -0
- package/dist/components/blocks/rank-tier-card.js +21 -0
- package/dist/components/blocks/rank-tier-card.js.map +1 -0
- package/dist/components/blocks/reward-item.d.ts +38 -0
- package/dist/components/blocks/reward-item.d.ts.map +1 -0
- package/dist/components/blocks/reward-item.js +29 -0
- package/dist/components/blocks/reward-item.js.map +1 -0
- package/dist/components/blocks/role-card.d.ts +24 -0
- package/dist/components/blocks/role-card.d.ts.map +1 -0
- package/dist/components/blocks/role-card.js +25 -0
- package/dist/components/blocks/role-card.js.map +1 -0
- package/dist/components/blocks/section-title.d.ts +21 -0
- package/dist/components/blocks/section-title.d.ts.map +1 -0
- package/dist/components/blocks/section-title.js +17 -0
- package/dist/components/blocks/section-title.js.map +1 -0
- package/dist/components/blocks/settings-group.d.ts +19 -0
- package/dist/components/blocks/settings-group.d.ts.map +1 -0
- package/dist/components/blocks/settings-group.js +15 -0
- package/dist/components/blocks/settings-group.js.map +1 -0
- package/dist/components/blocks/settings-row.d.ts +36 -0
- package/dist/components/blocks/settings-row.d.ts.map +1 -0
- package/dist/components/blocks/settings-row.js +24 -0
- package/dist/components/blocks/settings-row.js.map +1 -0
- package/dist/components/blocks/skin-tile.d.ts +39 -0
- package/dist/components/blocks/skin-tile.d.ts.map +1 -0
- package/dist/components/blocks/skin-tile.js +26 -0
- package/dist/components/blocks/skin-tile.js.map +1 -0
- package/dist/components/blocks/wallet.d.ts +27 -0
- package/dist/components/blocks/wallet.d.ts.map +1 -0
- package/dist/components/blocks/wallet.js +21 -0
- package/dist/components/blocks/wallet.js.map +1 -0
- package/dist/components/blocks/weapon-category-grid.d.ts +50 -0
- package/dist/components/blocks/weapon-category-grid.d.ts.map +1 -0
- package/dist/components/blocks/weapon-category-grid.js +25 -0
- package/dist/components/blocks/weapon-category-grid.js.map +1 -0
- package/dist/components/ui/button.d.ts +15 -0
- package/dist/components/ui/button.d.ts.map +1 -0
- package/dist/components/ui/button.js +61 -0
- package/dist/components/ui/button.js.map +1 -0
- package/dist/components/ui/image.d.ts +7 -0
- package/dist/components/ui/image.d.ts.map +1 -0
- package/dist/components/ui/image.js +9 -0
- package/dist/components/ui/image.js.map +1 -0
- package/dist/components/ui/image.web.d.ts +40 -0
- package/dist/components/ui/image.web.d.ts.map +1 -0
- package/dist/components/ui/image.web.js +33 -0
- package/dist/components/ui/image.web.js.map +1 -0
- package/dist/components/ui/progress.d.ts +9 -0
- package/dist/components/ui/progress.d.ts.map +1 -0
- package/dist/components/ui/progress.js +36 -0
- package/dist/components/ui/progress.js.map +1 -0
- package/dist/components/ui/progress.web.d.ts +16 -0
- package/dist/components/ui/progress.web.d.ts.map +1 -0
- package/dist/components/ui/progress.web.js +20 -0
- package/dist/components/ui/progress.web.js.map +1 -0
- package/dist/components/ui/separator.d.ts +9 -0
- package/dist/components/ui/separator.d.ts.map +1 -0
- package/dist/components/ui/separator.js +8 -0
- package/dist/components/ui/separator.js.map +1 -0
- package/dist/components/ui/skeleton.d.ts +7 -0
- package/dist/components/ui/skeleton.d.ts.map +1 -0
- package/dist/components/ui/skeleton.js +17 -0
- package/dist/components/ui/skeleton.js.map +1 -0
- package/dist/components/ui/skeleton.web.d.ts +14 -0
- package/dist/components/ui/skeleton.web.d.ts.map +1 -0
- package/dist/components/ui/skeleton.web.js +15 -0
- package/dist/components/ui/skeleton.web.js.map +1 -0
- package/dist/components/ui/text.d.ts +13 -0
- package/dist/components/ui/text.d.ts.map +1 -0
- package/dist/components/ui/text.js +49 -0
- package/dist/components/ui/text.js.map +1 -0
- package/dist/index.d.ts +84 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +46 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/svg-shim.d.ts +12 -0
- package/dist/lib/svg-shim.d.ts.map +1 -0
- package/dist/lib/svg-shim.js +12 -0
- package/dist/lib/svg-shim.js.map +1 -0
- package/dist/lib/svg-shim.web.d.ts +32 -0
- package/dist/lib/svg-shim.web.d.ts.map +1 -0
- package/dist/lib/svg-shim.web.js +16 -0
- package/dist/lib/svg-shim.web.js.map +1 -0
- package/dist/lib/utils.d.ts +3 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/lib/utils.js +6 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/lib/weapon-grid-transform.d.ts +30 -0
- package/dist/lib/weapon-grid-transform.d.ts.map +1 -0
- package/dist/lib/weapon-grid-transform.js +106 -0
- package/dist/lib/weapon-grid-transform.js.map +1 -0
- package/dist/styles/global.css +132 -0
- package/package.json +102 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { View } from 'react-native';
|
|
3
|
+
import { cn } from '../../lib/utils';
|
|
4
|
+
/**
|
|
5
|
+
* Web-only Progress implementation.
|
|
6
|
+
* Pure View + CSS width transition, no reanimated and no @rn-primitives.
|
|
7
|
+
* The native sibling (`progress.tsx`) keeps the animated + accessible
|
|
8
|
+
* @rn-primitives implementation for iOS/Android.
|
|
9
|
+
*/
|
|
10
|
+
function Progress({ className, value, indicatorClassName, ...props }) {
|
|
11
|
+
const clamped = Math.max(0, Math.min(100, value ?? 0));
|
|
12
|
+
return (_jsx(View, { role: "progressbar", "aria-valuemin": 0, "aria-valuemax": 100, "aria-valuenow": clamped, className: cn('bg-primary/20 relative h-2 w-full overflow-hidden rounded-full', className), ...props, children: _jsx(View, { className: cn('bg-primary h-full', indicatorClassName), style: {
|
|
13
|
+
width: `${clamped}%`,
|
|
14
|
+
// `transition` goes through to the underlying DOM element via
|
|
15
|
+
// react-native-web; on native this prop is ignored.
|
|
16
|
+
transition: 'width 0.3s ease-out',
|
|
17
|
+
} }) }));
|
|
18
|
+
}
|
|
19
|
+
export { Progress };
|
|
20
|
+
//# sourceMappingURL=progress.web.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progress.web.js","sourceRoot":"","sources":["../../../src/components/ui/progress.web.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,IAAI,EAAkB,MAAM,cAAc,CAAC;AAEpD,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAQjC;;;;;GAKG;AACH,SAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAG,KAAK,EAAiB;IACjF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC;IACvD,OAAO,CACL,KAAC,IAAI,IACH,IAAI,EAAC,aAAa,mBACH,CAAC,mBACD,GAAG,mBACH,OAAO,EACtB,SAAS,EAAE,EAAE,CAAC,gEAAgE,EAAE,SAAS,CAAC,KACtF,KAAK,YACT,KAAC,IAAI,IACH,SAAS,EAAE,EAAE,CAAC,mBAAmB,EAAE,kBAAkB,CAAC,EACtD,KAAK,EAAE;gBACL,KAAK,EAAE,GAAG,OAAO,GAAG;gBACpB,8DAA8D;gBAC9D,oDAAoD;gBACpD,UAAU,EAAE,qBAAqB;aACxB,GACX,GACG,CACR,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { View } from 'react-native';
|
|
3
|
+
interface SeparatorProps extends React.ComponentProps<typeof View> {
|
|
4
|
+
orientation?: 'horizontal' | 'vertical';
|
|
5
|
+
}
|
|
6
|
+
declare function Separator({ className, orientation, ...props }: SeparatorProps): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export { Separator };
|
|
8
|
+
export type { SeparatorProps };
|
|
9
|
+
//# sourceMappingURL=separator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"separator.d.ts","sourceRoot":"","sources":["../../../src/components/ui/separator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAIpC,UAAU,cAAe,SAAQ,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC;IAChE,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;CACzC;AAED,iBAAS,SAAS,CAAC,EAAE,SAAS,EAAE,WAA0B,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,2CAWrF;AAED,OAAO,EAAE,SAAS,EAAE,CAAC;AACrB,YAAY,EAAE,cAAc,EAAE,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { View } from 'react-native';
|
|
3
|
+
import { cn } from '../../lib/utils';
|
|
4
|
+
function Separator({ className, orientation = 'horizontal', ...props }) {
|
|
5
|
+
return (_jsx(View, { className: cn('bg-border shrink-0', orientation === 'horizontal' ? 'h-px w-full' : 'h-full w-px', className), ...props }));
|
|
6
|
+
}
|
|
7
|
+
export { Separator };
|
|
8
|
+
//# sourceMappingURL=separator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"separator.js","sourceRoot":"","sources":["../../../src/components/ui/separator.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAMjC,SAAS,SAAS,CAAC,EAAE,SAAS,EAAE,WAAW,GAAG,YAAY,EAAE,GAAG,KAAK,EAAkB;IACpF,OAAO,CACL,KAAC,IAAI,IACH,SAAS,EAAE,EAAE,CACX,oBAAoB,EACpB,WAAW,KAAK,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,EAC5D,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { View } from 'react-native';
|
|
3
|
+
type SkeletonProps = React.ComponentProps<typeof View> & React.RefAttributes<View>;
|
|
4
|
+
declare function Skeleton({ className, ...props }: SkeletonProps): import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
export { Skeleton };
|
|
6
|
+
export type { SkeletonProps };
|
|
7
|
+
//# sourceMappingURL=skeleton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skeleton.d.ts","sourceRoot":"","sources":["../../../src/components/ui/skeleton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAapC,KAAK,aAAa,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;AAEnF,iBAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,aAAa,2CAqBvD;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC;AACpB,YAAY,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import Animated, { useAnimatedStyle, useSharedValue, withRepeat, withTiming, } from 'react-native-reanimated';
|
|
4
|
+
import { cn } from '../../lib/utils';
|
|
5
|
+
const duration = 1000;
|
|
6
|
+
function Skeleton({ className, ...props }) {
|
|
7
|
+
const sv = useSharedValue(1);
|
|
8
|
+
React.useEffect(() => {
|
|
9
|
+
sv.value = withRepeat(withTiming(0.5, { duration }), -1, true);
|
|
10
|
+
}, [sv]);
|
|
11
|
+
const style = useAnimatedStyle(() => ({
|
|
12
|
+
opacity: sv.value,
|
|
13
|
+
}), [sv]);
|
|
14
|
+
return (_jsx(Animated.View, { style: style, className: cn('bg-secondary dark:bg-muted rounded-md', className), ...props }));
|
|
15
|
+
}
|
|
16
|
+
export { Skeleton };
|
|
17
|
+
//# sourceMappingURL=skeleton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skeleton.js","sourceRoot":"","sources":["../../../src/components/ui/skeleton.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,QAAQ,EAAE,EACf,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,UAAU,GACX,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAEjC,MAAM,QAAQ,GAAG,IAAI,CAAC;AAItB,SAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAiB;IACtD,MAAM,EAAE,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IAE7B,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,EAAE,CAAC,KAAK,GAAG,UAAU,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAET,MAAM,KAAK,GAAG,gBAAgB,CAC5B,GAAG,EAAE,CAAC,CAAC;QACL,OAAO,EAAE,EAAE,CAAC,KAAK;KAClB,CAAC,EACF,CAAC,EAAE,CAAC,CACL,CAAC;IAEF,OAAO,CACL,KAAC,QAAQ,CAAC,IAAI,IACZ,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,EAAE,CAAC,uCAAuC,EAAE,SAAS,CAAC,KAC7D,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { View } from 'react-native';
|
|
3
|
+
type SkeletonProps = React.ComponentProps<typeof View> & React.RefAttributes<View>;
|
|
4
|
+
/**
|
|
5
|
+
* Web-only Skeleton implementation.
|
|
6
|
+
* Uses Tailwind's `animate-pulse` class (a pure-CSS opacity cycle) instead of
|
|
7
|
+
* pulling in react-native-reanimated, which doesn't play nicely with Vite +
|
|
8
|
+
* react-native-web. The native sibling (`skeleton.tsx`) keeps the reanimated
|
|
9
|
+
* version for iOS/Android.
|
|
10
|
+
*/
|
|
11
|
+
declare function Skeleton({ className, ...props }: SkeletonProps): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export { Skeleton };
|
|
13
|
+
export type { SkeletonProps };
|
|
14
|
+
//# sourceMappingURL=skeleton.web.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skeleton.web.d.ts","sourceRoot":"","sources":["../../../src/components/ui/skeleton.web.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAIpC,KAAK,aAAa,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;AAEnF;;;;;;GAMG;AACH,iBAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,aAAa,2CAOvD;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC;AACpB,YAAY,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { View } from 'react-native';
|
|
3
|
+
import { cn } from '../../lib/utils';
|
|
4
|
+
/**
|
|
5
|
+
* Web-only Skeleton implementation.
|
|
6
|
+
* Uses Tailwind's `animate-pulse` class (a pure-CSS opacity cycle) instead of
|
|
7
|
+
* pulling in react-native-reanimated, which doesn't play nicely with Vite +
|
|
8
|
+
* react-native-web. The native sibling (`skeleton.tsx`) keeps the reanimated
|
|
9
|
+
* version for iOS/Android.
|
|
10
|
+
*/
|
|
11
|
+
function Skeleton({ className, ...props }) {
|
|
12
|
+
return (_jsx(View, { className: cn('bg-secondary dark:bg-muted animate-pulse rounded-md', className), ...props }));
|
|
13
|
+
}
|
|
14
|
+
export { Skeleton };
|
|
15
|
+
//# sourceMappingURL=skeleton.web.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skeleton.web.js","sourceRoot":"","sources":["../../../src/components/ui/skeleton.web.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAIjC;;;;;;GAMG;AACH,SAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAiB;IACtD,OAAO,CACL,KAAC,IAAI,IACH,SAAS,EAAE,EAAE,CAAC,qDAAqD,EAAE,SAAS,CAAC,KAC3E,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { Text as RNText } from 'react-native';
|
|
3
|
+
import { type VariantProps } from 'class-variance-authority';
|
|
4
|
+
declare const textVariants: (props?: ({
|
|
5
|
+
variant?: "default" | "h1" | "h2" | "h3" | "h4" | "p" | "blockquote" | "code" | "lead" | "large" | "small" | "muted" | null | undefined;
|
|
6
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
7
|
+
type TextVariantProps = VariantProps<typeof textVariants>;
|
|
8
|
+
declare const TextClassContext: React.Context<string | undefined>;
|
|
9
|
+
type TextProps = React.ComponentProps<typeof RNText> & TextVariantProps & React.RefAttributes<RNText>;
|
|
10
|
+
declare function Text({ className, variant, ...props }: TextProps): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export { Text, TextClassContext, textVariants };
|
|
12
|
+
export type { TextProps };
|
|
13
|
+
//# sourceMappingURL=text.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../../src/components/ui/text.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAY,IAAI,IAAI,MAAM,EAAa,MAAM,cAAc,CAAC;AAEnE,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAIlE,QAAA,MAAM,YAAY;;8EAoCjB,CAAC;AAEF,KAAK,gBAAgB,GAAG,YAAY,CAAC,OAAO,YAAY,CAAC,CAAC;AAoB1D,QAAA,MAAM,gBAAgB,mCAAqD,CAAC;AAE5E,KAAK,SAAS,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,GAClD,gBAAgB,GAChB,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;AAE9B,iBAAS,IAAI,CAAC,EAAE,SAAS,EAAE,OAAmB,EAAE,GAAG,KAAK,EAAE,EAAE,SAAS,2CAUpE;AAED,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,YAAY,EAAE,CAAC;AAChD,YAAY,EAAE,SAAS,EAAE,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { Platform, Text as RNText } from 'react-native';
|
|
4
|
+
import { cva } from 'class-variance-authority';
|
|
5
|
+
import { cn } from '../../lib/utils';
|
|
6
|
+
const textVariants = cva(cn('text-foreground text-base', Platform.select({
|
|
7
|
+
web: 'select-text',
|
|
8
|
+
})), {
|
|
9
|
+
variants: {
|
|
10
|
+
variant: {
|
|
11
|
+
default: '',
|
|
12
|
+
h1: cn('text-center text-4xl font-extrabold tracking-tight', Platform.select({ web: 'scroll-m-20 text-balance' })),
|
|
13
|
+
h2: cn('border-border border-b pb-2 text-3xl font-semibold tracking-tight', Platform.select({ web: 'scroll-m-20 first:mt-0' })),
|
|
14
|
+
h3: cn('text-2xl font-semibold tracking-tight', Platform.select({ web: 'scroll-m-20' })),
|
|
15
|
+
h4: cn('text-xl font-semibold tracking-tight', Platform.select({ web: 'scroll-m-20' })),
|
|
16
|
+
p: 'mt-3 leading-7 sm:mt-6',
|
|
17
|
+
blockquote: 'mt-4 border-l-2 pl-3 italic sm:mt-6 sm:pl-6',
|
|
18
|
+
code: cn('bg-muted relative rounded px-[0.3rem] py-[0.2rem] font-mono text-sm font-semibold'),
|
|
19
|
+
lead: 'text-muted-foreground text-xl',
|
|
20
|
+
large: 'text-lg font-semibold',
|
|
21
|
+
small: 'text-sm leading-none font-medium',
|
|
22
|
+
muted: 'text-muted-foreground text-sm',
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
defaultVariants: {
|
|
26
|
+
variant: 'default',
|
|
27
|
+
},
|
|
28
|
+
});
|
|
29
|
+
const ROLE = {
|
|
30
|
+
h1: 'heading',
|
|
31
|
+
h2: 'heading',
|
|
32
|
+
h3: 'heading',
|
|
33
|
+
h4: 'heading',
|
|
34
|
+
blockquote: Platform.select({ web: 'blockquote' }),
|
|
35
|
+
code: Platform.select({ web: 'code' }),
|
|
36
|
+
};
|
|
37
|
+
const ARIA_LEVEL = {
|
|
38
|
+
h1: '1',
|
|
39
|
+
h2: '2',
|
|
40
|
+
h3: '3',
|
|
41
|
+
h4: '4',
|
|
42
|
+
};
|
|
43
|
+
const TextClassContext = React.createContext(undefined);
|
|
44
|
+
function Text({ className, variant = 'default', ...props }) {
|
|
45
|
+
const textClass = React.useContext(TextClassContext);
|
|
46
|
+
return (_jsx(RNText, { className: cn(textVariants({ variant }), textClass, className), role: variant ? ROLE[variant] : undefined, "aria-level": variant ? ARIA_LEVEL[variant] : undefined, ...props }));
|
|
47
|
+
}
|
|
48
|
+
export { Text, TextClassContext, textVariants };
|
|
49
|
+
//# sourceMappingURL=text.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text.js","sourceRoot":"","sources":["../../../src/components/ui/text.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,IAAI,IAAI,MAAM,EAAa,MAAM,cAAc,CAAC;AAEnE,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAEjC,MAAM,YAAY,GAAG,GAAG,CACtB,EAAE,CACA,2BAA2B,EAC3B,QAAQ,CAAC,MAAM,CAAC;IACd,GAAG,EAAE,aAAa;CACnB,CAAC,CACH,EACD;IACE,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,OAAO,EAAE,EAAE;YACX,EAAE,EAAE,EAAE,CACJ,oDAAoD,EACpD,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,0BAA0B,EAAE,CAAC,CACrD;YACD,EAAE,EAAE,EAAE,CACJ,mEAAmE,EACnE,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,wBAAwB,EAAE,CAAC,CACnD;YACD,EAAE,EAAE,EAAE,CAAC,uCAAuC,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC;YACxF,EAAE,EAAE,EAAE,CAAC,sCAAsC,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC;YACvF,CAAC,EAAE,wBAAwB;YAC3B,UAAU,EAAE,6CAA6C;YACzD,IAAI,EAAE,EAAE,CACN,mFAAmF,CACpF;YACD,IAAI,EAAE,+BAA+B;YACrC,KAAK,EAAE,uBAAuB;YAC9B,KAAK,EAAE,kCAAkC;YACzC,KAAK,EAAE,+BAA+B;SACvC;KACF;IACD,eAAe,EAAE;QACf,OAAO,EAAE,SAAS;KACnB;CACF,CACF,CAAC;AAMF,MAAM,IAAI,GAAuC;IAC/C,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,SAAS;IACb,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,YAAoB,EAAE,CAAC;IAC1D,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,MAAc,EAAE,CAAC;CAC/C,CAAC;AAEF,MAAM,UAAU,GAAyC;IACvD,EAAE,EAAE,GAAG;IACP,EAAE,EAAE,GAAG;IACP,EAAE,EAAE,GAAG;IACP,EAAE,EAAE,GAAG;CACR,CAAC;AAEF,MAAM,gBAAgB,GAAG,KAAK,CAAC,aAAa,CAAqB,SAAS,CAAC,CAAC;AAM5E,SAAS,IAAI,CAAC,EAAE,SAAS,EAAE,OAAO,GAAG,SAAS,EAAE,GAAG,KAAK,EAAa;IACnE,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACrD,OAAO,CACL,KAAC,MAAM,IACL,SAAS,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,EAC9D,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,gBAC7B,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,KACjD,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,YAAY,EAAE,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
export { Button, buttonVariants, buttonTextVariants } from './components/ui/button';
|
|
2
|
+
export type { ButtonProps } from './components/ui/button';
|
|
3
|
+
export { Text, TextClassContext, textVariants } from './components/ui/text';
|
|
4
|
+
export type { TextProps } from './components/ui/text';
|
|
5
|
+
export { Image } from './components/ui/image';
|
|
6
|
+
export type { ImageProps } from './components/ui/image';
|
|
7
|
+
export { Separator } from './components/ui/separator';
|
|
8
|
+
export type { SeparatorProps } from './components/ui/separator';
|
|
9
|
+
export { Skeleton } from './components/ui/skeleton';
|
|
10
|
+
export type { SkeletonProps } from './components/ui/skeleton';
|
|
11
|
+
export { Progress } from './components/ui/progress';
|
|
12
|
+
export type { ProgressProps } from './components/ui/progress';
|
|
13
|
+
export { MissionCard } from './components/blocks/mission-card';
|
|
14
|
+
export type { MissionCardProps } from './components/blocks/mission-card';
|
|
15
|
+
export { MissionCardSkeleton } from './components/blocks/mission-card-skeleton';
|
|
16
|
+
export type { MissionCardSkeletonProps } from './components/blocks/mission-card-skeleton';
|
|
17
|
+
export { MissionList } from './components/blocks/mission-list';
|
|
18
|
+
export type { MissionListProps, MissionListItem } from './components/blocks/mission-list';
|
|
19
|
+
export { DailyProgress } from './components/blocks/daily-progress';
|
|
20
|
+
export type { DailyProgressProps, DailyMilestone } from './components/blocks/daily-progress';
|
|
21
|
+
export { DailyProgressSkeleton } from './components/blocks/daily-progress-skeleton';
|
|
22
|
+
export type { DailyProgressSkeletonProps } from './components/blocks/daily-progress-skeleton';
|
|
23
|
+
export { PlayerCard } from './components/blocks/player-card';
|
|
24
|
+
export type { PlayerCardProps } from './components/blocks/player-card';
|
|
25
|
+
export { PlayerCardSkeleton } from './components/blocks/player-card-skeleton';
|
|
26
|
+
export type { PlayerCardSkeletonProps } from './components/blocks/player-card-skeleton';
|
|
27
|
+
export { RankTierCard } from './components/blocks/rank-tier-card';
|
|
28
|
+
export type { RankTierCardProps } from './components/blocks/rank-tier-card';
|
|
29
|
+
export { RankTierCardSkeleton } from './components/blocks/rank-tier-card-skeleton';
|
|
30
|
+
export type { RankTierCardSkeletonProps } from './components/blocks/rank-tier-card-skeleton';
|
|
31
|
+
export { RankPyramid } from './components/blocks/rank-pyramid';
|
|
32
|
+
export type { RankPyramidProps, RankPyramidTier } from './components/blocks/rank-pyramid';
|
|
33
|
+
export { RankCard } from './components/blocks/rank-card';
|
|
34
|
+
export type { RankCardProps } from './components/blocks/rank-card';
|
|
35
|
+
export { AgentCard } from './components/blocks/agent-card';
|
|
36
|
+
export type { AgentCardProps } from './components/blocks/agent-card';
|
|
37
|
+
export { RoleCard } from './components/blocks/role-card';
|
|
38
|
+
export type { RoleCardProps } from './components/blocks/role-card';
|
|
39
|
+
export { SettingsRow } from './components/blocks/settings-row';
|
|
40
|
+
export type { SettingsRowProps } from './components/blocks/settings-row';
|
|
41
|
+
export { SettingsGroup } from './components/blocks/settings-group';
|
|
42
|
+
export type { SettingsGroupProps } from './components/blocks/settings-group';
|
|
43
|
+
export { MatchCard } from './components/blocks/match-card';
|
|
44
|
+
export type { MatchCardProps, MatchResult } from './components/blocks/match-card';
|
|
45
|
+
export { MatchCardSkeleton } from './components/blocks/match-card-skeleton';
|
|
46
|
+
export type { MatchCardSkeletonProps } from './components/blocks/match-card-skeleton';
|
|
47
|
+
export { OfferCard } from './components/blocks/offer-card';
|
|
48
|
+
export type { OfferCardProps } from './components/blocks/offer-card';
|
|
49
|
+
export { BundleCard } from './components/blocks/bundle-card';
|
|
50
|
+
export type { BundleCardProps } from './components/blocks/bundle-card';
|
|
51
|
+
export { AccessoryCard } from './components/blocks/accessory-card';
|
|
52
|
+
export type { AccessoryCardProps } from './components/blocks/accessory-card';
|
|
53
|
+
export { RewardItem } from './components/blocks/reward-item';
|
|
54
|
+
export type { RewardItemProps } from './components/blocks/reward-item';
|
|
55
|
+
export { Wallet } from './components/blocks/wallet';
|
|
56
|
+
export type { WalletProps, WalletBalance } from './components/blocks/wallet';
|
|
57
|
+
export { MapBanner } from './components/blocks/map-banner';
|
|
58
|
+
export type { MapBannerProps, MapBannerResult } from './components/blocks/map-banner';
|
|
59
|
+
export { MatchInfoRow } from './components/blocks/match-info-row';
|
|
60
|
+
export type { MatchInfoRowProps } from './components/blocks/match-info-row';
|
|
61
|
+
export { PlayerRow } from './components/blocks/player-row';
|
|
62
|
+
export type { PlayerRowProps, PlayerRowRole } from './components/blocks/player-row';
|
|
63
|
+
export { FriendRow } from './components/blocks/friend-row';
|
|
64
|
+
export type { FriendRowProps, FriendStatus } from './components/blocks/friend-row';
|
|
65
|
+
export { FriendRowSkeleton } from './components/blocks/friend-row-skeleton';
|
|
66
|
+
export type { FriendRowSkeletonProps } from './components/blocks/friend-row-skeleton';
|
|
67
|
+
export { FriendPartyOthersRow } from './components/blocks/friend-party-others-row';
|
|
68
|
+
export type { FriendPartyOthersRowProps } from './components/blocks/friend-party-others-row';
|
|
69
|
+
export { OwnedItemCard } from './components/blocks/owned-item-card';
|
|
70
|
+
export type { OwnedItemCardProps } from './components/blocks/owned-item-card';
|
|
71
|
+
export { ItemBoughtOverlay } from './components/blocks/item-bought-overlay';
|
|
72
|
+
export type { ItemBoughtOverlayProps } from './components/blocks/item-bought-overlay';
|
|
73
|
+
export { ExpressionWheel } from './components/blocks/expression-wheel';
|
|
74
|
+
export type { ExpressionWheelProps, ExpressionWheelSlot, } from './components/blocks/expression-wheel';
|
|
75
|
+
export { SkinTile } from './components/blocks/skin-tile';
|
|
76
|
+
export type { SkinTileProps } from './components/blocks/skin-tile';
|
|
77
|
+
export { SectionTitle } from './components/blocks/section-title';
|
|
78
|
+
export type { SectionTitleProps } from './components/blocks/section-title';
|
|
79
|
+
export { WeaponCategoryGrid } from './components/blocks/weapon-category-grid';
|
|
80
|
+
export type { WeaponCategoryGridProps, WeaponCategoryGridSection, WeaponCategoryGridItem, } from './components/blocks/weapon-category-grid';
|
|
81
|
+
export { cn } from './lib/utils';
|
|
82
|
+
export { getWeaponCategoryWidth, getWeaponGridTransform, getWeaponGridIconStyle, } from './lib/weapon-grid-transform';
|
|
83
|
+
export type { WeaponGridTransform } from './lib/weapon-grid-transform';
|
|
84
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
// ── Tier 1: Primitives (ui/) ──
|
|
2
|
+
export { Button, buttonVariants, buttonTextVariants } from './components/ui/button';
|
|
3
|
+
export { Text, TextClassContext, textVariants } from './components/ui/text';
|
|
4
|
+
export { Image } from './components/ui/image';
|
|
5
|
+
export { Separator } from './components/ui/separator';
|
|
6
|
+
export { Skeleton } from './components/ui/skeleton';
|
|
7
|
+
export { Progress } from './components/ui/progress';
|
|
8
|
+
// ── Tier 2: Blocks (blocks/) ──
|
|
9
|
+
export { MissionCard } from './components/blocks/mission-card';
|
|
10
|
+
export { MissionCardSkeleton } from './components/blocks/mission-card-skeleton';
|
|
11
|
+
export { MissionList } from './components/blocks/mission-list';
|
|
12
|
+
export { DailyProgress } from './components/blocks/daily-progress';
|
|
13
|
+
export { DailyProgressSkeleton } from './components/blocks/daily-progress-skeleton';
|
|
14
|
+
export { PlayerCard } from './components/blocks/player-card';
|
|
15
|
+
export { PlayerCardSkeleton } from './components/blocks/player-card-skeleton';
|
|
16
|
+
export { RankTierCard } from './components/blocks/rank-tier-card';
|
|
17
|
+
export { RankTierCardSkeleton } from './components/blocks/rank-tier-card-skeleton';
|
|
18
|
+
export { RankPyramid } from './components/blocks/rank-pyramid';
|
|
19
|
+
export { RankCard } from './components/blocks/rank-card';
|
|
20
|
+
export { AgentCard } from './components/blocks/agent-card';
|
|
21
|
+
export { RoleCard } from './components/blocks/role-card';
|
|
22
|
+
export { SettingsRow } from './components/blocks/settings-row';
|
|
23
|
+
export { SettingsGroup } from './components/blocks/settings-group';
|
|
24
|
+
export { MatchCard } from './components/blocks/match-card';
|
|
25
|
+
export { MatchCardSkeleton } from './components/blocks/match-card-skeleton';
|
|
26
|
+
export { OfferCard } from './components/blocks/offer-card';
|
|
27
|
+
export { BundleCard } from './components/blocks/bundle-card';
|
|
28
|
+
export { AccessoryCard } from './components/blocks/accessory-card';
|
|
29
|
+
export { RewardItem } from './components/blocks/reward-item';
|
|
30
|
+
export { Wallet } from './components/blocks/wallet';
|
|
31
|
+
export { MapBanner } from './components/blocks/map-banner';
|
|
32
|
+
export { MatchInfoRow } from './components/blocks/match-info-row';
|
|
33
|
+
export { PlayerRow } from './components/blocks/player-row';
|
|
34
|
+
export { FriendRow } from './components/blocks/friend-row';
|
|
35
|
+
export { FriendRowSkeleton } from './components/blocks/friend-row-skeleton';
|
|
36
|
+
export { FriendPartyOthersRow } from './components/blocks/friend-party-others-row';
|
|
37
|
+
export { OwnedItemCard } from './components/blocks/owned-item-card';
|
|
38
|
+
export { ItemBoughtOverlay } from './components/blocks/item-bought-overlay';
|
|
39
|
+
export { ExpressionWheel } from './components/blocks/expression-wheel';
|
|
40
|
+
export { SkinTile } from './components/blocks/skin-tile';
|
|
41
|
+
export { SectionTitle } from './components/blocks/section-title';
|
|
42
|
+
export { WeaponCategoryGrid } from './components/blocks/weapon-category-grid';
|
|
43
|
+
// ── Utilities ──
|
|
44
|
+
export { cn } from './lib/utils';
|
|
45
|
+
export { getWeaponCategoryWidth, getWeaponGridTransform, getWeaponGridIconStyle, } from './lib/weapon-grid-transform';
|
|
46
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAGpF,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAG5E,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAG9C,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAGtD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGpD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGpD,iCAAiC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAE/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAEhF,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAG/D,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAEnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAGpF,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAG9E,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAElE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAGnF,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAG/D,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAGzD,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAE3D,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAGzD,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAGnE,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAE3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAG5E,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAG3D,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAG7D,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAGnE,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAG7D,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAGpD,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAG3D,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAGlE,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAG3D,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAE3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAE5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAGnF,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAGpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAG5E,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAMvE,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAGzD,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAGjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAO9E,kBAAkB;AAClB,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACjC,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,6BAA6B,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cross-platform SVG primitives.
|
|
3
|
+
*
|
|
4
|
+
* Native (this file): re-exports from `react-native-svg`.
|
|
5
|
+
* Web (`./svg-shim.web.tsx`): raw HTML <svg>/<path>/<rect>/<text>.
|
|
6
|
+
*
|
|
7
|
+
* Consumers import `Svg`, `Path`, `Rect`, `SvgText` from `@/lib/svg-shim`
|
|
8
|
+
* and get whichever renderer the current bundler picks up.
|
|
9
|
+
*/
|
|
10
|
+
import Svg, { Path, Rect, Text as SvgText } from 'react-native-svg';
|
|
11
|
+
export { Svg, Path, Rect, SvgText };
|
|
12
|
+
//# sourceMappingURL=svg-shim.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"svg-shim.d.ts","sourceRoot":"","sources":["../../src/lib/svg-shim.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAEpE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cross-platform SVG primitives.
|
|
3
|
+
*
|
|
4
|
+
* Native (this file): re-exports from `react-native-svg`.
|
|
5
|
+
* Web (`./svg-shim.web.tsx`): raw HTML <svg>/<path>/<rect>/<text>.
|
|
6
|
+
*
|
|
7
|
+
* Consumers import `Svg`, `Path`, `Rect`, `SvgText` from `@/lib/svg-shim`
|
|
8
|
+
* and get whichever renderer the current bundler picks up.
|
|
9
|
+
*/
|
|
10
|
+
import Svg, { Path, Rect, Text as SvgText } from 'react-native-svg';
|
|
11
|
+
export { Svg, Path, Rect, SvgText };
|
|
12
|
+
//# sourceMappingURL=svg-shim.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"svg-shim.js","sourceRoot":"","sources":["../../src/lib/svg-shim.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAEpE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Web implementation of the SVG shim.
|
|
3
|
+
*
|
|
4
|
+
* Thin functional wrappers around the DOM's native SVG elements so the
|
|
5
|
+
* import sites (`daily-progress.tsx`, future SVG-using blocks) don't have
|
|
6
|
+
* to fork a .web.tsx for rendering. The JSX prop surface is a strict subset
|
|
7
|
+
* of what react-native-svg accepts, covering what we actually use today.
|
|
8
|
+
*
|
|
9
|
+
* Extend the prop types here as we start using more svg attributes.
|
|
10
|
+
*/
|
|
11
|
+
import type { CSSProperties, ComponentPropsWithoutRef, PropsWithChildren, ReactNode } from 'react';
|
|
12
|
+
type SvgCommon = {
|
|
13
|
+
width?: number | string;
|
|
14
|
+
height?: number | string;
|
|
15
|
+
viewBox?: string;
|
|
16
|
+
style?: CSSProperties;
|
|
17
|
+
children?: ReactNode;
|
|
18
|
+
};
|
|
19
|
+
declare function Svg({ children, ...rest }: SvgCommon): import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
type PressHandlers = {
|
|
21
|
+
onPress?: () => void;
|
|
22
|
+
onPressIn?: () => void;
|
|
23
|
+
onPressOut?: () => void;
|
|
24
|
+
};
|
|
25
|
+
type PathProps = PropsWithChildren<Omit<ComponentPropsWithoutRef<'path'>, 'ref'> & PressHandlers>;
|
|
26
|
+
declare function Path({ onPress, onPressIn, onPressOut, ...rest }: PathProps): import("react/jsx-runtime").JSX.Element;
|
|
27
|
+
type RectProps = PropsWithChildren<Omit<ComponentPropsWithoutRef<'rect'>, 'ref'>>;
|
|
28
|
+
declare function Rect(props: RectProps): import("react/jsx-runtime").JSX.Element;
|
|
29
|
+
type TextProps = PropsWithChildren<Omit<ComponentPropsWithoutRef<'text'>, 'ref'>>;
|
|
30
|
+
declare function SvgText(props: TextProps): import("react/jsx-runtime").JSX.Element;
|
|
31
|
+
export { Svg, Path, Rect, SvgText };
|
|
32
|
+
//# sourceMappingURL=svg-shim.web.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"svg-shim.web.d.ts","sourceRoot":"","sources":["../../src/lib/svg-shim.web.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EACV,aAAa,EACb,wBAAwB,EACxB,iBAAiB,EACjB,SAAS,EACV,MAAM,OAAO,CAAC;AAEf,KAAK,SAAS,GAAG;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,iBAAS,GAAG,CAAC,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,SAAS,2CAE5C;AAED,KAAK,aAAa,GAAG;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB,CAAC;AAEF,KAAK,SAAS,GAAG,iBAAiB,CAChC,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,GAAG,aAAa,CAC9D,CAAC;AACF,iBAAS,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,EAAE,SAAS,2CAYnE;AAED,KAAK,SAAS,GAAG,iBAAiB,CAAC,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AAClF,iBAAS,IAAI,CAAC,KAAK,EAAE,SAAS,2CAE7B;AAED,KAAK,SAAS,GAAG,iBAAiB,CAAC,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AAClF,iBAAS,OAAO,CAAC,KAAK,EAAE,SAAS,2CAEhC;AAED,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
function Svg({ children, ...rest }) {
|
|
3
|
+
return _jsx("svg", { ...rest, children: children });
|
|
4
|
+
}
|
|
5
|
+
function Path({ onPress, onPressIn, onPressOut, ...rest }) {
|
|
6
|
+
const interactive = onPress || onPressIn || onPressOut;
|
|
7
|
+
return (_jsx("path", { ...rest, onClick: onPress ? () => onPress() : rest.onClick, onPointerDown: onPressIn ? () => onPressIn() : rest.onPointerDown, onPointerUp: onPressOut ? () => onPressOut() : rest.onPointerUp, onPointerLeave: onPressOut ? () => onPressOut() : rest.onPointerLeave, style: interactive ? { cursor: 'pointer', ...rest.style } : rest.style }));
|
|
8
|
+
}
|
|
9
|
+
function Rect(props) {
|
|
10
|
+
return _jsx("rect", { ...props });
|
|
11
|
+
}
|
|
12
|
+
function SvgText(props) {
|
|
13
|
+
return _jsx("text", { ...props });
|
|
14
|
+
}
|
|
15
|
+
export { Svg, Path, Rect, SvgText };
|
|
16
|
+
//# sourceMappingURL=svg-shim.web.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"svg-shim.web.js","sourceRoot":"","sources":["../../src/lib/svg-shim.web.tsx"],"names":[],"mappings":";AAyBA,SAAS,GAAG,CAAC,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAa;IAC3C,OAAO,iBAAS,IAAI,YAAG,QAAQ,GAAO,CAAC;AACzC,CAAC;AAWD,SAAS,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAI,EAAa;IAClE,MAAM,WAAW,GAAG,OAAO,IAAI,SAAS,IAAI,UAAU,CAAC;IACvD,OAAO,CACL,kBACM,IAAI,EACR,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EACjD,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,EACjE,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAC/D,cAAc,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,EACrE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,GACtE,CACH,CAAC;AACJ,CAAC;AAGD,SAAS,IAAI,CAAC,KAAgB;IAC5B,OAAO,kBAAU,KAAK,GAAI,CAAC;AAC7B,CAAC;AAGD,SAAS,OAAO,CAAC,KAAgB;IAC/B,OAAO,kBAAU,KAAK,GAAI,CAAC;AAC7B,CAAC;AAED,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,MAAM,CAAC;AAG7C,wBAAgB,EAAE,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,UAEzC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAmB,MAAM,MAAM,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEzC,MAAM,UAAU,EAAE,CAAC,GAAG,MAAoB;IACxC,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { ImageStyle, StyleProp } from 'react-native';
|
|
2
|
+
/**
|
|
3
|
+
* Resolve the per-category image width for a weapon category, falling
|
|
4
|
+
* back to 80 when the category isn't in the overrides map.
|
|
5
|
+
*/
|
|
6
|
+
declare function getWeaponCategoryWidth(category: string): number;
|
|
7
|
+
interface WeaponGridTransform {
|
|
8
|
+
/** Uniform scale multiplier (1 = fit, 2 = 2x zoom). */
|
|
9
|
+
scale: number;
|
|
10
|
+
/** Horizontal offset in px. */
|
|
11
|
+
offsetX: number;
|
|
12
|
+
/** Vertical offset in px. */
|
|
13
|
+
offsetY: number;
|
|
14
|
+
/** Rotation in degrees. */
|
|
15
|
+
rotate: number;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Resolve the per-weapon visual tuning (scale / offset / rotate) for a
|
|
19
|
+
* weapon UUID, falling back to an identity transform for unknown guns.
|
|
20
|
+
*/
|
|
21
|
+
declare function getWeaponGridTransform(weaponUuid: string): WeaponGridTransform;
|
|
22
|
+
/**
|
|
23
|
+
* Convenience: compose the transform as an RN `ImageStyle` ready to
|
|
24
|
+
* pass into `OwnedItemCard`'s `iconStyle` prop for weapon-skin tiles
|
|
25
|
+
* in the 3-column customize picker.
|
|
26
|
+
*/
|
|
27
|
+
declare function getWeaponGridIconStyle(weaponUuid: string): StyleProp<ImageStyle>;
|
|
28
|
+
export { getWeaponCategoryWidth, getWeaponGridTransform, getWeaponGridIconStyle };
|
|
29
|
+
export type { WeaponGridTransform };
|
|
30
|
+
//# sourceMappingURL=weapon-grid-transform.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"weapon-grid-transform.d.ts","sourceRoot":"","sources":["../../src/lib/weapon-grid-transform.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAiB1D;;;GAGG;AACH,iBAAS,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAExD;AAED,UAAU,mBAAmB;IAC3B,uDAAuD;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,+BAA+B;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,2BAA2B;IAC3B,MAAM,EAAE,MAAM,CAAC;CAChB;AA6ED;;;GAGG;AACH,iBAAS,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,mBAAmB,CAEvE;AAED;;;;GAIG;AACH,iBAAS,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,CAUzE;AAED,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,CAAC;AAClF,YAAY,EAAE,mBAAmB,EAAE,CAAC"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Per-category default image width (% of card width) used to scale
|
|
3
|
+
* weapon art inside the two-column loadout grid. Keyed by Valorant's
|
|
4
|
+
* `EEquippableCategory::*` string.
|
|
5
|
+
*/
|
|
6
|
+
const WEAPON_CATEGORY_WIDTH_GRID = {
|
|
7
|
+
'EEquippableCategory::Sidearm': 50,
|
|
8
|
+
'EEquippableCategory::SMG': 80,
|
|
9
|
+
'EEquippableCategory::Shotgun': 78,
|
|
10
|
+
'EEquippableCategory::Rifle': 80,
|
|
11
|
+
'EEquippableCategory::Melee': 60,
|
|
12
|
+
'EEquippableCategory::Sniper': 82,
|
|
13
|
+
'EEquippableCategory::Heavy': 85,
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Resolve the per-category image width for a weapon category, falling
|
|
17
|
+
* back to 80 when the category isn't in the overrides map.
|
|
18
|
+
*/
|
|
19
|
+
function getWeaponCategoryWidth(category) {
|
|
20
|
+
return WEAPON_CATEGORY_WIDTH_GRID[category] ?? 80;
|
|
21
|
+
}
|
|
22
|
+
const DEFAULT_WEAPON_GRID = {
|
|
23
|
+
scale: 1,
|
|
24
|
+
offsetX: 0,
|
|
25
|
+
offsetY: 0,
|
|
26
|
+
rotate: 0,
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Per-weapon visual tuning for the 3-column 1:1 weapon-skin picker —
|
|
30
|
+
* rotates and zooms each gun's art so it fits its square tile nicely.
|
|
31
|
+
* Keyed by Valorant weapon UUID.
|
|
32
|
+
*/
|
|
33
|
+
const WEAPON_GRID_OVERRIDES = {
|
|
34
|
+
// ── Sidearms ──
|
|
35
|
+
// Classic
|
|
36
|
+
'29a0cfab-485b-f5d5-779a-b59f85e204a8': { scale: 1.4, offsetX: -5, rotate: 30 },
|
|
37
|
+
// Shorty
|
|
38
|
+
'42da8ccc-40d5-affc-beec-15aa47b42eda': { scale: 2.2, offsetX: -5, rotate: 30 },
|
|
39
|
+
// Frenzy
|
|
40
|
+
'44d4e95c-4157-0037-81b2-17841bf2e8e3': { scale: 1.8, offsetX: -17, offsetY: 2, rotate: 30 },
|
|
41
|
+
// Ghost
|
|
42
|
+
'1baa85b4-4c70-1284-64bb-6481dfc3bb4e': { scale: 2.5, offsetX: -23, offsetY: -7, rotate: 30 },
|
|
43
|
+
// Bandit
|
|
44
|
+
'410b2e0b-4ceb-1321-1727-20858f7f3477': { scale: 2.0, offsetX: -15, offsetY: 0, rotate: 30 },
|
|
45
|
+
// Sheriff
|
|
46
|
+
'e336c6b8-418d-9340-d77f-7a9e4cfe0702': { scale: 1.8, offsetX: -12, offsetY: 0, rotate: 30 },
|
|
47
|
+
// ── SMGs ──
|
|
48
|
+
// Stinger
|
|
49
|
+
'f7e1b454-4ad4-1063-ec0a-159e56b58941': { scale: 2.5, offsetX: -0, offsetY: 7, rotate: 30 },
|
|
50
|
+
// Spectre
|
|
51
|
+
'462080d1-4035-2937-7c09-27aa2a5c27a7': { scale: 3.2, offsetX: -12, offsetY: 1, rotate: 30 },
|
|
52
|
+
// ── Shotguns ──
|
|
53
|
+
// Bucky
|
|
54
|
+
'910be174-449b-c412-ab22-d0873436b21b': { scale: 2.5, offsetX: 0, offsetY: 0, rotate: 35 },
|
|
55
|
+
// Judge
|
|
56
|
+
'ec845bf4-4f79-ddda-a3da-0db3774b2794': { scale: 2.5, offsetX: -2, offsetY: 0, rotate: 35 },
|
|
57
|
+
// ── Rifles ──
|
|
58
|
+
// Bulldog
|
|
59
|
+
'ae3de142-4d85-2547-dd26-4e90bed35cf7': { scale: 2.5, offsetX: -4, offsetY: 0, rotate: 35 },
|
|
60
|
+
// Guardian
|
|
61
|
+
'4ade7faa-4cf1-8376-95ef-39884480959b': { scale: 3.0, offsetX: -8, offsetY: -2, rotate: 35 },
|
|
62
|
+
// Phantom
|
|
63
|
+
'ee8e8d15-496b-07ac-e5f6-8fae5d4c7b1a': { scale: 3.0, offsetX: -8, offsetY: -2, rotate: 35 },
|
|
64
|
+
// Vandal
|
|
65
|
+
'9c82e19d-4575-0200-1a81-3eacf00cf872': { scale: 3.0, offsetX: -6, offsetY: 4, rotate: 35 },
|
|
66
|
+
// ── Melee ──
|
|
67
|
+
// Melee
|
|
68
|
+
'2f59173c-4bed-b6c3-2191-dea9b58be9c7': { scale: 1.0 },
|
|
69
|
+
// ── Snipers ──
|
|
70
|
+
// Marshal
|
|
71
|
+
'c4883e50-4494-202c-3ec3-6b8a9284f00b': { scale: 3.0, offsetX: -4, offsetY: -4, rotate: 35 },
|
|
72
|
+
// Outlaw
|
|
73
|
+
'5f0aaf7a-4289-3998-d5ff-eb9a5cf7ef5c': { scale: 3.0, offsetX: -5, offsetY: -4, rotate: 35 },
|
|
74
|
+
// Operator
|
|
75
|
+
'a03b24d3-4319-996d-0f8c-94bbfba1dfc7': { scale: 3.0, offsetX: -4, offsetY: -2, rotate: 35 },
|
|
76
|
+
// ── Heavy ──
|
|
77
|
+
// Ares
|
|
78
|
+
'55d8a0f4-4274-ca67-fe2c-06ab45efdf58': { scale: 3.0, offsetX: -5, offsetY: -3, rotate: 35 },
|
|
79
|
+
// Odin
|
|
80
|
+
'63e6c2b6-4a8e-869c-3d4c-e38355226584': { scale: 3.0, offsetX: -5, offsetY: -4, rotate: 35 },
|
|
81
|
+
};
|
|
82
|
+
/**
|
|
83
|
+
* Resolve the per-weapon visual tuning (scale / offset / rotate) for a
|
|
84
|
+
* weapon UUID, falling back to an identity transform for unknown guns.
|
|
85
|
+
*/
|
|
86
|
+
function getWeaponGridTransform(weaponUuid) {
|
|
87
|
+
return { ...DEFAULT_WEAPON_GRID, ...WEAPON_GRID_OVERRIDES[weaponUuid] };
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Convenience: compose the transform as an RN `ImageStyle` ready to
|
|
91
|
+
* pass into `OwnedItemCard`'s `iconStyle` prop for weapon-skin tiles
|
|
92
|
+
* in the 3-column customize picker.
|
|
93
|
+
*/
|
|
94
|
+
function getWeaponGridIconStyle(weaponUuid) {
|
|
95
|
+
const { scale, offsetX, offsetY, rotate } = getWeaponGridTransform(weaponUuid);
|
|
96
|
+
return {
|
|
97
|
+
transform: [
|
|
98
|
+
{ scale },
|
|
99
|
+
{ translateX: offsetX },
|
|
100
|
+
{ translateY: offsetY },
|
|
101
|
+
{ rotate: `${rotate}deg` },
|
|
102
|
+
],
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
export { getWeaponCategoryWidth, getWeaponGridTransform, getWeaponGridIconStyle };
|
|
106
|
+
//# sourceMappingURL=weapon-grid-transform.js.map
|