@cdx-ui/components 0.0.1-beta.159 → 0.0.1-beta.160

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.
Files changed (105) hide show
  1. package/coverage.svg +1 -1
  2. package/lib/commonjs/components/Menu/index.js +499 -0
  3. package/lib/commonjs/components/Menu/index.js.map +1 -0
  4. package/lib/commonjs/components/Menu/styles.js +100 -0
  5. package/lib/commonjs/components/Menu/styles.js.map +1 -0
  6. package/lib/commonjs/components/Select/index.js +57 -22
  7. package/lib/commonjs/components/Select/index.js.map +1 -1
  8. package/lib/commonjs/components/Select/styles.js +1 -40
  9. package/lib/commonjs/components/Select/styles.js.map +1 -1
  10. package/lib/commonjs/components/Slider/getSliderPopupPosition.js +16 -6
  11. package/lib/commonjs/components/Slider/getSliderPopupPosition.js.map +1 -1
  12. package/lib/commonjs/components/Slider/index.js +17 -5
  13. package/lib/commonjs/components/Slider/index.js.map +1 -1
  14. package/lib/commonjs/components/Toast/index.js +1 -1
  15. package/lib/commonjs/components/Toast/index.js.map +1 -1
  16. package/lib/commonjs/components/index.js +12 -0
  17. package/lib/commonjs/components/index.js.map +1 -1
  18. package/lib/commonjs/components/picker/surfaces.js +16 -9
  19. package/lib/commonjs/components/picker/surfaces.js.map +1 -1
  20. package/lib/commonjs/figma/Menu.Item.figma.js +52 -0
  21. package/lib/commonjs/figma/Menu.Item.figma.js.map +1 -0
  22. package/lib/commonjs/figma/Menu.figma.js +29 -0
  23. package/lib/commonjs/figma/Menu.figma.js.map +1 -0
  24. package/lib/commonjs/providers/forge-design/provider.js +25 -11
  25. package/lib/commonjs/providers/forge-design/provider.js.map +1 -1
  26. package/lib/commonjs/providers/toast/insets-container.js +4 -1
  27. package/lib/commonjs/providers/toast/insets-container.js.map +1 -1
  28. package/lib/commonjs/providers/toast/provider.js +126 -45
  29. package/lib/commonjs/providers/toast/provider.js.map +1 -1
  30. package/lib/commonjs/providers/toast/toast-item-renderer.js +2 -1
  31. package/lib/commonjs/providers/toast/toast-item-renderer.js.map +1 -1
  32. package/lib/module/components/Menu/index.js +495 -0
  33. package/lib/module/components/Menu/index.js.map +1 -0
  34. package/lib/module/components/Menu/styles.js +96 -0
  35. package/lib/module/components/Menu/styles.js.map +1 -0
  36. package/lib/module/components/Select/index.js +55 -20
  37. package/lib/module/components/Select/index.js.map +1 -1
  38. package/lib/module/components/Select/styles.js +0 -39
  39. package/lib/module/components/Select/styles.js.map +1 -1
  40. package/lib/module/components/Slider/getSliderPopupPosition.js +16 -6
  41. package/lib/module/components/Slider/getSliderPopupPosition.js.map +1 -1
  42. package/lib/module/components/Slider/index.js +20 -8
  43. package/lib/module/components/Slider/index.js.map +1 -1
  44. package/lib/module/components/Toast/index.js +1 -1
  45. package/lib/module/components/Toast/index.js.map +1 -1
  46. package/lib/module/components/index.js +1 -0
  47. package/lib/module/components/index.js.map +1 -1
  48. package/lib/module/components/picker/surfaces.js +18 -11
  49. package/lib/module/components/picker/surfaces.js.map +1 -1
  50. package/lib/module/figma/Menu.Item.figma.js +46 -0
  51. package/lib/module/figma/Menu.Item.figma.js.map +1 -0
  52. package/lib/module/figma/Menu.figma.js +23 -0
  53. package/lib/module/figma/Menu.figma.js.map +1 -0
  54. package/lib/module/providers/forge-design/provider.js +26 -12
  55. package/lib/module/providers/forge-design/provider.js.map +1 -1
  56. package/lib/module/providers/toast/insets-container.js +5 -2
  57. package/lib/module/providers/toast/insets-container.js.map +1 -1
  58. package/lib/module/providers/toast/provider.js +126 -45
  59. package/lib/module/providers/toast/provider.js.map +1 -1
  60. package/lib/module/providers/toast/toast-item-renderer.js +2 -1
  61. package/lib/module/providers/toast/toast-item-renderer.js.map +1 -1
  62. package/lib/typescript/components/Menu/index.d.ts +119 -0
  63. package/lib/typescript/components/Menu/index.d.ts.map +1 -0
  64. package/lib/typescript/components/Menu/styles.d.ts +24 -0
  65. package/lib/typescript/components/Menu/styles.d.ts.map +1 -0
  66. package/lib/typescript/components/Select/index.d.ts.map +1 -1
  67. package/lib/typescript/components/Select/styles.d.ts +0 -7
  68. package/lib/typescript/components/Select/styles.d.ts.map +1 -1
  69. package/lib/typescript/components/Slider/getSliderPopupPosition.d.ts +1 -1
  70. package/lib/typescript/components/Slider/getSliderPopupPosition.d.ts.map +1 -1
  71. package/lib/typescript/components/Slider/index.d.ts.map +1 -1
  72. package/lib/typescript/components/Toast/types.d.ts +2 -2
  73. package/lib/typescript/components/Toast/types.d.ts.map +1 -1
  74. package/lib/typescript/components/index.d.ts +1 -0
  75. package/lib/typescript/components/index.d.ts.map +1 -1
  76. package/lib/typescript/components/picker/surfaces.d.ts.map +1 -1
  77. package/lib/typescript/figma/Menu.Item.figma.d.ts +8 -0
  78. package/lib/typescript/figma/Menu.Item.figma.d.ts.map +1 -0
  79. package/lib/typescript/figma/Menu.figma.d.ts +8 -0
  80. package/lib/typescript/figma/Menu.figma.d.ts.map +1 -0
  81. package/lib/typescript/providers/forge-design/provider.d.ts.map +1 -1
  82. package/lib/typescript/providers/toast/insets-container.d.ts.map +1 -1
  83. package/lib/typescript/providers/toast/lifecycle.context.d.ts +2 -2
  84. package/lib/typescript/providers/toast/lifecycle.context.d.ts.map +1 -1
  85. package/lib/typescript/providers/toast/provider.d.ts.map +1 -1
  86. package/lib/typescript/providers/toast/toast-item-renderer.d.ts.map +1 -1
  87. package/lib/typescript/providers/toast/types.d.ts +22 -8
  88. package/lib/typescript/providers/toast/types.d.ts.map +1 -1
  89. package/package.json +5 -5
  90. package/src/components/Menu/index.tsx +654 -0
  91. package/src/components/Menu/styles.ts +153 -0
  92. package/src/components/Select/index.tsx +58 -23
  93. package/src/components/Select/styles.ts +0 -59
  94. package/src/components/Slider/getSliderPopupPosition.ts +19 -7
  95. package/src/components/Slider/index.tsx +25 -9
  96. package/src/components/Toast/index.tsx +1 -1
  97. package/src/components/Toast/types.ts +2 -2
  98. package/src/components/index.ts +1 -0
  99. package/src/components/picker/surfaces.tsx +13 -9
  100. package/src/providers/forge-design/provider.tsx +35 -16
  101. package/src/providers/toast/insets-container.tsx +3 -2
  102. package/src/providers/toast/lifecycle.context.tsx +2 -2
  103. package/src/providers/toast/provider.tsx +150 -51
  104. package/src/providers/toast/toast-item-renderer.tsx +5 -1
  105. package/src/providers/toast/types.ts +22 -8
