@tamagui/create-menu 2.0.0-1

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 (162) hide show
  1. package/LICENSE +21 -0
  2. package/dist/cjs/MenuPredefined.cjs +182 -0
  3. package/dist/cjs/MenuPredefined.js +162 -0
  4. package/dist/cjs/MenuPredefined.js.map +6 -0
  5. package/dist/cjs/MenuPredefined.native.js +185 -0
  6. package/dist/cjs/MenuPredefined.native.js.map +1 -0
  7. package/dist/cjs/createBaseMenu.cjs +927 -0
  8. package/dist/cjs/createBaseMenu.js +724 -0
  9. package/dist/cjs/createBaseMenu.js.map +6 -0
  10. package/dist/cjs/createBaseMenu.native.js +1105 -0
  11. package/dist/cjs/createBaseMenu.native.js.map +1 -0
  12. package/dist/cjs/createNativeMenu/createNativeMenu.cjs +224 -0
  13. package/dist/cjs/createNativeMenu/createNativeMenu.js +172 -0
  14. package/dist/cjs/createNativeMenu/createNativeMenu.js.map +6 -0
  15. package/dist/cjs/createNativeMenu/createNativeMenu.native.js +287 -0
  16. package/dist/cjs/createNativeMenu/createNativeMenu.native.js.map +1 -0
  17. package/dist/cjs/createNativeMenu/createNativeMenuTypes.cjs +16 -0
  18. package/dist/cjs/createNativeMenu/createNativeMenuTypes.js +14 -0
  19. package/dist/cjs/createNativeMenu/createNativeMenuTypes.js.map +6 -0
  20. package/dist/cjs/createNativeMenu/createNativeMenuTypes.native.js +19 -0
  21. package/dist/cjs/createNativeMenu/createNativeMenuTypes.native.js.map +1 -0
  22. package/dist/cjs/createNativeMenu/index.cjs +19 -0
  23. package/dist/cjs/createNativeMenu/index.js +16 -0
  24. package/dist/cjs/createNativeMenu/index.js.map +6 -0
  25. package/dist/cjs/createNativeMenu/index.native.js +22 -0
  26. package/dist/cjs/createNativeMenu/index.native.js.map +1 -0
  27. package/dist/cjs/createNativeMenu/utils.cjs +68 -0
  28. package/dist/cjs/createNativeMenu/utils.js +66 -0
  29. package/dist/cjs/createNativeMenu/utils.js.map +6 -0
  30. package/dist/cjs/createNativeMenu/utils.native.js +94 -0
  31. package/dist/cjs/createNativeMenu/utils.native.js.map +1 -0
  32. package/dist/cjs/createNativeMenu/withNativeMenu.cjs +37 -0
  33. package/dist/cjs/createNativeMenu/withNativeMenu.js +30 -0
  34. package/dist/cjs/createNativeMenu/withNativeMenu.js.map +6 -0
  35. package/dist/cjs/createNativeMenu/withNativeMenu.native.js +43 -0
  36. package/dist/cjs/createNativeMenu/withNativeMenu.native.js.map +1 -0
  37. package/dist/cjs/index.cjs +30 -0
  38. package/dist/cjs/index.js +24 -0
  39. package/dist/cjs/index.js.map +6 -0
  40. package/dist/cjs/index.native.js +33 -0
  41. package/dist/cjs/index.native.js.map +1 -0
  42. package/dist/esm/MenuPredefined.js +147 -0
  43. package/dist/esm/MenuPredefined.js.map +6 -0
  44. package/dist/esm/MenuPredefined.mjs +159 -0
  45. package/dist/esm/MenuPredefined.mjs.map +1 -0
  46. package/dist/esm/MenuPredefined.native.js +159 -0
  47. package/dist/esm/MenuPredefined.native.js.map +1 -0
  48. package/dist/esm/createBaseMenu.js +729 -0
  49. package/dist/esm/createBaseMenu.js.map +6 -0
  50. package/dist/esm/createBaseMenu.mjs +893 -0
  51. package/dist/esm/createBaseMenu.mjs.map +1 -0
  52. package/dist/esm/createBaseMenu.native.js +1068 -0
  53. package/dist/esm/createBaseMenu.native.js.map +1 -0
  54. package/dist/esm/createNativeMenu/createNativeMenu.js +150 -0
  55. package/dist/esm/createNativeMenu/createNativeMenu.js.map +6 -0
  56. package/dist/esm/createNativeMenu/createNativeMenu.mjs +190 -0
  57. package/dist/esm/createNativeMenu/createNativeMenu.mjs.map +1 -0
  58. package/dist/esm/createNativeMenu/createNativeMenu.native.js +250 -0
  59. package/dist/esm/createNativeMenu/createNativeMenu.native.js.map +1 -0
  60. package/dist/esm/createNativeMenu/createNativeMenuTypes.js +1 -0
  61. package/dist/esm/createNativeMenu/createNativeMenuTypes.js.map +6 -0
  62. package/dist/esm/createNativeMenu/createNativeMenuTypes.mjs +2 -0
  63. package/dist/esm/createNativeMenu/createNativeMenuTypes.mjs.map +1 -0
  64. package/dist/esm/createNativeMenu/createNativeMenuTypes.native.js +2 -0
  65. package/dist/esm/createNativeMenu/createNativeMenuTypes.native.js.map +1 -0
  66. package/dist/esm/createNativeMenu/index.js +3 -0
  67. package/dist/esm/createNativeMenu/index.js.map +6 -0
  68. package/dist/esm/createNativeMenu/index.mjs +3 -0
  69. package/dist/esm/createNativeMenu/index.mjs.map +1 -0
  70. package/dist/esm/createNativeMenu/index.native.js +3 -0
  71. package/dist/esm/createNativeMenu/index.native.js.map +1 -0
  72. package/dist/esm/createNativeMenu/utils.js +47 -0
  73. package/dist/esm/createNativeMenu/utils.js.map +6 -0
  74. package/dist/esm/createNativeMenu/utils.mjs +29 -0
  75. package/dist/esm/createNativeMenu/utils.mjs.map +1 -0
  76. package/dist/esm/createNativeMenu/utils.native.js +52 -0
  77. package/dist/esm/createNativeMenu/utils.native.js.map +1 -0
  78. package/dist/esm/createNativeMenu/withNativeMenu.js +15 -0
  79. package/dist/esm/createNativeMenu/withNativeMenu.js.map +6 -0
  80. package/dist/esm/createNativeMenu/withNativeMenu.mjs +14 -0
  81. package/dist/esm/createNativeMenu/withNativeMenu.mjs.map +1 -0
  82. package/dist/esm/createNativeMenu/withNativeMenu.native.js +17 -0
  83. package/dist/esm/createNativeMenu/withNativeMenu.native.js.map +1 -0
  84. package/dist/esm/index.js +8 -0
  85. package/dist/esm/index.js.map +6 -0
  86. package/dist/esm/index.mjs +6 -0
  87. package/dist/esm/index.mjs.map +1 -0
  88. package/dist/esm/index.native.js +6 -0
  89. package/dist/esm/index.native.js.map +1 -0
  90. package/dist/jsx/MenuPredefined.js +147 -0
  91. package/dist/jsx/MenuPredefined.js.map +6 -0
  92. package/dist/jsx/MenuPredefined.mjs +159 -0
  93. package/dist/jsx/MenuPredefined.mjs.map +1 -0
  94. package/dist/jsx/MenuPredefined.native.js +185 -0
  95. package/dist/jsx/MenuPredefined.native.js.map +1 -0
  96. package/dist/jsx/createBaseMenu.js +729 -0
  97. package/dist/jsx/createBaseMenu.js.map +6 -0
  98. package/dist/jsx/createBaseMenu.mjs +893 -0
  99. package/dist/jsx/createBaseMenu.mjs.map +1 -0
  100. package/dist/jsx/createBaseMenu.native.js +1105 -0
  101. package/dist/jsx/createBaseMenu.native.js.map +1 -0
  102. package/dist/jsx/createNativeMenu/createNativeMenu.js +150 -0
  103. package/dist/jsx/createNativeMenu/createNativeMenu.js.map +6 -0
  104. package/dist/jsx/createNativeMenu/createNativeMenu.mjs +190 -0
  105. package/dist/jsx/createNativeMenu/createNativeMenu.mjs.map +1 -0
  106. package/dist/jsx/createNativeMenu/createNativeMenu.native.js +287 -0
  107. package/dist/jsx/createNativeMenu/createNativeMenu.native.js.map +1 -0
  108. package/dist/jsx/createNativeMenu/createNativeMenuTypes.js +1 -0
  109. package/dist/jsx/createNativeMenu/createNativeMenuTypes.js.map +6 -0
  110. package/dist/jsx/createNativeMenu/createNativeMenuTypes.mjs +2 -0
  111. package/dist/jsx/createNativeMenu/createNativeMenuTypes.mjs.map +1 -0
  112. package/dist/jsx/createNativeMenu/createNativeMenuTypes.native.js +19 -0
  113. package/dist/jsx/createNativeMenu/createNativeMenuTypes.native.js.map +1 -0
  114. package/dist/jsx/createNativeMenu/index.js +3 -0
  115. package/dist/jsx/createNativeMenu/index.js.map +6 -0
  116. package/dist/jsx/createNativeMenu/index.mjs +3 -0
  117. package/dist/jsx/createNativeMenu/index.mjs.map +1 -0
  118. package/dist/jsx/createNativeMenu/index.native.js +22 -0
  119. package/dist/jsx/createNativeMenu/index.native.js.map +1 -0
  120. package/dist/jsx/createNativeMenu/utils.js +47 -0
  121. package/dist/jsx/createNativeMenu/utils.js.map +6 -0
  122. package/dist/jsx/createNativeMenu/utils.mjs +29 -0
  123. package/dist/jsx/createNativeMenu/utils.mjs.map +1 -0
  124. package/dist/jsx/createNativeMenu/utils.native.js +94 -0
  125. package/dist/jsx/createNativeMenu/utils.native.js.map +1 -0
  126. package/dist/jsx/createNativeMenu/withNativeMenu.js +15 -0
  127. package/dist/jsx/createNativeMenu/withNativeMenu.js.map +6 -0
  128. package/dist/jsx/createNativeMenu/withNativeMenu.mjs +14 -0
  129. package/dist/jsx/createNativeMenu/withNativeMenu.mjs.map +1 -0
  130. package/dist/jsx/createNativeMenu/withNativeMenu.native.js +43 -0
  131. package/dist/jsx/createNativeMenu/withNativeMenu.native.js.map +1 -0
  132. package/dist/jsx/index.js +8 -0
  133. package/dist/jsx/index.js.map +6 -0
  134. package/dist/jsx/index.mjs +6 -0
  135. package/dist/jsx/index.mjs.map +1 -0
  136. package/dist/jsx/index.native.js +33 -0
  137. package/dist/jsx/index.native.js.map +1 -0
  138. package/package.json +80 -0
  139. package/src/MenuPredefined.tsx +195 -0
  140. package/src/createBaseMenu.tsx +1703 -0
  141. package/src/createNativeMenu/createNativeMenu.tsx +372 -0
  142. package/src/createNativeMenu/createNativeMenuTypes.ts +214 -0
  143. package/src/createNativeMenu/index.tsx +7 -0
  144. package/src/createNativeMenu/utils.tsx +150 -0
  145. package/src/createNativeMenu/withNativeMenu.tsx +38 -0
  146. package/src/index.tsx +9 -0
  147. package/types/MenuPredefined.d.ts +28 -0
  148. package/types/MenuPredefined.d.ts.map +1 -0
  149. package/types/createBaseMenu.d.ts +207 -0
  150. package/types/createBaseMenu.d.ts.map +1 -0
  151. package/types/createNativeMenu/createNativeMenu.d.ts +42 -0
  152. package/types/createNativeMenu/createNativeMenu.d.ts.map +1 -0
  153. package/types/createNativeMenu/createNativeMenuTypes.d.ts +188 -0
  154. package/types/createNativeMenu/createNativeMenuTypes.d.ts.map +1 -0
  155. package/types/createNativeMenu/index.d.ts +4 -0
  156. package/types/createNativeMenu/index.d.ts.map +1 -0
  157. package/types/createNativeMenu/utils.d.ts +38 -0
  158. package/types/createNativeMenu/utils.d.ts.map +1 -0
  159. package/types/createNativeMenu/withNativeMenu.d.ts +9 -0
  160. package/types/createNativeMenu/withNativeMenu.d.ts.map +1 -0
  161. package/types/index.d.ts +6 -0
  162. package/types/index.d.ts.map +1 -0
