@react-native-reusables/cli 0.0.18 → 0.1.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.
Files changed (136) hide show
  1. package/README.md +2 -37
  2. package/__generated/components/ui/accordion.tsx +1 -1
  3. package/__generated/components/ui/alert-dialog.tsx +2 -3
  4. package/__generated/components/ui/aspect-ratio.tsx +1 -1
  5. package/__generated/components/ui/avatar.tsx +17 -13
  6. package/__generated/components/ui/badge.tsx +2 -2
  7. package/__generated/components/ui/card.tsx +1 -1
  8. package/__generated/components/ui/checkbox.tsx +2 -3
  9. package/__generated/components/ui/collapsible.tsx +1 -1
  10. package/__generated/components/ui/context-menu.tsx +3 -11
  11. package/__generated/components/ui/dialog.tsx +2 -3
  12. package/__generated/components/ui/dropdown-menu.tsx +1 -1
  13. package/__generated/components/ui/hover-card.tsx +1 -1
  14. package/__generated/components/ui/label.tsx +1 -1
  15. package/__generated/components/ui/menubar.tsx +1 -1
  16. package/__generated/components/ui/navigation-menu.tsx +6 -4
  17. package/__generated/components/ui/popover.tsx +1 -1
  18. package/__generated/components/ui/progress.tsx +14 -10
  19. package/__generated/components/ui/radio-group.tsx +1 -1
  20. package/__generated/components/ui/select.tsx +13 -12
  21. package/__generated/components/ui/separator.tsx +1 -1
  22. package/__generated/components/ui/switch.tsx +1 -2
  23. package/__generated/components/ui/table.tsx +1 -1
  24. package/__generated/components/ui/tabs.tsx +1 -1
  25. package/__generated/components/ui/text.tsx +2 -2
  26. package/__generated/components/ui/toggle-group.tsx +1 -1
  27. package/__generated/components/ui/toggle.tsx +1 -1
  28. package/__generated/components/ui/tooltip.tsx +1 -2
  29. package/__generated/components/ui/typography.tsx +2 -2
  30. package/dist/index.js +3 -3
  31. package/dist/index.js.map +1 -1
  32. package/package.json +2 -34
  33. package/__generated/components/primitives/accordion/accordion.tsx +0 -216
  34. package/__generated/components/primitives/accordion/accordion.web.tsx +0 -295
  35. package/__generated/components/primitives/accordion/index.ts +0 -1
  36. package/__generated/components/primitives/accordion/types.ts +0 -45
  37. package/__generated/components/primitives/alert-dialog/alert-dialog.tsx +0 -237
  38. package/__generated/components/primitives/alert-dialog/alert-dialog.web.tsx +0 -256
  39. package/__generated/components/primitives/alert-dialog/index.ts +0 -1
  40. package/__generated/components/primitives/alert-dialog/types.ts +0 -48
  41. package/__generated/components/primitives/aspect-ratio.tsx +0 -23
  42. package/__generated/components/primitives/avatar/index.tsx +0 -95
  43. package/__generated/components/primitives/avatar/types.ts +0 -10
  44. package/__generated/components/primitives/checkbox/checkbox.tsx +0 -101
  45. package/__generated/components/primitives/checkbox/checkbox.web.tsx +0 -114
  46. package/__generated/components/primitives/checkbox/index.ts +0 -1
  47. package/__generated/components/primitives/checkbox/types.ts +0 -11
  48. package/__generated/components/primitives/collapsible/collapsible.tsx +0 -119
  49. package/__generated/components/primitives/collapsible/collapsible.web.tsx +0 -157
  50. package/__generated/components/primitives/collapsible/index.ts +0 -1
  51. package/__generated/components/primitives/collapsible/types.ts +0 -18
  52. package/__generated/components/primitives/context-menu/context-menu.tsx +0 -648
  53. package/__generated/components/primitives/context-menu/context-menu.web.tsx +0 -533
  54. package/__generated/components/primitives/context-menu/index.ts +0 -1
  55. package/__generated/components/primitives/context-menu/types.ts +0 -90
  56. package/__generated/components/primitives/dialog/dialog.tsx +0 -211
  57. package/__generated/components/primitives/dialog/dialog.web.tsx +0 -197
  58. package/__generated/components/primitives/dialog/index.ts +0 -1
  59. package/__generated/components/primitives/dialog/types.ts +0 -60
  60. package/__generated/components/primitives/dropdown-menu/dropdown-menu.tsx +0 -608
  61. package/__generated/components/primitives/dropdown-menu/dropdown-menu.web.tsx +0 -550
  62. package/__generated/components/primitives/dropdown-menu/index.ts +0 -1
  63. package/__generated/components/primitives/dropdown-menu/types.ts +0 -72
  64. package/__generated/components/primitives/hooks/index.ts +0 -3
  65. package/__generated/components/primitives/hooks/useAugmentedRef.tsx +0 -29
  66. package/__generated/components/primitives/hooks/useControllableState.tsx +0 -75
  67. package/__generated/components/primitives/hooks/useRelativePosition.tsx +0 -227
  68. package/__generated/components/primitives/hover-card/hover-card.tsx +0 -279
  69. package/__generated/components/primitives/hover-card/hover-card.web.tsx +0 -150
  70. package/__generated/components/primitives/hover-card/index.ts +0 -1
  71. package/__generated/components/primitives/hover-card/types.ts +0 -51
  72. package/__generated/components/primitives/label/index.ts +0 -1
  73. package/__generated/components/primitives/label/label.tsx +0 -31
  74. package/__generated/components/primitives/label/label.web.tsx +0 -36
  75. package/__generated/components/primitives/label/types.ts +0 -15
  76. package/__generated/components/primitives/menubar/index.ts +0 -1
  77. package/__generated/components/primitives/menubar/menubar.tsx +0 -622
  78. package/__generated/components/primitives/menubar/menubar.web.tsx +0 -548
  79. package/__generated/components/primitives/menubar/types.ts +0 -77
  80. package/__generated/components/primitives/navigation-menu/index.ts +0 -1
  81. package/__generated/components/primitives/navigation-menu/navigation-menu.tsx +0 -315
  82. package/__generated/components/primitives/navigation-menu/navigation-menu.web.tsx +0 -264
  83. package/__generated/components/primitives/navigation-menu/types.ts +0 -49
  84. package/__generated/components/primitives/popover/index.ts +0 -1
  85. package/__generated/components/primitives/popover/popover.tsx +0 -290
  86. package/__generated/components/primitives/popover/popover.web.tsx +0 -191
  87. package/__generated/components/primitives/popover/types.ts +0 -24
  88. package/__generated/components/primitives/portal.tsx +0 -82
  89. package/__generated/components/primitives/progress/index.ts +0 -1
  90. package/__generated/components/primitives/progress/progress.tsx +0 -59
  91. package/__generated/components/primitives/progress/progress.web.tsx +0 -36
  92. package/__generated/components/primitives/progress/types.ts +0 -7
  93. package/__generated/components/primitives/radio-group/index.ts +0 -1
  94. package/__generated/components/primitives/radio-group/radio-group.tsx +0 -116
  95. package/__generated/components/primitives/radio-group/radio-group.web.tsx +0 -78
  96. package/__generated/components/primitives/radio-group/types.ts +0 -15
  97. package/__generated/components/primitives/select/index.ts +0 -1
  98. package/__generated/components/primitives/select/select.tsx +0 -466
  99. package/__generated/components/primitives/select/select.web.tsx +0 -332
  100. package/__generated/components/primitives/select/types.ts +0 -89
  101. package/__generated/components/primitives/separator/index.tsx +0 -23
  102. package/__generated/components/primitives/separator/types.ts +0 -6
  103. package/__generated/components/primitives/slider/index.ts +0 -1
  104. package/__generated/components/primitives/slider/slider.tsx +0 -89
  105. package/__generated/components/primitives/slider/slider.web.tsx +0 -67
  106. package/__generated/components/primitives/slider/types.ts +0 -24
  107. package/__generated/components/primitives/slot.tsx +0 -187
  108. package/__generated/components/primitives/switch/index.ts +0 -1
  109. package/__generated/components/primitives/switch/switch.tsx +0 -65
  110. package/__generated/components/primitives/switch/switch.web.tsx +0 -67
  111. package/__generated/components/primitives/switch/types.ts +0 -11
  112. package/__generated/components/primitives/table.tsx +0 -55
  113. package/__generated/components/primitives/tabs/index.ts +0 -1
  114. package/__generated/components/primitives/tabs/tabs.tsx +0 -133
  115. package/__generated/components/primitives/tabs/tabs.web.tsx +0 -97
  116. package/__generated/components/primitives/tabs/types.ts +0 -24
  117. package/__generated/components/primitives/toast/index.tsx +0 -128
  118. package/__generated/components/primitives/toast/types.ts +0 -7
  119. package/__generated/components/primitives/toggle/index.ts +0 -1
  120. package/__generated/components/primitives/toggle/toggle.tsx +0 -37
  121. package/__generated/components/primitives/toggle/toggle.web.tsx +0 -26
  122. package/__generated/components/primitives/toggle/types.ts +0 -7
  123. package/__generated/components/primitives/toggle-group/index.ts +0 -1
  124. package/__generated/components/primitives/toggle-group/toggle-group.tsx +0 -125
  125. package/__generated/components/primitives/toggle-group/toggle-group.web.tsx +0 -124
  126. package/__generated/components/primitives/toggle-group/types.ts +0 -37
  127. package/__generated/components/primitives/toolbar/index.ts +0 -1
  128. package/__generated/components/primitives/toolbar/toolbar.tsx +0 -125
  129. package/__generated/components/primitives/toolbar/toolbar.web.tsx +0 -129
  130. package/__generated/components/primitives/toolbar/types.ts +0 -39
  131. package/__generated/components/primitives/tooltip/index.ts +0 -1
  132. package/__generated/components/primitives/tooltip/tooltip.tsx +0 -277
  133. package/__generated/components/primitives/tooltip/tooltip.web.tsx +0 -181
  134. package/__generated/components/primitives/tooltip/types.ts +0 -42
  135. package/__generated/components/primitives/types.ts +0 -105
  136. package/__generated/components/primitives/utils.ts +0 -61