@@ -0,0 +1,495 @@
1
+ "use strict";
2
+
3
+ import { forwardRef, useMemo } from 'react';
4
+ import { Platform, ScrollView, Text, View } from 'react-native';
5
+ import { Check } from '@cdx-ui/icons';
6
+ import { MenuCheckboxItem as MenuCheckboxItemPrimitive, MenuItem as MenuItemPrimitive, MenuOverlayRoot as MenuOverlayRootPrimitive, MenuPopup as MenuPopupPrimitive, MenuRadioGroup as MenuRadioGroupPrimitive, MenuRadioItem as MenuRadioItemPrimitive, MenuRoot as MenuRootPrimitive, MenuTrigger as MenuTriggerPrimitive, Slot, dataAttributes, mergeDataAttributes, useOptionalMenuItemContext, useOptionalMenuPopupContext } from '@cdx-ui/primitives';
7
+ import { cn, ParentContext, useParentContext, useStyleContext } from '@cdx-ui/utils';
8
+ import { Icon } from '../Icon';
9
+ import { positionToDataIcon } from '../../utils/positionToDataIcon';
10
+ import { menuItemIconVariants, menuItemLabelVariants, menuItemIndicatorVariants, menuItemShortcutVariants, menuItemVariants, menuRootVariants, menuSectionLabelVariants, menuSeparatorLineVariants, menuSeparatorVariants } from './styles';
11
+ import { jsx as _jsx } from "react/jsx-runtime";
12
+ const SCOPE = 'MENU';
13
+ const MENU_MAX_HEIGHT = 240;
14
+ const useMenuStyleContext = () => {
15
+ const ctx = useStyleContext(SCOPE);
16
+ return {
17
+ size: ctx?.size ?? 'default',
18
+ color: ctx?.color ?? 'neutral'
19
+ };
20
+ };
21
+ const useMenuItemStyleValue = (sizeProp, color) => {
22
+ const {
23
+ size: contextSize
24
+ } = useMenuStyleContext();
25
+ const parent = useParentContext();
26
+ const size = sizeProp ?? contextSize ?? 'default';
27
+ const contextValue = useMemo(() => ({
28
+ ...parent,
29
+ [SCOPE]: {
30
+ size,
31
+ color
32
+ }
33
+ }), [parent, size, color]);
34
+ return {
35
+ contextValue,
36
+ size
37
+ };
38
+ };
39
+
40
+ // =============================================================================
41
+ // OVERLAY ROOT
42
+ // =============================================================================
43
+
44
+ const MenuOverlayRoot = /*#__PURE__*/forwardRef(({
45
+ className,
46
+ style,
47
+ children,
48
+ ...props
49
+ }, ref) => /*#__PURE__*/_jsx(MenuOverlayRootPrimitive, {
50
+ ref: ref,
51
+ className: className,
52
+ style: style,
53
+ ...props,
54
+ ...mergeDataAttributes(props, dataAttributes({
55
+ slot: 'menu-root'
56
+ })),
57
+ children: children
58
+ }));
59
+ MenuOverlayRoot.displayName = 'Menu';
60
+
61
+ // =============================================================================
62
+ // TRIGGER
63
+ // =============================================================================
64
+
65
+ const MenuTrigger = /*#__PURE__*/forwardRef(({
66
+ className,
67
+ style,
68
+ children,
69
+ ...props
70
+ }, ref) => /*#__PURE__*/_jsx(MenuTriggerPrimitive, {
71
+ ref: ref,
72
+ className: className,
73
+ style: style,
74
+ ...props,
75
+ ...mergeDataAttributes(props, dataAttributes({
76
+ slot: 'menu-trigger'
77
+ })),
78
+ children: children
79
+ }));
80
+ MenuTrigger.displayName = 'Menu.Trigger';
81
+
82
+ // =============================================================================
83
+ // POPUP
84
+ // =============================================================================
85
+
86
+ const MenuPopup = /*#__PURE__*/forwardRef(({
87
+ className,
88
+ style,
89
+ children,
90
+ ...props
91
+ }, ref) => /*#__PURE__*/_jsx(MenuPopupPrimitive, {
92
+ ref: ref,
93
+ className: cn('min-w-48', Platform.select({
94
+ web: 'w-max max-w-full',
95
+ default: 'self-start'
96
+ }), className),
97
+ style: style,
98
+ ...props,
99
+ ...mergeDataAttributes(props, dataAttributes({
100
+ slot: 'menu-popup'
101
+ })),
102
+ children: children
103
+ }));
104
+ MenuPopup.displayName = 'Menu.Popup';
105
+
106
+ // =============================================================================
107
+ // CONTENT (menu list surface)
108
+ // =============================================================================
109
+
110
+ const MenuContent = /*#__PURE__*/forwardRef(({
111
+ scrollable = false,
112
+ asSurface = false,
113
+ className,
114
+ style,
115
+ children,
116
+ ...props
117
+ }, ref) => {
118
+ const parent = useParentContext();
119
+ const popup = useOptionalMenuPopupContext();
120
+ const ctx = useMemo(() => ({
121
+ ...parent,
122
+ [SCOPE]: {
123
+ size: 'default'
124
+ }
125
+ }), [parent]);
126
+ const shouldScroll = scrollable || popup !== null;
127
+ const constrainedStyle = popup === null ? undefined : {
128
+ flexShrink: 1,
129
+ maxHeight: popup.availableHeight === undefined ? undefined : Math.min(MENU_MAX_HEIGHT, popup.availableHeight),
130
+ maxWidth: popup.availableWidth
131
+ };
132
+ const computedClassName = cn(menuRootVariants({
133
+ scrollable: shouldScroll
134
+ }), className);
135
+ const content = shouldScroll ? /*#__PURE__*/_jsx(ScrollView, {
136
+ className: "shrink",
137
+ style: constrainedStyle,
138
+ scrollEventThrottle: 16,
139
+ nestedScrollEnabled: true,
140
+ children: children
141
+ }) : children;
142
+ return /*#__PURE__*/_jsx(ParentContext.Provider, {
143
+ value: ctx,
144
+ children: /*#__PURE__*/_jsx(MenuRootPrimitive, {
145
+ ref: ref,
146
+ scrollable: shouldScroll,
147
+ asSurface: asSurface,
148
+ className: computedClassName,
149
+ style: [style, constrainedStyle],
150
+ ...props,
151
+ ...mergeDataAttributes(props, dataAttributes({
152
+ slot: 'menu-content'
153
+ })),
154
+ children: content
155
+ })
156
+ });
157
+ });
158
+ MenuContent.displayName = 'Menu.Content';
159
+
160
+ // =============================================================================
161
+ // ITEM
162
+ // =============================================================================
163
+
164
+ const MenuItem = /*#__PURE__*/forwardRef(({
165
+ asChild,
166
+ color = 'neutral',
167
+ inset = false,
168
+ size: sizeProp,
169
+ className,
170
+ style,
171
+ children,
172
+ ...props
173
+ }, ref) => {
174
+ const {
175
+ contextValue,
176
+ size
177
+ } = useMenuItemStyleValue(sizeProp, color);
178
+ const computedClassName = cn(menuItemVariants({
179
+ color,
180
+ inset,
181
+ size
182
+ }), className);
183
+ return /*#__PURE__*/_jsx(ParentContext.Provider, {
184
+ value: contextValue,
185
+ children: /*#__PURE__*/_jsx(MenuItemPrimitive, {
186
+ ref: ref,
187
+ asChild: asChild,
188
+ className: computedClassName,
189
+ style: style,
190
+ ...props,
191
+ ...mergeDataAttributes(props, dataAttributes({
192
+ slot: 'menu-item'
193
+ })),
194
+ children: children
195
+ })
196
+ });
197
+ });
198
+ MenuItem.displayName = 'Menu.Item';
199
+ const MenuCheckboxItem = /*#__PURE__*/forwardRef(({
200
+ asChild,
201
+ color = 'neutral',
202
+ inset = false,
203
+ size: sizeProp,
204
+ className,
205
+ style,
206
+ children,
207
+ ...props
208
+ }, ref) => {
209
+ const {
210
+ contextValue,
211
+ size
212
+ } = useMenuItemStyleValue(sizeProp, color);
213
+ return /*#__PURE__*/_jsx(ParentContext.Provider, {
214
+ value: contextValue,
215
+ children: /*#__PURE__*/_jsx(MenuCheckboxItemPrimitive, {
216
+ ref: ref,
217
+ asChild: asChild,
218
+ className: cn(menuItemVariants({
219
+ color,
220
+ inset,
221
+ size
222
+ }), className),
223
+ style: style,
224
+ ...props,
225
+ ...mergeDataAttributes(props, dataAttributes({
226
+ slot: 'menu-checkbox-item'
227
+ })),
228
+ children: children
229
+ })
230
+ });
231
+ });
232
+ MenuCheckboxItem.displayName = 'Menu.CheckboxItem';
233
+ const MenuRadioGroup = /*#__PURE__*/forwardRef(({
234
+ asChild,
235
+ className,
236
+ style,
237
+ children,
238
+ ...props
239
+ }, ref) => /*#__PURE__*/_jsx(MenuRadioGroupPrimitive, {
240
+ ref: ref,
241
+ asChild: asChild,
242
+ className: className,
243
+ style: style,
244
+ ...props,
245
+ ...mergeDataAttributes(props, dataAttributes({
246
+ slot: 'menu-radio-group'
247
+ })),
248
+ children: children
249
+ }));
250
+ MenuRadioGroup.displayName = 'Menu.RadioGroup';
251
+ const MenuRadioItem = /*#__PURE__*/forwardRef(({
252
+ asChild,
253
+ color = 'neutral',
254
+ inset = false,
255
+ size: sizeProp,
256
+ className,
257
+ style,
258
+ children,
259
+ ...props
260
+ }, ref) => {
261
+ const {
262
+ contextValue,
263
+ size
264
+ } = useMenuItemStyleValue(sizeProp, color);
265
+ return /*#__PURE__*/_jsx(ParentContext.Provider, {
266
+ value: contextValue,
267
+ children: /*#__PURE__*/_jsx(MenuRadioItemPrimitive, {
268
+ ref: ref,
269
+ asChild: asChild,
270
+ className: cn(menuItemVariants({
271
+ color,
272
+ inset,
273
+ size
274
+ }), className),
275
+ style: style,
276
+ ...props,
277
+ ...mergeDataAttributes(props, dataAttributes({
278
+ slot: 'menu-radio-item'
279
+ })),
280
+ children: children
281
+ })
282
+ });
283
+ });
284
+ MenuRadioItem.displayName = 'Menu.RadioItem';
285
+
286
+ // =============================================================================
287
+ // ITEM SLOTS
288
+ // =============================================================================
289
+
290
+ const MenuItemLabel = /*#__PURE__*/forwardRef(({
291
+ asChild,
292
+ className,
293
+ style,
294
+ children,
295
+ isChecked: checkedProp,
296
+ size,
297
+ ...props
298
+ }, ref) => {
299
+ const {
300
+ color
301
+ } = useMenuStyleContext();
302
+ const menuItemCtx = useOptionalMenuItemContext();
303
+ const checked = checkedProp ?? menuItemCtx?.checked ?? false;
304
+ const Comp = asChild ? Slot : Text;
305
+ return /*#__PURE__*/_jsx(Comp, {
306
+ ref: ref,
307
+ className: cn(menuItemLabelVariants({
308
+ size,
309
+ color
310
+ }), checked ? 'font-medium' : undefined, className),
311
+ style: style,
312
+ ...props,
313
+ ...mergeDataAttributes(dataAttributes({
314
+ slot: 'menu-item-label',
315
+ state: checked ? 'checked' : 'unchecked'
316
+ }), props),
317
+ children: children
318
+ });
319
+ });
320
+ MenuItemLabel.displayName = 'Menu.ItemLabel';
321
+ const MenuItemIcon = ({
322
+ asChild,
323
+ as,
324
+ position = 'leading',
325
+ className,
326
+ style,
327
+ children,
328
+ ...props
329
+ }) => {
330
+ const {
331
+ color
332
+ } = useMenuStyleContext();
333
+ const computedClassName = cn(menuItemIconVariants({
334
+ color
335
+ }), className);
336
+ const slotData = mergeDataAttributes(props, dataAttributes({
337
+ slot: 'menu-item-icon'
338
+ }), positionToDataIcon(position));
339
+ if (asChild) {
340
+ return /*#__PURE__*/_jsx(Slot, {
341
+ className: computedClassName,
342
+ style: style,
343
+ accessibilityElementsHidden: true,
344
+ "aria-hidden": true,
345
+ ...props,
346
+ ...slotData,
347
+ children: children
348
+ });
349
+ }
350
+ if (!as) {
351
+ return null;
352
+ }
353
+ return /*#__PURE__*/_jsx(Icon, {
354
+ as: as,
355
+ className: computedClassName,
356
+ style: style,
357
+ accessibilityElementsHidden: true,
358
+ "aria-hidden": true,
359
+ ...props,
360
+ ...slotData
361
+ });
362
+ };
363
+ MenuItemIcon.displayName = 'Menu.ItemIcon';
364
+ const MenuItemShortcut = /*#__PURE__*/forwardRef(({
365
+ asChild,
366
+ className,
367
+ style,
368
+ children,
369
+ ...props
370
+ }, ref) => {
371
+ const Comp = asChild ? Slot : Text;
372
+ return /*#__PURE__*/_jsx(Comp, {
373
+ ref: ref,
374
+ className: cn(menuItemShortcutVariants(), className),
375
+ style: style,
376
+ accessibilityElementsHidden: true,
377
+ "aria-hidden": true,
378
+ ...props,
379
+ ...mergeDataAttributes(props, dataAttributes({
380
+ slot: 'menu-item-shortcut'
381
+ })),
382
+ children: children
383
+ });
384
+ });
385
+ MenuItemShortcut.displayName = 'Menu.ItemShortcut';
386
+ const MenuItemIndicator = ({
387
+ asChild,
388
+ as = Check,
389
+ isChecked: checkedProp,
390
+ position = 'trailing',
391
+ className,
392
+ style,
393
+ children,
394
+ ...props
395
+ }) => {
396
+ const menuItemContext = useOptionalMenuItemContext();
397
+ const checked = checkedProp ?? menuItemContext?.checked ?? false;
398
+ if (!checked) {
399
+ return null;
400
+ }
401
+ const computedClassName = cn(menuItemIndicatorVariants(), className);
402
+ const slotData = mergeDataAttributes(props, dataAttributes({
403
+ slot: 'menu-item-indicator'
404
+ }), positionToDataIcon(position));
405
+ if (asChild) {
406
+ return /*#__PURE__*/_jsx(Slot, {
407
+ className: computedClassName,
408
+ style: style,
409
+ accessibilityElementsHidden: true,
410
+ "aria-hidden": true,
411
+ ...props,
412
+ ...slotData,
413
+ children: children
414
+ });
415
+ }
416
+ return /*#__PURE__*/_jsx(Icon, {
417
+ as: as,
418
+ className: computedClassName,
419
+ style: style,
420
+ accessibilityElementsHidden: true,
421
+ "aria-hidden": true,
422
+ ...props,
423
+ ...slotData
424
+ });
425
+ };
426
+ MenuItemIndicator.displayName = 'Menu.ItemIndicator';
427
+
428
+ // =============================================================================
429
+ // NON-INTERACTIVE SLOTS
430
+ // =============================================================================
431
+
432
+ const MenuSectionLabel = /*#__PURE__*/forwardRef(({
433
+ asChild,
434
+ className,
435
+ style,
436
+ children,
437
+ ...props
438
+ }, ref) => {
439
+ const Comp = asChild ? Slot : Text;
440
+ return /*#__PURE__*/_jsx(Comp, {
441
+ ref: ref,
442
+ className: cn(menuSectionLabelVariants(), className),
443
+ style: style,
444
+ accessibilityRole: "header",
445
+ ...props,
446
+ ...mergeDataAttributes(props, dataAttributes({
447
+ slot: 'menu-section-label'
448
+ })),
449
+ children: children
450
+ });
451
+ });
452
+ MenuSectionLabel.displayName = 'Menu.SectionLabel';
453
+ const MenuSeparator = /*#__PURE__*/forwardRef(({
454
+ className,
455
+ style,
456
+ ...props
457
+ }, ref) => {
458
+ return /*#__PURE__*/_jsx(View, {
459
+ ref: ref,
460
+ className: cn(menuSeparatorVariants(), className),
461
+ style: style,
462
+ accessibilityElementsHidden: true,
463
+ importantForAccessibility: "no-hide-descendants",
464
+ "aria-hidden": true,
465
+ ...props,
466
+ ...mergeDataAttributes(props, dataAttributes({
467
+ slot: 'menu-separator'
468
+ })),
469
+ children: /*#__PURE__*/_jsx(View, {
470
+ className: menuSeparatorLineVariants()
471
+ })
472
+ });
473
+ });
474
+ MenuSeparator.displayName = 'Menu.Separator';
475
+
476
+ // =============================================================================
477
+ // COMPOUND EXPORT
478
+ // =============================================================================
479
+
480
+ export const Menu = Object.assign(MenuOverlayRoot, {
481
+ Trigger: MenuTrigger,
482
+ Popup: MenuPopup,
483
+ Content: MenuContent,
484
+ Item: MenuItem,
485
+ CheckboxItem: MenuCheckboxItem,
486
+ RadioGroup: MenuRadioGroup,
487
+ RadioItem: MenuRadioItem,
488
+ ItemLabel: MenuItemLabel,
489
+ ItemIcon: MenuItemIcon,
490
+ ItemShortcut: MenuItemShortcut,
491
+ ItemIndicator: MenuItemIndicator,
492
+ SectionLabel: MenuSectionLabel,
493
+ Separator: MenuSeparator
494
+ });
495
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["forwardRef","useMemo","Platform","ScrollView","Text","View","Check","MenuCheckboxItem","MenuCheckboxItemPrimitive","MenuItem","MenuItemPrimitive","MenuOverlayRoot","MenuOverlayRootPrimitive","MenuPopup","MenuPopupPrimitive","MenuRadioGroup","MenuRadioGroupPrimitive","MenuRadioItem","MenuRadioItemPrimitive","MenuRoot","MenuRootPrimitive","MenuTrigger","MenuTriggerPrimitive","Slot","dataAttributes","mergeDataAttributes","useOptionalMenuItemContext","useOptionalMenuPopupContext","cn","ParentContext","useParentContext","useStyleContext","Icon","positionToDataIcon","menuItemIconVariants","menuItemLabelVariants","menuItemIndicatorVariants","menuItemShortcutVariants","menuItemVariants","menuRootVariants","menuSectionLabelVariants","menuSeparatorLineVariants","menuSeparatorVariants","jsx","_jsx","SCOPE","MENU_MAX_HEIGHT","useMenuStyleContext","ctx","size","color","useMenuItemStyleValue","sizeProp","contextSize","parent","contextValue","className","style","children","props","ref","slot","displayName","select","web","default","MenuContent","scrollable","asSurface","popup","shouldScroll","constrainedStyle","undefined","flexShrink","maxHeight","availableHeight","Math","min","maxWidth","availableWidth","computedClassName","content","scrollEventThrottle","nestedScrollEnabled","Provider","value","asChild","inset","MenuItemLabel","isChecked","checkedProp","menuItemCtx","checked","Comp","state","MenuItemIcon","as","position","slotData","accessibilityElementsHidden","MenuItemShortcut","MenuItemIndicator","menuItemContext","MenuSectionLabel","accessibilityRole","MenuSeparator","importantForAccessibility","Menu","Object","assign","Trigger","Popup","Content","Item","CheckboxItem","RadioGroup","RadioItem","ItemLabel","ItemIcon","ItemShortcut","ItemIndicator","SectionLabel","Separator"],"sourceRoot":"../../../../src","sources":["components/Menu/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+
3
+ import { Platform } from 'react-native';
4
+ import { cva } from '@cdx-ui/utils';
5
+ import { DISABLED_CURSOR, TRANSITION_COLORS } from '../../styles/constants';
6
+ export const menuRootVariants = cva(['bg-surface-primary', 'border border-stroke-secondary', 'overflow-hidden', 'rounded-xl', 'p-1', 'shadow-lg', 'web:outline-none'], {
7
+ variants: {
8
+ scrollable: {
9
+ true: 'max-h-60 shrink',
10
+ false: ''
11
+ }
12
+ },
13
+ defaultVariants: {
14
+ scrollable: false
15
+ }
16
+ });
17
+ export const menuItemVariants = cva(['flex-row items-center gap-2', 'min-h-9', 'rounded-lg', TRANSITION_COLORS, 'data-[disabled=true]:opacity-50 data-[disabled=true]:pointer-events-none', DISABLED_CURSOR, 'data-[state=checked]:bg-surface-action-tint data-[state=checked]:font-medium', Platform.select({
18
+ default: 'data-[active=true]:bg-surface-action-tint-active',
19
+ web: 'data-[hover=true]:bg-surface-action-tint-hover data-[active=true]:data-[hover=true]:bg-surface-action-tint-active data-[highlighted=true]:bg-surface-action-tint-hover'
20
+ })], {
21
+ variants: {
22
+ color: {
23
+ neutral: 'text-content-primary',
24
+ danger: 'text-content-danger data-[hover=true]:bg-surface-danger-tint-hover data-[highlighted=true]:bg-surface-danger-tint-hover'
25
+ },
26
+ inset: {
27
+ true: '',
28
+ false: ''
29
+ },
30
+ size: {
31
+ default: 'px-3 py-2',
32
+ small: 'px-2.5 py-1.5'
33
+ }
34
+ },
35
+ compoundVariants: [{
36
+ inset: true,
37
+ size: 'default',
38
+ class: 'ps-8 pe-3 py-2'
39
+ }, {
40
+ inset: true,
41
+ size: 'small',
42
+ class: 'ps-8 pe-2.5 py-1.5'
43
+ }, {
44
+ inset: false,
45
+ size: 'default',
46
+ class: 'px-3 py-2'
47
+ }, {
48
+ inset: false,
49
+ size: 'small',
50
+ class: 'px-2.5 py-1.5'
51
+ }],
52
+ defaultVariants: {
53
+ color: 'neutral',
54
+ inset: false,
55
+ size: 'default'
56
+ }
57
+ });
58
+ export const menuItemLabelVariants = cva(['text-start', Platform.select({
59
+ default: 'shrink-0',
60
+ web: 'min-w-0 flex-1'
61
+ })], {
62
+ variants: {
63
+ size: {
64
+ default: 'text-[0.875rem]',
65
+ small: 'text-[0.75rem]'
66
+ },
67
+ color: {
68
+ neutral: 'text-content-primary',
69
+ danger: 'text-content-danger'
70
+ }
71
+ },
72
+ defaultVariants: {
73
+ size: 'default',
74
+ color: 'neutral'
75
+ }
76
+ });
77
+ export const menuItemIconVariants = cva(['shrink-0', 'size-5'], {
78
+ variants: {
79
+ color: {
80
+ neutral: 'text-content-secondary',
81
+ danger: 'text-content-danger'
82
+ }
83
+ },
84
+ defaultVariants: {
85
+ color: 'neutral'
86
+ }
87
+ });
88
+ export const menuItemShortcutVariants = cva(['shrink-0 text-content-tertiary', 'text-[0.75rem]', 'ms-auto']);
89
+ export const menuItemIndicatorVariants = cva(['shrink-0 data-[icon=inline-end]:ms-auto', 'text-content-action', 'size-5']);
90
+ export const menuSectionLabelVariants = cva(['px-3 py-1.5', 'text-[0.75rem] font-medium', 'text-content-tertiary']);
91
+ export const menuSeparatorVariants = cva([
92
+ // Bleed past menu `p-1` inset so the line spans the full panel width (Figma: px-[-4px]).
93
+ // Omit `w-full`: percentage width ignores the negative margins and leaves a right-side gap.
94
+ 'self-stretch py-1 -mx-1']);
95
+ export const menuSeparatorLineVariants = cva(['h-px w-full bg-stroke-secondary']);
96
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform","cva","DISABLED_CURSOR","TRANSITION_COLORS","menuRootVariants","variants","scrollable","true","false","defaultVariants","menuItemVariants","select","default","web","color","neutral","danger","inset","size","small","compoundVariants","class","menuItemLabelVariants","menuItemIconVariants","menuItemShortcutVariants","menuItemIndicatorVariants","menuSectionLabelVariants","menuSeparatorVariants","menuSeparatorLineVariants"],"sourceRoot":"../../../../src","sources":["components/Menu/styles.ts"],"mappings":"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","ignoreList":[]}