@tamagui/menu 1.0.1-beta.20 → 1.0.1-beta.200
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/dist/cjs/Menu.js +25 -55
- package/dist/cjs/Menu.js.map +2 -2
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/Menu.js +24 -39
- package/dist/esm/Menu.js.map +2 -2
- package/dist/esm/index.js +0 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/jsx/Menu.js +25 -35
- package/dist/jsx/Menu.js.map +7 -0
- package/dist/jsx/index.js +1 -0
- package/dist/jsx/index.js.map +7 -0
- package/package.json +11 -10
- package/src/Menu.tsx +68 -0
- package/src/index.tsx +2 -0
- package/types/Menu.d.ts +2 -3
- package/types/Menu.d.ts.map +0 -1
- package/types/index.d.ts.map +0 -1
package/dist/cjs/Menu.js
CHANGED
|
@@ -1,24 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
2
|
var __defProp = Object.defineProperty;
|
|
3
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
6
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
7
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
9
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
10
|
-
var __spreadValues = (a, b) => {
|
|
11
|
-
for (var prop in b || (b = {}))
|
|
12
|
-
if (__hasOwnProp.call(b, prop))
|
|
13
|
-
__defNormalProp(a, prop, b[prop]);
|
|
14
|
-
if (__getOwnPropSymbols)
|
|
15
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
16
|
-
if (__propIsEnum.call(b, prop))
|
|
17
|
-
__defNormalProp(a, prop, b[prop]);
|
|
18
|
-
}
|
|
19
|
-
return a;
|
|
20
|
-
};
|
|
21
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
22
6
|
var __export = (target, all) => {
|
|
23
7
|
for (var name in all)
|
|
24
8
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -31,7 +15,6 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
31
15
|
}
|
|
32
16
|
return to;
|
|
33
17
|
};
|
|
34
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
|
|
35
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
36
19
|
var Menu_exports = {};
|
|
37
20
|
__export(Menu_exports, {
|
|
@@ -39,47 +22,34 @@ __export(Menu_exports, {
|
|
|
39
22
|
});
|
|
40
23
|
module.exports = __toCommonJS(Menu_exports);
|
|
41
24
|
var import_core = require("@tamagui/core");
|
|
42
|
-
var import_drawer = require("@tamagui/drawer");
|
|
43
25
|
var import_use_controllable_state = require("@tamagui/use-controllable-state");
|
|
44
|
-
var import_react =
|
|
45
|
-
|
|
46
|
-
const MenuItem = /* @__PURE__ */ __name((props) => {
|
|
26
|
+
var import_react = require("react");
|
|
27
|
+
const MenuItem = (props) => {
|
|
47
28
|
return props.children;
|
|
48
|
-
}
|
|
49
|
-
const Menu = (0, import_core.withStaticProperties)(
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
});
|
|
58
|
-
const triggerProps = (0, import_react.useMemo)(() => {
|
|
59
|
-
return {
|
|
60
|
-
onPress: () => {
|
|
61
|
-
setOpen((x) => !x);
|
|
29
|
+
};
|
|
30
|
+
const Menu = (0, import_core.withStaticProperties)(
|
|
31
|
+
({ children, open: openProp, defaultOpen, trigger, onOpenChange }) => {
|
|
32
|
+
const media = (0, import_core.useMedia)();
|
|
33
|
+
const [open, setOpen] = (0, import_use_controllable_state.useControllableState)({
|
|
34
|
+
prop: openProp,
|
|
35
|
+
defaultProp: defaultOpen || false,
|
|
36
|
+
onChange(next) {
|
|
37
|
+
onOpenChange == null ? void 0 : onOpenChange(next);
|
|
62
38
|
}
|
|
63
|
-
};
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
39
|
+
});
|
|
40
|
+
const triggerProps = (0, import_react.useMemo)(() => {
|
|
41
|
+
return {
|
|
42
|
+
onPress: () => {
|
|
43
|
+
setOpen((x) => !x);
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
}, []);
|
|
47
|
+
return null;
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
Item: MenuItem
|
|
70
51
|
}
|
|
71
|
-
|
|
72
|
-
trigger: (props) => (0, import_react.cloneElement)(trigger, __spreadValues(__spreadValues({}, props), triggerProps)),
|
|
73
|
-
open,
|
|
74
|
-
onChangeOpen: setOpen
|
|
75
|
-
}, /* @__PURE__ */ import_react.default.createElement(import_tamagui.Popover.Content, null, /* @__PURE__ */ import_react.default.createElement(import_tamagui.Popover.Arrow, null), /* @__PURE__ */ import_react.default.createElement(import_tamagui.YStack, {
|
|
76
|
-
backgroundColor: "$background",
|
|
77
|
-
borderRadius: "$2"
|
|
78
|
-
}, children)));
|
|
79
|
-
}, {
|
|
80
|
-
Item: MenuItem,
|
|
81
|
-
Provider: import_drawer.DrawerProvider
|
|
82
|
-
});
|
|
52
|
+
);
|
|
83
53
|
// Annotate the CommonJS export names for ESM import in node:
|
|
84
54
|
0 && (module.exports = {
|
|
85
55
|
Menu
|
package/dist/cjs/Menu.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Menu.tsx"],
|
|
4
|
-
"sourcesContent": ["import { useMedia, withStaticProperties } from '@tamagui/core'\
|
|
5
|
-
"mappings": "
|
|
4
|
+
"sourcesContent": ["import { useMedia, withStaticProperties } from '@tamagui/core'\n// import { Drawer, DrawerProvider } from '@tamagui/drawer'\nimport { useControllableState } from '@tamagui/use-controllable-state'\nimport React, { cloneElement, useEffect, useMemo, useState } from 'react'\n\nconst MenuItem = (props) => {\n return props.children\n}\n\ntype MenuProps = {\n children?: React.ReactNode\n open?: boolean\n defaultOpen?: boolean\n trigger?: any\n onOpenChange?: (next: boolean) => void\n}\n\nexport const Menu = withStaticProperties(\n ({ children, open: openProp, defaultOpen, trigger, onOpenChange }: MenuProps) => {\n const media = useMedia()\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen || false,\n onChange(next) {\n onOpenChange?.(next)\n },\n })\n\n const triggerProps = useMemo(() => {\n return {\n onPress: () => {\n setOpen((x) => !x)\n },\n }\n }, [])\n\n // if (media.sm) {\n // return (\n // <>\n // {cloneElement(trigger, triggerProps)}\n // <Drawer open={open} onDismiss={() => setOpen(false)}>\n // {children}\n // </Drawer>\n // </>\n // )\n // }\n\n return null\n // return (\n // <Popover\n // trigger={(props) => cloneElement(trigger, { ...props, ...triggerProps })}\n // open={open}\n // onOpenChange={setOpen}\n // >\n // <Popover.Content>\n // <Popover.Arrow />\n // <YStack backgroundColor=\"$background\" borderRadius=\"$2\">\n // {children}\n // </YStack>\n // </Popover.Content>\n // </Popover>\n // )\n },\n {\n Item: MenuItem,\n // Provider: DrawerProvider,\n }\n)\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAA+C;AAE/C,oCAAqC;AACrC,mBAAkE;AAElE,MAAM,WAAW,CAAC,UAAU;AAC1B,SAAO,MAAM;AACf;AAUO,MAAM,WAAO;AAAA,EAClB,CAAC,EAAE,UAAU,MAAM,UAAU,aAAa,SAAS,aAAa,MAAiB;AAC/E,UAAM,YAAQ,sBAAS;AACvB,UAAM,CAAC,MAAM,OAAO,QAAI,oDAAqB;AAAA,MAC3C,MAAM;AAAA,MACN,aAAa,eAAe;AAAA,MAC5B,SAAS,MAAM;AACb,qDAAe;AAAA,MACjB;AAAA,IACF,CAAC;AAED,UAAM,mBAAe,sBAAQ,MAAM;AACjC,aAAO;AAAA,QACL,SAAS,MAAM;AACb,kBAAQ,CAAC,MAAM,CAAC,CAAC;AAAA,QACnB;AAAA,MACF;AAAA,IACF,GAAG,CAAC,CAAC;AAaL,WAAO;AAAA,EAeT;AAAA,EACA;AAAA,IACE,MAAM;AAAA,EAER;AACF;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/cjs/index.js
CHANGED
package/dist/cjs/index.js.map
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/index.tsx"],
|
|
4
4
|
"sourcesContent": ["import '@tamagui/polyfill-dev'\nexport * from './Menu'\n"],
|
|
5
|
-
"mappings": "
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,0BAAO;AACP,wBAAc,mBADd;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/esm/Menu.js
CHANGED
|
@@ -1,47 +1,32 @@
|
|
|
1
|
-
var __defProp = Object.defineProperty;
|
|
2
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
1
|
import { useMedia, withStaticProperties } from "@tamagui/core";
|
|
4
|
-
import { Drawer, DrawerProvider } from "@tamagui/drawer";
|
|
5
2
|
import { useControllableState } from "@tamagui/use-controllable-state";
|
|
6
|
-
import
|
|
7
|
-
|
|
8
|
-
const MenuItem = /* @__PURE__ */ __name((props) => {
|
|
3
|
+
import { useMemo } from "react";
|
|
4
|
+
const MenuItem = (props) => {
|
|
9
5
|
return props.children;
|
|
10
|
-
}
|
|
11
|
-
const Menu = withStaticProperties(
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
});
|
|
20
|
-
const triggerProps = useMemo(() => {
|
|
21
|
-
return {
|
|
22
|
-
onPress: () => {
|
|
23
|
-
setOpen((x) => !x);
|
|
6
|
+
};
|
|
7
|
+
const Menu = withStaticProperties(
|
|
8
|
+
({ children, open: openProp, defaultOpen, trigger, onOpenChange }) => {
|
|
9
|
+
const media = useMedia();
|
|
10
|
+
const [open, setOpen] = useControllableState({
|
|
11
|
+
prop: openProp,
|
|
12
|
+
defaultProp: defaultOpen || false,
|
|
13
|
+
onChange(next) {
|
|
14
|
+
onOpenChange == null ? void 0 : onOpenChange(next);
|
|
24
15
|
}
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
16
|
+
});
|
|
17
|
+
const triggerProps = useMemo(() => {
|
|
18
|
+
return {
|
|
19
|
+
onPress: () => {
|
|
20
|
+
setOpen((x) => !x);
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
}, []);
|
|
24
|
+
return null;
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
Item: MenuItem
|
|
32
28
|
}
|
|
33
|
-
|
|
34
|
-
trigger: (props) => cloneElement(trigger, { ...props, ...triggerProps }),
|
|
35
|
-
open,
|
|
36
|
-
onChangeOpen: setOpen
|
|
37
|
-
}, /* @__PURE__ */ React.createElement(Popover.Content, null, /* @__PURE__ */ React.createElement(Popover.Arrow, null), /* @__PURE__ */ React.createElement(YStack, {
|
|
38
|
-
backgroundColor: "$background",
|
|
39
|
-
borderRadius: "$2"
|
|
40
|
-
}, children)));
|
|
41
|
-
}, {
|
|
42
|
-
Item: MenuItem,
|
|
43
|
-
Provider: DrawerProvider
|
|
44
|
-
});
|
|
29
|
+
);
|
|
45
30
|
export {
|
|
46
31
|
Menu
|
|
47
32
|
};
|
package/dist/esm/Menu.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Menu.tsx"],
|
|
4
|
-
"sourcesContent": ["import { useMedia, withStaticProperties } from '@tamagui/core'\
|
|
5
|
-
"mappings": "
|
|
4
|
+
"sourcesContent": ["import { useMedia, withStaticProperties } from '@tamagui/core'\n// import { Drawer, DrawerProvider } from '@tamagui/drawer'\nimport { useControllableState } from '@tamagui/use-controllable-state'\nimport React, { cloneElement, useEffect, useMemo, useState } from 'react'\n\nconst MenuItem = (props) => {\n return props.children\n}\n\ntype MenuProps = {\n children?: React.ReactNode\n open?: boolean\n defaultOpen?: boolean\n trigger?: any\n onOpenChange?: (next: boolean) => void\n}\n\nexport const Menu = withStaticProperties(\n ({ children, open: openProp, defaultOpen, trigger, onOpenChange }: MenuProps) => {\n const media = useMedia()\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen || false,\n onChange(next) {\n onOpenChange?.(next)\n },\n })\n\n const triggerProps = useMemo(() => {\n return {\n onPress: () => {\n setOpen((x) => !x)\n },\n }\n }, [])\n\n // if (media.sm) {\n // return (\n // <>\n // {cloneElement(trigger, triggerProps)}\n // <Drawer open={open} onDismiss={() => setOpen(false)}>\n // {children}\n // </Drawer>\n // </>\n // )\n // }\n\n return null\n // return (\n // <Popover\n // trigger={(props) => cloneElement(trigger, { ...props, ...triggerProps })}\n // open={open}\n // onOpenChange={setOpen}\n // >\n // <Popover.Content>\n // <Popover.Arrow />\n // <YStack backgroundColor=\"$background\" borderRadius=\"$2\">\n // {children}\n // </YStack>\n // </Popover.Content>\n // </Popover>\n // )\n },\n {\n Item: MenuItem,\n // Provider: DrawerProvider,\n }\n)\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,UAAU,4BAA4B;AAE/C,SAAS,4BAA4B;AACrC,SAAyC,eAAyB;AAElE,MAAM,WAAW,CAAC,UAAU;AAC1B,SAAO,MAAM;AACf;AAUO,MAAM,OAAO;AAAA,EAClB,CAAC,EAAE,UAAU,MAAM,UAAU,aAAa,SAAS,aAAa,MAAiB;AAC/E,UAAM,QAAQ,SAAS;AACvB,UAAM,CAAC,MAAM,OAAO,IAAI,qBAAqB;AAAA,MAC3C,MAAM;AAAA,MACN,aAAa,eAAe;AAAA,MAC5B,SAAS,MAAM;AACb,qDAAe;AAAA,MACjB;AAAA,IACF,CAAC;AAED,UAAM,eAAe,QAAQ,MAAM;AACjC,aAAO;AAAA,QACL,SAAS,MAAM;AACb,kBAAQ,CAAC,MAAM,CAAC,CAAC;AAAA,QACnB;AAAA,MACF;AAAA,IACF,GAAG,CAAC,CAAC;AAaL,WAAO;AAAA,EAeT;AAAA,EACA;AAAA,IACE,MAAM;AAAA,EAER;AACF;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/esm/index.js
CHANGED
|
File without changes
|
package/dist/esm/index.js.map
CHANGED
package/dist/jsx/Menu.js
CHANGED
|
@@ -1,43 +1,33 @@
|
|
|
1
|
-
var __defProp = Object.defineProperty;
|
|
2
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
1
|
import { useMedia, withStaticProperties } from "@tamagui/core";
|
|
4
|
-
import { Drawer, DrawerProvider } from "@tamagui/drawer";
|
|
5
2
|
import { useControllableState } from "@tamagui/use-controllable-state";
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
const MenuItem = /* @__PURE__ */ __name((props) => {
|
|
3
|
+
import { useMemo } from "react";
|
|
4
|
+
const MenuItem = (props) => {
|
|
9
5
|
return props.children;
|
|
10
|
-
}
|
|
11
|
-
const Menu = withStaticProperties(
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
});
|
|
20
|
-
const triggerProps = useMemo(() => {
|
|
21
|
-
return {
|
|
22
|
-
onPress: () => {
|
|
23
|
-
setOpen((x) => !x);
|
|
6
|
+
};
|
|
7
|
+
const Menu = withStaticProperties(
|
|
8
|
+
({ children, open: openProp, defaultOpen, trigger, onOpenChange }) => {
|
|
9
|
+
const media = useMedia();
|
|
10
|
+
const [open, setOpen] = useControllableState({
|
|
11
|
+
prop: openProp,
|
|
12
|
+
defaultProp: defaultOpen || false,
|
|
13
|
+
onChange(next) {
|
|
14
|
+
onOpenChange?.(next);
|
|
24
15
|
}
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
16
|
+
});
|
|
17
|
+
const triggerProps = useMemo(() => {
|
|
18
|
+
return {
|
|
19
|
+
onPress: () => {
|
|
20
|
+
setOpen((x) => !x);
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
}, []);
|
|
24
|
+
return null;
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
Item: MenuItem
|
|
32
28
|
}
|
|
33
|
-
|
|
34
|
-
<Popover.Arrow />
|
|
35
|
-
<YStack backgroundColor="$background" borderRadius="$2">{children}</YStack>
|
|
36
|
-
</Popover.Content></Popover>;
|
|
37
|
-
}, {
|
|
38
|
-
Item: MenuItem,
|
|
39
|
-
Provider: DrawerProvider
|
|
40
|
-
});
|
|
29
|
+
);
|
|
41
30
|
export {
|
|
42
31
|
Menu
|
|
43
32
|
};
|
|
33
|
+
//# sourceMappingURL=Menu.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/Menu.tsx"],
|
|
4
|
+
"sourcesContent": ["import { useMedia, withStaticProperties } from '@tamagui/core'\n// import { Drawer, DrawerProvider } from '@tamagui/drawer'\nimport { useControllableState } from '@tamagui/use-controllable-state'\nimport React, { cloneElement, useEffect, useMemo, useState } from 'react'\n\nconst MenuItem = (props) => {\n return props.children\n}\n\ntype MenuProps = {\n children?: React.ReactNode\n open?: boolean\n defaultOpen?: boolean\n trigger?: any\n onOpenChange?: (next: boolean) => void\n}\n\nexport const Menu = withStaticProperties(\n ({ children, open: openProp, defaultOpen, trigger, onOpenChange }: MenuProps) => {\n const media = useMedia()\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen || false,\n onChange(next) {\n onOpenChange?.(next)\n },\n })\n\n const triggerProps = useMemo(() => {\n return {\n onPress: () => {\n setOpen((x) => !x)\n },\n }\n }, [])\n\n // if (media.sm) {\n // return (\n // <>\n // {cloneElement(trigger, triggerProps)}\n // <Drawer open={open} onDismiss={() => setOpen(false)}>\n // {children}\n // </Drawer>\n // </>\n // )\n // }\n\n return null\n // return (\n // <Popover\n // trigger={(props) => cloneElement(trigger, { ...props, ...triggerProps })}\n // open={open}\n // onOpenChange={setOpen}\n // >\n // <Popover.Content>\n // <Popover.Arrow />\n // <YStack backgroundColor=\"$background\" borderRadius=\"$2\">\n // {children}\n // </YStack>\n // </Popover.Content>\n // </Popover>\n // )\n },\n {\n Item: MenuItem,\n // Provider: DrawerProvider,\n }\n)\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,UAAU,4BAA4B;AAE/C,SAAS,4BAA4B;AACrC,SAAyC,eAAyB;AAElE,MAAM,WAAW,CAAC,UAAU;AAC1B,SAAO,MAAM;AACf;AAUO,MAAM,OAAO;AAAA,EAClB,CAAC,EAAE,UAAU,MAAM,UAAU,aAAa,SAAS,aAAa,MAAiB;AAC/E,UAAM,QAAQ,SAAS;AACvB,UAAM,CAAC,MAAM,OAAO,IAAI,qBAAqB;AAAA,MAC3C,MAAM;AAAA,MACN,aAAa,eAAe;AAAA,MAC5B,SAAS,MAAM;AACb,uBAAe,IAAI;AAAA,MACrB;AAAA,IACF,CAAC;AAED,UAAM,eAAe,QAAQ,MAAM;AACjC,aAAO;AAAA,QACL,SAAS,MAAM;AACb,kBAAQ,CAAC,MAAM,CAAC,CAAC;AAAA,QACnB;AAAA,MACF;AAAA,IACF,GAAG,CAAC,CAAC;AAaL,WAAO;AAAA,EAeT;AAAA,EACA;AAAA,IACE,MAAM;AAAA,EAER;AACF;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
package/dist/jsx/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,36 +1,37 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/menu",
|
|
3
|
-
"version": "1.0.1-beta.
|
|
4
|
-
"sideEffects":
|
|
3
|
+
"version": "1.0.1-beta.200",
|
|
4
|
+
"sideEffects": [
|
|
5
|
+
"*.css"
|
|
6
|
+
],
|
|
5
7
|
"source": "src/index.ts",
|
|
6
|
-
"
|
|
8
|
+
"types": "./types/index.d.ts",
|
|
7
9
|
"main": "dist/cjs",
|
|
8
10
|
"module": "dist/esm",
|
|
9
11
|
"module:jsx": "dist/jsx",
|
|
10
12
|
"files": [
|
|
13
|
+
"src",
|
|
11
14
|
"types",
|
|
12
15
|
"dist"
|
|
13
16
|
],
|
|
14
17
|
"scripts": {
|
|
15
18
|
"build": "tamagui-build",
|
|
16
19
|
"watch": "tamagui-build --watch",
|
|
20
|
+
"lint": "eslint",
|
|
21
|
+
"lint:fix": "yarn lint --fix",
|
|
17
22
|
"clean": "tamagui-build clean",
|
|
18
23
|
"clean:build": "tamagui-build clean:build"
|
|
19
24
|
},
|
|
20
25
|
"dependencies": {
|
|
21
|
-
"@
|
|
22
|
-
"@tamagui/
|
|
23
|
-
"@tamagui/polyfill-dev": "^1.0.1-beta.20",
|
|
24
|
-
"@tamagui/use-controllable-state": "^1.0.1-beta.20",
|
|
25
|
-
"react-native-gesture-handler": "*",
|
|
26
|
-
"react-native-reanimated": "~2.8.0"
|
|
26
|
+
"@tamagui/core": "^1.0.1-beta.200",
|
|
27
|
+
"@tamagui/popover": "^1.0.1-beta.200"
|
|
27
28
|
},
|
|
28
29
|
"peerDependencies": {
|
|
29
30
|
"react": "*",
|
|
30
31
|
"react-dom": "*"
|
|
31
32
|
},
|
|
32
33
|
"devDependencies": {
|
|
33
|
-
"@tamagui/build": "^1.0.1-beta.
|
|
34
|
+
"@tamagui/build": "^1.0.1-beta.200",
|
|
34
35
|
"react": "*",
|
|
35
36
|
"react-dom": "*"
|
|
36
37
|
},
|
package/src/Menu.tsx
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { useMedia, withStaticProperties } from '@tamagui/core'
|
|
2
|
+
// import { Drawer, DrawerProvider } from '@tamagui/drawer'
|
|
3
|
+
import { useControllableState } from '@tamagui/use-controllable-state'
|
|
4
|
+
import React, { cloneElement, useEffect, useMemo, useState } from 'react'
|
|
5
|
+
|
|
6
|
+
const MenuItem = (props) => {
|
|
7
|
+
return props.children
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
type MenuProps = {
|
|
11
|
+
children?: React.ReactNode
|
|
12
|
+
open?: boolean
|
|
13
|
+
defaultOpen?: boolean
|
|
14
|
+
trigger?: any
|
|
15
|
+
onOpenChange?: (next: boolean) => void
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export const Menu = withStaticProperties(
|
|
19
|
+
({ children, open: openProp, defaultOpen, trigger, onOpenChange }: MenuProps) => {
|
|
20
|
+
const media = useMedia()
|
|
21
|
+
const [open, setOpen] = useControllableState({
|
|
22
|
+
prop: openProp,
|
|
23
|
+
defaultProp: defaultOpen || false,
|
|
24
|
+
onChange(next) {
|
|
25
|
+
onOpenChange?.(next)
|
|
26
|
+
},
|
|
27
|
+
})
|
|
28
|
+
|
|
29
|
+
const triggerProps = useMemo(() => {
|
|
30
|
+
return {
|
|
31
|
+
onPress: () => {
|
|
32
|
+
setOpen((x) => !x)
|
|
33
|
+
},
|
|
34
|
+
}
|
|
35
|
+
}, [])
|
|
36
|
+
|
|
37
|
+
// if (media.sm) {
|
|
38
|
+
// return (
|
|
39
|
+
// <>
|
|
40
|
+
// {cloneElement(trigger, triggerProps)}
|
|
41
|
+
// <Drawer open={open} onDismiss={() => setOpen(false)}>
|
|
42
|
+
// {children}
|
|
43
|
+
// </Drawer>
|
|
44
|
+
// </>
|
|
45
|
+
// )
|
|
46
|
+
// }
|
|
47
|
+
|
|
48
|
+
return null
|
|
49
|
+
// return (
|
|
50
|
+
// <Popover
|
|
51
|
+
// trigger={(props) => cloneElement(trigger, { ...props, ...triggerProps })}
|
|
52
|
+
// open={open}
|
|
53
|
+
// onOpenChange={setOpen}
|
|
54
|
+
// >
|
|
55
|
+
// <Popover.Content>
|
|
56
|
+
// <Popover.Arrow />
|
|
57
|
+
// <YStack backgroundColor="$background" borderRadius="$2">
|
|
58
|
+
// {children}
|
|
59
|
+
// </YStack>
|
|
60
|
+
// </Popover.Content>
|
|
61
|
+
// </Popover>
|
|
62
|
+
// )
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
Item: MenuItem,
|
|
66
|
+
// Provider: DrawerProvider,
|
|
67
|
+
}
|
|
68
|
+
)
|
package/src/index.tsx
ADDED
package/types/Menu.d.ts
CHANGED
|
@@ -4,11 +4,10 @@ declare type MenuProps = {
|
|
|
4
4
|
open?: boolean;
|
|
5
5
|
defaultOpen?: boolean;
|
|
6
6
|
trigger?: any;
|
|
7
|
-
|
|
7
|
+
onOpenChange?: (next: boolean) => void;
|
|
8
8
|
};
|
|
9
|
-
export declare const Menu: (({ children, open
|
|
9
|
+
export declare const Menu: (({ children, open, defaultOpen, trigger, onOpenChange }: MenuProps) => null) & {
|
|
10
10
|
Item: (props: any) => any;
|
|
11
|
-
Provider: ({ children, }: import("@gorhom/bottom-sheet/lib/typescript/components/bottomSheetModalProvider/types").BottomSheetModalProviderProps) => JSX.Element;
|
|
12
11
|
};
|
|
13
12
|
export {};
|
|
14
13
|
//# sourceMappingURL=Menu.d.ts.map
|
package/types/Menu.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.d.ts","sourceRoot":"","sources":["../src/Menu.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAqD,MAAM,OAAO,CAAA;AAOzE,aAAK,SAAS,GAAG;IACf,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,OAAO,CAAC,EAAE,GAAG,CAAA;IACb,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;CACvC,CAAA;AAED,eAAO,MAAM,IAAI,sEACoD,SAAS;;;CAgD7E,CAAA"}
|
package/types/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,uBAAuB,CAAA;AAC9B,cAAc,QAAQ,CAAA"}
|