@@ -0,0 +1,188 @@
1
+ import type { ImageProps } from 'react-native';
2
+ import type { SFSymbol } from 'sf-symbols-typescript';
3
+ type ImageOptions = {
4
+ tint?: string;
5
+ };
6
+ export type MenuProps = {
7
+ children: React.ReactNode;
8
+ native?: boolean;
9
+ onOpenChange?: (isOpen: boolean) => void;
10
+ /**
11
+ * Callback function indicating that the menu intends to open or close. Passes a `willOpen` boolean argument indicating whether it is opening or closing.
12
+ * Unlike `onOpenChange`, this is called before the animation begins.
13
+ * @platform `ios`
14
+ */
15
+ onOpenWillChange?: (willOpen: boolean) => void;
16
+ };
17
+ /**
18
+ * Props for the auxiliary view that can be shown alongside a context menu on iOS
19
+ * @platform ios
20
+ */
21
+ export type ContextMenuAuxiliaryProps = {
22
+ height?: number;
23
+ width?: number;
24
+ anchorPosition?: 'top' | 'bottom' | 'automatic';
25
+ children: React.ReactNode | ((options: {
26
+ dismissMenu: () => void;
27
+ }) => React.ReactNode);
28
+ onDidShow?: () => void;
29
+ marginWithScreenEdge?: number;
30
+ onWillShow?: () => void;
31
+ };
32
+ export type MenuTriggerProps = {
33
+ children: React.ReactElement;
34
+ asChild?: boolean;
35
+ /**
36
+ * Determine whether the menu should open on `press` or `longPress`. Defaults to `press` for `Menu` and `longPress` for `ContextMenu`.
37
+ *
38
+ * Only applies for `ios` and `android`.
39
+ */
40
+ action?: 'press' | 'longPress';
41
+ };
42
+ export type MenuContentProps = {
43
+ children: React.ReactNode;
44
+ };
45
+ export type ContextMenuContentProps = MenuContentProps;
46
+ export type MenuGroupProps = {
47
+ children: React.ReactNode;
48
+ };
49
+ export type MenuItemProps = {
50
+ children: React.ReactNode;
51
+ /**
52
+ * If you want to pass a React text node to `<ItemTitle />`, then you need to use this prop. This gets used on iOS and Android.
53
+ */
54
+ textValue?: string;
55
+ /**
56
+ * Callback when the item is selected
57
+ */
58
+ onSelect?: (event?: Event) => void;
59
+ } & {
60
+ disabled?: boolean;
61
+ hidden?: boolean;
62
+ destructive?: boolean;
63
+ key: string;
64
+ };
65
+ export interface MenuItemCommonProps {
66
+ /**
67
+ * React elements to render as fallback icon (typically for web)
68
+ */
69
+ children?: React.ReactNode;
70
+ /**
71
+ * The name of an iOS-only SF Symbol. For a full list, see https://developer.apple.com/sf-symbols/.
72
+ * @deprecated Please use the `name` inside of the `ios` prop instead.
73
+ * @platform ios
74
+ */
75
+ iosIconName?: string;
76
+ /**
77
+ * Icon configuration to be used on iOS. You can pass a SF Symbol icon using the `name` prop.
78
+ * Additionally, you can configure the SF Symbol's features like weight, scale, color etc. by passing
79
+ * the corresponding props. Note that some of those features require iOS 15+.
80
+ *
81
+ * @platform ios
82
+ */
83
+ ios?: {
84
+ name: SFSymbol;
85
+ weight?: 'ultraLight' | 'thin' | 'light' | 'regular' | 'medium' | 'semibold' | 'bold' | 'heavy' | 'black';
86
+ scale?: 'small' | 'medium' | 'large';
87
+ hierarchicalColor?: string;
88
+ paletteColors?: string[];
89
+ };
90
+ /**
91
+ * The name of an android-only resource drawable. For a full list, see https://developer.android.com/reference/android/R.drawable.html.
92
+ *
93
+ * @platform android
94
+ */
95
+ androidIconName?: string;
96
+ }
97
+ export type MenuItemIconProps = MenuItemCommonProps;
98
+ export type MenuItemImageProps = MenuItemCommonProps & {
99
+ /**
100
+ * `source={require('path/to/image')}`
101
+ */
102
+ source: ImageProps['source'];
103
+ ios?: {
104
+ style?: ImageOptions;
105
+ lazy?: boolean;
106
+ };
107
+ };
108
+ export type MenuArrowProps = {};
109
+ export type MenuSubTriggerProps = MenuItemProps & {
110
+ key: string;
111
+ };
112
+ export type MenuSubProps = {
113
+ children?: React.ReactNode;
114
+ };
115
+ export type MenuSubContentProps = {
116
+ children: React.ReactNode;
117
+ };
118
+ export type ContextMenuSubContentProps = ContextMenuContentProps;
119
+ export type MenuItemTitleProps = {
120
+ children: string | React.ReactNode;
121
+ };
122
+ export type MenuItemSubtitleProps = {
123
+ children: string;
124
+ };
125
+ export type MenuSeparatorProps = {};
126
+ export type MenuCheckboxItemProps = Omit<MenuItemProps, 'onSelect'> & {
127
+ /**
128
+ * The controlled checked state of the checkbox item.
129
+ * Use this with `onCheckedChange` for the web-style API.
130
+ */
131
+ checked?: boolean;
132
+ /**
133
+ * Callback when the checked state changes.
134
+ * Use this with `checked` for the web-style API.
135
+ */
136
+ onCheckedChange?: (checked: boolean) => void;
137
+ /**
138
+ * The controlled value state for native platforms.
139
+ * Use this with `onValueChange` for the native-style API.
140
+ * @platform ios, android
141
+ */
142
+ value?: 'mixed' | 'on' | 'off' | boolean;
143
+ /**
144
+ * Callback when the value changes on native platforms.
145
+ * Use this with `value` for the native-style API.
146
+ * @platform ios, android
147
+ */
148
+ onValueChange?: (state: 'mixed' | 'on' | 'off', prevState: 'mixed' | 'on' | 'off') => void;
149
+ key: string;
150
+ };
151
+ export type MenuItemIndicatorProps = {
152
+ children?: React.ReactNode;
153
+ };
154
+ export type MenuLabelProps = {
155
+ children: string;
156
+ /**
157
+ * If you want to pass a React text node to `<Lable />`, then you need to use this prop. This gets used on iOS and Android.
158
+ */
159
+ textValue?: string;
160
+ };
161
+ export type ContextMenuPreviewProps = {
162
+ children: React.ReactNode | (() => React.ReactNode);
163
+ /**
164
+ * Size of the preview
165
+ * @platform ios
166
+ */
167
+ size?: {
168
+ width?: number;
169
+ height?: number;
170
+ };
171
+ /**
172
+ * Called when the preview is pressed
173
+ * @platform ios
174
+ */
175
+ onPress?: () => void;
176
+ /**
177
+ * Background color of the preview
178
+ * @platform ios
179
+ */
180
+ backgroundColor?: string;
181
+ /**
182
+ * Border radius of the preview
183
+ * @platform ios
184
+ */
185
+ borderRadius?: number;
186
+ };
187
+ export {};
188
+ //# sourceMappingURL=createNativeMenuTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createNativeMenuTypes.d.ts","sourceRoot":"","sources":["../../src/createNativeMenu/createNativeMenuTypes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export * from './createNativeMenu';
2
+ export * from './withNativeMenu';
3
+ export type { MenuItemIconProps as NativeMenuItemIconProps, MenuSubTriggerProps as NativeMenuSubTriggerProps, } from './createNativeMenuTypes';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/createNativeMenu/index.tsx"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAEhC,YAAY,EACV,iBAAiB,IAAI,uBAAuB,EAC5C,mBAAmB,IAAI,yBAAyB,GACjD,MAAM,yBAAyB,CAAA"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Credit to geist-ui/react, it's initially copied from there and updated.
3
+ *
4
+ * MIT License
5
+
6
+ Copyright (c) 2020 Geist UI
7
+
8
+ Permission is hereby granted, free of charge, to any person obtaining a copy
9
+ of this software and associated documentation files (the "Software"), to deal
10
+ in the Software without restriction, including without limitation the rights
11
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
12
+ copies of the Software, and to permit persons to whom the Software is
13
+ furnished to do so, subject to the following conditions:
14
+
15
+ The above copyright notice and this permission notice shall be included in all
16
+ copies or substantial portions of the Software.
17
+
18
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
23
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
24
+ SOFTWARE.
25
+ */
26
+ import React, { type ReactNode } from 'react';
27
+ type ReactChildArray = ReturnType<typeof React.Children.toArray>;
28
+ export declare function flattenChildrenKeyless(children: ReactNode): ReactChildArray;
29
+ export declare function flattenChildren(children: ReactNode, componentNamesToIgnore?: string[], depth?: number, keys?: (string | number)[]): ReactNode[];
30
+ export declare const pickChildren: <Props = any>(_children: ReactNode | undefined, targetChild: React.ElementType, componentNamesToIgnore?: string[]) => {
31
+ targetChildren: React.ReactElement<Props, string | React.JSXElementConstructor<any>>[] | undefined;
32
+ withoutTargetChildren: (string | number | bigint | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | Promise<string | number | bigint | boolean | React.ReactPortal | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | null | undefined>)[] | null | undefined;
33
+ };
34
+ export declare const isInstanceOfComponent: (element: React.ReactElement | ReactNode | undefined, targetElement: React.ElementType) => boolean;
35
+ export declare const filterNull: <T extends unknown | null | undefined>(t: T) => t is NonNullable<T>;
36
+ export declare const create: <Props extends {}>(Component: React.ComponentType<Props>, displayName: string) => React.FC<Props>;
37
+ export {};
38
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/createNativeMenu/utils.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EAAE,EAGZ,KAAK,SAAS,EAGf,MAAM,OAAO,CAAA;AAEd,KAAK,eAAe,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;AAEhE,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,SAAS,GAAG,eAAe,CAW3E;AAED,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,SAAS,EACnB,sBAAsB,CAAC,EAAE,MAAM,EAAE,EACjC,KAAK,SAAI,EACT,IAAI,GAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAO,GAC7B,SAAS,EAAE,CAuCb;AAED,eAAO,MAAM,YAAY,GAAI,KAAK,GAAG,GAAG,EACtC,WAAW,SAAS,GAAG,SAAS,EAChC,aAAa,KAAK,CAAC,WAAW,EAC9B,yBAAyB,MAAM,EAAE;;;CAoBlC,CAAA;AAED,eAAO,MAAM,qBAAqB,GAChC,SAAS,KAAK,CAAC,YAAY,GAAG,SAAS,GAAG,SAAS,EACnD,eAAe,KAAK,CAAC,WAAW,YASjC,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,OAAO,GAAG,IAAI,GAAG,SAAS,EAC7D,GAAG,CAAC,KACH,CAAC,IAAI,WAAW,CAAC,CAAC,CAEpB,CAAA;AAED,eAAO,MAAM,MAAM,GAAI,KAAK,SAAS,EAAE,EACrC,WAAW,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,EACrC,aAAa,MAAM,oBAQpB,CAAA"}
@@ -0,0 +1,9 @@
1
+ type CombinedProps<C, N> = C extends React.ComponentType<infer CP> ? N extends React.ComponentType<infer NP> ? CP & NP : CP : N extends React.ComponentType<infer NP> ? NP : {};
2
+ export declare function withNativeMenu<C extends React.ComponentType<any>, N extends React.ComponentType<any>>({ Component, NativeComponent, }: {
3
+ Component: C;
4
+ NativeComponent: N;
5
+ scope?: string;
6
+ isRoot?: boolean;
7
+ }): React.FC<CombinedProps<C, N>>;
8
+ export {};
9
+ //# sourceMappingURL=withNativeMenu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withNativeMenu.d.ts","sourceRoot":"","sources":["../../src/createNativeMenu/withNativeMenu.tsx"],"names":[],"mappings":"AAEA,KAAK,aAAa,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,GAC9D,CAAC,SAAS,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,GACrC,EAAE,GAAG,EAAE,GACP,EAAE,GACJ,CAAC,SAAS,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,GACrC,EAAE,GACF,EAAE,CAAA;AAER,wBAAgB,cAAc,CAC5B,CAAC,SAAS,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EAClC,CAAC,SAAS,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EAClC,EACA,SAAS,EACT,eAAe,GAChB,EAAE;IACD,SAAS,EAAE,CAAC,CAAA;IACZ,eAAe,EAAE,CAAC,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,GAAG,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAgBhC"}
@@ -0,0 +1,6 @@
1
+ import '@tamagui/polyfill-dev';
2
+ export * from './createBaseMenu';
3
+ export * from './createNativeMenu/index';
4
+ export type { MenuItemImageProps, MenuItemIconProps, } from './createNativeMenu/createNativeMenuTypes';
5
+ export { MenuPredefined } from './MenuPredefined';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,uBAAuB,CAAA;AAE9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,0BAA0B,CAAA;AACxC,YAAY,EACV,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,0CAA0C,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA"}