@retray-dev/ui-kit 10.2.0 → 12.2.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 +384 -40
- package/README.md +14 -5
- package/dist/Accordion.d.mts +6 -0
- package/dist/Accordion.d.ts +6 -0
- package/dist/Accordion.js +16 -0
- package/dist/Accordion.mjs +2 -2
- package/dist/AlertBanner.js +2 -0
- package/dist/AlertBanner.mjs +2 -2
- package/dist/AppHeader.js +2 -0
- package/dist/AppHeader.mjs +3 -3
- package/dist/Avatar.js +2 -0
- package/dist/Avatar.mjs +2 -2
- package/dist/Badge.js +2 -0
- package/dist/Badge.mjs +2 -2
- package/dist/Button.js +17 -17
- package/dist/Button.mjs +2 -2
- package/dist/Card.js +2 -0
- package/dist/Card.mjs +2 -2
- package/dist/CategoryStrip.js +2 -0
- package/dist/CategoryStrip.mjs +2 -2
- package/dist/Checkbox.js +2 -0
- package/dist/Checkbox.mjs +2 -2
- package/dist/Chip.js +2 -0
- package/dist/Chip.mjs +2 -2
- package/dist/ConfirmDialog.d.mts +1 -6
- package/dist/ConfirmDialog.d.ts +1 -6
- package/dist/ConfirmDialog.js +53 -41
- package/dist/ConfirmDialog.mjs +3 -3
- package/dist/CurrencyDisplay.js +2 -0
- package/dist/CurrencyDisplay.mjs +2 -2
- package/dist/CurrencyInput.d.mts +3 -8
- package/dist/CurrencyInput.d.ts +3 -8
- package/dist/CurrencyInput.js +5 -1
- package/dist/CurrencyInput.mjs +3 -3
- package/dist/DetailRow.js +2 -0
- package/dist/DetailRow.mjs +2 -2
- package/dist/EmptyState.js +17 -17
- package/dist/EmptyState.mjs +3 -3
- package/dist/ErrorBoundary.js +2 -0
- package/dist/ErrorBoundary.mjs +2 -2
- package/dist/Form.js +2 -0
- package/dist/Form.mjs +2 -2
- package/dist/IconButton.js +2 -0
- package/dist/IconButton.mjs +2 -2
- package/dist/IconPicker.js +677 -248
- package/dist/IconPicker.mjs +3 -2
- package/dist/ImageUpload.d.mts +3 -1
- package/dist/ImageUpload.d.ts +3 -1
- package/dist/ImageUpload.js +10 -3
- package/dist/ImageUpload.mjs +3 -3
- package/dist/ImageViewer.js +2 -0
- package/dist/ImageViewer.mjs +4 -4
- package/dist/Input.js +2 -0
- package/dist/Input.mjs +2 -2
- package/dist/LabelValue.js +2 -0
- package/dist/LabelValue.mjs +2 -2
- package/dist/ListGroup.js +2 -0
- package/dist/ListGroup.mjs +2 -2
- package/dist/ListItem.d.mts +7 -7
- package/dist/ListItem.d.ts +7 -7
- package/dist/ListItem.js +14 -7
- package/dist/ListItem.mjs +2 -2
- package/dist/MediaCard.js +2 -0
- package/dist/MediaCard.mjs +2 -2
- package/dist/MenuGroup.js +2 -0
- package/dist/MenuGroup.mjs +2 -2
- package/dist/MenuItem.js +2 -0
- package/dist/MenuItem.mjs +2 -2
- package/dist/MonthPicker.js +2 -0
- package/dist/MonthPicker.mjs +2 -2
- package/dist/NumberStepper.js +2 -0
- package/dist/NumberStepper.mjs +2 -2
- package/dist/PagerDots.js +2 -0
- package/dist/PagerDots.mjs +2 -2
- package/dist/Pressable.d.mts +15 -7
- package/dist/Pressable.d.ts +15 -7
- package/dist/Pressable.js +7 -3
- package/dist/Pressable.mjs +1 -1
- package/dist/PricingCard.js +17 -17
- package/dist/PricingCard.mjs +4 -4
- package/dist/Progress.js +2 -0
- package/dist/Progress.mjs +2 -2
- package/dist/RadioGroup.js +2 -0
- package/dist/RadioGroup.mjs +2 -2
- package/dist/RetrayProvider.d.mts +1 -1
- package/dist/RetrayProvider.d.ts +1 -1
- package/dist/RetrayProvider.js +2 -0
- package/dist/RetrayProvider.mjs +3 -3
- package/dist/Select.js +2 -0
- package/dist/Select.mjs +2 -2
- package/dist/SelectableCard.d.mts +27 -0
- package/dist/SelectableCard.d.ts +27 -0
- package/dist/SelectableCard.js +511 -0
- package/dist/SelectableCard.mjs +8 -0
- package/dist/SelectableGrid.js +2 -0
- package/dist/SelectableGrid.mjs +2 -2
- package/dist/Separator.js +2 -0
- package/dist/Separator.mjs +2 -2
- package/dist/Sheet.d.mts +4 -46
- package/dist/Sheet.d.ts +4 -46
- package/dist/Sheet.js +55 -115
- package/dist/Sheet.mjs +2 -3
- package/dist/SheetSelect.js +2 -0
- package/dist/SheetSelect.mjs +2 -2
- package/dist/Skeleton.d.mts +3 -1
- package/dist/Skeleton.d.ts +3 -1
- package/dist/Skeleton.js +5 -2
- package/dist/Skeleton.mjs +2 -2
- package/dist/Slider.js +2 -0
- package/dist/Slider.mjs +2 -2
- package/dist/Spinner.js +2 -0
- package/dist/Spinner.mjs +2 -2
- package/dist/Stats.d.mts +33 -0
- package/dist/Stats.d.ts +33 -0
- package/dist/Stats.js +453 -0
- package/dist/Stats.mjs +9 -0
- package/dist/Switch.js +2 -0
- package/dist/Switch.mjs +2 -2
- package/dist/TabBar.js +2 -0
- package/dist/TabBar.mjs +2 -2
- package/dist/Tabs.js +2 -0
- package/dist/Tabs.mjs +2 -2
- package/dist/Text.d.mts +3 -1
- package/dist/Text.d.ts +3 -1
- package/dist/Text.js +5 -3
- package/dist/Text.mjs +2 -2
- package/dist/Textarea.js +2 -0
- package/dist/Textarea.mjs +2 -2
- package/dist/Toast.js +2 -0
- package/dist/Toast.mjs +2 -2
- package/dist/Toggle.js +2 -0
- package/dist/Toggle.mjs +2 -2
- package/dist/{chunk-U2XJFYED.mjs → chunk-2BA3JMKK.mjs} +1 -1
- package/dist/{chunk-NMU5FMQJ.mjs → chunk-2HFD4IHU.mjs} +4 -2
- package/dist/{chunk-S2R7UVOE.mjs → chunk-2LG326TT.mjs} +1 -1
- package/dist/chunk-2P2CB235.mjs +236 -0
- package/dist/{chunk-6L4G6PBT.mjs → chunk-3XCFYSX4.mjs} +1 -1
- package/dist/{chunk-HTHGSXFG.mjs → chunk-4J2PXL36.mjs} +16 -18
- package/dist/{chunk-BEMIQXXU.mjs → chunk-4OORJ2DY.mjs} +1 -1
- package/dist/chunk-4XOB5TTD.mjs +166 -0
- package/dist/{chunk-FCSSQK3L.mjs → chunk-57V2LXCK.mjs} +1 -1
- package/dist/{chunk-6Q64UFIA.mjs → chunk-7AFZWSCI.mjs} +1 -1
- package/dist/{chunk-IX3NYLYQ.mjs → chunk-7ELGZ66G.mjs} +1 -1
- package/dist/{chunk-GD6KXMG5.mjs → chunk-AENAVIKT.mjs} +1 -1
- package/dist/{chunk-ID72TK46.mjs → chunk-BXF4AMHY.mjs} +1 -1
- package/dist/{chunk-SOA2Z4RB.mjs → chunk-C43HRKXH.mjs} +1 -1
- package/dist/{chunk-TZDGAP5N.mjs → chunk-CF27NBXO.mjs} +11 -6
- package/dist/{chunk-SXLKNTA4.mjs → chunk-DF7JA72E.mjs} +1 -1
- package/dist/{chunk-AJRVDP2H.mjs → chunk-E5UKLSJZ.mjs} +3 -3
- package/dist/{chunk-MBMXYJJV.mjs → chunk-E7NEHHXV.mjs} +7 -3
- package/dist/{chunk-VKID2D2I.mjs → chunk-EDLCGYIO.mjs} +13 -8
- package/dist/{chunk-BUMAMSTZ.mjs → chunk-ELGEOM7I.mjs} +1 -1
- package/dist/{chunk-DYT7BG5I.mjs → chunk-F3YTWO3T.mjs} +1 -1
- package/dist/{chunk-VF2ATYN3.mjs → chunk-GH67YXG6.mjs} +1 -1
- package/dist/{chunk-WJLKJMKR.mjs → chunk-GUTDFUNF.mjs} +4 -4
- package/dist/{chunk-6SECQ2ZF.mjs → chunk-HC4VVCWY.mjs} +2 -2
- package/dist/{chunk-A3A6KNQN.mjs → chunk-HEDQPK4I.mjs} +1 -1
- package/dist/{chunk-GQYFLP3D.mjs → chunk-IVSRW4HS.mjs} +1 -1
- package/dist/{chunk-KOO4WITD.mjs → chunk-KSUWPU2F.mjs} +1 -1
- package/dist/{chunk-WBOOUHSS.mjs → chunk-LIS6I5UP.mjs} +1 -1
- package/dist/{chunk-X4G6APW6.mjs → chunk-LNPKGWBG.mjs} +1 -1
- package/dist/{chunk-T2KCAHOS.mjs → chunk-LOBLCFMN.mjs} +1 -1
- package/dist/{chunk-ELXBDILQ.mjs → chunk-LPV4NJJK.mjs} +2 -2
- package/dist/{chunk-Y2NS74WS.mjs → chunk-M3C7XM2M.mjs} +53 -99
- package/dist/{chunk-BRKYVJVV.mjs → chunk-MEPSKGBO.mjs} +1 -1
- package/dist/{chunk-TBNZHU6C.mjs → chunk-MVMGPZN6.mjs} +2 -2
- package/dist/{chunk-YJ7I257J.mjs → chunk-NHDI3VQB.mjs} +15 -1
- package/dist/{chunk-Z6SFHN6T.mjs → chunk-NJG7DHVF.mjs} +1 -1
- package/dist/{chunk-RYZC432S.mjs → chunk-NLZY4TXU.mjs} +1 -1
- package/dist/{chunk-ZZ2R6KZ3.mjs → chunk-OLVJFKXS.mjs} +1 -1
- package/dist/{chunk-AJ7ZDNBT.mjs → chunk-QDAZGZUF.mjs} +4 -3
- package/dist/{chunk-JT7HKXRB.mjs → chunk-QOLWA2PW.mjs} +1 -1
- package/dist/{chunk-WYEUNUTP.mjs → chunk-QXDGGOLC.mjs} +38 -25
- package/dist/{chunk-JMOZEC77.mjs → chunk-RJNLAH76.mjs} +1 -1
- package/dist/{chunk-WF2XDFRK.mjs → chunk-RMRS44MQ.mjs} +1 -1
- package/dist/chunk-SAWUXP3A.mjs +1114 -0
- package/dist/{chunk-OB4JUQ3O.mjs → chunk-TS7DGUIR.mjs} +1 -1
- package/dist/{chunk-AV4EMIRH.mjs → chunk-UBUXUMER.mjs} +1 -1
- package/dist/{chunk-IRRY3CRZ.mjs → chunk-ULGNQPNE.mjs} +1 -1
- package/dist/{chunk-7LWRKMF5.mjs → chunk-UNNRUJTM.mjs} +1 -1
- package/dist/{chunk-TB6SD2FT.mjs → chunk-UQ4742ET.mjs} +1 -1
- package/dist/{chunk-MX6HRKMI.mjs → chunk-VJBUCITV.mjs} +1 -1
- package/dist/{chunk-2UYENBLV.mjs → chunk-YMYIEVZP.mjs} +1 -1
- package/dist/{chunk-SOYNZDVY.mjs → chunk-YTXRIXNZ.mjs} +8 -1
- package/dist/{chunk-YFZ3ELX5.mjs → chunk-ZIMY2QUM.mjs} +2 -2
- package/dist/{chunk-Z4VHZ7B5.mjs → chunk-ZR6HSEAB.mjs} +1 -1
- package/dist/fonts.d.mts +1 -7
- package/dist/fonts.d.ts +1 -7
- package/dist/fonts.js +0 -2
- package/dist/fonts.mjs +1 -2
- 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 +7 -3
- package/dist/index.d.ts +7 -3
- package/dist/index.js +1517 -761
- package/dist/index.mjs +54 -52
- package/package.json +3 -3
- package/src/components/Accordion/Accordion.tsx +20 -0
- package/src/components/Button/Button.tsx +29 -26
- package/src/components/ConfirmDialog/ConfirmDialog.tsx +47 -31
- package/src/components/CurrencyInput/CurrencyInput.tsx +4 -7
- package/src/components/IconPicker/IconPicker.tsx +124 -112
- package/src/components/ImageUpload/ImageUpload.tsx +10 -3
- package/src/components/ListItem/ListItem.tsx +43 -28
- package/src/components/Pressable/Pressable.tsx +20 -8
- package/src/components/SelectableCard/SelectableCard.tsx +304 -0
- package/src/components/SelectableCard/index.ts +1 -0
- package/src/components/Sheet/Sheet.tsx +72 -173
- package/src/components/Skeleton/Skeleton.tsx +5 -2
- package/src/components/Stats/Stats.tsx +254 -0
- package/src/components/Stats/index.ts +2 -0
- package/src/components/Text/Text.tsx +4 -2
- package/src/fonts.ts +0 -7
- package/src/index.ts +5 -0
- package/src/theme/colorUtils.ts +9 -0
- package/src/theme/colors.ts +7 -0
- package/src/theme/types.ts +4 -1
- package/src/utils/curatedIcons.ts +698 -135
- package/src/utils/fontGuard.ts +2 -1
- package/dist/chunk-53Z3NYGE.mjs +0 -742
package/dist/IconPicker.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var React4 = require('react');
|
|
4
4
|
var reactNative = require('react-native');
|
|
5
5
|
var reactNativeGestureHandler = require('react-native-gesture-handler');
|
|
6
6
|
var bottomSheet = require('@gorhom/bottom-sheet');
|
|
@@ -15,7 +15,7 @@ var reactNativeSizeMatters = require('react-native-size-matters');
|
|
|
15
15
|
|
|
16
16
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
17
17
|
|
|
18
|
-
var
|
|
18
|
+
var React4__default = /*#__PURE__*/_interopDefault(React4);
|
|
19
19
|
var AntDesign__default = /*#__PURE__*/_interopDefault(AntDesign);
|
|
20
20
|
var Entypo__default = /*#__PURE__*/_interopDefault(Entypo);
|
|
21
21
|
var Feather__default = /*#__PURE__*/_interopDefault(Feather);
|
|
@@ -109,6 +109,7 @@ function deriveColors(t, scheme) {
|
|
|
109
109
|
const foregroundMuted = mixWithBackground(t.foreground, bg, 0.62);
|
|
110
110
|
const surface = dark ? lighten(bg, -0.06) : darken(bg, 0.04);
|
|
111
111
|
const surfaceStrong = dark ? lighten(bg, -0.12) : darken(bg, 0.08);
|
|
112
|
+
const skeleton = dark ? lighten(bg, -0.1) : darken(bg, 0.1);
|
|
112
113
|
const destructiveTint = dark ? withAlphaOnDark(t.destructive, 0.15, bg) : withAlphaOnWhite(t.destructive, 0.08);
|
|
113
114
|
const destructiveBorder = dark ? withAlphaOnDark(t.destructive, 0.45, bg) : withAlphaOnWhite(t.destructive, 0.3);
|
|
114
115
|
const successTint = dark ? withAlphaOnDark(t.success, 0.15, bg) : withAlphaOnWhite(t.success, 0.08);
|
|
@@ -121,6 +122,7 @@ function deriveColors(t, scheme) {
|
|
|
121
122
|
foregroundMuted,
|
|
122
123
|
surface,
|
|
123
124
|
surfaceStrong,
|
|
125
|
+
skeleton,
|
|
124
126
|
destructiveTint,
|
|
125
127
|
destructiveBorder,
|
|
126
128
|
successTint,
|
|
@@ -137,12 +139,12 @@ function deriveColors(t, scheme) {
|
|
|
137
139
|
}
|
|
138
140
|
|
|
139
141
|
// src/theme/ThemeProvider.tsx
|
|
140
|
-
var ThemeContext =
|
|
142
|
+
var ThemeContext = React4.createContext({
|
|
141
143
|
colors: deriveColors(defaultLight, "light"),
|
|
142
144
|
colorScheme: "light"
|
|
143
145
|
});
|
|
144
146
|
function useTheme() {
|
|
145
|
-
const context =
|
|
147
|
+
const context = React4.useContext(ThemeContext);
|
|
146
148
|
if (!context) {
|
|
147
149
|
throw new Error("useTheme must be used within a ThemeProvider");
|
|
148
150
|
}
|
|
@@ -184,14 +186,15 @@ function Icon({ name, size, color, family }) {
|
|
|
184
186
|
}
|
|
185
187
|
if (!resolved) return null;
|
|
186
188
|
const Component = resolved.component;
|
|
187
|
-
return
|
|
189
|
+
return React4__default.default.createElement(Component, { name, size, color });
|
|
188
190
|
}
|
|
189
191
|
function renderIcon(name, size, color) {
|
|
190
|
-
return
|
|
192
|
+
return React4__default.default.createElement(Icon, { name, size, color });
|
|
191
193
|
}
|
|
192
194
|
|
|
193
195
|
// src/utils/curatedIcons.ts
|
|
194
196
|
var CURATED_ICONS = [
|
|
197
|
+
// ─── Food ────────────────────────────────────────────────────────────────────
|
|
195
198
|
{
|
|
196
199
|
name: "food",
|
|
197
200
|
label: "Food",
|
|
@@ -199,97 +202,178 @@ var CURATED_ICONS = [
|
|
|
199
202
|
categoryIcon: "coffee",
|
|
200
203
|
icons: [
|
|
201
204
|
// Bebidas
|
|
205
|
+
"beer-outline",
|
|
206
|
+
"wine-outline",
|
|
207
|
+
"cafe-outline",
|
|
208
|
+
"water-outline",
|
|
202
209
|
"coffee",
|
|
203
|
-
|
|
204
|
-
"
|
|
205
|
-
"
|
|
206
|
-
"
|
|
207
|
-
"
|
|
208
|
-
"
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
"
|
|
212
|
-
"
|
|
213
|
-
"
|
|
214
|
-
"
|
|
215
|
-
"
|
|
216
|
-
"
|
|
217
|
-
"
|
|
218
|
-
"
|
|
219
|
-
"
|
|
220
|
-
"
|
|
221
|
-
"
|
|
222
|
-
|
|
223
|
-
"
|
|
210
|
+
// Comida
|
|
211
|
+
"pizza-outline",
|
|
212
|
+
"fast-food-outline",
|
|
213
|
+
"fish-outline",
|
|
214
|
+
"ice-cream-outline",
|
|
215
|
+
"egg-outline",
|
|
216
|
+
"nutrition-outline",
|
|
217
|
+
// Servicio y operación
|
|
218
|
+
"restaurant-outline",
|
|
219
|
+
"server-outline",
|
|
220
|
+
"menu-outline",
|
|
221
|
+
"basket-outline",
|
|
222
|
+
"receipt-outline",
|
|
223
|
+
"pricetag-outline",
|
|
224
|
+
"pricetags-outline",
|
|
225
|
+
"reorder-four-outline",
|
|
226
|
+
"reorder-three-outline",
|
|
227
|
+
"cart-outline",
|
|
228
|
+
"cash-outline",
|
|
229
|
+
"wallet-outline",
|
|
230
|
+
"storefront-outline",
|
|
224
231
|
// Delivery / pedidos
|
|
232
|
+
"truck",
|
|
233
|
+
"package",
|
|
225
234
|
"shopping-bag",
|
|
235
|
+
"shopping-cart",
|
|
236
|
+
// Ubicación y reserva
|
|
237
|
+
"map-pin",
|
|
238
|
+
"home",
|
|
239
|
+
"calendar",
|
|
226
240
|
"clock",
|
|
241
|
+
// Experiencia
|
|
227
242
|
"star",
|
|
228
243
|
"heart",
|
|
229
|
-
"
|
|
230
|
-
"
|
|
244
|
+
"bookmark",
|
|
245
|
+
"thumbs-up",
|
|
246
|
+
"check",
|
|
247
|
+
"gift"
|
|
231
248
|
]
|
|
232
249
|
},
|
|
250
|
+
// ─── Sports ──────────────────────────────────────────────────────────────────
|
|
233
251
|
{
|
|
234
252
|
name: "sports",
|
|
235
253
|
label: "Sports",
|
|
236
254
|
labelEs: "Deportes",
|
|
237
|
-
categoryIcon: "
|
|
255
|
+
categoryIcon: "trophy-outline",
|
|
238
256
|
icons: [
|
|
239
|
-
// Deportes
|
|
240
|
-
"
|
|
241
|
-
"
|
|
242
|
-
"
|
|
243
|
-
"bicycle",
|
|
244
|
-
"
|
|
245
|
-
"
|
|
246
|
-
|
|
247
|
-
"
|
|
257
|
+
// Deportes
|
|
258
|
+
"american-football-outline",
|
|
259
|
+
"baseball-outline",
|
|
260
|
+
"basketball-outline",
|
|
261
|
+
"bicycle-outline",
|
|
262
|
+
"football-outline",
|
|
263
|
+
"tennisball-outline",
|
|
264
|
+
"golf-outline",
|
|
265
|
+
"fitness-outline",
|
|
266
|
+
"car-sport-outline",
|
|
267
|
+
"game-controller-outline",
|
|
268
|
+
// Competición y logros
|
|
269
|
+
"trophy-outline",
|
|
270
|
+
"medal-outline",
|
|
248
271
|
"award",
|
|
272
|
+
"target",
|
|
249
273
|
"flag",
|
|
250
|
-
"
|
|
274
|
+
"crosshair",
|
|
275
|
+
// Outdoor
|
|
276
|
+
"compass-outline",
|
|
277
|
+
"map-outline",
|
|
278
|
+
"trail-sign-outline",
|
|
279
|
+
"bonfire-outline",
|
|
280
|
+
"snow-outline",
|
|
281
|
+
"flame-outline",
|
|
282
|
+
"sun",
|
|
283
|
+
"droplet",
|
|
284
|
+
"wind",
|
|
285
|
+
"map",
|
|
286
|
+
"map-pin",
|
|
287
|
+
"navigation",
|
|
288
|
+
"navigation-2",
|
|
289
|
+
// Rendimiento y métricas
|
|
290
|
+
"stats-chart-outline",
|
|
291
|
+
"trending-up-outline",
|
|
292
|
+
"trending-down-outline",
|
|
293
|
+
"bar-chart-outline",
|
|
294
|
+
"pie-chart-outline",
|
|
295
|
+
"analytics-outline",
|
|
296
|
+
"activity",
|
|
251
297
|
"zap",
|
|
252
|
-
|
|
253
|
-
"
|
|
298
|
+
"watch",
|
|
299
|
+
"trending-up",
|
|
300
|
+
"trending-down",
|
|
301
|
+
"bar-chart-2",
|
|
254
302
|
"clock",
|
|
255
|
-
"
|
|
256
|
-
"sun",
|
|
257
|
-
"user",
|
|
258
|
-
"users"
|
|
303
|
+
"calendar"
|
|
259
304
|
]
|
|
260
305
|
},
|
|
306
|
+
// ─── Business ────────────────────────────────────────────────────────────────
|
|
261
307
|
{
|
|
262
308
|
name: "business",
|
|
263
309
|
label: "Business",
|
|
264
310
|
labelEs: "Negocios",
|
|
265
311
|
categoryIcon: "briefcase",
|
|
266
312
|
icons: [
|
|
313
|
+
// Empresa
|
|
314
|
+
"briefcase",
|
|
315
|
+
"users",
|
|
316
|
+
"user",
|
|
317
|
+
"user-plus",
|
|
318
|
+
"user-check",
|
|
319
|
+
"user-x",
|
|
320
|
+
"briefcase-outline",
|
|
321
|
+
"business-outline",
|
|
322
|
+
"id-card-outline",
|
|
323
|
+
// Comercio y operación
|
|
267
324
|
"shopping-cart",
|
|
268
325
|
"shopping-bag",
|
|
269
326
|
"credit-card",
|
|
270
327
|
"dollar-sign",
|
|
271
328
|
"percent",
|
|
272
|
-
"
|
|
329
|
+
"tag",
|
|
330
|
+
"gift",
|
|
331
|
+
"cart-outline",
|
|
332
|
+
"cash-outline",
|
|
333
|
+
"wallet-outline",
|
|
334
|
+
"storefront-outline",
|
|
335
|
+
"pricetag-outline",
|
|
336
|
+
"pricetags-outline",
|
|
337
|
+
"receipt-outline",
|
|
338
|
+
"card-outline",
|
|
339
|
+
// Logística
|
|
273
340
|
"truck",
|
|
274
341
|
"package",
|
|
275
|
-
|
|
342
|
+
// Documentos
|
|
343
|
+
"file",
|
|
344
|
+
"file-text",
|
|
345
|
+
"file-plus",
|
|
346
|
+
"folder",
|
|
347
|
+
"paperclip",
|
|
348
|
+
"document-outline",
|
|
349
|
+
"document-text-outline",
|
|
350
|
+
"documents-outline",
|
|
351
|
+
"folder-outline",
|
|
352
|
+
// Comunicación de negocio
|
|
353
|
+
"mail",
|
|
354
|
+
"phone",
|
|
355
|
+
"phone-call",
|
|
356
|
+
"send",
|
|
357
|
+
"message-square",
|
|
358
|
+
"mail-outline",
|
|
359
|
+
// Análisis
|
|
276
360
|
"bar-chart",
|
|
277
361
|
"bar-chart-2",
|
|
278
362
|
"pie-chart",
|
|
279
363
|
"trending-up",
|
|
280
364
|
"trending-down",
|
|
281
365
|
"activity",
|
|
282
|
-
"
|
|
283
|
-
"bookmark",
|
|
284
|
-
"pocket"
|
|
366
|
+
"globe"
|
|
285
367
|
]
|
|
286
368
|
},
|
|
369
|
+
// ─── Objects ─────────────────────────────────────────────────────────────────
|
|
287
370
|
{
|
|
288
371
|
name: "objects",
|
|
289
372
|
label: "Objects",
|
|
290
373
|
labelEs: "Objetos",
|
|
291
|
-
categoryIcon: "
|
|
374
|
+
categoryIcon: "package",
|
|
292
375
|
icons: [
|
|
376
|
+
// Archivos y carpetas
|
|
293
377
|
"file",
|
|
294
378
|
"file-text",
|
|
295
379
|
"file-plus",
|
|
@@ -297,108 +381,193 @@ var CURATED_ICONS = [
|
|
|
297
381
|
"folder",
|
|
298
382
|
"folder-plus",
|
|
299
383
|
"folder-minus",
|
|
384
|
+
"archive",
|
|
385
|
+
"save",
|
|
386
|
+
"paperclip",
|
|
387
|
+
"document-outline",
|
|
388
|
+
"document-text-outline",
|
|
389
|
+
"documents-outline",
|
|
390
|
+
"folder-outline",
|
|
391
|
+
"folder-open-outline",
|
|
392
|
+
"file-tray-outline",
|
|
393
|
+
"file-tray-full-outline",
|
|
394
|
+
"file-tray-stacked-outline",
|
|
395
|
+
"archive-outline",
|
|
396
|
+
"save-outline",
|
|
397
|
+
// Seguridad
|
|
300
398
|
"lock",
|
|
301
399
|
"unlock",
|
|
302
400
|
"key",
|
|
303
401
|
"shield",
|
|
304
402
|
"shield-off",
|
|
305
|
-
"
|
|
306
|
-
"
|
|
307
|
-
"
|
|
308
|
-
"
|
|
309
|
-
"
|
|
310
|
-
|
|
311
|
-
"
|
|
403
|
+
"lock-closed-outline",
|
|
404
|
+
"lock-open-outline",
|
|
405
|
+
"key-outline",
|
|
406
|
+
"shield-outline",
|
|
407
|
+
"shield-checkmark-outline",
|
|
408
|
+
// Dispositivos
|
|
409
|
+
"monitor",
|
|
410
|
+
"tablet",
|
|
411
|
+
"smartphone",
|
|
412
|
+
"tv",
|
|
312
413
|
"server",
|
|
414
|
+
"database",
|
|
313
415
|
"hard-drive",
|
|
314
416
|
"cpu",
|
|
315
|
-
"
|
|
316
|
-
"
|
|
317
|
-
"
|
|
318
|
-
"
|
|
417
|
+
"radio",
|
|
418
|
+
"laptop-outline",
|
|
419
|
+
"phone-portrait-outline",
|
|
420
|
+
"phone-landscape-outline",
|
|
421
|
+
"tablet-landscape-outline",
|
|
422
|
+
"tablet-portrait-outline",
|
|
423
|
+
"tv-outline",
|
|
424
|
+
"server-outline",
|
|
425
|
+
"hardware-chip-outline",
|
|
426
|
+
"watch-outline"
|
|
319
427
|
]
|
|
320
428
|
},
|
|
429
|
+
// ─── Status ──────────────────────────────────────────────────────────────────
|
|
321
430
|
{
|
|
322
431
|
name: "status",
|
|
323
432
|
label: "Status",
|
|
324
433
|
labelEs: "Estado",
|
|
325
434
|
categoryIcon: "alert-circle",
|
|
326
435
|
icons: [
|
|
436
|
+
// Alertas
|
|
327
437
|
"alert-circle",
|
|
328
438
|
"alert-triangle",
|
|
329
439
|
"alert-octagon",
|
|
330
440
|
"info",
|
|
331
441
|
"help-circle",
|
|
442
|
+
"alert-circle-outline",
|
|
443
|
+
"alert-outline",
|
|
444
|
+
"information-circle-outline",
|
|
445
|
+
"help-circle-outline",
|
|
446
|
+
// Notificaciones
|
|
332
447
|
"bell",
|
|
333
448
|
"bell-off",
|
|
449
|
+
"notifications-outline",
|
|
450
|
+
"notifications-off-outline",
|
|
451
|
+
"notifications-circle-outline",
|
|
452
|
+
// Visibilidad
|
|
334
453
|
"eye",
|
|
335
454
|
"eye-off",
|
|
455
|
+
"eye-outline",
|
|
456
|
+
"eye-off-outline",
|
|
457
|
+
// Indicadores
|
|
336
458
|
"flag",
|
|
337
459
|
"zap",
|
|
338
460
|
"zap-off",
|
|
339
461
|
"loader",
|
|
340
|
-
"
|
|
341
|
-
"
|
|
462
|
+
"activity",
|
|
463
|
+
"flash-outline",
|
|
464
|
+
"bulb-outline",
|
|
465
|
+
// Éxito / error / advertencia
|
|
466
|
+
"check",
|
|
467
|
+
"check-circle",
|
|
468
|
+
"x",
|
|
469
|
+
"x-circle",
|
|
470
|
+
"x-octagon",
|
|
471
|
+
"slash",
|
|
472
|
+
"plus-circle",
|
|
473
|
+
"minus-circle",
|
|
474
|
+
"checkmark-circle-outline",
|
|
475
|
+
"checkmark-done-circle-outline",
|
|
476
|
+
"close-circle-outline",
|
|
477
|
+
"add-circle-outline",
|
|
478
|
+
"remove-circle-outline",
|
|
479
|
+
// Estados de proceso
|
|
480
|
+
"play-circle",
|
|
481
|
+
"pause-circle",
|
|
482
|
+
"stop-circle",
|
|
483
|
+
"play-circle-outline",
|
|
484
|
+
"pause-circle-outline",
|
|
485
|
+
"stop-circle-outline"
|
|
342
486
|
]
|
|
343
487
|
},
|
|
488
|
+
// ─── Actions ─────────────────────────────────────────────────────────────────
|
|
344
489
|
{
|
|
345
490
|
name: "actions",
|
|
346
491
|
label: "Actions",
|
|
347
492
|
labelEs: "Acciones",
|
|
348
493
|
categoryIcon: "edit-3",
|
|
349
494
|
icons: [
|
|
495
|
+
// Crear / añadir
|
|
350
496
|
"plus",
|
|
351
497
|
"plus-circle",
|
|
352
498
|
"plus-square",
|
|
499
|
+
"add-outline",
|
|
500
|
+
"add-circle-outline",
|
|
501
|
+
// Eliminar / quitar
|
|
353
502
|
"minus",
|
|
354
503
|
"minus-circle",
|
|
355
504
|
"minus-square",
|
|
505
|
+
"trash",
|
|
506
|
+
"trash-2",
|
|
356
507
|
"x",
|
|
357
508
|
"x-circle",
|
|
358
509
|
"x-square",
|
|
359
510
|
"x-octagon",
|
|
511
|
+
"slash",
|
|
512
|
+
"trash-outline",
|
|
513
|
+
"trash-bin-outline",
|
|
514
|
+
"remove-outline",
|
|
515
|
+
"remove-circle-outline",
|
|
516
|
+
"close-circle-outline",
|
|
517
|
+
"backspace-outline",
|
|
518
|
+
"cut-outline",
|
|
519
|
+
// Confirmar
|
|
360
520
|
"check",
|
|
361
521
|
"check-circle",
|
|
362
522
|
"check-square",
|
|
523
|
+
"checkmark-circle-outline",
|
|
524
|
+
// Editar
|
|
363
525
|
"edit",
|
|
364
526
|
"edit-2",
|
|
365
527
|
"edit-3",
|
|
366
|
-
"trash",
|
|
367
|
-
"trash-2",
|
|
368
528
|
"copy",
|
|
369
529
|
"clipboard",
|
|
370
530
|
"scissors",
|
|
531
|
+
"create-outline",
|
|
532
|
+
"pencil-outline",
|
|
533
|
+
"duplicate-outline",
|
|
534
|
+
"copy-outline",
|
|
535
|
+
"clipboard-outline",
|
|
536
|
+
// Mover datos
|
|
371
537
|
"download",
|
|
372
538
|
"download-cloud",
|
|
373
539
|
"upload",
|
|
374
540
|
"upload-cloud",
|
|
375
|
-
"
|
|
376
|
-
"
|
|
377
|
-
"
|
|
378
|
-
"link-2",
|
|
379
|
-
"search",
|
|
380
|
-
"zoom-in",
|
|
381
|
-
"zoom-out",
|
|
382
|
-
"save",
|
|
383
|
-
"archive",
|
|
384
|
-
"log-in",
|
|
385
|
-
"log-out",
|
|
386
|
-
"power",
|
|
387
|
-
"refresh-cw",
|
|
388
|
-
"rotate-cw",
|
|
389
|
-
"slash"
|
|
541
|
+
"download-outline",
|
|
542
|
+
"cloud-download-outline",
|
|
543
|
+
"cloud-upload-outline"
|
|
390
544
|
]
|
|
391
545
|
},
|
|
546
|
+
// ─── Communication ───────────────────────────────────────────────────────────
|
|
392
547
|
{
|
|
393
548
|
name: "communication",
|
|
394
549
|
label: "Communication",
|
|
395
550
|
labelEs: "Comunicaci\xF3n",
|
|
396
551
|
categoryIcon: "message-circle",
|
|
397
552
|
icons: [
|
|
398
|
-
|
|
553
|
+
// Mensajería
|
|
399
554
|
"message-circle",
|
|
400
555
|
"message-square",
|
|
401
556
|
"send",
|
|
557
|
+
"mail",
|
|
558
|
+
"inbox",
|
|
559
|
+
"at-sign",
|
|
560
|
+
"mail-outline",
|
|
561
|
+
"mail-open-outline",
|
|
562
|
+
"mail-unread-outline",
|
|
563
|
+
"chatbubble-outline",
|
|
564
|
+
"chatbubble-ellipses-outline",
|
|
565
|
+
"chatbubbles-outline",
|
|
566
|
+
"send-outline",
|
|
567
|
+
"attach-outline",
|
|
568
|
+
"at-outline",
|
|
569
|
+
"at-circle-outline",
|
|
570
|
+
// Llamadas
|
|
402
571
|
"phone",
|
|
403
572
|
"phone-call",
|
|
404
573
|
"phone-incoming",
|
|
@@ -406,30 +575,45 @@ var CURATED_ICONS = [
|
|
|
406
575
|
"phone-missed",
|
|
407
576
|
"phone-off",
|
|
408
577
|
"phone-forwarded",
|
|
409
|
-
"
|
|
410
|
-
"
|
|
578
|
+
"voicemail",
|
|
579
|
+
"call-outline",
|
|
580
|
+
"phone-portrait-outline",
|
|
581
|
+
"phone-landscape-outline",
|
|
582
|
+
// Personas
|
|
411
583
|
"user",
|
|
412
584
|
"user-plus",
|
|
413
585
|
"user-minus",
|
|
414
586
|
"user-check",
|
|
415
587
|
"user-x",
|
|
416
588
|
"users",
|
|
589
|
+
"person-outline",
|
|
590
|
+
"person-circle-outline",
|
|
591
|
+
"person-add-outline",
|
|
592
|
+
"person-remove-outline",
|
|
593
|
+
"people-outline",
|
|
594
|
+
"people-circle-outline",
|
|
595
|
+
// Reacciones
|
|
417
596
|
"smile",
|
|
418
597
|
"frown",
|
|
419
598
|
"meh",
|
|
420
599
|
"heart",
|
|
421
600
|
"thumbs-up",
|
|
422
601
|
"thumbs-down",
|
|
423
|
-
"
|
|
424
|
-
"
|
|
602
|
+
"happy-outline",
|
|
603
|
+
"sad-outline",
|
|
604
|
+
"heart-outline",
|
|
605
|
+
"thumbs-up-outline",
|
|
606
|
+
"thumbs-down-outline"
|
|
425
607
|
]
|
|
426
608
|
},
|
|
609
|
+
// ─── Navigation ──────────────────────────────────────────────────────────────
|
|
427
610
|
{
|
|
428
611
|
name: "navigation",
|
|
429
612
|
label: "Navigation",
|
|
430
613
|
labelEs: "Navegaci\xF3n",
|
|
431
614
|
categoryIcon: "compass",
|
|
432
615
|
icons: [
|
|
616
|
+
// Flechas cardinales
|
|
433
617
|
"arrow-up",
|
|
434
618
|
"arrow-down",
|
|
435
619
|
"arrow-left",
|
|
@@ -438,6 +622,13 @@ var CURATED_ICONS = [
|
|
|
438
622
|
"arrow-up-right",
|
|
439
623
|
"arrow-down-left",
|
|
440
624
|
"arrow-down-right",
|
|
625
|
+
"arrow-up-outline",
|
|
626
|
+
"arrow-down-outline",
|
|
627
|
+
"arrow-back-outline",
|
|
628
|
+
"arrow-forward-outline",
|
|
629
|
+
"arrow-undo-outline",
|
|
630
|
+
"arrow-redo-outline",
|
|
631
|
+
// Chevrones
|
|
441
632
|
"chevron-up",
|
|
442
633
|
"chevron-down",
|
|
443
634
|
"chevron-left",
|
|
@@ -446,6 +637,13 @@ var CURATED_ICONS = [
|
|
|
446
637
|
"chevrons-down",
|
|
447
638
|
"chevrons-left",
|
|
448
639
|
"chevrons-right",
|
|
640
|
+
"chevron-up-outline",
|
|
641
|
+
"chevron-down-outline",
|
|
642
|
+
"chevron-back-outline",
|
|
643
|
+
"chevron-forward-outline",
|
|
644
|
+
"chevron-collapse-outline",
|
|
645
|
+
"chevron-expand-outline",
|
|
646
|
+
// Esquinas
|
|
449
647
|
"corner-up-left",
|
|
450
648
|
"corner-up-right",
|
|
451
649
|
"corner-down-left",
|
|
@@ -454,10 +652,14 @@ var CURATED_ICONS = [
|
|
|
454
652
|
"corner-left-down",
|
|
455
653
|
"corner-right-up",
|
|
456
654
|
"corner-right-down",
|
|
655
|
+
// Giro / refrescar
|
|
457
656
|
"refresh-cw",
|
|
458
657
|
"refresh-ccw",
|
|
459
658
|
"rotate-cw",
|
|
460
659
|
"rotate-ccw",
|
|
660
|
+
"refresh-outline",
|
|
661
|
+
"reload-outline",
|
|
662
|
+
// Orientación y mapa
|
|
461
663
|
"navigation",
|
|
462
664
|
"navigation-2",
|
|
463
665
|
"compass",
|
|
@@ -466,119 +668,248 @@ var CURATED_ICONS = [
|
|
|
466
668
|
"target",
|
|
467
669
|
"crosshair",
|
|
468
670
|
"home",
|
|
469
|
-
"
|
|
470
|
-
"
|
|
471
|
-
"
|
|
472
|
-
"
|
|
473
|
-
"
|
|
474
|
-
"
|
|
475
|
-
"
|
|
671
|
+
"anchor",
|
|
672
|
+
"compass-outline",
|
|
673
|
+
"map-outline",
|
|
674
|
+
"location-outline",
|
|
675
|
+
"navigate-outline",
|
|
676
|
+
"pin-outline",
|
|
677
|
+
"home-outline"
|
|
476
678
|
]
|
|
477
679
|
},
|
|
680
|
+
// ─── Media ───────────────────────────────────────────────────────────────────
|
|
478
681
|
{
|
|
479
682
|
name: "media",
|
|
480
683
|
label: "Media",
|
|
481
684
|
labelEs: "Medios",
|
|
482
685
|
categoryIcon: "image",
|
|
483
686
|
icons: [
|
|
687
|
+
// Visual
|
|
484
688
|
"image",
|
|
485
689
|
"film",
|
|
486
690
|
"video",
|
|
487
691
|
"video-off",
|
|
692
|
+
"camera",
|
|
693
|
+
"camera-off",
|
|
694
|
+
"image-outline",
|
|
695
|
+
"images-outline",
|
|
696
|
+
"film-outline",
|
|
697
|
+
"videocam-outline",
|
|
698
|
+
"videocam-off-outline",
|
|
699
|
+
"camera-outline",
|
|
700
|
+
"camera-reverse-outline",
|
|
701
|
+
// Reproducción
|
|
488
702
|
"play",
|
|
489
703
|
"play-circle",
|
|
490
704
|
"pause",
|
|
491
705
|
"pause-circle",
|
|
492
706
|
"square",
|
|
493
707
|
"stop-circle",
|
|
708
|
+
"fast-forward",
|
|
709
|
+
"rewind",
|
|
710
|
+
"skip-forward",
|
|
711
|
+
"skip-back",
|
|
712
|
+
"repeat",
|
|
713
|
+
"shuffle",
|
|
714
|
+
"play-outline",
|
|
715
|
+
"pause-outline",
|
|
716
|
+
"play-circle-outline",
|
|
717
|
+
"pause-circle-outline",
|
|
718
|
+
"stop-circle-outline",
|
|
719
|
+
"play-back-outline",
|
|
720
|
+
"play-forward-outline",
|
|
721
|
+
"play-skip-back-outline",
|
|
722
|
+
"play-skip-forward-outline",
|
|
723
|
+
"repeat-outline",
|
|
724
|
+
"shuffle-outline",
|
|
725
|
+
// Audio
|
|
494
726
|
"music",
|
|
495
727
|
"headphones",
|
|
496
728
|
"speaker",
|
|
497
|
-
"camera",
|
|
498
|
-
"camera-off",
|
|
499
|
-
"mic",
|
|
500
|
-
"mic-off",
|
|
501
729
|
"volume",
|
|
502
730
|
"volume-1",
|
|
503
731
|
"volume-2",
|
|
504
732
|
"volume-x",
|
|
505
|
-
"
|
|
506
|
-
"
|
|
507
|
-
"
|
|
508
|
-
"
|
|
509
|
-
"
|
|
510
|
-
"
|
|
511
|
-
"
|
|
733
|
+
"mic",
|
|
734
|
+
"mic-off",
|
|
735
|
+
"mic-outline",
|
|
736
|
+
"mic-off-outline",
|
|
737
|
+
"mic-circle-outline",
|
|
738
|
+
"musical-note-outline",
|
|
739
|
+
"musical-notes-outline",
|
|
740
|
+
"volume-high-outline",
|
|
741
|
+
"volume-low-outline",
|
|
742
|
+
"volume-medium-outline",
|
|
743
|
+
"volume-mute-outline",
|
|
744
|
+
"volume-off-outline"
|
|
512
745
|
]
|
|
513
746
|
},
|
|
747
|
+
// ─── Layout ──────────────────────────────────────────────────────────────────
|
|
514
748
|
{
|
|
515
749
|
name: "layout",
|
|
516
750
|
label: "Layout",
|
|
517
751
|
labelEs: "Dise\xF1o",
|
|
518
752
|
categoryIcon: "grid",
|
|
519
753
|
icons: [
|
|
520
|
-
|
|
521
|
-
"more-horizontal",
|
|
522
|
-
"more-vertical",
|
|
754
|
+
// Estructura
|
|
523
755
|
"grid",
|
|
524
756
|
"columns",
|
|
525
757
|
"sidebar",
|
|
526
758
|
"layout",
|
|
527
759
|
"list",
|
|
760
|
+
"menu",
|
|
761
|
+
"table",
|
|
762
|
+
"trello",
|
|
763
|
+
"grid-outline",
|
|
764
|
+
"list-outline",
|
|
765
|
+
"menu-outline",
|
|
766
|
+
"layers-outline",
|
|
767
|
+
// Alineación
|
|
528
768
|
"align-left",
|
|
529
769
|
"align-center",
|
|
530
770
|
"align-right",
|
|
531
771
|
"align-justify",
|
|
772
|
+
// Tipografía
|
|
532
773
|
"bold",
|
|
533
774
|
"italic",
|
|
534
775
|
"underline",
|
|
535
776
|
"type",
|
|
536
|
-
"filter",
|
|
537
|
-
"crop",
|
|
538
|
-
"layers",
|
|
539
777
|
"hash",
|
|
540
|
-
|
|
541
|
-
"trello",
|
|
778
|
+
// Formas
|
|
542
779
|
"circle",
|
|
543
780
|
"square",
|
|
544
781
|
"triangle",
|
|
545
782
|
"hexagon",
|
|
546
783
|
"octagon",
|
|
547
|
-
"
|
|
548
|
-
"
|
|
784
|
+
"square-outline",
|
|
785
|
+
"triangle-outline",
|
|
786
|
+
"diamond-outline",
|
|
787
|
+
"shapes-outline",
|
|
788
|
+
// Herramientas de diseño
|
|
789
|
+
"pen-tool",
|
|
790
|
+
"crop",
|
|
791
|
+
"layers",
|
|
792
|
+
"filter",
|
|
793
|
+
"sliders",
|
|
794
|
+
"aperture",
|
|
795
|
+
"crop-outline",
|
|
796
|
+
"filter-outline",
|
|
797
|
+
"color-fill-outline",
|
|
798
|
+
"color-filter-outline",
|
|
799
|
+
"color-palette-outline",
|
|
800
|
+
"color-wand-outline",
|
|
801
|
+
"brush-outline",
|
|
802
|
+
// Edición
|
|
803
|
+
"edit",
|
|
804
|
+
"edit-2",
|
|
805
|
+
"edit-3",
|
|
806
|
+
"copy",
|
|
807
|
+
"trash",
|
|
808
|
+
"move",
|
|
809
|
+
"create-outline",
|
|
810
|
+
"pencil-outline",
|
|
811
|
+
"move-outline",
|
|
812
|
+
"resize-outline",
|
|
813
|
+
"duplicate-outline",
|
|
814
|
+
// Navegación UI
|
|
815
|
+
"more-horizontal",
|
|
816
|
+
"more-vertical",
|
|
817
|
+
"maximize",
|
|
818
|
+
"minimize",
|
|
819
|
+
"zoom-in",
|
|
820
|
+
"zoom-out",
|
|
821
|
+
"eye",
|
|
822
|
+
"eye-off",
|
|
823
|
+
"eye-outline",
|
|
824
|
+
"eye-off-outline",
|
|
825
|
+
"ellipsis-horizontal-circle-outline",
|
|
826
|
+
"ellipsis-vertical-circle-outline"
|
|
549
827
|
]
|
|
550
828
|
},
|
|
829
|
+
// ─── Nature ──────────────────────────────────────────────────────────────────
|
|
551
830
|
{
|
|
552
831
|
name: "nature",
|
|
553
832
|
label: "Nature",
|
|
554
833
|
labelEs: "Naturaleza",
|
|
555
|
-
categoryIcon: "
|
|
834
|
+
categoryIcon: "sunny-outline",
|
|
556
835
|
icons: [
|
|
836
|
+
// Sol, luna y estrellas
|
|
837
|
+
"sunny-outline",
|
|
838
|
+
"moon-outline",
|
|
839
|
+
"star-outline",
|
|
840
|
+
"star-half-outline",
|
|
841
|
+
"partly-sunny-outline",
|
|
557
842
|
"sun",
|
|
843
|
+
"moon",
|
|
558
844
|
"sunrise",
|
|
559
845
|
"sunset",
|
|
560
|
-
|
|
846
|
+
// Clima
|
|
847
|
+
"rainy-outline",
|
|
848
|
+
"thunderstorm-outline",
|
|
849
|
+
"snow-outline",
|
|
850
|
+
"cloudy-outline",
|
|
851
|
+
"cloudy-night-outline",
|
|
852
|
+
"cloud-outline",
|
|
853
|
+
"cloud-done-outline",
|
|
854
|
+
"cloud-download-outline",
|
|
855
|
+
"cloud-upload-outline",
|
|
856
|
+
"cloud-offline-outline",
|
|
857
|
+
"cloud-circle-outline",
|
|
561
858
|
"cloud",
|
|
562
859
|
"cloud-drizzle",
|
|
563
860
|
"cloud-lightning",
|
|
564
|
-
"cloud-off",
|
|
565
861
|
"cloud-rain",
|
|
566
862
|
"cloud-snow",
|
|
567
|
-
"
|
|
568
|
-
"umbrella",
|
|
569
|
-
"thermometer",
|
|
863
|
+
"cloud-off",
|
|
864
|
+
"umbrella-outline",
|
|
865
|
+
"thermometer-outline",
|
|
570
866
|
"droplet",
|
|
867
|
+
"wind",
|
|
868
|
+
// Agua y fuego
|
|
869
|
+
"water-outline",
|
|
870
|
+
"flame-outline",
|
|
871
|
+
"bonfire-outline",
|
|
872
|
+
"eyedrop-outline",
|
|
873
|
+
// Flora y fauna
|
|
874
|
+
"leaf-outline",
|
|
875
|
+
"flower-outline",
|
|
876
|
+
"bug-outline",
|
|
877
|
+
"fish-outline",
|
|
878
|
+
"paw-outline",
|
|
879
|
+
// Outdoor
|
|
880
|
+
"binoculars-outline",
|
|
881
|
+
"telescope-outline",
|
|
882
|
+
"compass-outline",
|
|
883
|
+
"map-outline",
|
|
884
|
+
"location-outline",
|
|
885
|
+
"flag-outline",
|
|
886
|
+
"trail-sign-outline",
|
|
887
|
+
"earth-outline",
|
|
888
|
+
"globe-outline",
|
|
889
|
+
"planet-outline",
|
|
890
|
+
"compass",
|
|
891
|
+
"map",
|
|
892
|
+
"map-pin",
|
|
893
|
+
"flag",
|
|
894
|
+
"navigation",
|
|
895
|
+
"navigation-2",
|
|
896
|
+
"target",
|
|
897
|
+
"crosshair",
|
|
571
898
|
"life-buoy"
|
|
572
899
|
]
|
|
573
900
|
},
|
|
901
|
+
// ─── Brands ──────────────────────────────────────────────────────────────────
|
|
574
902
|
{
|
|
575
903
|
name: "brands",
|
|
576
904
|
label: "Brands",
|
|
577
905
|
labelEs: "Marcas",
|
|
578
906
|
categoryIcon: "globe",
|
|
579
907
|
icons: [
|
|
908
|
+
// Feather brand icons — outlined, consistent with the rest of the library
|
|
580
909
|
"github",
|
|
581
910
|
"gitlab",
|
|
911
|
+
"codepen",
|
|
912
|
+
"codesandbox",
|
|
582
913
|
"twitter",
|
|
583
914
|
"facebook",
|
|
584
915
|
"instagram",
|
|
@@ -590,21 +921,56 @@ var CURATED_ICONS = [
|
|
|
590
921
|
"figma",
|
|
591
922
|
"framer",
|
|
592
923
|
"chrome",
|
|
593
|
-
"codepen",
|
|
594
|
-
"codesandbox",
|
|
595
|
-
"globe",
|
|
596
924
|
"rss",
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
"
|
|
603
|
-
"
|
|
604
|
-
"
|
|
605
|
-
"
|
|
606
|
-
"
|
|
607
|
-
"
|
|
925
|
+
// Filled / flat brand logos (FA5 brands) — kept in a second
|
|
926
|
+
// visual tier. Rendered as the brand's official silhouette.
|
|
927
|
+
// Visually consistent (all flat single-color) but heavier than the
|
|
928
|
+
// Feather outlined set above. Use these only when an outlined Feather
|
|
929
|
+
// version of the brand doesn't exist.
|
|
930
|
+
"reddit",
|
|
931
|
+
"tiktok",
|
|
932
|
+
"pinterest",
|
|
933
|
+
"whatsapp",
|
|
934
|
+
"discord",
|
|
935
|
+
"snapchat",
|
|
936
|
+
"telegram",
|
|
937
|
+
"viber",
|
|
938
|
+
"line",
|
|
939
|
+
"vimeo",
|
|
940
|
+
"tumblr",
|
|
941
|
+
"behance",
|
|
942
|
+
"medium",
|
|
943
|
+
"soundcloud",
|
|
944
|
+
"google",
|
|
945
|
+
"apple",
|
|
946
|
+
"android",
|
|
947
|
+
"windows",
|
|
948
|
+
"linux",
|
|
949
|
+
"amazon",
|
|
950
|
+
"paypal",
|
|
951
|
+
"stripe",
|
|
952
|
+
"shopify",
|
|
953
|
+
"dropbox",
|
|
954
|
+
"spotify",
|
|
955
|
+
"steam",
|
|
956
|
+
"atlassian",
|
|
957
|
+
"jira",
|
|
958
|
+
"confluence",
|
|
959
|
+
"bitbucket",
|
|
960
|
+
"jenkins",
|
|
961
|
+
"docker",
|
|
962
|
+
"aws",
|
|
963
|
+
"node",
|
|
964
|
+
"react",
|
|
965
|
+
"angular",
|
|
966
|
+
"wordpress",
|
|
967
|
+
"drupal",
|
|
968
|
+
"joomla",
|
|
969
|
+
"squarespace",
|
|
970
|
+
"wix",
|
|
971
|
+
"magento",
|
|
972
|
+
"terminal",
|
|
973
|
+
"pen-tool"
|
|
608
974
|
]
|
|
609
975
|
}
|
|
610
976
|
];
|
|
@@ -679,12 +1045,68 @@ var isWeb = reactNative.Platform.OS === "web";
|
|
|
679
1045
|
var s = isWeb ? (n) => n : reactNativeSizeMatters.scale;
|
|
680
1046
|
var vs = isWeb ? (n) => n : reactNativeSizeMatters.verticalScale;
|
|
681
1047
|
var ms = isWeb ? (n, _factor) => n : reactNativeSizeMatters.moderateScale;
|
|
1048
|
+
var mvs = isWeb ? (n, _factor) => n : reactNativeSizeMatters.moderateVerticalScale;
|
|
682
1049
|
|
|
683
1050
|
// src/tokens.ts
|
|
684
1051
|
var RADIUS = {
|
|
685
1052
|
md: 14,
|
|
686
1053
|
full: 9999
|
|
687
1054
|
};
|
|
1055
|
+
var sizeMap = {
|
|
1056
|
+
sm: "small",
|
|
1057
|
+
md: "small",
|
|
1058
|
+
lg: "large"
|
|
1059
|
+
};
|
|
1060
|
+
var labelFontSize = {
|
|
1061
|
+
sm: ms(11),
|
|
1062
|
+
md: ms(13),
|
|
1063
|
+
lg: ms(14)
|
|
1064
|
+
};
|
|
1065
|
+
function Spinner({ size = "md", color, label, ...props }) {
|
|
1066
|
+
const { colors } = useTheme();
|
|
1067
|
+
const a11yLabel = label || "Loading";
|
|
1068
|
+
if (label) {
|
|
1069
|
+
return /* @__PURE__ */ React4__default.default.createElement(
|
|
1070
|
+
reactNative.View,
|
|
1071
|
+
{
|
|
1072
|
+
style: styles.wrapper,
|
|
1073
|
+
accessibilityRole: "progressbar",
|
|
1074
|
+
accessibilityLabel: a11yLabel,
|
|
1075
|
+
accessibilityState: { busy: true }
|
|
1076
|
+
},
|
|
1077
|
+
/* @__PURE__ */ React4__default.default.createElement(reactNative.ActivityIndicator, { size: sizeMap[size], color: color ?? colors.primary, ...props }),
|
|
1078
|
+
/* @__PURE__ */ React4__default.default.createElement(
|
|
1079
|
+
reactNative.Text,
|
|
1080
|
+
{
|
|
1081
|
+
style: [styles.label, { color: colors.foregroundMuted, fontSize: labelFontSize[size] }],
|
|
1082
|
+
allowFontScaling: true
|
|
1083
|
+
},
|
|
1084
|
+
label
|
|
1085
|
+
)
|
|
1086
|
+
);
|
|
1087
|
+
}
|
|
1088
|
+
return /* @__PURE__ */ React4__default.default.createElement(
|
|
1089
|
+
reactNative.ActivityIndicator,
|
|
1090
|
+
{
|
|
1091
|
+
size: sizeMap[size],
|
|
1092
|
+
color: color ?? colors.primary,
|
|
1093
|
+
accessibilityRole: "progressbar",
|
|
1094
|
+
accessibilityLabel: a11yLabel,
|
|
1095
|
+
accessibilityState: { busy: true },
|
|
1096
|
+
...props
|
|
1097
|
+
}
|
|
1098
|
+
);
|
|
1099
|
+
}
|
|
1100
|
+
var styles = reactNative.StyleSheet.create({
|
|
1101
|
+
wrapper: {
|
|
1102
|
+
alignItems: "center",
|
|
1103
|
+
gap: vs(6)
|
|
1104
|
+
},
|
|
1105
|
+
label: {
|
|
1106
|
+
fontFamily: "Sohne-Regular",
|
|
1107
|
+
lineHeight: mvs(18)
|
|
1108
|
+
}
|
|
1109
|
+
});
|
|
688
1110
|
|
|
689
1111
|
// src/components/IconPicker/IconPicker.tsx
|
|
690
1112
|
var NUM_COLUMNS = 6;
|
|
@@ -699,7 +1121,7 @@ function IconCell({ name, selected, size, onPress }) {
|
|
|
699
1121
|
};
|
|
700
1122
|
const iconColor = selected ? colors.primaryForeground : colors.foreground;
|
|
701
1123
|
const bg = selected ? colors.primary : "transparent";
|
|
702
|
-
return /* @__PURE__ */
|
|
1124
|
+
return /* @__PURE__ */ React4__default.default.createElement(
|
|
703
1125
|
reactNative.TouchableOpacity,
|
|
704
1126
|
{
|
|
705
1127
|
onPress: handlePress,
|
|
@@ -708,12 +1130,12 @@ function IconCell({ name, selected, size, onPress }) {
|
|
|
708
1130
|
accessibilityRole: "button",
|
|
709
1131
|
accessibilityState: { selected },
|
|
710
1132
|
accessibilityLabel: name,
|
|
711
|
-
style: [
|
|
1133
|
+
style: [styles2.cell, { width: size, height: size, backgroundColor: bg }]
|
|
712
1134
|
},
|
|
713
1135
|
renderIcon(name, ms(20), iconColor)
|
|
714
1136
|
);
|
|
715
1137
|
}
|
|
716
|
-
var IconCellMemo =
|
|
1138
|
+
var IconCellMemo = React4__default.default.memo(IconCell);
|
|
717
1139
|
function IconPicker({
|
|
718
1140
|
value,
|
|
719
1141
|
onChange,
|
|
@@ -727,13 +1149,13 @@ function IconPicker({
|
|
|
727
1149
|
}) {
|
|
728
1150
|
const { colors } = useTheme();
|
|
729
1151
|
const insets = reactNativeSafeAreaContext.useSafeAreaInsets();
|
|
730
|
-
const sheetRef =
|
|
731
|
-
const catScrollRef =
|
|
732
|
-
const [
|
|
733
|
-
const [
|
|
734
|
-
const [
|
|
735
|
-
const sheetName =
|
|
736
|
-
const activeIcons =
|
|
1152
|
+
const sheetRef = React4.useRef(null);
|
|
1153
|
+
const catScrollRef = React4.useRef(null);
|
|
1154
|
+
const [activeCategory, setActiveCategory] = React4.useState(null);
|
|
1155
|
+
const [containerWidth, setContainerWidth] = React4.useState(() => reactNative.Dimensions.get("window").width - s(16) * 2);
|
|
1156
|
+
const [ready, setReady] = React4.useState(false);
|
|
1157
|
+
const sheetName = React4.useId();
|
|
1158
|
+
const activeIcons = React4.useMemo(() => {
|
|
737
1159
|
if (activeCategory) {
|
|
738
1160
|
return CURATED_ICONS.find((c) => c.name === activeCategory)?.icons ?? ALL_CURATED_ICONS;
|
|
739
1161
|
}
|
|
@@ -741,44 +1163,36 @@ function IconPicker({
|
|
|
741
1163
|
}, [activeCategory]);
|
|
742
1164
|
const gapPx = s(gap);
|
|
743
1165
|
const cellSize = containerWidth > 0 ? Math.floor((containerWidth - gapPx * (numColumns - 1)) / numColumns) : 0;
|
|
744
|
-
const rows =
|
|
1166
|
+
const rows = React4.useMemo(() => {
|
|
745
1167
|
const result = [];
|
|
746
1168
|
for (let i = 0; i < activeIcons.length; i += numColumns) {
|
|
747
1169
|
result.push(activeIcons.slice(i, i + numColumns));
|
|
748
1170
|
}
|
|
749
1171
|
return result;
|
|
750
1172
|
}, [activeIcons, numColumns]);
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
sheetRef.current?.dismiss();
|
|
757
|
-
}
|
|
758
|
-
}, [open]);
|
|
759
|
-
const handleSelect = React3.useCallback(
|
|
1173
|
+
const handleDismiss = React4.useCallback(() => {
|
|
1174
|
+
setActiveCategory(null);
|
|
1175
|
+
setReady(false);
|
|
1176
|
+
}, []);
|
|
1177
|
+
const handleSelect = React4.useCallback(
|
|
760
1178
|
(iconName) => {
|
|
761
1179
|
onChange(iconName);
|
|
762
|
-
setOpen(false);
|
|
763
|
-
setActiveCategory(null);
|
|
764
1180
|
},
|
|
765
1181
|
[onChange]
|
|
766
1182
|
);
|
|
767
|
-
const handleOpen =
|
|
1183
|
+
const handleOpen = React4.useCallback(() => {
|
|
768
1184
|
if (disabled) return;
|
|
1185
|
+
impactMedium();
|
|
769
1186
|
setActiveCategory(null);
|
|
770
|
-
|
|
1187
|
+
setReady(false);
|
|
1188
|
+
sheetRef.current?.present();
|
|
771
1189
|
}, [disabled]);
|
|
772
|
-
const
|
|
773
|
-
|
|
774
|
-
setActiveCategory(null);
|
|
775
|
-
}, []);
|
|
776
|
-
const renderBackdrop = React3.useCallback(
|
|
777
|
-
(props) => /* @__PURE__ */ React3__default.default.createElement(bottomSheet.BottomSheetBackdrop, { ...props, disappearsOnIndex: -1, appearsOnIndex: 0, pressBehavior: "close" }),
|
|
1190
|
+
const renderBackdrop = React4.useCallback(
|
|
1191
|
+
(props) => /* @__PURE__ */ React4__default.default.createElement(bottomSheet.BottomSheetBackdrop, { ...props, disappearsOnIndex: -1, appearsOnIndex: 0, pressBehavior: "close" }),
|
|
778
1192
|
[]
|
|
779
1193
|
);
|
|
780
1194
|
const selectedIcon = value ? renderIcon(value, ms(28), colors.foreground) : null;
|
|
781
|
-
return /* @__PURE__ */
|
|
1195
|
+
return /* @__PURE__ */ React4__default.default.createElement(reactNative.View, { style: [styles2.triggerContainer, style] }, label ? /* @__PURE__ */ React4__default.default.createElement(reactNative.Text, { style: [styles2.triggerLabel, { color: colors.foreground }], allowFontScaling: true }, label) : null, /* @__PURE__ */ React4__default.default.createElement(
|
|
782
1196
|
reactNative.TouchableOpacity,
|
|
783
1197
|
{
|
|
784
1198
|
onPress: handleOpen,
|
|
@@ -789,133 +1203,143 @@ function IconPicker({
|
|
|
789
1203
|
accessibilityLabel: label ?? "Seleccionar icono",
|
|
790
1204
|
accessibilityState: { disabled },
|
|
791
1205
|
style: [
|
|
792
|
-
|
|
1206
|
+
styles2.trigger,
|
|
793
1207
|
{
|
|
794
1208
|
backgroundColor: disabled ? colors.surface : colors.background,
|
|
795
1209
|
width: TRIGGER_SIZE,
|
|
796
1210
|
height: TRIGGER_SIZE,
|
|
797
1211
|
borderColor: error ? colors.destructive : value ? colors.primary : colors.border
|
|
798
1212
|
},
|
|
799
|
-
disabled &&
|
|
1213
|
+
disabled && styles2.triggerDisabled
|
|
800
1214
|
]
|
|
801
1215
|
},
|
|
802
1216
|
selectedIcon ?? renderIcon("plus", ms(24), colors.foregroundMuted)
|
|
803
|
-
), error ? /* @__PURE__ */
|
|
1217
|
+
), error ? /* @__PURE__ */ React4__default.default.createElement(
|
|
804
1218
|
reactNative.Text,
|
|
805
1219
|
{
|
|
806
|
-
style: [
|
|
1220
|
+
style: [styles2.helperText, { color: colors.destructive }],
|
|
807
1221
|
allowFontScaling: true,
|
|
808
1222
|
accessibilityLiveRegion: "polite"
|
|
809
1223
|
},
|
|
810
1224
|
error
|
|
811
|
-
) : null, !error && hint ? /* @__PURE__ */
|
|
1225
|
+
) : null, !error && hint ? /* @__PURE__ */ React4__default.default.createElement(reactNative.Text, { style: [styles2.helperText, { color: colors.foregroundMuted }], allowFontScaling: true }, hint) : null, /* @__PURE__ */ React4__default.default.createElement(
|
|
812
1226
|
bottomSheet.BottomSheetModal,
|
|
813
1227
|
{
|
|
814
1228
|
ref: sheetRef,
|
|
815
1229
|
name: sheetName,
|
|
816
|
-
onDismiss:
|
|
1230
|
+
onDismiss: handleDismiss,
|
|
817
1231
|
enableDynamicSizing: true,
|
|
818
1232
|
maxDynamicContentSize: SCREEN_HEIGHT * 0.7,
|
|
819
1233
|
backdropComponent: renderBackdrop,
|
|
820
|
-
backgroundStyle:
|
|
821
|
-
handleIndicatorStyle:
|
|
1234
|
+
backgroundStyle: { ...styles2.sheetBackground, backgroundColor: colors.card },
|
|
1235
|
+
handleIndicatorStyle: { ...styles2.handle, backgroundColor: colors.border },
|
|
822
1236
|
enablePanDownToClose: true,
|
|
823
1237
|
topInset: insets.top,
|
|
824
1238
|
android_keyboardInputMode: "adjustPan"
|
|
825
1239
|
},
|
|
826
|
-
/* @__PURE__ */
|
|
1240
|
+
/* @__PURE__ */ React4__default.default.createElement(
|
|
827
1241
|
bottomSheet.BottomSheetScrollView,
|
|
828
1242
|
{
|
|
829
|
-
contentContainerStyle:
|
|
1243
|
+
contentContainerStyle: styles2.sheetContent,
|
|
830
1244
|
showsVerticalScrollIndicator: true
|
|
831
1245
|
},
|
|
832
|
-
/* @__PURE__ */
|
|
833
|
-
|
|
834
|
-
reactNativeGestureHandler.ScrollView,
|
|
1246
|
+
/* @__PURE__ */ React4__default.default.createElement(
|
|
1247
|
+
reactNative.View,
|
|
835
1248
|
{
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
1249
|
+
style: styles2.gridContainer,
|
|
1250
|
+
onLayout: (e) => {
|
|
1251
|
+
setContainerWidth(e.nativeEvent.layout.width);
|
|
1252
|
+
setReady(true);
|
|
1253
|
+
}
|
|
841
1254
|
},
|
|
842
|
-
/* @__PURE__ */
|
|
843
|
-
|
|
1255
|
+
!ready ? /* @__PURE__ */ React4__default.default.createElement(reactNative.View, { style: styles2.loader }, /* @__PURE__ */ React4__default.default.createElement(Spinner, { size: "md", color: colors.primary, label: "Cargando iconos..." })) : /* @__PURE__ */ React4__default.default.createElement(React4__default.default.Fragment, null, /* @__PURE__ */ React4__default.default.createElement(reactNative.Text, { style: [styles2.sectionLabel, { color: colors.foregroundSubtle }], allowFontScaling: true }, "Categor\xEDas"), /* @__PURE__ */ React4__default.default.createElement(
|
|
1256
|
+
reactNativeGestureHandler.ScrollView,
|
|
844
1257
|
{
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
accessibilityState: { selected: activeCategory === null },
|
|
851
|
-
style: [
|
|
852
|
-
styles.categoryChip,
|
|
853
|
-
{
|
|
854
|
-
backgroundColor: activeCategory === null ? colors.primary : colors.surface,
|
|
855
|
-
borderColor: activeCategory === null ? colors.primary : colors.border
|
|
856
|
-
}
|
|
857
|
-
]
|
|
1258
|
+
ref: catScrollRef,
|
|
1259
|
+
horizontal: true,
|
|
1260
|
+
showsHorizontalScrollIndicator: false,
|
|
1261
|
+
contentContainerStyle: styles2.categoryStrip,
|
|
1262
|
+
style: styles2.categoryScroll
|
|
858
1263
|
},
|
|
859
|
-
/* @__PURE__ */
|
|
860
|
-
reactNative.
|
|
1264
|
+
/* @__PURE__ */ React4__default.default.createElement(
|
|
1265
|
+
reactNative.TouchableOpacity,
|
|
861
1266
|
{
|
|
1267
|
+
onPress: () => setActiveCategory(null),
|
|
1268
|
+
activeOpacity: 0.7,
|
|
1269
|
+
touchSoundDisabled: true,
|
|
1270
|
+
accessibilityRole: "button",
|
|
1271
|
+
accessibilityLabel: "Todos",
|
|
1272
|
+
accessibilityState: { selected: activeCategory === null },
|
|
862
1273
|
style: [
|
|
863
|
-
|
|
864
|
-
{
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
1274
|
+
styles2.categoryChip,
|
|
1275
|
+
{
|
|
1276
|
+
backgroundColor: activeCategory === null ? colors.primary : colors.surface,
|
|
1277
|
+
borderColor: activeCategory === null ? colors.primary : colors.border
|
|
1278
|
+
}
|
|
1279
|
+
]
|
|
868
1280
|
},
|
|
869
|
-
"
|
|
870
|
-
|
|
871
|
-
),
|
|
872
|
-
CURATED_ICONS.map((cat) => /* @__PURE__ */ React3__default.default.createElement(
|
|
873
|
-
reactNative.TouchableOpacity,
|
|
874
|
-
{
|
|
875
|
-
key: cat.name,
|
|
876
|
-
onPress: () => setActiveCategory(cat.name),
|
|
877
|
-
activeOpacity: 0.7,
|
|
878
|
-
touchSoundDisabled: true,
|
|
879
|
-
accessibilityRole: "button",
|
|
880
|
-
accessibilityLabel: cat.labelEs,
|
|
881
|
-
accessibilityState: { selected: activeCategory === cat.name },
|
|
882
|
-
style: [
|
|
883
|
-
styles.categoryChip,
|
|
1281
|
+
/* @__PURE__ */ React4__default.default.createElement(reactNative.View, { style: styles2.categoryChipInner }, renderIcon("grid", ms(14), activeCategory === null ? colors.primaryForeground : colors.foregroundSubtle), /* @__PURE__ */ React4__default.default.createElement(
|
|
1282
|
+
reactNative.Text,
|
|
884
1283
|
{
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
1284
|
+
style: [
|
|
1285
|
+
styles2.categoryChipText,
|
|
1286
|
+
{ color: activeCategory === null ? colors.primaryForeground : colors.foreground }
|
|
1287
|
+
],
|
|
1288
|
+
allowFontScaling: true,
|
|
1289
|
+
numberOfLines: 1
|
|
1290
|
+
},
|
|
1291
|
+
"Todos"
|
|
1292
|
+
))
|
|
1293
|
+
),
|
|
1294
|
+
CURATED_ICONS.map((cat) => /* @__PURE__ */ React4__default.default.createElement(
|
|
1295
|
+
reactNative.TouchableOpacity,
|
|
892
1296
|
{
|
|
1297
|
+
key: cat.name,
|
|
1298
|
+
onPress: () => setActiveCategory(cat.name),
|
|
1299
|
+
activeOpacity: 0.7,
|
|
1300
|
+
touchSoundDisabled: true,
|
|
1301
|
+
accessibilityRole: "button",
|
|
1302
|
+
accessibilityLabel: cat.labelEs,
|
|
1303
|
+
accessibilityState: { selected: activeCategory === cat.name },
|
|
893
1304
|
style: [
|
|
894
|
-
|
|
895
|
-
{
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
1305
|
+
styles2.categoryChip,
|
|
1306
|
+
{
|
|
1307
|
+
backgroundColor: activeCategory === cat.name ? colors.primary : colors.surface,
|
|
1308
|
+
borderColor: activeCategory === cat.name ? colors.primary : colors.border
|
|
1309
|
+
}
|
|
1310
|
+
]
|
|
899
1311
|
},
|
|
900
|
-
cat.
|
|
1312
|
+
/* @__PURE__ */ React4__default.default.createElement(reactNative.View, { style: styles2.categoryChipInner }, renderIcon(cat.categoryIcon, ms(14), activeCategory === cat.name ? colors.primaryForeground : colors.foregroundSubtle), /* @__PURE__ */ React4__default.default.createElement(
|
|
1313
|
+
reactNative.Text,
|
|
1314
|
+
{
|
|
1315
|
+
style: [
|
|
1316
|
+
styles2.categoryChipText,
|
|
1317
|
+
{ color: activeCategory === cat.name ? colors.primaryForeground : colors.foreground }
|
|
1318
|
+
],
|
|
1319
|
+
allowFontScaling: true,
|
|
1320
|
+
numberOfLines: 1
|
|
1321
|
+
},
|
|
1322
|
+
cat.labelEs
|
|
1323
|
+
))
|
|
901
1324
|
))
|
|
902
|
-
))
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
1325
|
+
), /* @__PURE__ */ React4__default.default.createElement(reactNative.View, { style: [styles2.separator, { backgroundColor: colors.border }] }), cellSize > 0 ? rows.map((row, i) => /* @__PURE__ */ React4__default.default.createElement(reactNative.View, { key: row[0] ?? `row-${i}`, style: [styles2.row, { marginBottom: gapPx }] }, row.map((name) => /* @__PURE__ */ React4__default.default.createElement(
|
|
1326
|
+
IconCellMemo,
|
|
1327
|
+
{
|
|
1328
|
+
key: name,
|
|
1329
|
+
name,
|
|
1330
|
+
selected: value === name,
|
|
1331
|
+
size: cellSize,
|
|
1332
|
+
onPress: () => {
|
|
1333
|
+
handleSelect(name);
|
|
1334
|
+
sheetRef.current?.dismiss();
|
|
1335
|
+
}
|
|
1336
|
+
}
|
|
1337
|
+
)), Array.from({ length: numColumns - row.length }).map((_, j) => /* @__PURE__ */ React4__default.default.createElement(reactNative.View, { key: `spacer-${j}`, style: { width: cellSize, height: cellSize } })))) : null)
|
|
1338
|
+
)
|
|
915
1339
|
)
|
|
916
1340
|
));
|
|
917
1341
|
}
|
|
918
|
-
var
|
|
1342
|
+
var styles2 = reactNative.StyleSheet.create({
|
|
919
1343
|
triggerContainer: {
|
|
920
1344
|
gap: vs(8)
|
|
921
1345
|
},
|
|
@@ -991,6 +1415,11 @@ var styles = reactNative.StyleSheet.create({
|
|
|
991
1415
|
borderRadius: RADIUS.md,
|
|
992
1416
|
alignItems: "center",
|
|
993
1417
|
justifyContent: "center"
|
|
1418
|
+
},
|
|
1419
|
+
loader: {
|
|
1420
|
+
minHeight: vs(200),
|
|
1421
|
+
alignItems: "center",
|
|
1422
|
+
justifyContent: "center"
|
|
994
1423
|
}
|
|
995
1424
|
});
|
|
996
1425
|
|