@@ -1,150 +0,0 @@
1
- import * as HoverCard from '@radix-ui/react-hover-card';
2
- import { useAugmentedRef } from '@rnr/hooks';
3
- import * as Slot from '@rnr/slot';
4
- import type {
5
- PositionedContentProps,
6
- PressableRef,
7
- SlottablePressableProps,
8
- SlottableViewProps,
9
- ViewRef,
10
- } from '@rnr/types';
11
- import * as React from 'react';
12
- import { Pressable, View } from 'react-native';
13
- import type {
14
- HoverCardOverlayProps,
15
- HoverCardPortalProps,
16
- HoverCardRootProps,
17
- HoverCardTriggerRef,
18
- RootContext,
19
- } from './types';
20
-
21
- const HoverCardContext = React.createContext<RootContext | null>(null);
22
-
23
- const Root = React.forwardRef<ViewRef, SlottableViewProps & HoverCardRootProps>(
24
- ({ asChild, openDelay, closeDelay, onOpenChange: onOpenChangeProp, ...viewProps }, ref) => {
25
- const [open, setOpen] = React.useState(false);
26
-
27
- function onOpenChange(value: boolean) {
28
- setOpen(value);
29
- onOpenChangeProp?.(value);
30
- }
31
- const Component = asChild ? Slot.View : View;
32
- return (
33
- <HoverCardContext.Provider value={{ open, onOpenChange }}>
34
- <HoverCard.Root
35
- open={open}
36
- onOpenChange={onOpenChange}
37
- openDelay={openDelay}
38
- closeDelay={closeDelay}
39
- >
40
- <Component ref={ref} {...viewProps} />
41
- </HoverCard.Root>
42
- </HoverCardContext.Provider>
43
- );
44
- }
45
- );
46
-
47
- Root.displayName = 'RootWebHoverCard';
48
-
49
- function useRootContext() {
50
- const context = React.useContext(HoverCardContext);
51
- if (!context) {
52
- throw new Error(
53
- 'HoverCard compound components cannot be rendered outside the HoverCard component'
54
- );
55
- }
56
- return context;
57
- }
58
-
59
- const Trigger = React.forwardRef<HoverCardTriggerRef, SlottablePressableProps>(
60
- ({ asChild, ...props }, ref) => {
61
- const { onOpenChange } = useRootContext();
62
- const augmentedRef = useAugmentedRef({
63
- ref,
64
- methods: {
65
- open() {
66
- onOpenChange(true);
67
- },
68
- close() {
69
- onOpenChange(false);
70
- },
71
- },
72
- });
73
-
74
- const Component = asChild ? Slot.Pressable : Pressable;
75
- return (
76
- <HoverCard.Trigger asChild>
77
- <Component ref={augmentedRef} {...props} />
78
- </HoverCard.Trigger>
79
- );
80
- }
81
- );
82
-
83
- Trigger.displayName = 'TriggerWebHoverCard';
84
-
85
- function Portal({ forceMount, container, children }: HoverCardPortalProps) {
86
- return <HoverCard.Portal forceMount={forceMount} container={container} children={children} />;
87
- }
88
-
89
- const Overlay = React.forwardRef<PressableRef, SlottablePressableProps & HoverCardOverlayProps>(
90
- ({ asChild, ...props }, ref) => {
91
- const Component = asChild ? Slot.Pressable : Pressable;
92
- return <Component ref={ref} {...props} />;
93
- }
94
- );
95
-
96
- Overlay.displayName = 'OverlayWebHoverCard';
97
-
98
- const Content = React.forwardRef<PressableRef, SlottablePressableProps & PositionedContentProps>(
99
- (
100
- {
101
- asChild = false,
102
- forceMount,
103
- align,
104
- side,
105
- sideOffset,
106
- alignOffset = 0,
107
- avoidCollisions = true,
108
- insets,
109
- loop: _loop,
110
- onCloseAutoFocus: _onCloseAutoFocus,
111
- onEscapeKeyDown,
112
- onPointerDownOutside,
113
- onFocusOutside,
114
- onInteractOutside,
115
- collisionBoundary,
116
- sticky,
117
- hideWhenDetached,
118
- ...props
119
- },
120
- ref
121
- ) => {
122
- const Component = asChild ? Slot.Pressable : Pressable;
123
- return (
124
- <HoverCard.Content
125
- forceMount={forceMount}
126
- alignOffset={alignOffset}
127
- avoidCollisions={avoidCollisions}
128
- collisionPadding={insets}
129
- onEscapeKeyDown={onEscapeKeyDown}
130
- onPointerDownOutside={onPointerDownOutside}
131
- onFocusOutside={onFocusOutside}
132
- onInteractOutside={onInteractOutside}
133
- collisionBoundary={collisionBoundary}
134
- sticky={sticky}
135
- hideWhenDetached={hideWhenDetached}
136
- align={align}
137
- side={side}
138
- sideOffset={sideOffset}
139
- >
140
- <Component ref={ref} {...props} />
141
- </HoverCard.Content>
142
- );
143
- }
144
- );
145
-
146
- Content.displayName = 'ContentWebHoverCard';
147
-
148
- export { Content, Overlay, Portal, Root, Trigger, useRootContext };
149
-
150
- export type { HoverCardTriggerRef };
@@ -1 +0,0 @@
1
- export * from './hover-card';
@@ -1,51 +0,0 @@
1
- import type { ForceMountable, PressableRef } from '@rnr/types';
2
-
3
- interface RootContext {
4
- open: boolean;
5
- onOpenChange: (value: boolean) => void;
6
- openDelay?: number;
7
- closeDelay?: number;
8
- }
9
-
10
- interface HoverCardRootProps {
11
- onOpenChange?: (open: boolean) => void;
12
- /**
13
- * Platform: WEB ONLY
14
- * @default 700
15
- */
16
- openDelay?: number;
17
- /**
18
- * Platform: WEB ONLY
19
- * @default 300
20
- */
21
- closeDelay?: number;
22
- }
23
-
24
- interface HoverCardPortalProps extends ForceMountable {
25
- children: React.ReactNode;
26
- /**
27
- * Platform: NATIVE ONLY
28
- */
29
- hostName?: string;
30
- /**
31
- * Platform: WEB ONLY
32
- */
33
- container?: HTMLElement | null | undefined;
34
- }
35
-
36
- interface HoverCardOverlayProps extends ForceMountable {
37
- closeOnPress?: boolean;
38
- }
39
-
40
- interface HoverCardTriggerRef extends PressableRef {
41
- open: () => void;
42
- close: () => void;
43
- }
44
-
45
- export type {
46
- HoverCardOverlayProps,
47
- HoverCardPortalProps,
48
- HoverCardRootProps,
49
- HoverCardTriggerRef,
50
- RootContext,
51
- };
@@ -1 +0,0 @@
1
- export * from './label';
@@ -1,31 +0,0 @@
1
- import * as Slot from '@rnr/slot';
2
- import type {
3
- PressableRef,
4
- SlottablePressableProps,
5
- SlottableTextProps,
6
- TextRef,
7
- } from '@rnr/types';
8
- import * as React from 'react';
9
- import { Pressable, Text as RNText } from 'react-native';
10
- import type { LabelRootProps, LabelTextProps } from './types';
11
-
12
- const Root = React.forwardRef<
13
- PressableRef,
14
- Omit<SlottablePressableProps, 'children' | 'hitSlop' | 'style'> & LabelRootProps
15
- >(({ asChild, ...props }, ref) => {
16
- const Component = asChild ? Slot.Pressable : Pressable;
17
- return <Component ref={ref} {...props} />;
18
- });
19
-
20
- Root.displayName = 'RootNativeLabel';
21
-
22
- const Text = React.forwardRef<TextRef, SlottableTextProps & LabelTextProps>(
23
- ({ asChild, ...props }, ref) => {
24
- const Component = asChild ? Slot.Text : RNText;
25
- return <Component ref={ref} {...props} />;
26
- }
27
- );
28
-
29
- Text.displayName = 'TextNativeLabel';
30
-
31
- export { Root, Text };
@@ -1,36 +0,0 @@
1
- import * as Label from '@radix-ui/react-label';
2
- import * as Slot from '@rnr/slot';
3
- import type {
4
- PressableRef,
5
- SlottablePressableProps,
6
- SlottableTextProps,
7
- TextRef,
8
- } from '@rnr/types';
9
- import * as React from 'react';
10
- import { Text as RNText } from 'react-native';
11
- import type { LabelRootProps, LabelTextProps } from './types';
12
-
13
- const Root = React.forwardRef<
14
- PressableRef,
15
- Omit<SlottablePressableProps, 'children' | 'hitSlop' | 'style'> & LabelRootProps
16
- >(({ asChild, ...props }, ref) => {
17
- const Component = asChild ? Slot.View : Slot.View;
18
- return <Component ref={ref} {...props} />;
19
- });
20
-
21
- Root.displayName = 'RootWebLabel';
22
-
23
- const Text = React.forwardRef<TextRef, SlottableTextProps & LabelTextProps>(
24
- ({ asChild, nativeID, ...props }, ref) => {
25
- const Component = asChild ? Slot.Text : RNText;
26
- return (
27
- <Label.Root asChild id={nativeID}>
28
- <Component ref={ref} {...props} />
29
- </Label.Root>
30
- );
31
- }
32
- );
33
-
34
- Text.displayName = 'TextWebLabel';
35
-
36
- export { Root, Text };
@@ -1,15 +0,0 @@
1
- import type { ViewStyle } from 'react-native';
2
-
3
- interface LabelRootProps {
4
- children: React.ReactNode;
5
- style?: ViewStyle;
6
- }
7
-
8
- interface LabelTextProps {
9
- /**
10
- * Equivalent to `id` so that the same value can be passed as `aria-labelledby` to the input element.
11
- */
12
- nativeID: string;
13
- }
14
-
15
- export type { LabelRootProps, LabelTextProps };
@@ -1 +0,0 @@
1
- export * from './menubar';