@bacon-pos/ui 0.11.0 → 0.16.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/lib/commonjs/components/CodeInput/CodeInput.js +28 -9
- package/lib/commonjs/components/CodeInput/CodeInput.js.map +1 -1
- package/lib/commonjs/components/CodeInput/CodeInput.stories.js +28 -1
- package/lib/commonjs/components/CodeInput/CodeInput.stories.js.map +1 -1
- package/lib/commonjs/components/CodeInput/CodeInput.test.js +16 -0
- package/lib/commonjs/components/CodeInput/CodeInput.test.js.map +1 -1
- package/lib/commonjs/components/Dialog/Dialog.js +116 -71
- package/lib/commonjs/components/Dialog/Dialog.js.map +1 -1
- package/lib/commonjs/components/Dialog/StepDialog.js +111 -0
- package/lib/commonjs/components/Dialog/StepDialog.js.map +1 -0
- package/lib/commonjs/components/Dialog/StepDialog.stories.js +157 -0
- package/lib/commonjs/components/Dialog/StepDialog.stories.js.map +1 -0
- package/lib/commonjs/components/Dialog/StepDialog.test.js +118 -0
- package/lib/commonjs/components/Dialog/StepDialog.test.js.map +1 -0
- package/lib/commonjs/components/Dialog/index.js +7 -0
- package/lib/commonjs/components/Dialog/index.js.map +1 -1
- package/lib/commonjs/components/Icon/icons.generated.js +9 -1
- package/lib/commonjs/components/Icon/icons.generated.js.map +1 -1
- package/lib/commonjs/components/List/List.js +45 -0
- package/lib/commonjs/components/List/List.js.map +1 -0
- package/lib/commonjs/components/List/List.stories.js +215 -0
- package/lib/commonjs/components/List/List.stories.js.map +1 -0
- package/lib/commonjs/components/List/List.test.js +94 -0
- package/lib/commonjs/components/List/List.test.js.map +1 -0
- package/lib/commonjs/components/List/ListItem.js +210 -0
- package/lib/commonjs/components/List/ListItem.js.map +1 -0
- package/lib/commonjs/components/List/index.js +20 -0
- package/lib/commonjs/components/List/index.js.map +1 -0
- package/lib/commonjs/components/Menu/Menu.js +11 -3
- package/lib/commonjs/components/Menu/Menu.js.map +1 -1
- package/lib/commonjs/components/ProgressBar/ProgressBar.js +4 -3
- package/lib/commonjs/components/ProgressBar/ProgressBar.js.map +1 -1
- package/lib/commonjs/components/SegmentedButton/SegmentedButton.js +217 -0
- package/lib/commonjs/components/SegmentedButton/SegmentedButton.js.map +1 -0
- package/lib/commonjs/components/SegmentedButton/SegmentedButton.stories.js +215 -0
- package/lib/commonjs/components/SegmentedButton/SegmentedButton.stories.js.map +1 -0
- package/lib/commonjs/components/SegmentedButton/SegmentedButton.test.js +97 -0
- package/lib/commonjs/components/SegmentedButton/SegmentedButton.test.js.map +1 -0
- package/lib/commonjs/components/SegmentedButton/index.js +13 -0
- package/lib/commonjs/components/SegmentedButton/index.js.map +1 -0
- package/lib/commonjs/components/Sidebar/Sidebar.js +20 -3
- package/lib/commonjs/components/Sidebar/Sidebar.js.map +1 -1
- package/lib/commonjs/components/Sidebar/Sidebar.stories.js +17 -1
- package/lib/commonjs/components/Sidebar/Sidebar.stories.js.map +1 -1
- package/lib/commonjs/components/Table/Table.js +69 -6
- package/lib/commonjs/components/Table/Table.js.map +1 -1
- package/lib/commonjs/components/Table/Table.stories.js +118 -1
- package/lib/commonjs/components/Table/Table.stories.js.map +1 -1
- package/lib/commonjs/components/Table/Table.test.js +58 -0
- package/lib/commonjs/components/Table/Table.test.js.map +1 -1
- package/lib/commonjs/components/_internal/ModalHostContext.js +21 -0
- package/lib/commonjs/components/_internal/ModalHostContext.js.map +1 -0
- package/lib/commonjs/components/index.js +37 -15
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/module/components/CodeInput/CodeInput.js +28 -9
- package/lib/module/components/CodeInput/CodeInput.js.map +1 -1
- package/lib/module/components/CodeInput/CodeInput.stories.js +27 -0
- package/lib/module/components/CodeInput/CodeInput.stories.js.map +1 -1
- package/lib/module/components/CodeInput/CodeInput.test.js +16 -0
- package/lib/module/components/CodeInput/CodeInput.test.js.map +1 -1
- package/lib/module/components/Dialog/Dialog.js +116 -71
- package/lib/module/components/Dialog/Dialog.js.map +1 -1
- package/lib/module/components/Dialog/StepDialog.js +107 -0
- package/lib/module/components/Dialog/StepDialog.js.map +1 -0
- package/lib/module/components/Dialog/StepDialog.stories.js +153 -0
- package/lib/module/components/Dialog/StepDialog.stories.js.map +1 -0
- package/lib/module/components/Dialog/StepDialog.test.js +117 -0
- package/lib/module/components/Dialog/StepDialog.test.js.map +1 -0
- package/lib/module/components/Dialog/index.js +1 -0
- package/lib/module/components/Dialog/index.js.map +1 -1
- package/lib/module/components/Icon/icons.generated.js +9 -1
- package/lib/module/components/Icon/icons.generated.js.map +1 -1
- package/lib/module/components/List/List.js +41 -0
- package/lib/module/components/List/List.js.map +1 -0
- package/lib/module/components/List/List.stories.js +211 -0
- package/lib/module/components/List/List.stories.js.map +1 -0
- package/lib/module/components/List/List.test.js +94 -0
- package/lib/module/components/List/List.test.js.map +1 -0
- package/lib/module/components/List/ListItem.js +206 -0
- package/lib/module/components/List/ListItem.js.map +1 -0
- package/lib/module/components/List/index.js +5 -0
- package/lib/module/components/List/index.js.map +1 -0
- package/lib/module/components/Menu/Menu.js +12 -4
- package/lib/module/components/Menu/Menu.js.map +1 -1
- package/lib/module/components/ProgressBar/ProgressBar.js +4 -3
- package/lib/module/components/ProgressBar/ProgressBar.js.map +1 -1
- package/lib/module/components/SegmentedButton/SegmentedButton.js +213 -0
- package/lib/module/components/SegmentedButton/SegmentedButton.js.map +1 -0
- package/lib/module/components/SegmentedButton/SegmentedButton.stories.js +211 -0
- package/lib/module/components/SegmentedButton/SegmentedButton.stories.js.map +1 -0
- package/lib/module/components/SegmentedButton/SegmentedButton.test.js +96 -0
- package/lib/module/components/SegmentedButton/SegmentedButton.test.js.map +1 -0
- package/lib/module/components/SegmentedButton/index.js +4 -0
- package/lib/module/components/SegmentedButton/index.js.map +1 -0
- package/lib/module/components/Sidebar/Sidebar.js +20 -3
- package/lib/module/components/Sidebar/Sidebar.js.map +1 -1
- package/lib/module/components/Sidebar/Sidebar.stories.js +16 -0
- package/lib/module/components/Sidebar/Sidebar.stories.js.map +1 -1
- package/lib/module/components/Table/Table.js +70 -7
- package/lib/module/components/Table/Table.js.map +1 -1
- package/lib/module/components/Table/Table.stories.js +117 -0
- package/lib/module/components/Table/Table.stories.js.map +1 -1
- package/lib/module/components/Table/Table.test.js +58 -0
- package/lib/module/components/Table/Table.test.js.map +1 -1
- package/lib/module/components/_internal/ModalHostContext.js +17 -0
- package/lib/module/components/_internal/ModalHostContext.js.map +1 -0
- package/lib/module/components/index.js +2 -0
- package/lib/module/components/index.js.map +1 -1
- package/lib/typescript/commonjs/components/CodeInput/CodeInput.d.ts +5 -1
- package/lib/typescript/commonjs/components/CodeInput/CodeInput.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Dialog/Dialog.d.ts +13 -1
- package/lib/typescript/commonjs/components/Dialog/Dialog.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Dialog/StepDialog.d.ts +63 -0
- package/lib/typescript/commonjs/components/Dialog/StepDialog.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Dialog/index.d.ts +1 -0
- package/lib/typescript/commonjs/components/Dialog/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Icon/icons.generated.d.ts +8 -0
- package/lib/typescript/commonjs/components/Icon/icons.generated.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/List/List.d.ts +22 -0
- package/lib/typescript/commonjs/components/List/List.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/List/ListItem.d.ts +61 -0
- package/lib/typescript/commonjs/components/List/ListItem.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/List/index.d.ts +5 -0
- package/lib/typescript/commonjs/components/List/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Menu/Menu.d.ts +4 -2
- package/lib/typescript/commonjs/components/Menu/Menu.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/ProgressBar/ProgressBar.d.ts +3 -1
- package/lib/typescript/commonjs/components/ProgressBar/ProgressBar.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/SegmentedButton/SegmentedButton.d.ts +68 -0
- package/lib/typescript/commonjs/components/SegmentedButton/SegmentedButton.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/SegmentedButton/index.d.ts +2 -0
- package/lib/typescript/commonjs/components/SegmentedButton/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Sidebar/Sidebar.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Table/Table.d.ts +25 -3
- package/lib/typescript/commonjs/components/Table/Table.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/_internal/ModalHostContext.d.ts +11 -0
- package/lib/typescript/commonjs/components/_internal/ModalHostContext.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/index.d.ts +2 -0
- package/lib/typescript/commonjs/components/index.d.ts.map +1 -1
- package/lib/typescript/module/components/CodeInput/CodeInput.d.ts +5 -1
- package/lib/typescript/module/components/CodeInput/CodeInput.d.ts.map +1 -1
- package/lib/typescript/module/components/Dialog/Dialog.d.ts +13 -1
- package/lib/typescript/module/components/Dialog/Dialog.d.ts.map +1 -1
- package/lib/typescript/module/components/Dialog/StepDialog.d.ts +63 -0
- package/lib/typescript/module/components/Dialog/StepDialog.d.ts.map +1 -0
- package/lib/typescript/module/components/Dialog/index.d.ts +1 -0
- package/lib/typescript/module/components/Dialog/index.d.ts.map +1 -1
- package/lib/typescript/module/components/Icon/icons.generated.d.ts +8 -0
- package/lib/typescript/module/components/Icon/icons.generated.d.ts.map +1 -1
- package/lib/typescript/module/components/List/List.d.ts +22 -0
- package/lib/typescript/module/components/List/List.d.ts.map +1 -0
- package/lib/typescript/module/components/List/ListItem.d.ts +61 -0
- package/lib/typescript/module/components/List/ListItem.d.ts.map +1 -0
- package/lib/typescript/module/components/List/index.d.ts +5 -0
- package/lib/typescript/module/components/List/index.d.ts.map +1 -0
- package/lib/typescript/module/components/Menu/Menu.d.ts +4 -2
- package/lib/typescript/module/components/Menu/Menu.d.ts.map +1 -1
- package/lib/typescript/module/components/ProgressBar/ProgressBar.d.ts +3 -1
- package/lib/typescript/module/components/ProgressBar/ProgressBar.d.ts.map +1 -1
- package/lib/typescript/module/components/SegmentedButton/SegmentedButton.d.ts +68 -0
- package/lib/typescript/module/components/SegmentedButton/SegmentedButton.d.ts.map +1 -0
- package/lib/typescript/module/components/SegmentedButton/index.d.ts +2 -0
- package/lib/typescript/module/components/SegmentedButton/index.d.ts.map +1 -0
- package/lib/typescript/module/components/Sidebar/Sidebar.d.ts.map +1 -1
- package/lib/typescript/module/components/Table/Table.d.ts +25 -3
- package/lib/typescript/module/components/Table/Table.d.ts.map +1 -1
- package/lib/typescript/module/components/_internal/ModalHostContext.d.ts +11 -0
- package/lib/typescript/module/components/_internal/ModalHostContext.d.ts.map +1 -0
- package/lib/typescript/module/components/index.d.ts +2 -0
- package/lib/typescript/module/components/index.d.ts.map +1 -1
- package/package.json +16 -14
- package/src/components/CodeInput/CodeInput.tsx +46 -14
- package/src/components/Dialog/Dialog.tsx +92 -31
- package/src/components/Dialog/StepDialog.tsx +173 -0
- package/src/components/Dialog/index.ts +1 -0
- package/src/components/Icon/icons.generated.ts +9 -1
- package/src/components/List/List.tsx +45 -0
- package/src/components/List/ListItem.tsx +214 -0
- package/src/components/List/index.ts +4 -0
- package/src/components/Menu/Menu.tsx +15 -6
- package/src/components/ProgressBar/ProgressBar.tsx +6 -3
- package/src/components/SegmentedButton/SegmentedButton.tsx +269 -0
- package/src/components/SegmentedButton/index.ts +7 -0
- package/src/components/Sidebar/Sidebar.tsx +18 -10
- package/src/components/Table/Table.tsx +93 -8
- package/src/components/_internal/ModalHostContext.tsx +15 -0
- package/src/components/index.ts +2 -0
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.WithSwitch = exports.Types = exports.States = exports.Standalone = exports.Settings = exports.NoDividers = void 0;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _List = require("./List.js");
|
|
10
|
+
var _ListItem = require("./ListItem.js");
|
|
11
|
+
var _Avatar = require("../Avatar/Avatar.js");
|
|
12
|
+
var _Badge = require("../Badge/Badge.js");
|
|
13
|
+
var _Switch = require("../Switch/Switch.js");
|
|
14
|
+
var _Text = require("../Text/Text.js");
|
|
15
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
|
+
const meta = {
|
|
17
|
+
title: 'Components/List',
|
|
18
|
+
component: _List.List
|
|
19
|
+
};
|
|
20
|
+
var _default = exports.default = meta;
|
|
21
|
+
const PHOTO = {
|
|
22
|
+
uri: 'https://i.pravatar.cc/150?img=47'
|
|
23
|
+
};
|
|
24
|
+
const PHOTO2 = {
|
|
25
|
+
uri: 'https://i.pravatar.cc/150?img=32'
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
/** The three Figma types in one list. */
|
|
29
|
+
const Types = exports.Types = {
|
|
30
|
+
render: () => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
31
|
+
style: {
|
|
32
|
+
padding: 24,
|
|
33
|
+
width: 720
|
|
34
|
+
},
|
|
35
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_List.List, {
|
|
36
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
37
|
+
size: "md",
|
|
38
|
+
icon: "taxes",
|
|
39
|
+
title: "Taxes",
|
|
40
|
+
subtitle: "Rates and rules for accurate totals",
|
|
41
|
+
subtitleColor: "tertiary",
|
|
42
|
+
chevron: true,
|
|
43
|
+
onPress: () => {}
|
|
44
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
45
|
+
size: "lg",
|
|
46
|
+
align: "top",
|
|
47
|
+
leading: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.Avatar, {
|
|
48
|
+
name: "Juana Gomez",
|
|
49
|
+
source: PHOTO,
|
|
50
|
+
diameter: 72
|
|
51
|
+
}),
|
|
52
|
+
title: "Juana Gomez",
|
|
53
|
+
subtitle: "Cashier \xB7 4 open checks",
|
|
54
|
+
badge: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Badge.Badge, {
|
|
55
|
+
label: "On shift"
|
|
56
|
+
}),
|
|
57
|
+
onPress: () => {}
|
|
58
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
59
|
+
size: "sm",
|
|
60
|
+
leading: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.Avatar, {
|
|
61
|
+
name: "Marie Johnson",
|
|
62
|
+
source: PHOTO2,
|
|
63
|
+
diameter: 58
|
|
64
|
+
}),
|
|
65
|
+
overline: "mariejohnson@gmail.com",
|
|
66
|
+
title: "Marie Johnson Smith",
|
|
67
|
+
onPress: () => {}
|
|
68
|
+
})]
|
|
69
|
+
})
|
|
70
|
+
})
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
/** Settings-style list (icon + title + subtitle + chevron). */
|
|
74
|
+
const Settings = exports.Settings = {
|
|
75
|
+
render: () => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
76
|
+
style: {
|
|
77
|
+
padding: 24,
|
|
78
|
+
width: 640
|
|
79
|
+
},
|
|
80
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_List.List, {
|
|
81
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
82
|
+
icon: "taxes",
|
|
83
|
+
title: "Taxes",
|
|
84
|
+
subtitle: "Rates and rules for accurate totals",
|
|
85
|
+
subtitleColor: "tertiary",
|
|
86
|
+
chevron: true,
|
|
87
|
+
onPress: () => {}
|
|
88
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
89
|
+
icon: "settings",
|
|
90
|
+
title: "General",
|
|
91
|
+
subtitle: "Business name, timezone, currency",
|
|
92
|
+
subtitleColor: "tertiary",
|
|
93
|
+
chevron: true,
|
|
94
|
+
onPress: () => {}
|
|
95
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
96
|
+
icon: "user",
|
|
97
|
+
title: "Team",
|
|
98
|
+
subtitle: "Manage staff and roles",
|
|
99
|
+
subtitleColor: "tertiary",
|
|
100
|
+
chevron: true,
|
|
101
|
+
onPress: () => {}
|
|
102
|
+
})]
|
|
103
|
+
})
|
|
104
|
+
})
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
/** Trailing controls (e.g. a Switch) instead of a chevron. */
|
|
108
|
+
const WithSwitch = exports.WithSwitch = {
|
|
109
|
+
render: () => {
|
|
110
|
+
const [on, setOn] = (0, _react.useState)(true);
|
|
111
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
112
|
+
style: {
|
|
113
|
+
padding: 24,
|
|
114
|
+
width: 640
|
|
115
|
+
},
|
|
116
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_List.List, {
|
|
117
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
118
|
+
icon: "dish",
|
|
119
|
+
title: "Show product photos",
|
|
120
|
+
subtitle: "Display item images on the POS grid",
|
|
121
|
+
subtitleColor: "tertiary",
|
|
122
|
+
trailing: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Switch.Switch, {
|
|
123
|
+
value: on,
|
|
124
|
+
onValueChange: setOn
|
|
125
|
+
})
|
|
126
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
127
|
+
icon: "settings",
|
|
128
|
+
title: "Auto-print receipts",
|
|
129
|
+
trailing: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Switch.Switch, {
|
|
130
|
+
value: false,
|
|
131
|
+
onValueChange: () => {}
|
|
132
|
+
})
|
|
133
|
+
})]
|
|
134
|
+
})
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
};
|
|
138
|
+
|
|
139
|
+
/** Selected + disabled states. */
|
|
140
|
+
const States = exports.States = {
|
|
141
|
+
render: () => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
142
|
+
style: {
|
|
143
|
+
padding: 24,
|
|
144
|
+
width: 640
|
|
145
|
+
},
|
|
146
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_List.List, {
|
|
147
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
148
|
+
icon: "taxes",
|
|
149
|
+
title: "Selected row",
|
|
150
|
+
subtitle: "Highlighted",
|
|
151
|
+
selected: true,
|
|
152
|
+
onPress: () => {}
|
|
153
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
154
|
+
icon: "settings",
|
|
155
|
+
title: "Normal row",
|
|
156
|
+
subtitle: "Press me",
|
|
157
|
+
onPress: () => {}
|
|
158
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
159
|
+
icon: "user",
|
|
160
|
+
title: "Disabled row",
|
|
161
|
+
subtitle: "Not pressable",
|
|
162
|
+
disabled: true,
|
|
163
|
+
onPress: () => {}
|
|
164
|
+
})]
|
|
165
|
+
})
|
|
166
|
+
})
|
|
167
|
+
};
|
|
168
|
+
|
|
169
|
+
/** No dividers, fixed width. */
|
|
170
|
+
const NoDividers = exports.NoDividers = {
|
|
171
|
+
render: () => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
172
|
+
style: {
|
|
173
|
+
padding: 24
|
|
174
|
+
},
|
|
175
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_List.List, {
|
|
176
|
+
showDividers: false,
|
|
177
|
+
width: 360,
|
|
178
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
179
|
+
title: "One",
|
|
180
|
+
subtitle: "Sub one",
|
|
181
|
+
onPress: () => {}
|
|
182
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
183
|
+
title: "Two",
|
|
184
|
+
subtitle: "Sub two",
|
|
185
|
+
onPress: () => {}
|
|
186
|
+
})]
|
|
187
|
+
})
|
|
188
|
+
})
|
|
189
|
+
};
|
|
190
|
+
|
|
191
|
+
/** Standalone ListItem (its own divider). */
|
|
192
|
+
const Standalone = exports.Standalone = {
|
|
193
|
+
render: () => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
194
|
+
style: {
|
|
195
|
+
padding: 24,
|
|
196
|
+
width: 520
|
|
197
|
+
},
|
|
198
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
199
|
+
icon: "taxes",
|
|
200
|
+
title: "Standalone item",
|
|
201
|
+
subtitle: "With its own divider",
|
|
202
|
+
divider: true,
|
|
203
|
+
chevron: true,
|
|
204
|
+
onPress: () => {}
|
|
205
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.Text, {
|
|
206
|
+
variant: "caption",
|
|
207
|
+
color: "secondary",
|
|
208
|
+
style: {
|
|
209
|
+
marginTop: 8
|
|
210
|
+
},
|
|
211
|
+
children: "Below the divider"
|
|
212
|
+
})]
|
|
213
|
+
})
|
|
214
|
+
};
|
|
215
|
+
//# sourceMappingURL=List.stories.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_List","_ListItem","_Avatar","_Badge","_Switch","_Text","_jsxRuntime","meta","title","component","List","_default","exports","default","PHOTO","uri","PHOTO2","Types","render","jsx","View","style","padding","width","children","jsxs","ListItem","size","icon","subtitle","subtitleColor","chevron","onPress","align","leading","Avatar","name","source","diameter","badge","Badge","label","overline","Settings","WithSwitch","on","setOn","useState","trailing","Switch","value","onValueChange","States","selected","disabled","NoDividers","showDividers","Standalone","divider","Text","variant","color","marginTop"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/List/List.stories.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _reactNative = require("@testing-library/react-native");
|
|
4
|
+
var _reactNative2 = require("react-native");
|
|
5
|
+
var _index = require("../../theme/index.js");
|
|
6
|
+
var _List = require("./List.js");
|
|
7
|
+
var _ListItem = require("./ListItem.js");
|
|
8
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
9
|
+
function wrap(ui) {
|
|
10
|
+
return (0, _reactNative.render)(/*#__PURE__*/(0, _jsxRuntime.jsx)(_index.ThemeProvider, {
|
|
11
|
+
children: ui
|
|
12
|
+
}));
|
|
13
|
+
}
|
|
14
|
+
describe('ListItem', () => {
|
|
15
|
+
it('renders title, subtitle and overline', () => {
|
|
16
|
+
wrap(/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
17
|
+
overline: "email@x.com",
|
|
18
|
+
title: "Marie",
|
|
19
|
+
subtitle: "Cashier"
|
|
20
|
+
}));
|
|
21
|
+
expect(_reactNative.screen.getByText('email@x.com')).toBeTruthy();
|
|
22
|
+
expect(_reactNative.screen.getByText('Marie')).toBeTruthy();
|
|
23
|
+
expect(_reactNative.screen.getByText('Cashier')).toBeTruthy();
|
|
24
|
+
});
|
|
25
|
+
it('renders a badge and a subtitle node', () => {
|
|
26
|
+
wrap(/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
27
|
+
title: "Juana",
|
|
28
|
+
subtitle: "Cashier",
|
|
29
|
+
badge: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative2.Text, {
|
|
30
|
+
children: "On shift"
|
|
31
|
+
})
|
|
32
|
+
}));
|
|
33
|
+
expect(_reactNative.screen.getByText('On shift')).toBeTruthy();
|
|
34
|
+
});
|
|
35
|
+
it('renders a leading node and a custom trailing node', () => {
|
|
36
|
+
wrap(/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
37
|
+
title: "Item",
|
|
38
|
+
leading: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative2.Text, {
|
|
39
|
+
children: "AV"
|
|
40
|
+
}),
|
|
41
|
+
trailing: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative2.Text, {
|
|
42
|
+
children: "\u203A"
|
|
43
|
+
})
|
|
44
|
+
}));
|
|
45
|
+
expect(_reactNative.screen.getByText('AV')).toBeTruthy();
|
|
46
|
+
expect(_reactNative.screen.getByText('›')).toBeTruthy();
|
|
47
|
+
});
|
|
48
|
+
it('fires onPress when pressable', () => {
|
|
49
|
+
const onPress = jest.fn();
|
|
50
|
+
wrap(/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
51
|
+
title: "Taxes",
|
|
52
|
+
onPress: onPress
|
|
53
|
+
}));
|
|
54
|
+
_reactNative.fireEvent.press(_reactNative.screen.getByText('Taxes'));
|
|
55
|
+
expect(onPress).toHaveBeenCalledTimes(1);
|
|
56
|
+
});
|
|
57
|
+
it('is not pressable when disabled', () => {
|
|
58
|
+
const onPress = jest.fn();
|
|
59
|
+
wrap(/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
60
|
+
title: "Taxes",
|
|
61
|
+
onPress: onPress,
|
|
62
|
+
disabled: true
|
|
63
|
+
}));
|
|
64
|
+
_reactNative.fireEvent.press(_reactNative.screen.getByText('Taxes'));
|
|
65
|
+
expect(onPress).not.toHaveBeenCalled();
|
|
66
|
+
});
|
|
67
|
+
it('marks selected state', () => {
|
|
68
|
+
wrap(/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
69
|
+
title: "Taxes",
|
|
70
|
+
selected: true,
|
|
71
|
+
onPress: () => {}
|
|
72
|
+
}));
|
|
73
|
+
expect(_reactNative.screen.getByLabelText('Taxes').props.accessibilityState).toMatchObject({
|
|
74
|
+
selected: true
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
describe('List', () => {
|
|
79
|
+
it('renders its items', () => {
|
|
80
|
+
wrap(/*#__PURE__*/(0, _jsxRuntime.jsxs)(_List.List, {
|
|
81
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
82
|
+
title: "One"
|
|
83
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
84
|
+
title: "Two"
|
|
85
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.ListItem, {
|
|
86
|
+
title: "Three"
|
|
87
|
+
})]
|
|
88
|
+
}));
|
|
89
|
+
expect(_reactNative.screen.getByText('One')).toBeTruthy();
|
|
90
|
+
expect(_reactNative.screen.getByText('Two')).toBeTruthy();
|
|
91
|
+
expect(_reactNative.screen.getByText('Three')).toBeTruthy();
|
|
92
|
+
});
|
|
93
|
+
});
|
|
94
|
+
//# sourceMappingURL=List.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_reactNative2","_index","_List","_ListItem","_jsxRuntime","wrap","ui","render","jsx","ThemeProvider","children","describe","it","ListItem","overline","title","subtitle","expect","screen","getByText","toBeTruthy","badge","Text","leading","trailing","onPress","jest","fn","fireEvent","press","toHaveBeenCalledTimes","disabled","not","toHaveBeenCalled","selected","getByLabelText","props","accessibilityState","toMatchObject","jsxs","List"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/List/List.test.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ListItem = ListItem;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _index = require("../../theme/index.js");
|
|
10
|
+
var _Icon = require("../Icon/Icon.js");
|
|
11
|
+
var _Text = require("../Text/Text.js");
|
|
12
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
13
|
+
const SIZES = {
|
|
14
|
+
sm: {
|
|
15
|
+
titleVariant: 'bodyMedium',
|
|
16
|
+
titleWeight: 'medium',
|
|
17
|
+
pv: 12,
|
|
18
|
+
gap: 16,
|
|
19
|
+
contentGap: 4
|
|
20
|
+
},
|
|
21
|
+
md: {
|
|
22
|
+
titleVariant: 'bodyLarge',
|
|
23
|
+
titleWeight: 'medium',
|
|
24
|
+
pv: 16,
|
|
25
|
+
gap: 16,
|
|
26
|
+
contentGap: 8
|
|
27
|
+
},
|
|
28
|
+
lg: {
|
|
29
|
+
titleVariant: 'h3',
|
|
30
|
+
titleWeight: 'semibold',
|
|
31
|
+
pv: 20,
|
|
32
|
+
gap: 20,
|
|
33
|
+
contentGap: 12
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* ListItem — a flexible list row (Figma "List items"). Anatomy: an optional
|
|
39
|
+
* leading column (avatar/custom) or an inline title `icon`, an overline / title /
|
|
40
|
+
* subtitle text block, an inline `badge`, and a trailing slot or forward
|
|
41
|
+
* `chevron`. `size` (sm/md/lg) scales the title and spacing; press adds
|
|
42
|
+
* hover/active states. Fills its parent by default or takes a fixed `width`.
|
|
43
|
+
* Usually wrapped in `List`, which manages the dividers.
|
|
44
|
+
*/
|
|
45
|
+
function ListItem({
|
|
46
|
+
title,
|
|
47
|
+
subtitle,
|
|
48
|
+
overline,
|
|
49
|
+
icon,
|
|
50
|
+
leading,
|
|
51
|
+
trailing,
|
|
52
|
+
chevron = false,
|
|
53
|
+
badge,
|
|
54
|
+
size = 'md',
|
|
55
|
+
align = 'center',
|
|
56
|
+
divider = false,
|
|
57
|
+
selected = false,
|
|
58
|
+
disabled = false,
|
|
59
|
+
onPress,
|
|
60
|
+
titleColor,
|
|
61
|
+
subtitleColor,
|
|
62
|
+
overlineColor,
|
|
63
|
+
titleVariant,
|
|
64
|
+
titleWeight,
|
|
65
|
+
paddingVertical,
|
|
66
|
+
paddingHorizontal = 12,
|
|
67
|
+
gap,
|
|
68
|
+
width,
|
|
69
|
+
fullWidth = true,
|
|
70
|
+
style,
|
|
71
|
+
accessibilityLabel
|
|
72
|
+
}) {
|
|
73
|
+
const theme = (0, _index.useTheme)();
|
|
74
|
+
const cfg = SIZES[size];
|
|
75
|
+
const [hovered, setHovered] = (0, _react.useState)(false);
|
|
76
|
+
const titleTint = titleColor ?? theme.colors.action.secondaryForeground;
|
|
77
|
+
const interactive = !!onPress;
|
|
78
|
+
const backgroundColor = selected ? theme.colors.background.subtle : hovered && interactive && !disabled ? theme.colors.background.muted : 'transparent';
|
|
79
|
+
const containerStyle = {
|
|
80
|
+
flexDirection: 'row',
|
|
81
|
+
alignItems: align === 'top' ? 'flex-start' : 'center',
|
|
82
|
+
gap: gap ?? cfg.gap,
|
|
83
|
+
paddingVertical: paddingVertical ?? cfg.pv,
|
|
84
|
+
paddingHorizontal,
|
|
85
|
+
backgroundColor,
|
|
86
|
+
opacity: disabled ? 0.5 : 1,
|
|
87
|
+
...(divider ? {
|
|
88
|
+
borderBottomWidth: 1,
|
|
89
|
+
borderBottomColor: theme.colors.border.subtle
|
|
90
|
+
} : null),
|
|
91
|
+
...(width != null ? {
|
|
92
|
+
width
|
|
93
|
+
} : fullWidth ? {
|
|
94
|
+
alignSelf: 'stretch'
|
|
95
|
+
} : {
|
|
96
|
+
alignSelf: 'flex-start'
|
|
97
|
+
})
|
|
98
|
+
};
|
|
99
|
+
const content = /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
100
|
+
children: [leading != null ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
101
|
+
style: {
|
|
102
|
+
flexShrink: 0
|
|
103
|
+
},
|
|
104
|
+
children: leading
|
|
105
|
+
}) : null, /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
106
|
+
style: {
|
|
107
|
+
flex: 1,
|
|
108
|
+
minWidth: 0,
|
|
109
|
+
gap: cfg.contentGap
|
|
110
|
+
},
|
|
111
|
+
children: [overline ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.Text, {
|
|
112
|
+
variant: "bodyMedium",
|
|
113
|
+
color: overlineColor ?? 'tertiary',
|
|
114
|
+
numberOfLines: 1,
|
|
115
|
+
children: overline
|
|
116
|
+
}) : null, /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
117
|
+
style: {
|
|
118
|
+
flexDirection: 'row',
|
|
119
|
+
alignItems: 'center',
|
|
120
|
+
gap: 16
|
|
121
|
+
},
|
|
122
|
+
children: [icon ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
123
|
+
style: {
|
|
124
|
+
width: 24,
|
|
125
|
+
height: 24,
|
|
126
|
+
flexShrink: 0
|
|
127
|
+
},
|
|
128
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.Icon, {
|
|
129
|
+
name: icon,
|
|
130
|
+
size: 24,
|
|
131
|
+
color: titleTint
|
|
132
|
+
})
|
|
133
|
+
}) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.Text, {
|
|
134
|
+
variant: titleVariant ?? cfg.titleVariant,
|
|
135
|
+
weight: titleWeight ?? cfg.titleWeight,
|
|
136
|
+
color: titleTint,
|
|
137
|
+
numberOfLines: 1,
|
|
138
|
+
style: {
|
|
139
|
+
flexShrink: 1,
|
|
140
|
+
minWidth: 0
|
|
141
|
+
},
|
|
142
|
+
children: title
|
|
143
|
+
})]
|
|
144
|
+
}), subtitle != null || badge != null ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
145
|
+
style: {
|
|
146
|
+
flexDirection: 'row',
|
|
147
|
+
alignItems: 'center',
|
|
148
|
+
gap: 12
|
|
149
|
+
},
|
|
150
|
+
children: [typeof subtitle === 'string' || typeof subtitle === 'number' ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.Text, {
|
|
151
|
+
variant: "bodyMedium",
|
|
152
|
+
color: subtitleColor ?? 'secondary',
|
|
153
|
+
numberOfLines: 1,
|
|
154
|
+
style: {
|
|
155
|
+
flexShrink: 1,
|
|
156
|
+
minWidth: 0
|
|
157
|
+
},
|
|
158
|
+
children: String(subtitle)
|
|
159
|
+
}) : subtitle, badge != null ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
160
|
+
style: {
|
|
161
|
+
flexShrink: 0
|
|
162
|
+
},
|
|
163
|
+
children: badge
|
|
164
|
+
}) : null]
|
|
165
|
+
}) : null]
|
|
166
|
+
}), trailing != null ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
167
|
+
style: {
|
|
168
|
+
flexShrink: 0
|
|
169
|
+
},
|
|
170
|
+
children: trailing
|
|
171
|
+
}) : chevron ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
172
|
+
style: {
|
|
173
|
+
width: 24,
|
|
174
|
+
height: 24,
|
|
175
|
+
flexShrink: 0
|
|
176
|
+
},
|
|
177
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.Icon, {
|
|
178
|
+
name: "chevron-forward",
|
|
179
|
+
size: 24,
|
|
180
|
+
color: "tertiary"
|
|
181
|
+
})
|
|
182
|
+
}) : null]
|
|
183
|
+
});
|
|
184
|
+
if (!interactive) {
|
|
185
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
186
|
+
accessibilityLabel: accessibilityLabel,
|
|
187
|
+
style: [containerStyle, style],
|
|
188
|
+
children: content
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
|
|
192
|
+
onPress: disabled ? undefined : onPress,
|
|
193
|
+
onHoverIn: disabled ? undefined : () => setHovered(true),
|
|
194
|
+
onHoverOut: disabled ? undefined : () => setHovered(false),
|
|
195
|
+
disabled: disabled,
|
|
196
|
+
accessibilityRole: "button",
|
|
197
|
+
accessibilityState: {
|
|
198
|
+
selected,
|
|
199
|
+
disabled
|
|
200
|
+
},
|
|
201
|
+
accessibilityLabel: accessibilityLabel ?? title,
|
|
202
|
+
style: ({
|
|
203
|
+
pressed
|
|
204
|
+
}) => [containerStyle, pressed && !disabled ? {
|
|
205
|
+
backgroundColor: theme.colors.background.subtle
|
|
206
|
+
} : null, style],
|
|
207
|
+
children: content
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
//# sourceMappingURL=ListItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_index","_Icon","_Text","_jsxRuntime","SIZES","sm","titleVariant","titleWeight","pv","gap","contentGap","md","lg","ListItem","title","subtitle","overline","icon","leading","trailing","chevron","badge","size","align","divider","selected","disabled","onPress","titleColor","subtitleColor","overlineColor","paddingVertical","paddingHorizontal","width","fullWidth","style","accessibilityLabel","theme","useTheme","cfg","hovered","setHovered","useState","titleTint","colors","action","secondaryForeground","interactive","backgroundColor","background","subtle","muted","containerStyle","flexDirection","alignItems","opacity","borderBottomWidth","borderBottomColor","border","alignSelf","content","jsxs","Fragment","children","jsx","View","flexShrink","flex","minWidth","Text","variant","color","numberOfLines","height","Icon","name","weight","String","Pressable","undefined","onHoverIn","onHoverOut","accessibilityRole","accessibilityState","pressed"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/List/ListItem.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "List", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _List.List;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "ListItem", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _ListItem.ListItem;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
var _List = require("./List.js");
|
|
19
|
+
var _ListItem = require("./ListItem.js");
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_List","require","_ListItem"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/List/index.ts"],"mappings":";;;;;;;;;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,SAAA,GAAAD,OAAA","ignoreList":[]}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.Menu = Menu;
|
|
7
7
|
var _react = require("react");
|
|
8
8
|
var _reactNative = require("react-native");
|
|
9
|
+
var _ModalHostContext = require("../_internal/ModalHostContext.js");
|
|
9
10
|
var _placement = require("./placement.js");
|
|
10
11
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
12
|
/** A point on a box: a vertical and a horizontal edge/center. */
|
|
@@ -42,13 +43,17 @@ function Menu({
|
|
|
42
43
|
offset = 8,
|
|
43
44
|
autoFit = true,
|
|
44
45
|
insets = ZERO_INSETS,
|
|
45
|
-
statusBarHeight
|
|
46
|
+
statusBarHeight,
|
|
46
47
|
open: openProp,
|
|
47
48
|
onOpenChange,
|
|
48
49
|
screenPadding = 8,
|
|
49
50
|
triggerStyle
|
|
50
51
|
}) {
|
|
51
52
|
const triggerRef = (0, _react.useRef)(null);
|
|
53
|
+
// Inside a full-screen Modal host (e.g. Dialog) the trigger is already measured
|
|
54
|
+
// in full-screen coordinates, so no status-bar compensation is needed there.
|
|
55
|
+
const insideModalHost = (0, _react.useContext)(_ModalHostContext.ModalHostContext);
|
|
56
|
+
const effectiveStatusBarHeight = statusBarHeight ?? (insideModalHost ? 0 : DEFAULT_STATUS_BAR_HEIGHT);
|
|
52
57
|
const [uncontrolledOpen, setUncontrolledOpen] = (0, _react.useState)(false);
|
|
53
58
|
const isControlled = openProp !== undefined;
|
|
54
59
|
const open = isControlled ? openProp : uncontrolledOpen;
|
|
@@ -125,7 +130,7 @@ function Menu({
|
|
|
125
130
|
insets,
|
|
126
131
|
screenWidth: screen.width,
|
|
127
132
|
screenHeight: screen.height,
|
|
128
|
-
statusBarHeight,
|
|
133
|
+
statusBarHeight: effectiveStatusBarHeight,
|
|
129
134
|
autoFit
|
|
130
135
|
}) : null;
|
|
131
136
|
const top = placement?.top ?? 0;
|
|
@@ -178,7 +183,10 @@ function Menu({
|
|
|
178
183
|
}) : 1
|
|
179
184
|
}]
|
|
180
185
|
},
|
|
181
|
-
children:
|
|
186
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ModalHostContext.ModalHostContext.Provider, {
|
|
187
|
+
value: true,
|
|
188
|
+
children: content
|
|
189
|
+
})
|
|
182
190
|
})
|
|
183
191
|
})
|
|
184
192
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","_placement","_jsxRuntime","ZERO_INSETS","top","right","bottom","left","DEFAULT_STATUS_BAR_HEIGHT","Platform","OS","StatusBar","currentHeight","Menu","renderTrigger","children","anchorOrigin","vertical","horizontal","menuOrigin","offset","autoFit","insets","statusBarHeight","open","openProp","onOpenChange","screenPadding","triggerStyle","triggerRef","useRef","uncontrolledOpen","setUncontrolledOpen","useState","isControlled","undefined","rect","setRect","menuSize","setMenuSize","naturalHeight","setNaturalHeight","anim","Animated","Value","current","setOpen","next","close","toggle","useEffect","setValue","measureInWindow","x","y","width","height","timing","toValue","duration","easing","Easing","out","ease","useNativeDriver","start","onMenuLayout","e","nativeEvent","layout","screen","Dimensions","get","placement","computeMenuPlacement","menuWidth","menuHeight","screenWidth","screenHeight","autoMaxHeight","maxHeight","placed","Boolean","content","triggerWidth","jsxs","Fragment","jsx","View","ref","collapsable","style","alignSelf","Modal","visible","transparent","animationType","onRequestClose","statusBarTranslucent","Pressable","accessibilityLabel","onPress","flex","onLayout","onStartShouldSetResponder","position","opacity","transform","scale","interpolate","inputRange","outputRange"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/Menu/Menu.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAaA,IAAAE,
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_ModalHostContext","_placement","_jsxRuntime","ZERO_INSETS","top","right","bottom","left","DEFAULT_STATUS_BAR_HEIGHT","Platform","OS","StatusBar","currentHeight","Menu","renderTrigger","children","anchorOrigin","vertical","horizontal","menuOrigin","offset","autoFit","insets","statusBarHeight","open","openProp","onOpenChange","screenPadding","triggerStyle","triggerRef","useRef","insideModalHost","useContext","ModalHostContext","effectiveStatusBarHeight","uncontrolledOpen","setUncontrolledOpen","useState","isControlled","undefined","rect","setRect","menuSize","setMenuSize","naturalHeight","setNaturalHeight","anim","Animated","Value","current","setOpen","next","close","toggle","useEffect","setValue","measureInWindow","x","y","width","height","timing","toValue","duration","easing","Easing","out","ease","useNativeDriver","start","onMenuLayout","e","nativeEvent","layout","screen","Dimensions","get","placement","computeMenuPlacement","menuWidth","menuHeight","screenWidth","screenHeight","autoMaxHeight","maxHeight","placed","Boolean","content","triggerWidth","jsxs","Fragment","jsx","View","ref","collapsable","style","alignSelf","Modal","visible","transparent","animationType","onRequestClose","statusBarTranslucent","Pressable","accessibilityLabel","onPress","flex","onLayout","onStartShouldSetResponder","position","opacity","transform","scale","interpolate","inputRange","outputRange","Provider","value"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/Menu/Menu.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAaA,IAAAE,iBAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AAAmD,IAAAI,WAAA,GAAAJ,OAAA;AAKnD;;AAMA;;AAyDA,MAAMK,WAAuB,GAAG;EAAEC,GAAG,EAAE,CAAC;EAAEC,KAAK,EAAE,CAAC;EAAEC,MAAM,EAAE,CAAC;EAAEC,IAAI,EAAE;AAAE,CAAC;;AAExE;AACA,MAAMC,yBAAyB,GAAGC,qBAAQ,CAACC,EAAE,KAAK,SAAS,GAAGC,sBAAS,CAACC,aAAa,IAAI,CAAC,GAAG,CAAC;AAS9F;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,IAAIA,CAAC;EACnBC,aAAa;EACbC,QAAQ;EACRC,YAAY,GAAG;IAAEC,QAAQ,EAAE,QAAQ;IAAEC,UAAU,EAAE;EAAO,CAAC;EACzDC,UAAU,GAAG;IAAEF,QAAQ,EAAE,KAAK;IAAEC,UAAU,EAAE;EAAO,CAAC;EACpDE,MAAM,GAAG,CAAC;EACVC,OAAO,GAAG,IAAI;EACdC,MAAM,GAAGnB,WAAW;EACpBoB,eAAe;EACfC,IAAI,EAAEC,QAAQ;EACdC,YAAY;EACZC,aAAa,GAAG,CAAC;EACjBC;AACS,CAAC,EAAE;EACZ,MAAMC,UAAU,GAAG,IAAAC,aAAM,EAAO,IAAI,CAAC;EACrC;EACA;EACA,MAAMC,eAAe,GAAG,IAAAC,iBAAU,EAACC,kCAAgB,CAAC;EACpD,MAAMC,wBAAwB,GAC5BX,eAAe,KAAKQ,eAAe,GAAG,CAAC,GAAGvB,yBAAyB,CAAC;EACtE,MAAM,CAAC2B,gBAAgB,EAAEC,mBAAmB,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EAC/D,MAAMC,YAAY,GAAGb,QAAQ,KAAKc,SAAS;EAC3C,MAAMf,IAAI,GAAGc,YAAY,GAAGb,QAAQ,GAAGU,gBAAgB;EAEvD,MAAM,CAACK,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAJ,eAAQ,EAAc,IAAI,CAAC;EACnD,MAAM,CAACK,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAN,eAAQ,EAA2C,IAAI,CAAC;EACxF;EACA;EACA;EACA,MAAM,CAACO,aAAa,EAAEC,gBAAgB,CAAC,GAAG,IAAAR,eAAQ,EAAgB,IAAI,CAAC;EACvE,MAAMS,IAAI,GAAG,IAAAhB,aAAM,EAAC,IAAIiB,qBAAQ,CAACC,KAAK,CAAC,CAAC,CAAC,CAAC,CAACC,OAAO;EAElD,MAAMC,OAAO,GAAIC,IAAa,IAAK;IACjC,IAAI,CAACb,YAAY,EAAEF,mBAAmB,CAACe,IAAI,CAAC;IAC5CzB,YAAY,GAAGyB,IAAI,CAAC;EACtB,CAAC;EACD,MAAMC,KAAK,GAAGA,CAAA,KAAMF,OAAO,CAAC,KAAK,CAAC;EAClC,MAAMG,MAAM,GAAGA,CAAA,KAAMH,OAAO,CAAC,CAAC1B,IAAI,CAAC;;EAEnC;EACA,IAAA8B,gBAAS,EAAC,MAAM;IACd,IAAI,CAAC9B,IAAI,EAAE;MACTmB,WAAW,CAAC,IAAI,CAAC;MACjBE,gBAAgB,CAAC,IAAI,CAAC;MACtBC,IAAI,CAACS,QAAQ,CAAC,CAAC,CAAC;MAChB;IACF;IACA1B,UAAU,CAACoB,OAAO,EAAEO,eAAe,CAAC,CAACC,CAAC,EAAEC,CAAC,EAAEC,KAAK,EAAEC,MAAM,KAAK;MAC3DnB,OAAO,CAAC;QAAEgB,CAAC;QAAEC,CAAC;QAAEC,KAAK;QAAEC;MAAO,CAAC,CAAC;IAClC,CAAC,CAAC;EACJ,CAAC,EAAE,CAACpC,IAAI,EAAEsB,IAAI,CAAC,CAAC;;EAEhB;EACA,IAAAQ,gBAAS,EAAC,MAAM;IACd,IAAI9B,IAAI,IAAIgB,IAAI,IAAIE,QAAQ,EAAE;MAC5BK,qBAAQ,CAACc,MAAM,CAACf,IAAI,EAAE;QACpBgB,OAAO,EAAE,CAAC;QACVC,QAAQ,EAAE,GAAG;QACbC,MAAM,EAAEC,mBAAM,CAACC,GAAG,CAACD,mBAAM,CAACE,IAAI,CAAC;QAC/BC,eAAe,EAAE3D,qBAAQ,CAACC,EAAE,KAAK;MACnC,CAAC,CAAC,CAAC2D,KAAK,CAAC,CAAC;IACZ;EACF,CAAC,EAAE,CAAC7C,IAAI,EAAEgB,IAAI,EAAEE,QAAQ,EAAEI,IAAI,CAAC,CAAC;EAEhC,MAAMwB,YAAY,GAAIC,CAAoB,IAAK;IAC7C,MAAM;MAAEZ,KAAK;MAAEC;IAAO,CAAC,GAAGW,CAAC,CAACC,WAAW,CAACC,MAAM;IAC9C,IAAI,CAAC/B,QAAQ,IAAIA,QAAQ,CAACiB,KAAK,KAAKA,KAAK,IAAIjB,QAAQ,CAACkB,MAAM,KAAKA,MAAM,EAAE;MACvEjB,WAAW,CAAC;QAAEgB,KAAK;QAAEC;MAAO,CAAC,CAAC;IAChC;IACA;IACA,IAAIhB,aAAa,KAAK,IAAI,EAAEC,gBAAgB,CAACe,MAAM,CAAC;EACtD,CAAC;;EAED;EACA;EACA,MAAMc,MAAM,GAAGC,uBAAU,CAACC,GAAG,CAAC,QAAQ,CAAC;EACvC,MAAMC,SAAS,GACbrC,IAAI,IAAII,aAAa,KAAK,IAAI,GAC1B,IAAAkC,+BAAoB,EAAC;IACnBtC,IAAI;IACJuC,SAAS,EAAErC,QAAQ,EAAEiB,KAAK,IAAI,CAAC;IAC/BqB,UAAU,EAAEtC,QAAQ,EAAEkB,MAAM,IAAIhB,aAAa;IAC7CA,aAAa;IACb5B,YAAY;IACZG,UAAU;IACVC,MAAM;IACNO,aAAa;IACbL,MAAM;IACN2D,WAAW,EAAEP,MAAM,CAACf,KAAK;IACzBuB,YAAY,EAAER,MAAM,CAACd,MAAM;IAC3BrC,eAAe,EAAEW,wBAAwB;IACzCb;EACF,CAAC,CAAC,GACF,IAAI;EAEV,MAAMjB,GAAG,GAAGyE,SAAS,EAAEzE,GAAG,IAAI,CAAC;EAC/B,MAAMG,IAAI,GAAGsE,SAAS,EAAEtE,IAAI,IAAI,CAAC;EACjC,MAAM4E,aAAa,GAAGN,SAAS,EAAEO,SAAS;EAE1C,MAAMC,MAAM,GAAGC,OAAO,CAAC9C,IAAI,IAAIE,QAAQ,CAAC;EACxC,MAAM6C,OAAO,GACX,OAAOxE,QAAQ,KAAK,UAAU,GAC1BA,QAAQ,CAAC;IAAEqC,KAAK;IAAEoC,YAAY,EAAEhD,IAAI,EAAEmB,KAAK;IAAEyB,SAAS,EAAED;EAAc,CAAC,CAAC,GACxEpE,QAAQ;EAEd,oBACE,IAAAb,WAAA,CAAAuF,IAAA,EAAAvF,WAAA,CAAAwF,QAAA;IAAA3E,QAAA,gBACE,IAAAb,WAAA,CAAAyF,GAAA,EAAC5F,YAAA,CAAA6F,IAAI;MACHC,GAAG,EAAEhE,UAAW;MAChBiE,WAAW,EAAE,KAAM;MACnBC,KAAK,EAAE,CAAC;QAAEC,SAAS,EAAE;MAAa,CAAC,EAAEpE,YAAY,CAAE;MAAAb,QAAA,EAElDD,aAAa,CAAC;QAAEU,IAAI;QAAE6B,MAAM;QAAED;MAAM,CAAC;IAAC,CACnC,CAAC,eAEP,IAAAlD,WAAA,CAAAyF,GAAA,EAAC5F,YAAA,CAAAkG,KAAK;MACJC,OAAO,EAAE1E,IAAK;MACd2E,WAAW;MACXC,aAAa,EAAC,MAAM;MACpBC,cAAc,EAAEjD,KAAM;MACtBkD,oBAAoB;MAAAvF,QAAA,eAEpB,IAAAb,WAAA,CAAAyF,GAAA,EAAC5F,YAAA,CAAAwG,SAAS;QACRC,kBAAkB,EAAC,YAAY;QAC/BC,OAAO,EAAErD,KAAM;QACf2C,KAAK,EAAE;UAAEW,IAAI,EAAE;QAAE,CAAE;QAAA3F,QAAA,eAEnB,IAAAb,WAAA,CAAAyF,GAAA,EAAC5F,YAAA,CAAAgD,QAAQ,CAAC6C,IAAI;UACZe,QAAQ,EAAErC;UACV;UAAA;UACAsC,yBAAyB,EAAEA,CAAA,KAAM,IAAK;UACtCb,KAAK,EAAE;YACLc,QAAQ,EAAE,UAAU;YACpBzG,GAAG;YACHG,IAAI;YACJuG,OAAO,EAAEzB,MAAM,GAAGvC,IAAI,GAAG,CAAC;YAC1BiE,SAAS,EAAE,CAAC;cAAEC,KAAK,EAAE3B,MAAM,GAAGvC,IAAI,CAACmE,WAAW,CAAC;gBAAEC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;gBAAEC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;cAAE,CAAC,CAAC,GAAG;YAAE,CAAC;UACtG,CAAE;UAAApG,QAAA,eAGF,IAAAb,WAAA,CAAAyF,GAAA,EAAC3F,iBAAA,CAAAiC,gBAAgB,CAACmF,QAAQ;YAACC,KAAK,EAAE,IAAK;YAAAtG,QAAA,EAAEwE;UAAO,CAA4B;QAAC,CAChE;MAAC,CACP;IAAC,CACP,CAAC;EAAA,CACR,CAAC;AAEP","ignoreList":[]}
|