@retray-dev/ui-kit 12.1.0 → 13.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/COMPONENTS.md +183 -147
- package/CONSUMER.md +2 -2
- package/DESIGN.md +2 -2
- package/README.md +13 -8
- package/dist/Accordion.d.mts +6 -0
- package/dist/Accordion.d.ts +6 -0
- package/dist/Accordion.js +62 -208
- package/dist/Accordion.mjs +6 -5
- package/dist/AlertBanner.js +29 -151
- package/dist/AlertBanner.mjs +3 -3
- package/dist/AppHeader.js +37 -233
- package/dist/AppHeader.mjs +6 -7
- package/dist/Avatar.d.mts +17 -1
- package/dist/Avatar.d.ts +17 -1
- package/dist/Avatar.js +80 -113
- package/dist/Avatar.mjs +2 -2
- package/dist/Badge.js +24 -147
- package/dist/Badge.mjs +3 -3
- package/dist/Button.js +86 -274
- package/dist/Button.mjs +6 -6
- package/dist/Card.js +15 -198
- package/dist/Card.mjs +4 -5
- package/dist/CategoryStrip.d.mts +0 -5
- package/dist/CategoryStrip.d.ts +0 -5
- package/dist/CategoryStrip.js +47 -263
- package/dist/CategoryStrip.mjs +6 -6
- package/dist/Checkbox.js +15 -198
- package/dist/Checkbox.mjs +5 -5
- package/dist/Chip.js +44 -234
- package/dist/Chip.mjs +7 -6
- package/dist/ConfirmDialog.js +100 -296
- package/dist/ConfirmDialog.mjs +7 -7
- package/dist/CurrencyDisplay.js +1 -112
- package/dist/CurrencyDisplay.mjs +2 -2
- package/dist/CurrencyInput.js +35 -160
- package/dist/CurrencyInput.mjs +5 -5
- package/dist/DetailRow.js +25 -148
- package/dist/DetailRow.mjs +3 -3
- package/dist/EmptyState.js +87 -275
- package/dist/EmptyState.mjs +7 -7
- package/dist/ErrorBoundary.js +32 -197
- package/dist/ErrorBoundary.mjs +4 -4
- package/dist/Form.js +1 -112
- package/dist/Form.mjs +2 -2
- package/dist/HolographicCard.d.mts +0 -28
- package/dist/HolographicCard.d.ts +0 -28
- package/dist/HolographicCard.js +20 -130
- package/dist/HolographicCard.mjs +9 -32
- package/dist/IconButton.js +36 -232
- package/dist/IconButton.mjs +5 -6
- package/dist/IconPicker.js +222 -927
- package/dist/IconPicker.mjs +5 -5
- package/dist/ImageUpload.d.mts +5 -1
- package/dist/ImageUpload.d.ts +5 -1
- package/dist/ImageUpload.js +32 -215
- package/dist/ImageUpload.mjs +5 -6
- package/dist/ImageViewer.js +75 -264
- package/dist/ImageViewer.mjs +8 -8
- package/dist/Input.d.mts +1 -1
- package/dist/Input.d.ts +1 -1
- package/dist/Input.js +35 -160
- package/dist/Input.mjs +4 -4
- package/dist/LabelValue.js +24 -147
- package/dist/LabelValue.mjs +3 -3
- package/dist/ListGroup.js +1 -112
- package/dist/ListGroup.mjs +2 -2
- package/dist/ListItem.js +38 -233
- package/dist/ListItem.mjs +5 -6
- package/dist/MediaCard.d.mts +0 -14
- package/dist/MediaCard.d.ts +0 -14
- package/dist/MediaCard.js +69 -313
- package/dist/MediaCard.mjs +5 -6
- package/dist/MenuGroup.js +1 -112
- package/dist/MenuGroup.mjs +2 -2
- package/dist/MenuItem.js +36 -232
- package/dist/MenuItem.mjs +5 -6
- package/dist/MonthPicker.js +8 -161
- package/dist/MonthPicker.mjs +3 -3
- package/dist/NumberStepper.js +40 -236
- package/dist/NumberStepper.mjs +5 -6
- package/dist/PagerDots.d.mts +1 -1
- package/dist/PagerDots.d.ts +1 -1
- package/dist/PagerDots.js +69 -222
- package/dist/PagerDots.mjs +6 -5
- package/dist/Pressable.js +14 -85
- package/dist/Pressable.mjs +4 -4
- package/dist/PricingCard.js +94 -279
- package/dist/PricingCard.mjs +8 -8
- package/dist/Progress.js +3 -121
- package/dist/Progress.mjs +3 -3
- package/dist/RadioGroup.js +52 -263
- package/dist/RadioGroup.mjs +5 -5
- package/dist/RetrayProvider.d.mts +1 -1
- package/dist/RetrayProvider.d.ts +1 -1
- package/dist/RetrayProvider.js +5 -6
- package/dist/RetrayProvider.mjs +3 -3
- package/dist/Select.d.mts +2 -1
- package/dist/Select.d.ts +2 -1
- package/dist/Select.js +24 -230
- package/dist/Select.mjs +4 -5
- package/dist/SelectableCard.d.mts +27 -0
- package/dist/SelectableCard.d.ts +27 -0
- package/dist/SelectableCard.js +335 -0
- package/dist/SelectableCard.mjs +8 -0
- package/dist/SelectableGrid.d.mts +0 -21
- package/dist/SelectableGrid.d.ts +0 -21
- package/dist/SelectableGrid.js +49 -269
- package/dist/SelectableGrid.mjs +5 -6
- package/dist/Separator.js +1 -112
- package/dist/Separator.mjs +2 -2
- package/dist/Sheet.js +16 -163
- package/dist/Sheet.mjs +3 -3
- package/dist/SheetSelect.js +39 -234
- package/dist/SheetSelect.mjs +6 -6
- package/dist/Skeleton.d.mts +3 -1
- package/dist/Skeleton.d.ts +3 -1
- package/dist/Skeleton.js +7 -124
- package/dist/Skeleton.mjs +3 -3
- package/dist/Slider.js +6 -159
- package/dist/Slider.mjs +3 -3
- package/dist/Spinner.js +3 -114
- package/dist/Spinner.mjs +2 -2
- package/dist/Stats.d.mts +4 -1
- package/dist/Stats.d.ts +4 -1
- package/dist/Stats.js +60 -234
- package/dist/Stats.mjs +5 -6
- package/dist/Switch.js +24 -173
- package/dist/Switch.mjs +5 -4
- package/dist/TabBar.js +43 -198
- package/dist/TabBar.mjs +5 -4
- package/dist/Tabs.js +15 -197
- package/dist/Tabs.mjs +5 -5
- package/dist/Text.js +9 -128
- package/dist/Text.mjs +2 -2
- package/dist/Textarea.d.mts +2 -1
- package/dist/Textarea.d.ts +2 -1
- package/dist/Textarea.js +71 -217
- package/dist/Textarea.mjs +4 -4
- package/dist/Toast.js +1 -112
- package/dist/Toast.mjs +2 -2
- package/dist/Toggle.js +39 -234
- package/dist/Toggle.mjs +6 -6
- package/dist/{chunk-FFTYLPSB.mjs → chunk-2QOHHBJC.mjs} +13 -7
- package/dist/{chunk-BCWEHE34.mjs → chunk-2VIDP72N.mjs} +3 -3
- package/dist/{chunk-PGERH3P7.mjs → chunk-4NQFTHN3.mjs} +13 -7
- package/dist/{chunk-3N2M3WZL.mjs → chunk-4ZO5PTKF.mjs} +4 -4
- package/dist/{chunk-MYZ2EDYU.mjs → chunk-5MYNAAFE.mjs} +13 -17
- package/dist/{chunk-E7NEHHXV.mjs → chunk-62BBSSUF.mjs} +3 -3
- package/dist/{chunk-ISY26JQJ.mjs → chunk-6CR4S6W2.mjs} +3 -3
- package/dist/{chunk-FUVYSVGR.mjs → chunk-6QLBHUEG.mjs} +8 -7
- package/dist/chunk-ARONDO7M.mjs +40 -0
- package/dist/{chunk-3UYAZ7I4.mjs → chunk-AZV7KNJI.mjs} +3 -3
- package/dist/{chunk-HLMPMUK2.mjs → chunk-BTUW5LSG.mjs} +11 -8
- package/dist/chunk-BULKGOIZ.mjs +235 -0
- package/dist/{chunk-265G6A46.mjs → chunk-CBIZLRYH.mjs} +29 -12
- package/dist/chunk-CM2DG4MR.mjs +142 -0
- package/dist/{chunk-2I2AYECM.mjs → chunk-DBHSUUKU.mjs} +2 -2
- package/dist/{chunk-P64WHW4A.mjs → chunk-DE25XTVQ.mjs} +3 -3
- package/dist/{chunk-DI7CBDL6.mjs → chunk-E4EQSCKR.mjs} +5 -5
- package/dist/{chunk-357YO24D.mjs → chunk-EHGBHFMH.mjs} +9 -17
- package/dist/{chunk-GK4VRMNE.mjs → chunk-EROPDCB5.mjs} +24 -27
- package/dist/{chunk-XBAGGKLW.mjs → chunk-ERWJPVX7.mjs} +2 -2
- package/dist/{chunk-LRM4AVYY.mjs → chunk-ESQDPO5E.mjs} +7 -7
- package/dist/{chunk-EFLFRAHD.mjs → chunk-EW2FIDSM.mjs} +1 -1
- package/dist/{chunk-7HSILTC4.mjs → chunk-FTTI6T5Q.mjs} +4 -4
- package/dist/{chunk-X26S5EVZ.mjs → chunk-HUSSF6TF.mjs} +1 -1
- package/dist/chunk-IFYMBOEN.mjs +14 -0
- package/dist/{chunk-S3KJCPEJ.mjs → chunk-IGU223UM.mjs} +80 -4
- package/dist/chunk-IJCMPVW5.mjs +121 -0
- package/dist/{chunk-I4V5XZPS.mjs → chunk-ITG4JQM3.mjs} +4 -4
- package/dist/{chunk-F4V6XLP4.mjs → chunk-K3QX2M26.mjs} +11 -8
- package/dist/{chunk-V6NFJXKO.mjs → chunk-K7TKID3V.mjs} +8 -7
- package/dist/{chunk-ZHMSAYLT.mjs → chunk-KAGADD2O.mjs} +4 -4
- package/dist/{chunk-3GEYJ7I5.mjs → chunk-KC5QDYGZ.mjs} +4 -4
- package/dist/{chunk-HJ46DTJE.mjs → chunk-KPTY7UYQ.mjs} +1 -1
- package/dist/{chunk-EMUWGDWC.mjs → chunk-KSSVIFYR.mjs} +11 -12
- package/dist/chunk-L3YKPTJQ.mjs +119 -0
- package/dist/chunk-M53LC4Q7.mjs +35 -0
- package/dist/{chunk-NXI4YDZ2.mjs → chunk-MP7GLMIR.mjs} +17 -25
- package/dist/chunk-MZ6WRTD2.mjs +40 -0
- package/dist/chunk-NGEN2EES.mjs +581 -0
- package/dist/{chunk-JULSIZDM.mjs → chunk-OBV72JD4.mjs} +1 -1
- package/dist/{chunk-2A2LEFZG.mjs → chunk-PGQ6FMXS.mjs} +6 -5
- package/dist/{chunk-BQZE3HAW.mjs → chunk-PI6RULJX.mjs} +1 -1
- package/dist/{chunk-FA2KMTH5.mjs → chunk-RA6SAAFE.mjs} +9 -8
- package/dist/{chunk-FVTVCJAH.mjs → chunk-RRKM4MKB.mjs} +7 -7
- package/dist/{chunk-AKM4EPOT.mjs → chunk-S2VGME7X.mjs} +1 -1
- package/dist/{chunk-OULVKTWL.mjs → chunk-S44XWTTC.mjs} +35 -25
- package/dist/{chunk-QSFV2P7O.mjs → chunk-SZEKQAOY.mjs} +1 -1
- package/dist/{chunk-N4ZPVCJH.mjs → chunk-TETMEKZE.mjs} +9 -9
- package/dist/{chunk-2CBQKU7H.mjs → chunk-TMH263OK.mjs} +5 -4
- package/dist/{chunk-D3Y2T42P.mjs → chunk-U6DEBYU5.mjs} +10 -9
- package/dist/{chunk-4WFMPFZB.mjs → chunk-UOKFSFNJ.mjs} +2 -2
- package/dist/{chunk-WOEWGSTU.mjs → chunk-URIH43IJ.mjs} +13 -21
- package/dist/{chunk-JCZQOY4O.mjs → chunk-V2ZB2XNS.mjs} +16 -10
- package/dist/{chunk-P73V2EKS.mjs → chunk-WIPEDNSD.mjs} +7 -7
- package/dist/{chunk-BOVUP27T.mjs → chunk-XCIG6HT2.mjs} +6 -5
- package/dist/chunk-Y6YS33GM.mjs +131 -0
- package/dist/{chunk-5OLNXP3S.mjs → chunk-ZKDKKQCE.mjs} +29 -7
- package/dist/{chunk-DF6DU42P.mjs → chunk-ZTPYUU5C.mjs} +5 -5
- package/dist/{index-wt-orHUi.d.ts → index-CY34hxPN.d.mts} +1 -0
- package/dist/{index-wt-orHUi.d.mts → index-CY34hxPN.d.ts} +1 -0
- package/dist/index.d.mts +15 -74
- package/dist/index.d.ts +15 -74
- package/dist/index.js +1055 -1562
- package/dist/index.mjs +81 -84
- package/package.json +8 -10
- package/src/components/Accordion/Accordion.tsx +32 -9
- package/src/components/AlertBanner/AlertBanner.tsx +7 -6
- package/src/components/AppHeader/AppHeader.tsx +1 -1
- package/src/components/Avatar/Avatar.tsx +92 -1
- package/src/components/Avatar/index.ts +2 -2
- package/src/components/Badge/Badge.tsx +2 -2
- package/src/components/Button/Button.tsx +64 -57
- package/src/components/Card/Card.tsx +1 -0
- package/src/components/CategoryStrip/CategoryStrip.tsx +36 -49
- package/src/components/Chip/Chip.tsx +5 -4
- package/src/components/ConfirmDialog/ConfirmDialog.tsx +13 -6
- package/src/components/DetailRow/DetailRow.tsx +3 -3
- package/src/components/EmptyState/EmptyState.tsx +2 -2
- package/src/components/ErrorBoundary/ErrorBoundary.tsx +6 -6
- package/src/components/HolographicCard/HolographicCard.tsx +14 -95
- package/src/components/IconButton/IconButton.tsx +2 -2
- package/src/components/IconPicker/IconPicker.tsx +13 -12
- package/src/components/ImageUpload/ImageUpload.tsx +24 -28
- package/src/components/ImageViewer/ImageViewer.tsx +3 -3
- package/src/components/Input/Input.tsx +11 -5
- package/src/components/LabelValue/LabelValue.tsx +2 -2
- package/src/components/ListItem/ListItem.tsx +4 -4
- package/src/components/MediaCard/MediaCard.tsx +21 -59
- package/src/components/MenuItem/MenuItem.tsx +2 -2
- package/src/components/MonthPicker/MonthPicker.tsx +2 -2
- package/src/components/NumberStepper/NumberStepper.tsx +6 -6
- package/src/components/PagerDots/PagerDots.tsx +38 -28
- package/src/components/PricingCard/PricingCard.tsx +6 -6
- package/src/components/RadioGroup/RadioGroup.tsx +18 -31
- package/src/components/Select/Select.tsx +32 -39
- package/src/components/SelectableCard/SelectableCard.tsx +302 -0
- package/src/components/SelectableCard/index.ts +1 -0
- package/src/components/SelectableGrid/SelectableGrid.tsx +38 -72
- package/src/components/Sheet/Sheet.tsx +11 -4
- package/src/components/SheetSelect/SheetSelect.tsx +3 -3
- package/src/components/Skeleton/Skeleton.tsx +6 -3
- package/src/components/Spinner/Spinner.tsx +2 -2
- package/src/components/Stats/Stats.tsx +36 -8
- package/src/components/Switch/Switch.tsx +9 -6
- package/src/components/TabBar/TabBar.tsx +9 -8
- package/src/components/Text/Text.tsx +12 -1
- package/src/components/Textarea/Textarea.tsx +18 -32
- package/src/components/Toggle/Toggle.tsx +3 -3
- package/src/hooks/useConfirmDialog.ts +31 -42
- package/src/index.ts +4 -4
- package/src/theme/ThemeProvider.tsx +1 -4
- package/src/theme/colorUtils.ts +1 -72
- package/src/theme/colors.ts +47 -1
- package/src/theme/types.ts +6 -3
- package/src/utils/animations.ts +0 -47
- package/src/utils/curatedIcons.ts +93 -801
- package/src/utils/haptics.ts +13 -208
- package/src/utils/icons.ts +27 -91
- package/src/utils/pressable.ts +10 -61
- package/dist/VirtualList.d.mts +0 -19
- package/dist/VirtualList.d.ts +0 -19
- package/dist/VirtualList.js +0 -38
- package/dist/VirtualList.mjs +0 -2
- package/dist/chunk-3DKJ2GIC.mjs +0 -30
- package/dist/chunk-AQEVCEXV.mjs +0 -164
- package/dist/chunk-DOGIPOF5.mjs +0 -131
- package/dist/chunk-DVK4G2GT.mjs +0 -59
- package/dist/chunk-EJ7ZPXOH.mjs +0 -163
- package/dist/chunk-J6Q2YJEV.mjs +0 -134
- package/dist/chunk-JNVAIDLK.mjs +0 -136
- package/dist/chunk-KA7LTET3.mjs +0 -71
- package/dist/chunk-KHYX4IOM.mjs +0 -1114
- package/dist/chunk-NC5ZTR2Y.mjs +0 -32
- package/dist/chunk-YNROWHQJ.mjs +0 -46
- package/src/components/VirtualList/VirtualList.tsx +0 -60
- package/src/components/VirtualList/index.ts +0 -1
- package/src/utils/fontGuard.ts +0 -35
- package/src/utils/hover.ts +0 -25
- package/src/utils/useColorTransition.ts +0 -40
- package/src/utils/usePressScale.ts +0 -75
package/dist/CurrencyInput.js
CHANGED
|
@@ -12,7 +12,6 @@ var Feather = require('@expo/vector-icons/Feather');
|
|
|
12
12
|
var FontAwesome5 = require('@expo/vector-icons/FontAwesome5');
|
|
13
13
|
var MaterialIcons = require('@expo/vector-icons/MaterialIcons');
|
|
14
14
|
var Ionicons = require('@expo/vector-icons/Ionicons');
|
|
15
|
-
var reactNativeReanimated = require('react-native-reanimated');
|
|
16
15
|
|
|
17
16
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
17
|
|
|
@@ -25,118 +24,7 @@ var MaterialIcons__default = /*#__PURE__*/_interopDefault(MaterialIcons);
|
|
|
25
24
|
var Ionicons__default = /*#__PURE__*/_interopDefault(Ionicons);
|
|
26
25
|
|
|
27
26
|
// src/components/CurrencyInput/CurrencyInput.tsx
|
|
28
|
-
|
|
29
|
-
// src/theme/colorUtils.ts
|
|
30
|
-
function hexToRgb(hex) {
|
|
31
|
-
const clean = hex.replace("#", "");
|
|
32
|
-
const full = clean.length === 3 ? clean.split("").map((c) => c + c).join("") : clean;
|
|
33
|
-
if (full.length !== 6) return null;
|
|
34
|
-
return {
|
|
35
|
-
r: parseInt(full.slice(0, 2), 16),
|
|
36
|
-
g: parseInt(full.slice(2, 4), 16),
|
|
37
|
-
b: parseInt(full.slice(4, 6), 16)
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
function componentToHex(c) {
|
|
41
|
-
return Math.round(Math.max(0, Math.min(255, c))).toString(16).padStart(2, "0");
|
|
42
|
-
}
|
|
43
|
-
function rgbToHex(r, g, b) {
|
|
44
|
-
return `#${componentToHex(r)}${componentToHex(g)}${componentToHex(b)}`;
|
|
45
|
-
}
|
|
46
|
-
function withAlphaOnWhite(hex, alpha) {
|
|
47
|
-
const rgb = hexToRgb(hex);
|
|
48
|
-
if (!rgb) return hex;
|
|
49
|
-
const r = rgb.r * alpha + 255 * (1 - alpha);
|
|
50
|
-
const g = rgb.g * alpha + 255 * (1 - alpha);
|
|
51
|
-
const b = rgb.b * alpha + 255 * (1 - alpha);
|
|
52
|
-
return rgbToHex(r, g, b);
|
|
53
|
-
}
|
|
54
|
-
function withAlphaOnDark(hex, alpha, bgHex = "#0f0f0f") {
|
|
55
|
-
const rgb = hexToRgb(hex);
|
|
56
|
-
const bg = hexToRgb(bgHex);
|
|
57
|
-
if (!rgb || !bg) return hex;
|
|
58
|
-
const r = rgb.r * alpha + bg.r * (1 - alpha);
|
|
59
|
-
const g = rgb.g * alpha + bg.g * (1 - alpha);
|
|
60
|
-
const b = rgb.b * alpha + bg.b * (1 - alpha);
|
|
61
|
-
return rgbToHex(r, g, b);
|
|
62
|
-
}
|
|
63
|
-
function mixWithBackground(fgHex, bgHex, opacity) {
|
|
64
|
-
const fg = hexToRgb(fgHex);
|
|
65
|
-
const bg = hexToRgb(bgHex);
|
|
66
|
-
if (!fg || !bg) return fgHex;
|
|
67
|
-
const r = fg.r * opacity + bg.r * (1 - opacity);
|
|
68
|
-
const g = fg.g * opacity + bg.g * (1 - opacity);
|
|
69
|
-
const b = fg.b * opacity + bg.b * (1 - opacity);
|
|
70
|
-
return rgbToHex(r, g, b);
|
|
71
|
-
}
|
|
72
|
-
function lighten(hex, amount) {
|
|
73
|
-
return withAlphaOnWhite(hex, 1 - amount);
|
|
74
|
-
}
|
|
75
|
-
function darken(hex, amount) {
|
|
76
|
-
const rgb = hexToRgb(hex);
|
|
77
|
-
if (!rgb) return hex;
|
|
78
|
-
return rgbToHex(rgb.r * (1 - amount), rgb.g * (1 - amount), rgb.b * (1 - amount));
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
// src/theme/colors.ts
|
|
82
|
-
var defaultLight = {
|
|
83
|
-
background: "#ffffff",
|
|
84
|
-
foreground: "#1a1a1a",
|
|
85
|
-
card: "#ffffff",
|
|
86
|
-
primary: "#1a1a1a",
|
|
87
|
-
primaryForeground: "#ffffff",
|
|
88
|
-
// AUDIT FIX: brand accent — was undefined; falls back to primary when omitted
|
|
89
|
-
accent: "#d4561d",
|
|
90
|
-
accentForeground: "#ffffff",
|
|
91
|
-
border: "#dddddd",
|
|
92
|
-
// AUDIT FIX: was #e53935 (4.22:1 on white — fails AA); #c72828 = 5.59:1 ✓
|
|
93
|
-
destructive: "#c72828",
|
|
94
|
-
destructiveForeground: "#ffffff",
|
|
95
|
-
success: "#1a7a45",
|
|
96
|
-
successForeground: "#ffffff",
|
|
97
|
-
// AUDIT FIX: was #e67e00 (2.86:1 — severe fail); #9a5200 = 5.86:1 ✓ AAA-near
|
|
98
|
-
warning: "#9a5200",
|
|
99
|
-
warningForeground: "#ffffff"
|
|
100
|
-
};
|
|
101
|
-
function deriveColors(t, scheme) {
|
|
102
|
-
const dark = scheme === "dark";
|
|
103
|
-
const bg = t.background;
|
|
104
|
-
const foregroundSubtle = mixWithBackground(t.foreground, bg, 0.7);
|
|
105
|
-
const foregroundMuted = mixWithBackground(t.foreground, bg, 0.62);
|
|
106
|
-
const surface = dark ? lighten(bg, -0.06) : darken(bg, 0.04);
|
|
107
|
-
const surfaceStrong = dark ? lighten(bg, -0.12) : darken(bg, 0.08);
|
|
108
|
-
const destructiveTint = dark ? withAlphaOnDark(t.destructive, 0.15, bg) : withAlphaOnWhite(t.destructive, 0.08);
|
|
109
|
-
const destructiveBorder = dark ? withAlphaOnDark(t.destructive, 0.45, bg) : withAlphaOnWhite(t.destructive, 0.3);
|
|
110
|
-
const successTint = dark ? withAlphaOnDark(t.success, 0.15, bg) : withAlphaOnWhite(t.success, 0.08);
|
|
111
|
-
const successBorder = dark ? withAlphaOnDark(t.success, 0.45, bg) : withAlphaOnWhite(t.success, 0.3);
|
|
112
|
-
const warningTint = dark ? withAlphaOnDark(t.warning, 0.15, bg) : withAlphaOnWhite(t.warning, 0.08);
|
|
113
|
-
const warningBorder = dark ? withAlphaOnDark(t.warning, 0.45, bg) : withAlphaOnWhite(t.warning, 0.3);
|
|
114
|
-
return {
|
|
115
|
-
...t,
|
|
116
|
-
foregroundSubtle,
|
|
117
|
-
foregroundMuted,
|
|
118
|
-
surface,
|
|
119
|
-
surfaceStrong,
|
|
120
|
-
destructiveTint,
|
|
121
|
-
destructiveBorder,
|
|
122
|
-
successTint,
|
|
123
|
-
successBorder,
|
|
124
|
-
warningTint,
|
|
125
|
-
warningBorder,
|
|
126
|
-
overlay: t.overlay ?? "rgba(0,0,0,0.45)",
|
|
127
|
-
accentResolved: t.accent ?? t.primary,
|
|
128
|
-
accentForegroundResolved: t.accentForeground ?? t.primaryForeground,
|
|
129
|
-
ring: t.accent ?? t.primary,
|
|
130
|
-
input: t.border,
|
|
131
|
-
separator: dark ? lighten(t.border, 0.22) : darken(t.border, 0.16)
|
|
132
|
-
};
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
// src/theme/ThemeProvider.tsx
|
|
136
|
-
var ThemeContext = React3.createContext({
|
|
137
|
-
colors: deriveColors(defaultLight, "light"),
|
|
138
|
-
colorScheme: "light"
|
|
139
|
-
});
|
|
27
|
+
var ThemeContext = React3.createContext(void 0);
|
|
140
28
|
function useTheme() {
|
|
141
29
|
const context = React3.useContext(ThemeContext);
|
|
142
30
|
if (!context) {
|
|
@@ -148,58 +36,39 @@ var isWeb = reactNative.Platform.OS === "web";
|
|
|
148
36
|
var s = isWeb ? (n) => n : reactNativeSizeMatters.scale;
|
|
149
37
|
var vs = isWeb ? (n) => n : reactNativeSizeMatters.verticalScale;
|
|
150
38
|
var ms = isWeb ? (n, _factor) => n : reactNativeSizeMatters.moderateScale;
|
|
151
|
-
var glyphMapOf = (mod) => mod.glyphMap ?? {};
|
|
152
39
|
var ALL_FAMILIES = [
|
|
153
|
-
{ name: "
|
|
154
|
-
{ name: "
|
|
155
|
-
{ name: "
|
|
156
|
-
{ name: "
|
|
157
|
-
{ name: "
|
|
158
|
-
{ name: "
|
|
40
|
+
{ name: "Feather", component: Feather__default.default },
|
|
41
|
+
{ name: "AntDesign", component: AntDesign__default.default },
|
|
42
|
+
{ name: "Entypo", component: Entypo__default.default },
|
|
43
|
+
{ name: "FontAwesome5", component: FontAwesome5__default.default },
|
|
44
|
+
{ name: "MaterialIcons", component: MaterialIcons__default.default },
|
|
45
|
+
{ name: "Ionicons", component: Ionicons__default.default }
|
|
159
46
|
];
|
|
160
|
-
var
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
for (const
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
47
|
+
var glyphCacheInitialized = false;
|
|
48
|
+
function ensureGlyphCache() {
|
|
49
|
+
if (glyphCacheInitialized) return;
|
|
50
|
+
glyphCacheInitialized = true;
|
|
51
|
+
for (const entry of ALL_FAMILIES) {
|
|
52
|
+
try {
|
|
53
|
+
entry.glyphMap = entry.component.glyphMap;
|
|
54
|
+
} catch {
|
|
55
|
+
entry.glyphMap = {};
|
|
168
56
|
}
|
|
169
57
|
}
|
|
170
|
-
return cache;
|
|
171
|
-
}
|
|
172
|
-
function resolveFamily(name) {
|
|
173
|
-
if (!resolvedCache) {
|
|
174
|
-
resolvedCache = buildCache();
|
|
175
|
-
}
|
|
176
|
-
return resolvedCache.get(name) ?? null;
|
|
177
58
|
}
|
|
178
59
|
function Icon({ name, size, color, family }) {
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
const Component = resolved.component;
|
|
187
|
-
return React3__default.default.createElement(Component, { name, size, color });
|
|
188
|
-
}
|
|
189
|
-
function renderIcon(name, size, color) {
|
|
190
|
-
return React3__default.default.createElement(Icon, { name, size, color });
|
|
60
|
+
ensureGlyphCache();
|
|
61
|
+
const entry = family ? ALL_FAMILIES.find((f) => f.name === family) : ALL_FAMILIES.find((f) => {
|
|
62
|
+
const glyphMap = f.glyphMap;
|
|
63
|
+
return glyphMap ? name in glyphMap : false;
|
|
64
|
+
});
|
|
65
|
+
if (!entry) return null;
|
|
66
|
+
return React3__default.default.createElement(entry.component, { name, size, color });
|
|
191
67
|
}
|
|
68
|
+
|
|
69
|
+
// src/utils/animations.ts
|
|
192
70
|
var TIMINGS = {
|
|
193
|
-
/** Color/opacity transitions on toggles, checkboxes, switches. */
|
|
194
71
|
state: { duration: 160 }};
|
|
195
|
-
({
|
|
196
|
-
/** Material-style ease-out — natural deceleration for state changes. */
|
|
197
|
-
standard: reactNativeReanimated.Easing.bezier(0.2, 0, 0, 1),
|
|
198
|
-
/** Strong ease-out for expanding surfaces (Accordion open). */
|
|
199
|
-
expand: reactNativeReanimated.Easing.bezier(0.23, 1, 0.32, 1),
|
|
200
|
-
/** Quick ease-in for collapsing. */
|
|
201
|
-
collapse: reactNativeReanimated.Easing.in(reactNativeReanimated.Easing.ease)
|
|
202
|
-
});
|
|
203
72
|
var COLOR_TRANSITION = {
|
|
204
73
|
type: "timing",
|
|
205
74
|
duration: TIMINGS.state.duration,
|
|
@@ -208,14 +77,16 @@ var COLOR_TRANSITION = {
|
|
|
208
77
|
|
|
209
78
|
// src/components/Input/Input.tsx
|
|
210
79
|
var webInputResetStyle = reactNative.Platform.OS === "web" ? { outlineStyle: "none", outlineWidth: 0, outlineColor: "transparent", boxShadow: "none" } : {};
|
|
211
|
-
function Input({ label, error, hint, disabled, prefix, suffix, prefixStyle, suffixStyle, prefixIcon, suffixIcon, prefixIconColor, suffixIconColor, type = "text", containerStyle, inputWrapperStyle, sheetMode = false, style, onFocus, onBlur, secureTextEntry, editable, accessibilityLabel, ...props }) {
|
|
80
|
+
function Input({ label, error, hint, disabled, prefix, suffix, prefixStyle, suffixStyle, prefixIcon, suffixIcon, prefixIconColor, suffixIconColor, type = "text", containerStyle, inputWrapperStyle, sheetMode = false, style, onFocus, onBlur, secureTextEntry, editable, accessibilityLabel, autoCapitalize, autoCorrect, ...props }) {
|
|
212
81
|
const { colors } = useTheme();
|
|
213
82
|
const [focused, setFocused] = React3.useState(false);
|
|
214
83
|
const [showPassword, setShowPassword] = React3.useState(false);
|
|
215
84
|
const isDisabled = disabled || editable === false;
|
|
216
85
|
const isPassword = type === "password";
|
|
217
86
|
const effectiveSecure = isPassword ? !showPassword : secureTextEntry;
|
|
218
|
-
const
|
|
87
|
+
const effectiveAutoCapitalize = isPassword ? "none" : autoCapitalize;
|
|
88
|
+
const effectiveAutoCorrect = isPassword ? false : autoCorrect;
|
|
89
|
+
const effectivePrefix = prefixIcon ? /* @__PURE__ */ React3__default.default.createElement(Icon, { name: prefixIcon, size: 20, color: prefixIconColor ?? colors.foregroundMuted }) : prefix;
|
|
219
90
|
const effectiveSuffix = isPassword && !suffix && !suffixIcon ? /* @__PURE__ */ React3__default.default.createElement(
|
|
220
91
|
reactNative.TouchableOpacity,
|
|
221
92
|
{
|
|
@@ -223,10 +94,10 @@ function Input({ label, error, hint, disabled, prefix, suffix, prefixStyle, suff
|
|
|
223
94
|
style: styles.passwordToggle,
|
|
224
95
|
activeOpacity: 0.6,
|
|
225
96
|
accessibilityRole: "button",
|
|
226
|
-
accessibilityLabel: showPassword ? "
|
|
97
|
+
accessibilityLabel: showPassword ? "Ocultar contrase\xF1a" : "Mostrar contrase\xF1a"
|
|
227
98
|
},
|
|
228
99
|
/* @__PURE__ */ React3__default.default.createElement(vectorIcons.AntDesign, { name: showPassword ? "eye" : "eye-invisible", size: 20, color: colors.foregroundMuted })
|
|
229
|
-
) : suffixIcon ?
|
|
100
|
+
) : suffixIcon ? /* @__PURE__ */ React3__default.default.createElement(Icon, { name: suffixIcon, size: 20, color: suffixIconColor ?? colors.foregroundMuted }) : suffix;
|
|
230
101
|
const borderColor = error ? colors.destructive : focused ? colors.primary : colors.border;
|
|
231
102
|
return /* @__PURE__ */ React3__default.default.createElement(reactNative.View, { style: [styles.container, isDisabled && styles.containerDisabled, containerStyle] }, label ? /* @__PURE__ */ React3__default.default.createElement(reactNative.Text, { style: [styles.label, { color: colors.foreground }], allowFontScaling: true }, label) : null, /* @__PURE__ */ React3__default.default.createElement(
|
|
232
103
|
reactNativeEase.EaseView,
|
|
@@ -263,6 +134,8 @@ function Input({ label, error, hint, disabled, prefix, suffix, prefixStyle, suff
|
|
|
263
134
|
secureTextEntry: effectiveSecure,
|
|
264
135
|
editable: isDisabled ? false : editable,
|
|
265
136
|
accessibilityLabel: accessibilityLabel ?? label,
|
|
137
|
+
autoCapitalize: effectiveAutoCapitalize,
|
|
138
|
+
autoCorrect: effectiveAutoCorrect,
|
|
266
139
|
...props
|
|
267
140
|
}
|
|
268
141
|
) : /* @__PURE__ */ React3__default.default.createElement(
|
|
@@ -287,6 +160,8 @@ function Input({ label, error, hint, disabled, prefix, suffix, prefixStyle, suff
|
|
|
287
160
|
secureTextEntry: effectiveSecure,
|
|
288
161
|
editable: isDisabled ? false : editable,
|
|
289
162
|
accessibilityLabel: accessibilityLabel ?? label,
|
|
163
|
+
autoCapitalize: effectiveAutoCapitalize,
|
|
164
|
+
autoCorrect: effectiveAutoCorrect,
|
|
290
165
|
...props
|
|
291
166
|
}
|
|
292
167
|
),
|
package/dist/CurrencyInput.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { CurrencyInput } from './chunk-
|
|
2
|
-
import './chunk-
|
|
3
|
-
import './chunk-
|
|
4
|
-
import './chunk-
|
|
5
|
-
import './chunk-
|
|
1
|
+
export { CurrencyInput } from './chunk-HUSSF6TF.mjs';
|
|
2
|
+
import './chunk-4NQFTHN3.mjs';
|
|
3
|
+
import './chunk-M53LC4Q7.mjs';
|
|
4
|
+
import './chunk-MZ6WRTD2.mjs';
|
|
5
|
+
import './chunk-KSSVIFYR.mjs';
|
|
6
6
|
import './chunk-2CE3TQVY.mjs';
|
|
7
7
|
import './chunk-Y6FXYEAI.mjs';
|
package/dist/DetailRow.js
CHANGED
|
@@ -21,118 +21,7 @@ var MaterialIcons__default = /*#__PURE__*/_interopDefault(MaterialIcons);
|
|
|
21
21
|
var Ionicons__default = /*#__PURE__*/_interopDefault(Ionicons);
|
|
22
22
|
|
|
23
23
|
// src/components/DetailRow/DetailRow.tsx
|
|
24
|
-
|
|
25
|
-
// src/theme/colorUtils.ts
|
|
26
|
-
function hexToRgb(hex) {
|
|
27
|
-
const clean = hex.replace("#", "");
|
|
28
|
-
const full = clean.length === 3 ? clean.split("").map((c) => c + c).join("") : clean;
|
|
29
|
-
if (full.length !== 6) return null;
|
|
30
|
-
return {
|
|
31
|
-
r: parseInt(full.slice(0, 2), 16),
|
|
32
|
-
g: parseInt(full.slice(2, 4), 16),
|
|
33
|
-
b: parseInt(full.slice(4, 6), 16)
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
function componentToHex(c) {
|
|
37
|
-
return Math.round(Math.max(0, Math.min(255, c))).toString(16).padStart(2, "0");
|
|
38
|
-
}
|
|
39
|
-
function rgbToHex(r, g, b) {
|
|
40
|
-
return `#${componentToHex(r)}${componentToHex(g)}${componentToHex(b)}`;
|
|
41
|
-
}
|
|
42
|
-
function withAlphaOnWhite(hex, alpha) {
|
|
43
|
-
const rgb = hexToRgb(hex);
|
|
44
|
-
if (!rgb) return hex;
|
|
45
|
-
const r = rgb.r * alpha + 255 * (1 - alpha);
|
|
46
|
-
const g = rgb.g * alpha + 255 * (1 - alpha);
|
|
47
|
-
const b = rgb.b * alpha + 255 * (1 - alpha);
|
|
48
|
-
return rgbToHex(r, g, b);
|
|
49
|
-
}
|
|
50
|
-
function withAlphaOnDark(hex, alpha, bgHex = "#0f0f0f") {
|
|
51
|
-
const rgb = hexToRgb(hex);
|
|
52
|
-
const bg = hexToRgb(bgHex);
|
|
53
|
-
if (!rgb || !bg) return hex;
|
|
54
|
-
const r = rgb.r * alpha + bg.r * (1 - alpha);
|
|
55
|
-
const g = rgb.g * alpha + bg.g * (1 - alpha);
|
|
56
|
-
const b = rgb.b * alpha + bg.b * (1 - alpha);
|
|
57
|
-
return rgbToHex(r, g, b);
|
|
58
|
-
}
|
|
59
|
-
function mixWithBackground(fgHex, bgHex, opacity) {
|
|
60
|
-
const fg = hexToRgb(fgHex);
|
|
61
|
-
const bg = hexToRgb(bgHex);
|
|
62
|
-
if (!fg || !bg) return fgHex;
|
|
63
|
-
const r = fg.r * opacity + bg.r * (1 - opacity);
|
|
64
|
-
const g = fg.g * opacity + bg.g * (1 - opacity);
|
|
65
|
-
const b = fg.b * opacity + bg.b * (1 - opacity);
|
|
66
|
-
return rgbToHex(r, g, b);
|
|
67
|
-
}
|
|
68
|
-
function lighten(hex, amount) {
|
|
69
|
-
return withAlphaOnWhite(hex, 1 - amount);
|
|
70
|
-
}
|
|
71
|
-
function darken(hex, amount) {
|
|
72
|
-
const rgb = hexToRgb(hex);
|
|
73
|
-
if (!rgb) return hex;
|
|
74
|
-
return rgbToHex(rgb.r * (1 - amount), rgb.g * (1 - amount), rgb.b * (1 - amount));
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
// src/theme/colors.ts
|
|
78
|
-
var defaultLight = {
|
|
79
|
-
background: "#ffffff",
|
|
80
|
-
foreground: "#1a1a1a",
|
|
81
|
-
card: "#ffffff",
|
|
82
|
-
primary: "#1a1a1a",
|
|
83
|
-
primaryForeground: "#ffffff",
|
|
84
|
-
// AUDIT FIX: brand accent — was undefined; falls back to primary when omitted
|
|
85
|
-
accent: "#d4561d",
|
|
86
|
-
accentForeground: "#ffffff",
|
|
87
|
-
border: "#dddddd",
|
|
88
|
-
// AUDIT FIX: was #e53935 (4.22:1 on white — fails AA); #c72828 = 5.59:1 ✓
|
|
89
|
-
destructive: "#c72828",
|
|
90
|
-
destructiveForeground: "#ffffff",
|
|
91
|
-
success: "#1a7a45",
|
|
92
|
-
successForeground: "#ffffff",
|
|
93
|
-
// AUDIT FIX: was #e67e00 (2.86:1 — severe fail); #9a5200 = 5.86:1 ✓ AAA-near
|
|
94
|
-
warning: "#9a5200",
|
|
95
|
-
warningForeground: "#ffffff"
|
|
96
|
-
};
|
|
97
|
-
function deriveColors(t, scheme) {
|
|
98
|
-
const dark = scheme === "dark";
|
|
99
|
-
const bg = t.background;
|
|
100
|
-
const foregroundSubtle = mixWithBackground(t.foreground, bg, 0.7);
|
|
101
|
-
const foregroundMuted = mixWithBackground(t.foreground, bg, 0.62);
|
|
102
|
-
const surface = dark ? lighten(bg, -0.06) : darken(bg, 0.04);
|
|
103
|
-
const surfaceStrong = dark ? lighten(bg, -0.12) : darken(bg, 0.08);
|
|
104
|
-
const destructiveTint = dark ? withAlphaOnDark(t.destructive, 0.15, bg) : withAlphaOnWhite(t.destructive, 0.08);
|
|
105
|
-
const destructiveBorder = dark ? withAlphaOnDark(t.destructive, 0.45, bg) : withAlphaOnWhite(t.destructive, 0.3);
|
|
106
|
-
const successTint = dark ? withAlphaOnDark(t.success, 0.15, bg) : withAlphaOnWhite(t.success, 0.08);
|
|
107
|
-
const successBorder = dark ? withAlphaOnDark(t.success, 0.45, bg) : withAlphaOnWhite(t.success, 0.3);
|
|
108
|
-
const warningTint = dark ? withAlphaOnDark(t.warning, 0.15, bg) : withAlphaOnWhite(t.warning, 0.08);
|
|
109
|
-
const warningBorder = dark ? withAlphaOnDark(t.warning, 0.45, bg) : withAlphaOnWhite(t.warning, 0.3);
|
|
110
|
-
return {
|
|
111
|
-
...t,
|
|
112
|
-
foregroundSubtle,
|
|
113
|
-
foregroundMuted,
|
|
114
|
-
surface,
|
|
115
|
-
surfaceStrong,
|
|
116
|
-
destructiveTint,
|
|
117
|
-
destructiveBorder,
|
|
118
|
-
successTint,
|
|
119
|
-
successBorder,
|
|
120
|
-
warningTint,
|
|
121
|
-
warningBorder,
|
|
122
|
-
overlay: t.overlay ?? "rgba(0,0,0,0.45)",
|
|
123
|
-
accentResolved: t.accent ?? t.primary,
|
|
124
|
-
accentForegroundResolved: t.accentForeground ?? t.primaryForeground,
|
|
125
|
-
ring: t.accent ?? t.primary,
|
|
126
|
-
input: t.border,
|
|
127
|
-
separator: dark ? lighten(t.border, 0.22) : darken(t.border, 0.16)
|
|
128
|
-
};
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
// src/theme/ThemeProvider.tsx
|
|
132
|
-
var ThemeContext = React3.createContext({
|
|
133
|
-
colors: deriveColors(defaultLight, "light"),
|
|
134
|
-
colorScheme: "light"
|
|
135
|
-
});
|
|
24
|
+
var ThemeContext = React3.createContext(void 0);
|
|
136
25
|
function useTheme() {
|
|
137
26
|
const context = React3.useContext(ThemeContext);
|
|
138
27
|
if (!context) {
|
|
@@ -144,46 +33,34 @@ var isWeb = reactNative.Platform.OS === "web";
|
|
|
144
33
|
var s = isWeb ? (n) => n : reactNativeSizeMatters.scale;
|
|
145
34
|
var ms = isWeb ? (n, _factor) => n : reactNativeSizeMatters.moderateScale;
|
|
146
35
|
var mvs = isWeb ? (n, _factor) => n : reactNativeSizeMatters.moderateVerticalScale;
|
|
147
|
-
var glyphMapOf = (mod) => mod.glyphMap ?? {};
|
|
148
36
|
var ALL_FAMILIES = [
|
|
149
|
-
{ name: "
|
|
150
|
-
{ name: "
|
|
151
|
-
{ name: "
|
|
152
|
-
{ name: "
|
|
153
|
-
{ name: "
|
|
154
|
-
{ name: "
|
|
37
|
+
{ name: "Feather", component: Feather__default.default },
|
|
38
|
+
{ name: "AntDesign", component: AntDesign__default.default },
|
|
39
|
+
{ name: "Entypo", component: Entypo__default.default },
|
|
40
|
+
{ name: "FontAwesome5", component: FontAwesome5__default.default },
|
|
41
|
+
{ name: "MaterialIcons", component: MaterialIcons__default.default },
|
|
42
|
+
{ name: "Ionicons", component: Ionicons__default.default }
|
|
155
43
|
];
|
|
156
|
-
var
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
for (const
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
44
|
+
var glyphCacheInitialized = false;
|
|
45
|
+
function ensureGlyphCache() {
|
|
46
|
+
if (glyphCacheInitialized) return;
|
|
47
|
+
glyphCacheInitialized = true;
|
|
48
|
+
for (const entry of ALL_FAMILIES) {
|
|
49
|
+
try {
|
|
50
|
+
entry.glyphMap = entry.component.glyphMap;
|
|
51
|
+
} catch {
|
|
52
|
+
entry.glyphMap = {};
|
|
164
53
|
}
|
|
165
54
|
}
|
|
166
|
-
return cache;
|
|
167
|
-
}
|
|
168
|
-
function resolveFamily(name) {
|
|
169
|
-
if (!resolvedCache) {
|
|
170
|
-
resolvedCache = buildCache();
|
|
171
|
-
}
|
|
172
|
-
return resolvedCache.get(name) ?? null;
|
|
173
55
|
}
|
|
174
56
|
function Icon({ name, size, color, family }) {
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
const Component = resolved.component;
|
|
183
|
-
return React3__default.default.createElement(Component, { name, size, color });
|
|
184
|
-
}
|
|
185
|
-
function renderIcon(name, size, color) {
|
|
186
|
-
return React3__default.default.createElement(Icon, { name, size, color });
|
|
57
|
+
ensureGlyphCache();
|
|
58
|
+
const entry = family ? ALL_FAMILIES.find((f) => f.name === family) : ALL_FAMILIES.find((f) => {
|
|
59
|
+
const glyphMap = f.glyphMap;
|
|
60
|
+
return glyphMap ? name in glyphMap : false;
|
|
61
|
+
});
|
|
62
|
+
if (!entry) return null;
|
|
63
|
+
return React3__default.default.createElement(entry.component, { name, size, color });
|
|
187
64
|
}
|
|
188
65
|
|
|
189
66
|
// src/components/DetailRow/DetailRow.tsx
|
|
@@ -209,8 +86,8 @@ function DetailRowBase({
|
|
|
209
86
|
valueStyle
|
|
210
87
|
}) {
|
|
211
88
|
const { colors } = useTheme();
|
|
212
|
-
const resolvedLeftIcon = leftIconName ?
|
|
213
|
-
const resolvedRightIcon = rightIconName ?
|
|
89
|
+
const resolvedLeftIcon = leftIconName ? /* @__PURE__ */ React3__default.default.createElement(Icon, { name: leftIconName, size: ms(14), color: leftIconColor ?? colors.foregroundMuted }) : leftIcon;
|
|
90
|
+
const resolvedRightIcon = rightIconName ? /* @__PURE__ */ React3__default.default.createElement(Icon, { name: rightIconName, size: ms(14), color: rightIconColor ?? colors.foregroundMuted }) : null;
|
|
214
91
|
const separatorStyle = separator === "none" ? null : {
|
|
215
92
|
flex: 1,
|
|
216
93
|
height: 1,
|
package/dist/DetailRow.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { DetailRow } from './chunk-
|
|
2
|
-
import './chunk-
|
|
3
|
-
import './chunk-
|
|
1
|
+
export { DetailRow } from './chunk-KAGADD2O.mjs';
|
|
2
|
+
import './chunk-MZ6WRTD2.mjs';
|
|
3
|
+
import './chunk-KSSVIFYR.mjs';
|
|
4
4
|
import './chunk-2CE3TQVY.mjs';
|
|
5
5
|
import './chunk-Y6FXYEAI.mjs';
|