@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/Sheet.js
CHANGED
|
@@ -11,18 +11,13 @@ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
|
11
11
|
|
|
12
12
|
var React2__default = /*#__PURE__*/_interopDefault(React2);
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
|
|
16
|
-
}) : x)(function(x) {
|
|
17
|
-
if (typeof require !== "undefined") return require.apply(this, arguments);
|
|
18
|
-
throw Error('Dynamic require of "' + x + '" is not supported');
|
|
19
|
-
});
|
|
14
|
+
// src/components/Sheet/Sheet.tsx
|
|
20
15
|
var _haptics = null;
|
|
21
|
-
var
|
|
16
|
+
var _loaded = false;
|
|
22
17
|
async function getHaptics() {
|
|
23
18
|
if (reactNative.Platform.OS === "web") return null;
|
|
24
|
-
if (!
|
|
25
|
-
|
|
19
|
+
if (!_loaded) {
|
|
20
|
+
_loaded = true;
|
|
26
21
|
try {
|
|
27
22
|
_haptics = await import('expo-haptics');
|
|
28
23
|
} catch {
|
|
@@ -31,158 +26,10 @@ async function getHaptics() {
|
|
|
31
26
|
}
|
|
32
27
|
return _haptics;
|
|
33
28
|
}
|
|
34
|
-
var _pulsar = null;
|
|
35
|
-
var _pulsarChecked = false;
|
|
36
|
-
var _pulsarAvailable = false;
|
|
37
|
-
function isPulsarNativeRegistered() {
|
|
38
|
-
try {
|
|
39
|
-
const g = globalThis;
|
|
40
|
-
if (typeof g.__turboModuleProxy === "function") {
|
|
41
|
-
return g.__turboModuleProxy("RNPulsar") != null;
|
|
42
|
-
}
|
|
43
|
-
return reactNative.NativeModules?.RNPulsar != null;
|
|
44
|
-
} catch {
|
|
45
|
-
return false;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
function getPulsar() {
|
|
49
|
-
if (reactNative.Platform.OS === "web") return null;
|
|
50
|
-
if (!_pulsarChecked) {
|
|
51
|
-
_pulsarChecked = true;
|
|
52
|
-
try {
|
|
53
|
-
if (isPulsarNativeRegistered()) {
|
|
54
|
-
_pulsar = __require("react-native-pulsar");
|
|
55
|
-
_pulsarAvailable = true;
|
|
56
|
-
}
|
|
57
|
-
} catch {
|
|
58
|
-
_pulsar = null;
|
|
59
|
-
_pulsarAvailable = false;
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
return _pulsarAvailable ? _pulsar : null;
|
|
63
|
-
}
|
|
64
29
|
function impactMedium() {
|
|
65
|
-
|
|
66
|
-
getHaptics().then((h) => {
|
|
67
|
-
if (h) {
|
|
68
|
-
h.impactAsync(h.ImpactFeedbackStyle.Medium);
|
|
69
|
-
} else {
|
|
70
|
-
getPulsar()?.Presets.System.impactMedium();
|
|
71
|
-
}
|
|
72
|
-
});
|
|
30
|
+
getHaptics().then((h) => h?.impactAsync(h.ImpactFeedbackStyle.Medium));
|
|
73
31
|
}
|
|
74
|
-
|
|
75
|
-
// src/theme/colorUtils.ts
|
|
76
|
-
function hexToRgb(hex) {
|
|
77
|
-
const clean = hex.replace("#", "");
|
|
78
|
-
const full = clean.length === 3 ? clean.split("").map((c) => c + c).join("") : clean;
|
|
79
|
-
if (full.length !== 6) return null;
|
|
80
|
-
return {
|
|
81
|
-
r: parseInt(full.slice(0, 2), 16),
|
|
82
|
-
g: parseInt(full.slice(2, 4), 16),
|
|
83
|
-
b: parseInt(full.slice(4, 6), 16)
|
|
84
|
-
};
|
|
85
|
-
}
|
|
86
|
-
function componentToHex(c) {
|
|
87
|
-
return Math.round(Math.max(0, Math.min(255, c))).toString(16).padStart(2, "0");
|
|
88
|
-
}
|
|
89
|
-
function rgbToHex(r, g, b) {
|
|
90
|
-
return `#${componentToHex(r)}${componentToHex(g)}${componentToHex(b)}`;
|
|
91
|
-
}
|
|
92
|
-
function withAlphaOnWhite(hex, alpha) {
|
|
93
|
-
const rgb = hexToRgb(hex);
|
|
94
|
-
if (!rgb) return hex;
|
|
95
|
-
const r = rgb.r * alpha + 255 * (1 - alpha);
|
|
96
|
-
const g = rgb.g * alpha + 255 * (1 - alpha);
|
|
97
|
-
const b = rgb.b * alpha + 255 * (1 - alpha);
|
|
98
|
-
return rgbToHex(r, g, b);
|
|
99
|
-
}
|
|
100
|
-
function withAlphaOnDark(hex, alpha, bgHex = "#0f0f0f") {
|
|
101
|
-
const rgb = hexToRgb(hex);
|
|
102
|
-
const bg = hexToRgb(bgHex);
|
|
103
|
-
if (!rgb || !bg) return hex;
|
|
104
|
-
const r = rgb.r * alpha + bg.r * (1 - alpha);
|
|
105
|
-
const g = rgb.g * alpha + bg.g * (1 - alpha);
|
|
106
|
-
const b = rgb.b * alpha + bg.b * (1 - alpha);
|
|
107
|
-
return rgbToHex(r, g, b);
|
|
108
|
-
}
|
|
109
|
-
function mixWithBackground(fgHex, bgHex, opacity) {
|
|
110
|
-
const fg = hexToRgb(fgHex);
|
|
111
|
-
const bg = hexToRgb(bgHex);
|
|
112
|
-
if (!fg || !bg) return fgHex;
|
|
113
|
-
const r = fg.r * opacity + bg.r * (1 - opacity);
|
|
114
|
-
const g = fg.g * opacity + bg.g * (1 - opacity);
|
|
115
|
-
const b = fg.b * opacity + bg.b * (1 - opacity);
|
|
116
|
-
return rgbToHex(r, g, b);
|
|
117
|
-
}
|
|
118
|
-
function lighten(hex, amount) {
|
|
119
|
-
return withAlphaOnWhite(hex, 1 - amount);
|
|
120
|
-
}
|
|
121
|
-
function darken(hex, amount) {
|
|
122
|
-
const rgb = hexToRgb(hex);
|
|
123
|
-
if (!rgb) return hex;
|
|
124
|
-
return rgbToHex(rgb.r * (1 - amount), rgb.g * (1 - amount), rgb.b * (1 - amount));
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
// src/theme/colors.ts
|
|
128
|
-
var defaultLight = {
|
|
129
|
-
background: "#ffffff",
|
|
130
|
-
foreground: "#1a1a1a",
|
|
131
|
-
card: "#ffffff",
|
|
132
|
-
primary: "#1a1a1a",
|
|
133
|
-
primaryForeground: "#ffffff",
|
|
134
|
-
// AUDIT FIX: brand accent — was undefined; falls back to primary when omitted
|
|
135
|
-
accent: "#d4561d",
|
|
136
|
-
accentForeground: "#ffffff",
|
|
137
|
-
border: "#dddddd",
|
|
138
|
-
// AUDIT FIX: was #e53935 (4.22:1 on white — fails AA); #c72828 = 5.59:1 ✓
|
|
139
|
-
destructive: "#c72828",
|
|
140
|
-
destructiveForeground: "#ffffff",
|
|
141
|
-
success: "#1a7a45",
|
|
142
|
-
successForeground: "#ffffff",
|
|
143
|
-
// AUDIT FIX: was #e67e00 (2.86:1 — severe fail); #9a5200 = 5.86:1 ✓ AAA-near
|
|
144
|
-
warning: "#9a5200",
|
|
145
|
-
warningForeground: "#ffffff"
|
|
146
|
-
};
|
|
147
|
-
function deriveColors(t, scheme) {
|
|
148
|
-
const dark = scheme === "dark";
|
|
149
|
-
const bg = t.background;
|
|
150
|
-
const foregroundSubtle = mixWithBackground(t.foreground, bg, 0.7);
|
|
151
|
-
const foregroundMuted = mixWithBackground(t.foreground, bg, 0.62);
|
|
152
|
-
const surface = dark ? lighten(bg, -0.06) : darken(bg, 0.04);
|
|
153
|
-
const surfaceStrong = dark ? lighten(bg, -0.12) : darken(bg, 0.08);
|
|
154
|
-
const destructiveTint = dark ? withAlphaOnDark(t.destructive, 0.15, bg) : withAlphaOnWhite(t.destructive, 0.08);
|
|
155
|
-
const destructiveBorder = dark ? withAlphaOnDark(t.destructive, 0.45, bg) : withAlphaOnWhite(t.destructive, 0.3);
|
|
156
|
-
const successTint = dark ? withAlphaOnDark(t.success, 0.15, bg) : withAlphaOnWhite(t.success, 0.08);
|
|
157
|
-
const successBorder = dark ? withAlphaOnDark(t.success, 0.45, bg) : withAlphaOnWhite(t.success, 0.3);
|
|
158
|
-
const warningTint = dark ? withAlphaOnDark(t.warning, 0.15, bg) : withAlphaOnWhite(t.warning, 0.08);
|
|
159
|
-
const warningBorder = dark ? withAlphaOnDark(t.warning, 0.45, bg) : withAlphaOnWhite(t.warning, 0.3);
|
|
160
|
-
return {
|
|
161
|
-
...t,
|
|
162
|
-
foregroundSubtle,
|
|
163
|
-
foregroundMuted,
|
|
164
|
-
surface,
|
|
165
|
-
surfaceStrong,
|
|
166
|
-
destructiveTint,
|
|
167
|
-
destructiveBorder,
|
|
168
|
-
successTint,
|
|
169
|
-
successBorder,
|
|
170
|
-
warningTint,
|
|
171
|
-
warningBorder,
|
|
172
|
-
overlay: t.overlay ?? "rgba(0,0,0,0.45)",
|
|
173
|
-
accentResolved: t.accent ?? t.primary,
|
|
174
|
-
accentForegroundResolved: t.accentForeground ?? t.primaryForeground,
|
|
175
|
-
ring: t.accent ?? t.primary,
|
|
176
|
-
input: t.border,
|
|
177
|
-
separator: dark ? lighten(t.border, 0.22) : darken(t.border, 0.16)
|
|
178
|
-
};
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
// src/theme/ThemeProvider.tsx
|
|
182
|
-
var ThemeContext = React2.createContext({
|
|
183
|
-
colors: deriveColors(defaultLight, "light"),
|
|
184
|
-
colorScheme: "light"
|
|
185
|
-
});
|
|
32
|
+
var ThemeContext = React2.createContext(void 0);
|
|
186
33
|
function useTheme() {
|
|
187
34
|
const context = React2.useContext(ThemeContext);
|
|
188
35
|
if (!context) {
|
|
@@ -229,13 +76,19 @@ function Sheet({
|
|
|
229
76
|
const insets = reactNativeSafeAreaContext.useSafeAreaInsets();
|
|
230
77
|
const ref = React2.useRef(null);
|
|
231
78
|
const wasOpened = React2.useRef(false);
|
|
79
|
+
const isPresentedRef = React2.useRef(false);
|
|
232
80
|
const name = React2.useId();
|
|
81
|
+
const handleDismiss = React2.useCallback(() => {
|
|
82
|
+
isPresentedRef.current = false;
|
|
83
|
+
onClose?.();
|
|
84
|
+
}, [onClose]);
|
|
233
85
|
React2.useEffect(() => {
|
|
234
|
-
if (open) {
|
|
86
|
+
if (open && !isPresentedRef.current) {
|
|
235
87
|
impactMedium();
|
|
236
88
|
ref.current?.present();
|
|
237
89
|
wasOpened.current = true;
|
|
238
|
-
|
|
90
|
+
isPresentedRef.current = true;
|
|
91
|
+
} else if (!open && wasOpened.current && isPresentedRef.current) {
|
|
239
92
|
ref.current?.dismiss();
|
|
240
93
|
}
|
|
241
94
|
}, [open]);
|
|
@@ -267,7 +120,7 @@ function Sheet({
|
|
|
267
120
|
activeOpacity: 0.6,
|
|
268
121
|
touchSoundDisabled: true,
|
|
269
122
|
accessibilityRole: "button",
|
|
270
|
-
accessibilityLabel: "
|
|
123
|
+
accessibilityLabel: "Cerrar",
|
|
271
124
|
hitSlop: { top: 12, bottom: 12, left: 12, right: 12 }
|
|
272
125
|
},
|
|
273
126
|
/* @__PURE__ */ React2__default.default.createElement(vectorIcons.AntDesign, { name: "close", size: ms(18), color: colors.foregroundMuted })
|
|
@@ -287,7 +140,7 @@ function Sheet({
|
|
|
287
140
|
{
|
|
288
141
|
ref,
|
|
289
142
|
name,
|
|
290
|
-
onDismiss:
|
|
143
|
+
onDismiss: handleDismiss,
|
|
291
144
|
enableDynamicSizing: useDynamicSizing,
|
|
292
145
|
snapPoints,
|
|
293
146
|
maxDynamicContentSize: useDynamicSizing && maxHeight ? maxHeight : void 0,
|
package/dist/Sheet.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { BottomSheetModalProvider, Sheet, BottomSheetTextInput as SheetTextInput } from './chunk-
|
|
2
|
-
import './chunk-
|
|
3
|
-
import './chunk-
|
|
1
|
+
export { BottomSheetModalProvider, Sheet, BottomSheetTextInput as SheetTextInput } from './chunk-2QOHHBJC.mjs';
|
|
2
|
+
import './chunk-ARONDO7M.mjs';
|
|
3
|
+
import './chunk-KSSVIFYR.mjs';
|
|
4
4
|
import './chunk-2CE3TQVY.mjs';
|
|
5
5
|
import './chunk-Y6FXYEAI.mjs';
|
package/dist/SheetSelect.js
CHANGED
|
@@ -10,7 +10,6 @@ var Feather = require('@expo/vector-icons/Feather');
|
|
|
10
10
|
var FontAwesome5 = require('@expo/vector-icons/FontAwesome5');
|
|
11
11
|
var MaterialIcons = require('@expo/vector-icons/MaterialIcons');
|
|
12
12
|
var Ionicons = require('@expo/vector-icons/Ionicons');
|
|
13
|
-
var reactNativeReanimated = require('react-native-reanimated');
|
|
14
13
|
var pressto = require('pressto');
|
|
15
14
|
|
|
16
15
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -23,18 +22,13 @@ var FontAwesome5__default = /*#__PURE__*/_interopDefault(FontAwesome5);
|
|
|
23
22
|
var MaterialIcons__default = /*#__PURE__*/_interopDefault(MaterialIcons);
|
|
24
23
|
var Ionicons__default = /*#__PURE__*/_interopDefault(Ionicons);
|
|
25
24
|
|
|
26
|
-
|
|
27
|
-
get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
|
|
28
|
-
}) : x)(function(x) {
|
|
29
|
-
if (typeof require !== "undefined") return require.apply(this, arguments);
|
|
30
|
-
throw Error('Dynamic require of "' + x + '" is not supported');
|
|
31
|
-
});
|
|
25
|
+
// src/components/SheetSelect/SheetSelect.tsx
|
|
32
26
|
var _haptics = null;
|
|
33
|
-
var
|
|
27
|
+
var _loaded = false;
|
|
34
28
|
async function getHaptics() {
|
|
35
29
|
if (reactNative.Platform.OS === "web") return null;
|
|
36
|
-
if (!
|
|
37
|
-
|
|
30
|
+
if (!_loaded) {
|
|
31
|
+
_loaded = true;
|
|
38
32
|
try {
|
|
39
33
|
_haptics = await import('expo-haptics');
|
|
40
34
|
} catch {
|
|
@@ -43,158 +37,10 @@ async function getHaptics() {
|
|
|
43
37
|
}
|
|
44
38
|
return _haptics;
|
|
45
39
|
}
|
|
46
|
-
var _pulsar = null;
|
|
47
|
-
var _pulsarChecked = false;
|
|
48
|
-
var _pulsarAvailable = false;
|
|
49
|
-
function isPulsarNativeRegistered() {
|
|
50
|
-
try {
|
|
51
|
-
const g = globalThis;
|
|
52
|
-
if (typeof g.__turboModuleProxy === "function") {
|
|
53
|
-
return g.__turboModuleProxy("RNPulsar") != null;
|
|
54
|
-
}
|
|
55
|
-
return reactNative.NativeModules?.RNPulsar != null;
|
|
56
|
-
} catch {
|
|
57
|
-
return false;
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
function getPulsar() {
|
|
61
|
-
if (reactNative.Platform.OS === "web") return null;
|
|
62
|
-
if (!_pulsarChecked) {
|
|
63
|
-
_pulsarChecked = true;
|
|
64
|
-
try {
|
|
65
|
-
if (isPulsarNativeRegistered()) {
|
|
66
|
-
_pulsar = __require("react-native-pulsar");
|
|
67
|
-
_pulsarAvailable = true;
|
|
68
|
-
}
|
|
69
|
-
} catch {
|
|
70
|
-
_pulsar = null;
|
|
71
|
-
_pulsarAvailable = false;
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
return _pulsarAvailable ? _pulsar : null;
|
|
75
|
-
}
|
|
76
40
|
function selectionAsync() {
|
|
77
|
-
|
|
78
|
-
getHaptics().then((h) => {
|
|
79
|
-
if (h) {
|
|
80
|
-
h.selectionAsync();
|
|
81
|
-
} else {
|
|
82
|
-
getPulsar()?.Presets.System.selection();
|
|
83
|
-
}
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
// src/theme/colorUtils.ts
|
|
88
|
-
function hexToRgb(hex) {
|
|
89
|
-
const clean = hex.replace("#", "");
|
|
90
|
-
const full = clean.length === 3 ? clean.split("").map((c) => c + c).join("") : clean;
|
|
91
|
-
if (full.length !== 6) return null;
|
|
92
|
-
return {
|
|
93
|
-
r: parseInt(full.slice(0, 2), 16),
|
|
94
|
-
g: parseInt(full.slice(2, 4), 16),
|
|
95
|
-
b: parseInt(full.slice(4, 6), 16)
|
|
96
|
-
};
|
|
97
|
-
}
|
|
98
|
-
function componentToHex(c) {
|
|
99
|
-
return Math.round(Math.max(0, Math.min(255, c))).toString(16).padStart(2, "0");
|
|
100
|
-
}
|
|
101
|
-
function rgbToHex(r, g, b) {
|
|
102
|
-
return `#${componentToHex(r)}${componentToHex(g)}${componentToHex(b)}`;
|
|
41
|
+
getHaptics().then((h) => h?.selectionAsync());
|
|
103
42
|
}
|
|
104
|
-
|
|
105
|
-
const rgb = hexToRgb(hex);
|
|
106
|
-
if (!rgb) return hex;
|
|
107
|
-
const r = rgb.r * alpha + 255 * (1 - alpha);
|
|
108
|
-
const g = rgb.g * alpha + 255 * (1 - alpha);
|
|
109
|
-
const b = rgb.b * alpha + 255 * (1 - alpha);
|
|
110
|
-
return rgbToHex(r, g, b);
|
|
111
|
-
}
|
|
112
|
-
function withAlphaOnDark(hex, alpha, bgHex = "#0f0f0f") {
|
|
113
|
-
const rgb = hexToRgb(hex);
|
|
114
|
-
const bg = hexToRgb(bgHex);
|
|
115
|
-
if (!rgb || !bg) return hex;
|
|
116
|
-
const r = rgb.r * alpha + bg.r * (1 - alpha);
|
|
117
|
-
const g = rgb.g * alpha + bg.g * (1 - alpha);
|
|
118
|
-
const b = rgb.b * alpha + bg.b * (1 - alpha);
|
|
119
|
-
return rgbToHex(r, g, b);
|
|
120
|
-
}
|
|
121
|
-
function mixWithBackground(fgHex, bgHex, opacity) {
|
|
122
|
-
const fg = hexToRgb(fgHex);
|
|
123
|
-
const bg = hexToRgb(bgHex);
|
|
124
|
-
if (!fg || !bg) return fgHex;
|
|
125
|
-
const r = fg.r * opacity + bg.r * (1 - opacity);
|
|
126
|
-
const g = fg.g * opacity + bg.g * (1 - opacity);
|
|
127
|
-
const b = fg.b * opacity + bg.b * (1 - opacity);
|
|
128
|
-
return rgbToHex(r, g, b);
|
|
129
|
-
}
|
|
130
|
-
function lighten(hex, amount) {
|
|
131
|
-
return withAlphaOnWhite(hex, 1 - amount);
|
|
132
|
-
}
|
|
133
|
-
function darken(hex, amount) {
|
|
134
|
-
const rgb = hexToRgb(hex);
|
|
135
|
-
if (!rgb) return hex;
|
|
136
|
-
return rgbToHex(rgb.r * (1 - amount), rgb.g * (1 - amount), rgb.b * (1 - amount));
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
// src/theme/colors.ts
|
|
140
|
-
var defaultLight = {
|
|
141
|
-
background: "#ffffff",
|
|
142
|
-
foreground: "#1a1a1a",
|
|
143
|
-
card: "#ffffff",
|
|
144
|
-
primary: "#1a1a1a",
|
|
145
|
-
primaryForeground: "#ffffff",
|
|
146
|
-
// AUDIT FIX: brand accent — was undefined; falls back to primary when omitted
|
|
147
|
-
accent: "#d4561d",
|
|
148
|
-
accentForeground: "#ffffff",
|
|
149
|
-
border: "#dddddd",
|
|
150
|
-
// AUDIT FIX: was #e53935 (4.22:1 on white — fails AA); #c72828 = 5.59:1 ✓
|
|
151
|
-
destructive: "#c72828",
|
|
152
|
-
destructiveForeground: "#ffffff",
|
|
153
|
-
success: "#1a7a45",
|
|
154
|
-
successForeground: "#ffffff",
|
|
155
|
-
// AUDIT FIX: was #e67e00 (2.86:1 — severe fail); #9a5200 = 5.86:1 ✓ AAA-near
|
|
156
|
-
warning: "#9a5200",
|
|
157
|
-
warningForeground: "#ffffff"
|
|
158
|
-
};
|
|
159
|
-
function deriveColors(t, scheme) {
|
|
160
|
-
const dark = scheme === "dark";
|
|
161
|
-
const bg = t.background;
|
|
162
|
-
const foregroundSubtle = mixWithBackground(t.foreground, bg, 0.7);
|
|
163
|
-
const foregroundMuted = mixWithBackground(t.foreground, bg, 0.62);
|
|
164
|
-
const surface = dark ? lighten(bg, -0.06) : darken(bg, 0.04);
|
|
165
|
-
const surfaceStrong = dark ? lighten(bg, -0.12) : darken(bg, 0.08);
|
|
166
|
-
const destructiveTint = dark ? withAlphaOnDark(t.destructive, 0.15, bg) : withAlphaOnWhite(t.destructive, 0.08);
|
|
167
|
-
const destructiveBorder = dark ? withAlphaOnDark(t.destructive, 0.45, bg) : withAlphaOnWhite(t.destructive, 0.3);
|
|
168
|
-
const successTint = dark ? withAlphaOnDark(t.success, 0.15, bg) : withAlphaOnWhite(t.success, 0.08);
|
|
169
|
-
const successBorder = dark ? withAlphaOnDark(t.success, 0.45, bg) : withAlphaOnWhite(t.success, 0.3);
|
|
170
|
-
const warningTint = dark ? withAlphaOnDark(t.warning, 0.15, bg) : withAlphaOnWhite(t.warning, 0.08);
|
|
171
|
-
const warningBorder = dark ? withAlphaOnDark(t.warning, 0.45, bg) : withAlphaOnWhite(t.warning, 0.3);
|
|
172
|
-
return {
|
|
173
|
-
...t,
|
|
174
|
-
foregroundSubtle,
|
|
175
|
-
foregroundMuted,
|
|
176
|
-
surface,
|
|
177
|
-
surfaceStrong,
|
|
178
|
-
destructiveTint,
|
|
179
|
-
destructiveBorder,
|
|
180
|
-
successTint,
|
|
181
|
-
successBorder,
|
|
182
|
-
warningTint,
|
|
183
|
-
warningBorder,
|
|
184
|
-
overlay: t.overlay ?? "rgba(0,0,0,0.45)",
|
|
185
|
-
accentResolved: t.accent ?? t.primary,
|
|
186
|
-
accentForegroundResolved: t.accentForeground ?? t.primaryForeground,
|
|
187
|
-
ring: t.accent ?? t.primary,
|
|
188
|
-
input: t.border,
|
|
189
|
-
separator: dark ? lighten(t.border, 0.22) : darken(t.border, 0.16)
|
|
190
|
-
};
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
// src/theme/ThemeProvider.tsx
|
|
194
|
-
var ThemeContext = React3.createContext({
|
|
195
|
-
colors: deriveColors(defaultLight, "light"),
|
|
196
|
-
colorScheme: "light"
|
|
197
|
-
});
|
|
43
|
+
var ThemeContext = React3.createContext(void 0);
|
|
198
44
|
function useTheme() {
|
|
199
45
|
const context = React3.useContext(ThemeContext);
|
|
200
46
|
if (!context) {
|
|
@@ -207,94 +53,53 @@ var s = isWeb ? (n) => n : reactNativeSizeMatters.scale;
|
|
|
207
53
|
var vs = isWeb ? (n) => n : reactNativeSizeMatters.verticalScale;
|
|
208
54
|
var ms = isWeb ? (n, _factor) => n : reactNativeSizeMatters.moderateScale;
|
|
209
55
|
var mvs = isWeb ? (n, _factor) => n : reactNativeSizeMatters.moderateVerticalScale;
|
|
210
|
-
var glyphMapOf = (mod) => mod.glyphMap ?? {};
|
|
211
56
|
var ALL_FAMILIES = [
|
|
212
|
-
{ name: "
|
|
213
|
-
{ name: "
|
|
214
|
-
{ name: "
|
|
215
|
-
{ name: "
|
|
216
|
-
{ name: "
|
|
217
|
-
{ name: "
|
|
57
|
+
{ name: "Feather", component: Feather__default.default },
|
|
58
|
+
{ name: "AntDesign", component: AntDesign__default.default },
|
|
59
|
+
{ name: "Entypo", component: Entypo__default.default },
|
|
60
|
+
{ name: "FontAwesome5", component: FontAwesome5__default.default },
|
|
61
|
+
{ name: "MaterialIcons", component: MaterialIcons__default.default },
|
|
62
|
+
{ name: "Ionicons", component: Ionicons__default.default }
|
|
218
63
|
];
|
|
219
|
-
var
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
for (const
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
64
|
+
var glyphCacheInitialized = false;
|
|
65
|
+
function ensureGlyphCache() {
|
|
66
|
+
if (glyphCacheInitialized) return;
|
|
67
|
+
glyphCacheInitialized = true;
|
|
68
|
+
for (const entry of ALL_FAMILIES) {
|
|
69
|
+
try {
|
|
70
|
+
entry.glyphMap = entry.component.glyphMap;
|
|
71
|
+
} catch {
|
|
72
|
+
entry.glyphMap = {};
|
|
227
73
|
}
|
|
228
74
|
}
|
|
229
|
-
return cache;
|
|
230
|
-
}
|
|
231
|
-
function resolveFamily(name) {
|
|
232
|
-
if (!resolvedCache) {
|
|
233
|
-
resolvedCache = buildCache();
|
|
234
|
-
}
|
|
235
|
-
return resolvedCache.get(name) ?? null;
|
|
236
75
|
}
|
|
237
76
|
function Icon({ name, size, color, family }) {
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
const Component = resolved.component;
|
|
246
|
-
return React3__default.default.createElement(Component, { name, size, color });
|
|
247
|
-
}
|
|
248
|
-
function renderIcon(name, size, color) {
|
|
249
|
-
return React3__default.default.createElement(Icon, { name, size, color });
|
|
77
|
+
ensureGlyphCache();
|
|
78
|
+
const entry = family ? ALL_FAMILIES.find((f) => f.name === family) : ALL_FAMILIES.find((f) => {
|
|
79
|
+
const glyphMap = f.glyphMap;
|
|
80
|
+
return glyphMap ? name in glyphMap : false;
|
|
81
|
+
});
|
|
82
|
+
if (!entry) return null;
|
|
83
|
+
return React3__default.default.createElement(entry.component, { name, size, color });
|
|
250
84
|
}
|
|
85
|
+
|
|
86
|
+
// src/utils/animations.ts
|
|
251
87
|
var TIMINGS = {
|
|
252
|
-
/** Color/opacity transitions on toggles, checkboxes, switches. */
|
|
253
88
|
state: { duration: 160 }};
|
|
254
|
-
({
|
|
255
|
-
/** Material-style ease-out — natural deceleration for state changes. */
|
|
256
|
-
standard: reactNativeReanimated.Easing.bezier(0.2, 0, 0, 1),
|
|
257
|
-
/** Strong ease-out for expanding surfaces (Accordion open). */
|
|
258
|
-
expand: reactNativeReanimated.Easing.bezier(0.23, 1, 0.32, 1),
|
|
259
|
-
/** Quick ease-in for collapsing. */
|
|
260
|
-
collapse: reactNativeReanimated.Easing.in(reactNativeReanimated.Easing.ease)
|
|
261
|
-
});
|
|
262
89
|
var COLOR_TRANSITION = {
|
|
263
90
|
type: "timing",
|
|
264
91
|
duration: TIMINGS.state.duration,
|
|
265
92
|
easing: [0.2, 0, 0, 1]
|
|
266
93
|
};
|
|
267
|
-
var
|
|
268
|
-
button: 0.95,
|
|
269
|
-
card: 0.98,
|
|
270
|
-
row: 0.97,
|
|
271
|
-
chip: 0.94
|
|
272
|
-
};
|
|
273
|
-
pressto.createAnimatedPressable((progress) => {
|
|
274
|
-
"worklet";
|
|
275
|
-
const scale2 = 1 - (1 - PRESS_SCALE.button) * progress;
|
|
276
|
-
return { transform: [{ scale: scale2 }] };
|
|
277
|
-
});
|
|
278
|
-
pressto.createAnimatedPressable((progress) => {
|
|
279
|
-
"worklet";
|
|
280
|
-
const scale2 = 1 - (1 - PRESS_SCALE.card) * progress;
|
|
281
|
-
return { transform: [{ scale: scale2 }] };
|
|
282
|
-
});
|
|
283
|
-
pressto.createAnimatedPressable((progress) => {
|
|
284
|
-
"worklet";
|
|
285
|
-
const scale2 = 1 - (1 - PRESS_SCALE.row) * progress;
|
|
286
|
-
return { transform: [{ scale: scale2 }] };
|
|
287
|
-
});
|
|
288
|
-
var PressableChip = pressto.createAnimatedPressable((progress) => {
|
|
289
|
-
"worklet";
|
|
290
|
-
const scale2 = 1 - (1 - PRESS_SCALE.chip) * progress;
|
|
291
|
-
return { transform: [{ scale: scale2 }] };
|
|
292
|
-
});
|
|
293
|
-
pressto.createAnimatedPressable((progress) => {
|
|
94
|
+
var makePressable = (scale2) => pressto.createAnimatedPressable((progress) => {
|
|
294
95
|
"worklet";
|
|
295
|
-
|
|
296
|
-
return { transform: [{ scale: scale2 }] };
|
|
96
|
+
return { transform: [{ scale: 1 - (1 - scale2) * progress }] };
|
|
297
97
|
});
|
|
98
|
+
makePressable(0.95);
|
|
99
|
+
makePressable(0.98);
|
|
100
|
+
makePressable(0.97);
|
|
101
|
+
var PressableChip = makePressable(0.94);
|
|
102
|
+
makePressable(0.95);
|
|
298
103
|
|
|
299
104
|
// src/tokens.ts
|
|
300
105
|
var RADIUS = {
|
|
@@ -313,7 +118,7 @@ function SheetSelectChip({
|
|
|
313
118
|
onPress();
|
|
314
119
|
};
|
|
315
120
|
const iconColor = selected ? colors.primaryForeground : colors.foreground;
|
|
316
|
-
const resolvedIcon = option.iconName ?
|
|
121
|
+
const resolvedIcon = option.iconName ? /* @__PURE__ */ React3__default.default.createElement(Icon, { name: option.iconName, size: ms(13), color: iconColor }) : null;
|
|
317
122
|
return /* @__PURE__ */ React3__default.default.createElement(
|
|
318
123
|
PressableChip,
|
|
319
124
|
{
|
|
@@ -321,7 +126,7 @@ function SheetSelectChip({
|
|
|
321
126
|
rippleColor: "transparent",
|
|
322
127
|
touchSoundDisabled: true,
|
|
323
128
|
accessibilityRole: "button",
|
|
324
|
-
accessibilityLabel: option.disabled ? `${option.label},
|
|
129
|
+
accessibilityLabel: option.disabled ? `${option.label}, no disponible` : option.label,
|
|
325
130
|
accessibilityState: { selected, disabled: option.disabled }
|
|
326
131
|
},
|
|
327
132
|
/* @__PURE__ */ React3__default.default.createElement(
|
package/dist/SheetSelect.mjs
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export { SheetSelect } from './chunk-
|
|
2
|
-
import './chunk-
|
|
3
|
-
import './chunk-
|
|
4
|
-
import './chunk-
|
|
1
|
+
export { SheetSelect } from './chunk-WIPEDNSD.mjs';
|
|
2
|
+
import './chunk-M53LC4Q7.mjs';
|
|
3
|
+
import './chunk-IFYMBOEN.mjs';
|
|
4
|
+
import './chunk-ARONDO7M.mjs';
|
|
5
5
|
import './chunk-QY3X2UYR.mjs';
|
|
6
|
-
import './chunk-
|
|
7
|
-
import './chunk-
|
|
6
|
+
import './chunk-MZ6WRTD2.mjs';
|
|
7
|
+
import './chunk-KSSVIFYR.mjs';
|
|
8
8
|
import './chunk-2CE3TQVY.mjs';
|
|
9
9
|
import './chunk-Y6FXYEAI.mjs';
|
package/dist/Skeleton.d.mts
CHANGED
|
@@ -10,9 +10,11 @@ interface SkeletonProps {
|
|
|
10
10
|
preset?: SkeletonPreset;
|
|
11
11
|
/** Only used with `preset='circle'` — overrides the diameter. Defaults to 40. */
|
|
12
12
|
diameter?: number;
|
|
13
|
+
/** Override the skeleton background color. Defaults to `colors.skeleton`. */
|
|
14
|
+
backgroundColor?: string;
|
|
13
15
|
style?: ViewStyle;
|
|
14
16
|
}
|
|
15
|
-
declare function Skeleton({ width, height, borderRadius, preset, diameter, style, }: SkeletonProps): React.JSX.Element;
|
|
17
|
+
declare function Skeleton({ width, height, borderRadius, preset, diameter, backgroundColor, style, }: SkeletonProps): React.JSX.Element;
|
|
16
18
|
declare namespace Skeleton {
|
|
17
19
|
var MediaCard: typeof MediaCardSkeleton;
|
|
18
20
|
var ListItem: typeof ListItemSkeleton;
|
package/dist/Skeleton.d.ts
CHANGED
|
@@ -10,9 +10,11 @@ interface SkeletonProps {
|
|
|
10
10
|
preset?: SkeletonPreset;
|
|
11
11
|
/** Only used with `preset='circle'` — overrides the diameter. Defaults to 40. */
|
|
12
12
|
diameter?: number;
|
|
13
|
+
/** Override the skeleton background color. Defaults to `colors.skeleton`. */
|
|
14
|
+
backgroundColor?: string;
|
|
13
15
|
style?: ViewStyle;
|
|
14
16
|
}
|
|
15
|
-
declare function Skeleton({ width, height, borderRadius, preset, diameter, style, }: SkeletonProps): React.JSX.Element;
|
|
17
|
+
declare function Skeleton({ width, height, borderRadius, preset, diameter, backgroundColor, style, }: SkeletonProps): React.JSX.Element;
|
|
16
18
|
declare namespace Skeleton {
|
|
17
19
|
var MediaCard: typeof MediaCardSkeleton;
|
|
18
20
|
var ListItem: typeof ListItemSkeleton;
|