@fluentui-react-native/menu 1.2.28 → 1.3.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/CHANGELOG.json +30 -1
- package/CHANGELOG.md +15 -2
- package/SPEC.md +29 -0
- package/lib/Menu/Menu.types.d.ts +1 -0
- package/lib/Menu/Menu.types.d.ts.map +1 -1
- package/lib/MenuItem/MenuItemTokens.macos.d.ts.map +1 -1
- package/lib/MenuItem/MenuItemTokens.macos.js +1 -0
- package/lib/MenuItem/MenuItemTokens.macos.js.map +1 -1
- package/lib/MenuList/MenuList.d.ts +2 -1
- package/lib/MenuList/MenuList.d.ts.map +1 -1
- package/lib/MenuList/MenuList.js +7 -3
- package/lib/MenuList/MenuList.js.map +1 -1
- package/lib/MenuList/MenuList.styling.d.ts +1 -0
- package/lib/MenuList/MenuList.styling.d.ts.map +1 -1
- package/lib/MenuList/MenuList.styling.js +2 -0
- package/lib/MenuList/MenuList.styling.js.map +1 -1
- package/lib/MenuList/MenuList.types.d.ts +2 -0
- package/lib/MenuList/MenuList.types.d.ts.map +1 -1
- package/lib/MenuList/MenuListTokens.win32.d.ts.map +1 -1
- package/lib/MenuList/MenuListTokens.win32.js +5 -1
- package/lib/MenuList/MenuListTokens.win32.js.map +1 -1
- package/lib/MenuList/useMenuList.d.ts.map +1 -1
- package/lib/MenuList/useMenuList.js +1 -0
- package/lib/MenuList/useMenuList.js.map +1 -1
- package/lib/MenuPopover/MenuPopover.d.ts.map +1 -1
- package/lib/MenuPopover/MenuPopover.js +11 -2
- package/lib/MenuPopover/MenuPopover.js.map +1 -1
- package/lib/context/menuContext.d.ts.map +1 -1
- package/lib/context/menuContext.js +1 -0
- package/lib/context/menuContext.js.map +1 -1
- package/lib-commonjs/Menu/Menu.types.d.ts +1 -0
- package/lib-commonjs/Menu/Menu.types.d.ts.map +1 -1
- package/lib-commonjs/MenuItem/MenuItemTokens.macos.d.ts.map +1 -1
- package/lib-commonjs/MenuItem/MenuItemTokens.macos.js +1 -0
- package/lib-commonjs/MenuItem/MenuItemTokens.macos.js.map +1 -1
- package/lib-commonjs/MenuList/MenuList.d.ts +2 -1
- package/lib-commonjs/MenuList/MenuList.d.ts.map +1 -1
- package/lib-commonjs/MenuList/MenuList.js +9 -4
- package/lib-commonjs/MenuList/MenuList.js.map +1 -1
- package/lib-commonjs/MenuList/MenuList.styling.d.ts +1 -0
- package/lib-commonjs/MenuList/MenuList.styling.d.ts.map +1 -1
- package/lib-commonjs/MenuList/MenuList.styling.js +3 -1
- package/lib-commonjs/MenuList/MenuList.styling.js.map +1 -1
- package/lib-commonjs/MenuList/MenuList.types.d.ts +2 -0
- package/lib-commonjs/MenuList/MenuList.types.d.ts.map +1 -1
- package/lib-commonjs/MenuList/MenuListTokens.win32.d.ts.map +1 -1
- package/lib-commonjs/MenuList/MenuListTokens.win32.js +5 -1
- package/lib-commonjs/MenuList/MenuListTokens.win32.js.map +1 -1
- package/lib-commonjs/MenuList/useMenuList.d.ts.map +1 -1
- package/lib-commonjs/MenuList/useMenuList.js +1 -0
- package/lib-commonjs/MenuList/useMenuList.js.map +1 -1
- package/lib-commonjs/MenuPopover/MenuPopover.d.ts.map +1 -1
- package/lib-commonjs/MenuPopover/MenuPopover.js +10 -1
- package/lib-commonjs/MenuPopover/MenuPopover.js.map +1 -1
- package/lib-commonjs/context/menuContext.d.ts.map +1 -1
- package/lib-commonjs/context/menuContext.js +1 -0
- package/lib-commonjs/context/menuContext.js.map +1 -1
- package/package.json +2 -2
- package/src/Menu/Menu.types.ts +1 -0
- package/src/MenuItem/MenuItemTokens.macos.ts +5 -4
- package/src/MenuList/MenuList.styling.ts +3 -0
- package/src/MenuList/MenuList.tsx +10 -3
- package/src/MenuList/MenuList.types.ts +3 -1
- package/src/MenuList/MenuListTokens.macos.ts +1 -1
- package/src/MenuList/MenuListTokens.win32.ts +5 -1
- package/src/MenuList/useMenuList.ts +1 -0
- package/src/MenuPopover/MenuPopover.tsx +16 -2
- package/src/__tests__/__snapshots__/Menu.test.tsx.snap +42 -7
- package/src/context/menuContext.ts +1 -0
package/CHANGELOG.json
CHANGED
|
@@ -2,7 +2,36 @@
|
|
|
2
2
|
"name": "@fluentui-react-native/menu",
|
|
3
3
|
"entries": [
|
|
4
4
|
{
|
|
5
|
-
"date": "
|
|
5
|
+
"date": "Mon, 06 Feb 2023 05:52:44 GMT",
|
|
6
|
+
"tag": "@fluentui-react-native/menu_v1.3.0",
|
|
7
|
+
"version": "1.3.0",
|
|
8
|
+
"comments": {
|
|
9
|
+
"minor": [
|
|
10
|
+
{
|
|
11
|
+
"author": "email not defined",
|
|
12
|
+
"package": "@fluentui-react-native/menu",
|
|
13
|
+
"commit": "3b1b684d01a9c67cb3f8964fa16619d4dd299b98",
|
|
14
|
+
"comment": "support menu scroll in win32"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"author": "beachball",
|
|
18
|
+
"package": "@fluentui-react-native/menu",
|
|
19
|
+
"comment": "Bump @fluentui-react-native/callout to v0.22.0",
|
|
20
|
+
"commit": "3b1b684d01a9c67cb3f8964fa16619d4dd299b98"
|
|
21
|
+
}
|
|
22
|
+
],
|
|
23
|
+
"patch": [
|
|
24
|
+
{
|
|
25
|
+
"author": "amchiu@microsoft.com",
|
|
26
|
+
"package": "@fluentui-react-native/menu",
|
|
27
|
+
"commit": "de81c9b5e09c73332053561cc425d783da359075",
|
|
28
|
+
"comment": "macOS: Update submenu indicator color"
|
|
29
|
+
}
|
|
30
|
+
]
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"date": "Fri, 03 Feb 2023 01:49:36 GMT",
|
|
6
35
|
"tag": "@fluentui-react-native/menu_v1.2.28",
|
|
7
36
|
"version": "1.2.28",
|
|
8
37
|
"comments": {
|
package/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,25 @@
|
|
|
1
1
|
# Change Log - @fluentui-react-native/menu
|
|
2
2
|
|
|
3
|
-
This log was last generated on
|
|
3
|
+
This log was last generated on Mon, 06 Feb 2023 05:52:44 GMT and should not be manually modified.
|
|
4
4
|
|
|
5
5
|
<!-- Start content -->
|
|
6
6
|
|
|
7
|
+
## 1.3.0
|
|
8
|
+
|
|
9
|
+
Mon, 06 Feb 2023 05:52:44 GMT
|
|
10
|
+
|
|
11
|
+
### Minor changes
|
|
12
|
+
|
|
13
|
+
- support menu scroll in win32 (email not defined)
|
|
14
|
+
- Bump @fluentui-react-native/callout to v0.22.0
|
|
15
|
+
|
|
16
|
+
### Patches
|
|
17
|
+
|
|
18
|
+
- macOS: Update submenu indicator color (amchiu@microsoft.com)
|
|
19
|
+
|
|
7
20
|
## 1.2.28
|
|
8
21
|
|
|
9
|
-
Fri, 03 Feb 2023 01:
|
|
22
|
+
Fri, 03 Feb 2023 01:49:36 GMT
|
|
10
23
|
|
|
11
24
|
### Patches
|
|
12
25
|
|
package/SPEC.md
CHANGED
|
@@ -115,6 +115,35 @@ A `Menu` can be divided into sections using dividers. The `Menu` does not suppor
|
|
|
115
115
|
|
|
116
116
|
All options in a `Menu` component can be disabled and should provide a visible indication for this purpose. Although disabled actions cannot be invoked, they are keyboard focusable for the purposes of accessibility.
|
|
117
117
|
|
|
118
|
+
### Scrollable menu
|
|
119
|
+
|
|
120
|
+
A `Menu` can be made scrollable to show a long list of menu items by setting the `maxHeight` prop on `MenuPopover`. If the user never sets `maxHeight` and content does overflow, overflowing menu items would simply be cut off. Omitting the `maxHeight` prop will be render a non-scrollable menu.
|
|
121
|
+
|
|
122
|
+
When menu items end up being wider than the default width, scrollable menu will wrap content between words. For longer text without space, it will do an ellipsis with a tail.
|
|
123
|
+
|
|
124
|
+
If your menuItems’ content require a larger minWidth, you’d have to set a larger minWidth on the `<MenuPopover>`. **Menu's width does not expand dynamically and you will have to specify a larger minwidth. (NOT SUPPORTED YET)**
|
|
125
|
+
|
|
126
|
+
```ts
|
|
127
|
+
<Menu>
|
|
128
|
+
<MenuTrigger>
|
|
129
|
+
<Button>Click to open Scrollable menu</Button>
|
|
130
|
+
</MenuTrigger>
|
|
131
|
+
<MenuPopover maxHeight={100}>
|
|
132
|
+
<MenuList>
|
|
133
|
+
<MenuItem>MenuItem 1</MenuItem>
|
|
134
|
+
<MenuItem>MenuItem 2</MenuItem>
|
|
135
|
+
<MenuItem>MenuItem 3</MenuItem>
|
|
136
|
+
<MenuItem>MenuItem 4</MenuItem>
|
|
137
|
+
<MenuItem>MenuItem 5</MenuItem>
|
|
138
|
+
<MenuItem>MenuItem 6</MenuItem>
|
|
139
|
+
<MenuItem>MenuItem 7</MenuItem>
|
|
140
|
+
<MenuItem>MenuItem 8</MenuItem>
|
|
141
|
+
<MenuItem>MenuItem 9</MenuItem>
|
|
142
|
+
</MenuList>
|
|
143
|
+
</MenuPopover>
|
|
144
|
+
</Menu>
|
|
145
|
+
```
|
|
146
|
+
|
|
118
147
|
## API
|
|
119
148
|
|
|
120
149
|
### Menu
|
package/lib/Menu/Menu.types.d.ts
CHANGED
|
@@ -33,5 +33,6 @@ export interface MenuState extends MenuProps {
|
|
|
33
33
|
setOpen: (e: InteractionEvent, isOpen: boolean, bubble?: boolean) => void;
|
|
34
34
|
shouldFocusOnContainer: boolean;
|
|
35
35
|
triggerRef: React.RefObject<React.Component>;
|
|
36
|
+
hasMaxHeight?: boolean;
|
|
36
37
|
}
|
|
37
38
|
//# sourceMappingURL=Menu.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.types.d.ts","sourceRoot":"","sources":["../../src/Menu/Menu.types.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,eAAO,MAAM,QAAQ,SAAS,CAAC;AAE/B,MAAM,WAAW,SAAU,SAAQ,aAAa;IAC9C;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAK9D,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,SAAU,SAAQ,SAAS;IAC1C,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,0BAA0B,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1E,sBAAsB,EAAE,OAAO,CAAC;IAChC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"Menu.types.d.ts","sourceRoot":"","sources":["../../src/Menu/Menu.types.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,eAAO,MAAM,QAAQ,SAAS,CAAC;AAE/B,MAAM,WAAW,SAAU,SAAQ,aAAa;IAC9C;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAK9D,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,SAAU,SAAQ,SAAS;IAC1C,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,0BAA0B,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1E,sBAAsB,EAAE,OAAO,CAAC;IAChC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC7C,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuItemTokens.macos.d.ts","sourceRoot":"","sources":["../../src/MenuItem/MenuItemTokens.macos.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmB,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAE/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,cAAc,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"MenuItemTokens.macos.d.ts","sourceRoot":"","sources":["../../src/MenuItem/MenuItemTokens.macos.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmB,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAE/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,cAAc,EAAE,KAAK,CA0BrE,CAAC"}
|
|
@@ -10,6 +10,7 @@ export var defaultMenuItemTokens = function (t) { return ({
|
|
|
10
10
|
gap: globalTokens.size40,
|
|
11
11
|
paddingHorizontal: 5,
|
|
12
12
|
paddingVertical: 3,
|
|
13
|
+
submenuIndicatorColor: t.colors.neutralForeground2,
|
|
13
14
|
submenuIndicatorPadding: globalTokens.sizeNone,
|
|
14
15
|
submenuIndicatorSize: 16,
|
|
15
16
|
focused: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuItemTokens.macos.js","sourceRoot":"","sources":["../../src/MenuItem/MenuItemTokens.macos.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAInE,MAAM,CAAC,IAAM,qBAAqB,GAAyC,UAAC,CAAQ,IAAqB,OAAA,CAAC;IACxG,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,qBAAqB;IAC/C,YAAY,EAAE,CAAC;IACf,aAAa,EAAE,EAAE;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,YAAY;IAC5B,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO;IACzC,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAA0B;IAC/D,GAAG,EAAE,YAAY,CAAC,MAAM;IACxB,iBAAiB,EAAE,CAAC;IACpB,eAAe,EAAE,CAAC;IAClB,uBAAuB,EAAE,YAAY,CAAC,QAAQ;IAC9C,oBAAoB,EAAE,EAAE;IACxB,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,mBAAmB;KACpC;IACD,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,mBAAmB;KACpC;IACD,QAAQ,EAAE;QACR,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,cAAc;QACxC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,YAAY;KAC7B;CACF,CAAC,
|
|
1
|
+
{"version":3,"file":"MenuItemTokens.macos.js","sourceRoot":"","sources":["../../src/MenuItem/MenuItemTokens.macos.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAInE,MAAM,CAAC,IAAM,qBAAqB,GAAyC,UAAC,CAAQ,IAAqB,OAAA,CAAC;IACxG,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,qBAAqB;IAC/C,YAAY,EAAE,CAAC;IACf,aAAa,EAAE,EAAE;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,YAAY;IAC5B,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO;IACzC,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAA0B;IAC/D,GAAG,EAAE,YAAY,CAAC,MAAM;IACxB,iBAAiB,EAAE,CAAC;IACpB,eAAe,EAAE,CAAC;IAClB,qBAAqB,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAClD,uBAAuB,EAAE,YAAY,CAAC,QAAQ;IAC9C,oBAAoB,EAAE,EAAE;IACxB,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,mBAAmB;KACpC;IACD,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,mBAAmB;KACpC;IACD,QAAQ,EAAE;QACR,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,cAAc;QACxC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,YAAY;KAC7B;CACF,CAAC,EA1BuG,CA0BvG,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import type { MenuListProps } from './MenuList.types';
|
|
1
|
+
import type { MenuListProps, MenuListState } from './MenuList.types';
|
|
2
|
+
export declare const menuListLookup: (layer: string, state: MenuListState, userProps: MenuListProps) => boolean;
|
|
2
3
|
export declare const MenuList: import("@fluentui-react-native/framework").ComposableComponent<MenuListProps, import("./MenuList.types").MenuListSlotProps, import("./MenuList.types").MenuListTokens, object>;
|
|
3
4
|
//# sourceMappingURL=MenuList.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuList.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuList.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAgB,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"MenuList.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuList.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAgB,MAAM,kBAAkB,CAAC;AA6BnF,eAAO,MAAM,cAAc,UAAW,MAAM,SAAS,aAAa,aAAa,aAAa,KAAG,OAE9F,CAAC;AACF,eAAO,MAAM,QAAQ,gLAiDnB,CAAC"}
|
package/lib/MenuList/MenuList.js
CHANGED
|
@@ -27,11 +27,14 @@ var MenuStack = stagedComponent(function (props) {
|
|
|
27
27
|
};
|
|
28
28
|
});
|
|
29
29
|
MenuStack.displayName = 'MenuStack';
|
|
30
|
-
export var
|
|
30
|
+
export var menuListLookup = function (layer, state, userProps) {
|
|
31
|
+
return state[layer] || userProps[layer] || layer === 'hasMaxHeight' || layer === userProps['minWidth'];
|
|
32
|
+
};
|
|
33
|
+
export var MenuList = compose(__assign(__assign({ displayName: menuListName }, stylingSettings), { slots: __assign({ root: MenuStack, scrollView: ScrollView }, (Platform.OS === 'macos' && { focusZone: FocusZone })), useRender: function (userProps, useSlots) {
|
|
31
34
|
var menuList = useMenuList(userProps);
|
|
32
35
|
var menuContext = useMenuContext();
|
|
33
36
|
var menuListContextValue = useMenuListContextValue(menuList);
|
|
34
|
-
var Slots = useSlots(menuList.props);
|
|
37
|
+
var Slots = useSlots(menuList.props, function (layer) { return menuListLookup(layer, menuList, userProps); });
|
|
35
38
|
var focusZoneRef = React.useRef();
|
|
36
39
|
React.useEffect(function () {
|
|
37
40
|
var _a;
|
|
@@ -45,7 +48,8 @@ export var MenuList = compose(__assign(__assign({ displayName: menuListName }, s
|
|
|
45
48
|
// For root menu, let's set focus on the container to block FZ setting focus on the first key view.
|
|
46
49
|
defaultTabbableElement: menuContext.isSubmenu ? null : focusZoneRef,
|
|
47
50
|
// @ts-ignore FocusZone takes ViewProps, but that isn't defined on it's type.
|
|
48
|
-
enableFocusRing: false }, children)))) : (withSlots(Slots.root, null,
|
|
51
|
+
enableFocusRing: false }, children)))) : menuContext.hasMaxHeight ? (withSlots(Slots.root, null,
|
|
52
|
+
withSlots(Slots.scrollView, null, children))) : (withSlots(Slots.root, null, children));
|
|
49
53
|
return withSlots(MenuListProvider, { value: menuListContextValue }, content);
|
|
50
54
|
};
|
|
51
55
|
} }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuList.js","sourceRoot":"","sources":["../../src/MenuList/MenuList.tsx"],"names":[],"mappings":";AAAA,qBAAqB;AACrB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAE1D,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAEnG,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,IAAM,SAAS,GAAG,eAAe,CAAC,UAAC,KAAwD;IACjF,IAAA,GAAG,GAAc,KAAK,IAAnB,EAAK,IAAI,UAAK,KAAK,EAAxB,OAAgB,CAAF,CAAW;IAC/B,OAAO,UAAC,KAAwD,EAAE,QAAyB;QACzF,IAAI,GAAG,IAAI,GAAG,GAAG,CAAC,IAAI,QAAQ,EAAE;YAC9B,6DAA6D;YAC7D,yCAAyC;YACzC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAC,KAAuB,EAAE,KAAa;gBAC7E,IAAI,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE;oBAC5C,OAAO,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;iBAC1F;gBACD,OAAO,KAAK,CAAC;YACf,CAAC,CAAC,CAAC;SACJ;QAED,OAAO,UAAC,IAAI,eAAK,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,QAAQ,CAAQ,CAAC;IAC9D,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AACH,SAAS,CAAC,WAAW,GAAG,WAAW,CAAC;AAEpC,MAAM,CAAC,IAAM,
|
|
1
|
+
{"version":3,"file":"MenuList.js","sourceRoot":"","sources":["../../src/MenuList/MenuList.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { UseStylingOptions } from '@fluentui-react-native/framework';
|
|
2
2
|
import type { MenuListProps, MenuListTokens, MenuListSlotProps } from './MenuList.types';
|
|
3
|
+
export declare const menuListStates: (keyof MenuListTokens)[];
|
|
3
4
|
export declare const stylingSettings: UseStylingOptions<MenuListProps, MenuListSlotProps, MenuListTokens>;
|
|
4
5
|
//# sourceMappingURL=MenuList.styling.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuList.styling.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuList.styling.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAS,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAIjF,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGzF,eAAO,MAAM,eAAe,EAAE,iBAAiB,CAAC,aAAa,EAAE,iBAAiB,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"MenuList.styling.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuList.styling.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAS,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAIjF,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGzF,eAAO,MAAM,cAAc,EAAE,CAAC,MAAM,cAAc,CAAC,EAAqB,CAAC;AAEzE,eAAO,MAAM,eAAe,EAAE,iBAAiB,CAAC,aAAa,EAAE,iBAAiB,EAAE,cAAc,CAgB/F,CAAC"}
|
|
@@ -3,8 +3,10 @@ import { buildProps } from '@fluentui-react-native/framework';
|
|
|
3
3
|
import { layoutStyles } from '@fluentui-react-native/tokens';
|
|
4
4
|
import { defaultMenuListTokens } from './MenuListTokens';
|
|
5
5
|
import { menuListName } from './MenuList.types';
|
|
6
|
+
export var menuListStates = ['hasMaxHeight'];
|
|
6
7
|
export var stylingSettings = {
|
|
7
8
|
tokens: [defaultMenuListTokens, menuListName],
|
|
9
|
+
states: menuListStates,
|
|
8
10
|
slotProps: {
|
|
9
11
|
root: buildProps(function (tokens, theme) { return ({
|
|
10
12
|
style: __assign({ backgroundColor: tokens.backgroundColor, display: 'flex' }, layoutStyles.from(tokens, theme)),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuList.styling.js","sourceRoot":"","sources":["../../src/MenuList/MenuList.styling.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,MAAM,CAAC,IAAM,eAAe,GAAwE;IAClG,MAAM,EAAE,CAAC,qBAAqB,EAAE,YAAY,CAAC;IAC7C,SAAS,EAAE;QACT,IAAI,EAAE,UAAU,CACd,UAAC,MAAsB,EAAE,KAAY,IAAK,OAAA,CAAC;YACzC,KAAK,aACH,eAAe,EAAE,MAAM,CAAC,eAAe,EACvC,OAAO,EAAE,MAAM,IACZ,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CACpC;YACD,GAAG,EAAE,MAAM,CAAC,GAAG;SAChB,CAAC,EAPwC,CAOxC,iBACD,iBAAiB,EAAE,KAAK,GAAK,YAAY,CAAC,IAAI,QAChD;KACF;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"MenuList.styling.js","sourceRoot":"","sources":["../../src/MenuList/MenuList.styling.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,MAAM,CAAC,IAAM,cAAc,GAA6B,CAAC,cAAc,CAAC,CAAC;AAEzE,MAAM,CAAC,IAAM,eAAe,GAAwE;IAClG,MAAM,EAAE,CAAC,qBAAqB,EAAE,YAAY,CAAC;IAC7C,MAAM,EAAE,cAAc;IACtB,SAAS,EAAE;QACT,IAAI,EAAE,UAAU,CACd,UAAC,MAAsB,EAAE,KAAY,IAAK,OAAA,CAAC;YACzC,KAAK,aACH,eAAe,EAAE,MAAM,CAAC,eAAe,EACvC,OAAO,EAAE,MAAM,IACZ,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CACpC;YACD,GAAG,EAAE,MAAM,CAAC,GAAG;SAChB,CAAC,EAPwC,CAOxC,iBACD,iBAAiB,EAAE,KAAK,GAAK,YAAY,CAAC,IAAI,QAChD;KACF;CACF,CAAC"}
|
|
@@ -10,6 +10,7 @@ export interface MenuListTokens extends LayoutTokens, IBackgroundColorTokens {
|
|
|
10
10
|
* Space between items in pixels
|
|
11
11
|
*/
|
|
12
12
|
gap?: number;
|
|
13
|
+
hasMaxHeight?: MenuListTokens;
|
|
13
14
|
}
|
|
14
15
|
export interface MenuListProps extends Omit<IViewProps, 'onPress'> {
|
|
15
16
|
/**
|
|
@@ -40,6 +41,7 @@ export interface MenuListState extends Omit<MenuListProps, 'checked' | 'onChecke
|
|
|
40
41
|
selectRadio?: (e: InteractionEvent, name: string) => void;
|
|
41
42
|
addRadioItem: (name: string) => void;
|
|
42
43
|
removeRadioItem: (name: string) => void;
|
|
44
|
+
hasMaxHeight?: boolean;
|
|
43
45
|
}
|
|
44
46
|
export interface MenuListSlotProps {
|
|
45
47
|
root: React.PropsWithRef<IViewProps> & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuList.types.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuList.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC1F,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,eAAO,MAAM,YAAY,aAAa,CAAC;AAEvC,MAAM,WAAW,cAAe,SAAQ,YAAY,EAAE,sBAAsB;IAC1E;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"MenuList.types.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuList.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC1F,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,eAAO,MAAM,YAAY,aAAa,CAAC;AAEvC,MAAM,WAAW,cAAe,SAAQ,YAAY,EAAE,sBAAsB;IAC1E;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,cAAc,CAAC;CAC/B;AAED,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC;IAChE;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAE1B;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;;OAIG;IACH,eAAe,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;CACpE;AAED,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,aAAa,EAAE,SAAS,GAAG,iBAAiB,CAAC;IACvF,KAAK,EAAE,aAAa,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC7C,eAAe,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAClF,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACxD,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,UAAU,CAAC,EAAE,eAAe,CAAC;CAC9B;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,iBAAiB,CAAC;CAC9B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuListTokens.win32.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuListTokens.win32.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAE9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,cAAc,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"MenuListTokens.win32.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuListTokens.win32.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAE9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,cAAc,EAAE,KAAK,CASrE,CAAC"}
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import { globalTokens } from '@fluentui-react-native/theme-tokens';
|
|
2
2
|
export var defaultMenuListTokens = function (t) { return ({
|
|
3
3
|
paddingVertical: globalTokens.size40,
|
|
4
|
-
minWidth:
|
|
4
|
+
minWidth: 160,
|
|
5
5
|
maxWidth: 300,
|
|
6
6
|
backgroundColor: t.colors.neutralBackground1,
|
|
7
|
+
/* To account for the width of the vertical scrollView. With the default minWidth, some content may be cut off */
|
|
8
|
+
hasMaxHeight: {
|
|
9
|
+
minWidth: 175,
|
|
10
|
+
},
|
|
7
11
|
}); };
|
|
8
12
|
//# sourceMappingURL=MenuListTokens.win32.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuListTokens.win32.js","sourceRoot":"","sources":["../../src/MenuList/MenuListTokens.win32.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAInE,MAAM,CAAC,IAAM,qBAAqB,GAAyC,UAAC,CAAQ,IAAqB,OAAA,CAAC;IACxG,eAAe,EAAE,YAAY,CAAC,MAAM;IACpC,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,GAAG;IACb,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;
|
|
1
|
+
{"version":3,"file":"MenuListTokens.win32.js","sourceRoot":"","sources":["../../src/MenuList/MenuListTokens.win32.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAInE,MAAM,CAAC,IAAM,qBAAqB,GAAyC,UAAC,CAAQ,IAAqB,OAAA,CAAC;IACxG,eAAe,EAAE,YAAY,CAAC,MAAM;IACpC,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,GAAG;IACb,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAC5C,iHAAiH;IACjH,YAAY,EAAE;QACZ,QAAQ,EAAE,GAAG;KACd;CACF,CAAC,EATuG,CASvG,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMenuList.d.ts","sourceRoot":"","sources":["../../src/MenuList/useMenuList.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAcrE,eAAO,MAAM,WAAW,WAAY,aAAa,KAAG,
|
|
1
|
+
{"version":3,"file":"useMenuList.d.ts","sourceRoot":"","sources":["../../src/MenuList/useMenuList.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAcrE,eAAO,MAAM,WAAW,WAAY,aAAa,KAAG,aA2GnD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMenuList.js","sourceRoot":"","sources":["../../src/MenuList/useMenuList.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"useMenuList.js","sourceRoot":"","sources":["../../src/MenuList/useMenuList.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuPopover.d.ts","sourceRoot":"","sources":["../../src/MenuPopover/MenuPopover.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAoB,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"MenuPopover.d.ts","sourceRoot":"","sources":["../../src/MenuPopover/MenuPopover.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAoB,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAO/E,eAAO,MAAM,WAAW,gMAsCvB,CAAC;AAGF,eAAe,WAAW,CAAC"}
|
|
@@ -5,13 +5,16 @@ import { Callout } from '@fluentui-react-native/callout';
|
|
|
5
5
|
import { menuPopoverName } from './MenuPopover.types';
|
|
6
6
|
import { useMenuPopover } from './useMenuPopover';
|
|
7
7
|
import { useMenuPopoverTokens } from './MenuPopoverTokens';
|
|
8
|
-
import { View } from 'react-native';
|
|
8
|
+
import { Platform, View } from 'react-native';
|
|
9
|
+
import { useMenuContext } from '../context';
|
|
9
10
|
export var MenuPopover = compressible(function (props, useTokens) {
|
|
10
11
|
var _a;
|
|
11
12
|
var directionalHint = props.directionalHint, gapSpace = props.gapSpace, maxHeight = props.maxHeight, maxWidth = props.maxWidth, minPadding = props.minPadding, borderWidth = props.borderWidth, borderColor = props.borderColor, backgroundColor = props.backgroundColor;
|
|
12
13
|
var state = useMenuPopover(props);
|
|
13
14
|
var theme = useFluentTheme();
|
|
15
|
+
var context = useMenuContext();
|
|
14
16
|
var _b = useTokens(theme), tokens = _b[0], cache = _b[1];
|
|
17
|
+
context.hasMaxHeight = maxHeight != undefined;
|
|
15
18
|
_a = patchTokens(tokens, cache, {
|
|
16
19
|
directionalHint: directionalHint,
|
|
17
20
|
gapSpace: gapSpace,
|
|
@@ -24,7 +27,13 @@ export var MenuPopover = compressible(function (props, useTokens) {
|
|
|
24
27
|
}), tokens = _a[0], cache = _a[1];
|
|
25
28
|
return function (final, children) {
|
|
26
29
|
var mergedProps = mergeProps(tokens, state.props, final);
|
|
27
|
-
var
|
|
30
|
+
var innerViewProps =
|
|
31
|
+
//For windows platforms, styling needs to be set on container view instead of the callout itself for the scrollview to reflect correct width and height
|
|
32
|
+
Platform.OS === 'windows' || Platform.OS === 'win32'
|
|
33
|
+
? __assign(__assign({}, state.innerView), { style: {
|
|
34
|
+
maxHeight: mergedProps.maxHeight,
|
|
35
|
+
} }) : state.innerView;
|
|
36
|
+
var content = React.createElement(View, innerViewProps, children);
|
|
28
37
|
return React.createElement(Callout, __assign({}, mergedProps), content);
|
|
29
38
|
};
|
|
30
39
|
}, useMenuPopoverTokens);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuPopover.js","sourceRoot":"","sources":["../../src/MenuPopover/MenuPopover.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AACzG,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"MenuPopover.js","sourceRoot":"","sources":["../../src/MenuPopover/MenuPopover.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AACzG,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,CAAC,IAAM,WAAW,GAAG,YAAY,CACrC,UAAC,KAAuB,EAAE,SAAuC;;IACvD,IAAA,eAAe,GAA2F,KAAK,gBAAhG,EAAE,QAAQ,GAAiF,KAAK,SAAtF,EAAE,SAAS,GAAsE,KAAK,UAA3E,EAAE,QAAQ,GAA4D,KAAK,SAAjE,EAAE,UAAU,GAAgD,KAAK,WAArD,EAAE,WAAW,GAAmC,KAAK,YAAxC,EAAE,WAAW,GAAsB,KAAK,YAA3B,EAAE,eAAe,GAAK,KAAK,gBAAV,CAAW;IACxH,IAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACpC,IAAM,KAAK,GAAG,cAAc,EAAE,CAAC;IAC/B,IAAM,OAAO,GAAG,cAAc,EAAE,CAAC;IAC7B,IAAA,KAAkB,SAAS,CAAC,KAAK,CAAC,EAAjC,MAAM,QAAA,EAAE,KAAK,QAAoB,CAAC;IAEvC,OAAO,CAAC,YAAY,GAAG,SAAS,IAAI,SAAS,CAAC;IAE9C,KAAkB,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE;QAC3C,eAAe,iBAAA;QACf,QAAQ,UAAA;QACR,SAAS,WAAA;QACT,QAAQ,UAAA;QACR,UAAU,YAAA;QACV,WAAW,aAAA;QACX,WAAW,aAAA;QACX,eAAe,iBAAA;KAChB,CAAC,EATD,MAAM,QAAA,EAAE,KAAK,QAAA,CASX;IAEH,OAAO,UAAC,KAAuB,EAAE,QAAyB;QACxD,IAAM,WAAW,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC3D,IAAM,cAAc;QAClB,uJAAuJ;QACvJ,QAAQ,CAAC,EAAE,KAAK,SAAS,IAAI,QAAQ,CAAC,EAAE,KAAM,OAAe;YAC3D,CAAC,uBACM,KAAK,CAAC,SAAS,KAClB,KAAK,EAAE;oBACL,SAAS,EAAE,WAAW,CAAC,SAAS;iBACjC,IAEL,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;QACtB,IAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC;QACpE,OAAO,oBAAC,OAAO,eAAK,WAAW,GAAG,OAAO,CAAW,CAAC;IACvD,CAAC,CAAC;AACJ,CAAC,EACD,oBAAoB,CACrB,CAAC;AACF,WAAW,CAAC,WAAW,GAAG,eAAe,CAAC;AAE1C,eAAe,WAAW,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menuContext.d.ts","sourceRoot":"","sources":["../../src/context/menuContext.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IACjD,oBAAoB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IACtC,oBAAoB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IACtC,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC;IAC1D,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC;CAC3D;AAED,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"menuContext.d.ts","sourceRoot":"","sources":["../../src/context/menuContext.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IACjD,oBAAoB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IACtC,oBAAoB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IACtC,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC;IAC1D,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC;CAC3D;AAED,eAAO,MAAM,WAAW,iCAYtB,CAAC;AAEH,eAAO,MAAM,YAAY,kCAAuB,CAAC;AACjD,eAAO,MAAM,cAAc,wBAAsC,CAAC"}
|
|
@@ -10,6 +10,7 @@ export var MenuContext = React.createContext({
|
|
|
10
10
|
setOpen: function () { return false; },
|
|
11
11
|
shouldFocusOnContainer: false,
|
|
12
12
|
triggerRef: null,
|
|
13
|
+
hasMaxHeight: false,
|
|
13
14
|
});
|
|
14
15
|
export var MenuProvider = MenuContext.Provider;
|
|
15
16
|
export var useMenuContext = function () { return React.useContext(MenuContext); };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menuContext.js","sourceRoot":"","sources":["../../src/context/menuContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,MAAM,CAAC,IAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAmB;IAC/D,YAAY,EAAE,KAAK;IACnB,OAAO,EAAE,EAAE;IACX,cAAc,EAAE,EAAE;IAClB,aAAa,EAAE,KAAK;IACpB,SAAS,EAAE,KAAK;IAChB,IAAI,EAAE,KAAK;IACX,eAAe,EAAE,cAAM,OAAA,KAAK,EAAL,CAAK;IAC5B,OAAO,EAAE,cAAM,OAAA,KAAK,EAAL,CAAK;IACpB,sBAAsB,EAAE,KAAK;IAC7B,UAAU,EAAE,IAAI;
|
|
1
|
+
{"version":3,"file":"menuContext.js","sourceRoot":"","sources":["../../src/context/menuContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,MAAM,CAAC,IAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAmB;IAC/D,YAAY,EAAE,KAAK;IACnB,OAAO,EAAE,EAAE;IACX,cAAc,EAAE,EAAE;IAClB,aAAa,EAAE,KAAK;IACpB,SAAS,EAAE,KAAK;IAChB,IAAI,EAAE,KAAK;IACX,eAAe,EAAE,cAAM,OAAA,KAAK,EAAL,CAAK;IAC5B,OAAO,EAAE,cAAM,OAAA,KAAK,EAAL,CAAK;IACpB,sBAAsB,EAAE,KAAK;IAC7B,UAAU,EAAE,IAAI;IAChB,YAAY,EAAE,KAAK;CACpB,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,YAAY,GAAG,WAAW,CAAC,QAAQ,CAAC;AACjD,MAAM,CAAC,IAAM,cAAc,GAAG,cAAM,OAAA,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,EAA7B,CAA6B,CAAC"}
|
|
@@ -33,5 +33,6 @@ export interface MenuState extends MenuProps {
|
|
|
33
33
|
setOpen: (e: InteractionEvent, isOpen: boolean, bubble?: boolean) => void;
|
|
34
34
|
shouldFocusOnContainer: boolean;
|
|
35
35
|
triggerRef: React.RefObject<React.Component>;
|
|
36
|
+
hasMaxHeight?: boolean;
|
|
36
37
|
}
|
|
37
38
|
//# sourceMappingURL=Menu.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.types.d.ts","sourceRoot":"","sources":["../../src/Menu/Menu.types.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,eAAO,MAAM,QAAQ,SAAS,CAAC;AAE/B,MAAM,WAAW,SAAU,SAAQ,aAAa;IAC9C;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAK9D,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,SAAU,SAAQ,SAAS;IAC1C,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,0BAA0B,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1E,sBAAsB,EAAE,OAAO,CAAC;IAChC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"Menu.types.d.ts","sourceRoot":"","sources":["../../src/Menu/Menu.types.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,eAAO,MAAM,QAAQ,SAAS,CAAC;AAE/B,MAAM,WAAW,SAAU,SAAQ,aAAa;IAC9C;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAK9D,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,SAAU,SAAQ,SAAS;IAC1C,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,0BAA0B,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1E,sBAAsB,EAAE,OAAO,CAAC;IAChC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC7C,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuItemTokens.macos.d.ts","sourceRoot":"","sources":["../../src/MenuItem/MenuItemTokens.macos.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmB,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAE/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,cAAc,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"MenuItemTokens.macos.d.ts","sourceRoot":"","sources":["../../src/MenuItem/MenuItemTokens.macos.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmB,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAE/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,cAAc,EAAE,KAAK,CA0BrE,CAAC"}
|
|
@@ -13,6 +13,7 @@ var defaultMenuItemTokens = function (t) { return ({
|
|
|
13
13
|
gap: theme_tokens_1.globalTokens.size40,
|
|
14
14
|
paddingHorizontal: 5,
|
|
15
15
|
paddingVertical: 3,
|
|
16
|
+
submenuIndicatorColor: t.colors.neutralForeground2,
|
|
16
17
|
submenuIndicatorPadding: theme_tokens_1.globalTokens.sizeNone,
|
|
17
18
|
submenuIndicatorSize: 16,
|
|
18
19
|
focused: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuItemTokens.macos.js","sourceRoot":"","sources":["../../src/MenuItem/MenuItemTokens.macos.ts"],"names":[],"mappings":";;;AACA,oEAAmE;AAI5D,IAAM,qBAAqB,GAAyC,UAAC,CAAQ,IAAqB,OAAA,CAAC;IACxG,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,qBAAqB;IAC/C,YAAY,EAAE,CAAC;IACf,aAAa,EAAE,EAAE;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,YAAY;IAC5B,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO;IACzC,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,2BAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAA0B;IAC/D,GAAG,EAAE,2BAAY,CAAC,MAAM;IACxB,iBAAiB,EAAE,CAAC;IACpB,eAAe,EAAE,CAAC;IAClB,uBAAuB,EAAE,2BAAY,CAAC,QAAQ;IAC9C,oBAAoB,EAAE,EAAE;IACxB,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,mBAAmB;KACpC;IACD,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,mBAAmB;KACpC;IACD,QAAQ,EAAE;QACR,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,cAAc;QACxC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,YAAY;KAC7B;CACF,CAAC,
|
|
1
|
+
{"version":3,"file":"MenuItemTokens.macos.js","sourceRoot":"","sources":["../../src/MenuItem/MenuItemTokens.macos.ts"],"names":[],"mappings":";;;AACA,oEAAmE;AAI5D,IAAM,qBAAqB,GAAyC,UAAC,CAAQ,IAAqB,OAAA,CAAC;IACxG,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,qBAAqB;IAC/C,YAAY,EAAE,CAAC;IACf,aAAa,EAAE,EAAE;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,YAAY;IAC5B,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO;IACzC,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,2BAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAA0B;IAC/D,GAAG,EAAE,2BAAY,CAAC,MAAM;IACxB,iBAAiB,EAAE,CAAC;IACpB,eAAe,EAAE,CAAC;IAClB,qBAAqB,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAClD,uBAAuB,EAAE,2BAAY,CAAC,QAAQ;IAC9C,oBAAoB,EAAE,EAAE;IACxB,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,mBAAmB;KACpC;IACD,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,mBAAmB;KACpC;IACD,QAAQ,EAAE;QACR,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,cAAc;QACxC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,YAAY;KAC7B;CACF,CAAC,EA1BuG,CA0BvG,CAAC;AA1BU,QAAA,qBAAqB,yBA0B/B"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import type { MenuListProps } from './MenuList.types';
|
|
1
|
+
import type { MenuListProps, MenuListState } from './MenuList.types';
|
|
2
|
+
export declare const menuListLookup: (layer: string, state: MenuListState, userProps: MenuListProps) => boolean;
|
|
2
3
|
export declare const MenuList: import("@fluentui-react-native/framework").ComposableComponent<MenuListProps, import("./MenuList.types").MenuListSlotProps, import("./MenuList.types").MenuListTokens, object>;
|
|
3
4
|
//# sourceMappingURL=MenuList.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuList.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuList.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAgB,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"MenuList.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuList.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAgB,MAAM,kBAAkB,CAAC;AA6BnF,eAAO,MAAM,cAAc,UAAW,MAAM,SAAS,aAAa,aAAa,aAAa,KAAG,OAE9F,CAAC;AACF,eAAO,MAAM,QAAQ,gLAiDnB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MenuList = void 0;
|
|
3
|
+
exports.MenuList = exports.menuListLookup = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
5
|
/** @jsx withSlots */
|
|
6
6
|
var react_1 = tslib_1.__importDefault(require("react"));
|
|
@@ -30,11 +30,15 @@ var MenuStack = (0, framework_1.stagedComponent)(function (props) {
|
|
|
30
30
|
};
|
|
31
31
|
});
|
|
32
32
|
MenuStack.displayName = 'MenuStack';
|
|
33
|
-
|
|
33
|
+
var menuListLookup = function (layer, state, userProps) {
|
|
34
|
+
return state[layer] || userProps[layer] || layer === 'hasMaxHeight' || layer === userProps['minWidth'];
|
|
35
|
+
};
|
|
36
|
+
exports.menuListLookup = menuListLookup;
|
|
37
|
+
exports.MenuList = (0, framework_1.compose)(tslib_1.__assign(tslib_1.__assign({ displayName: MenuList_types_1.menuListName }, MenuList_styling_1.stylingSettings), { slots: tslib_1.__assign({ root: MenuStack, scrollView: react_native_1.ScrollView }, (react_native_1.Platform.OS === 'macos' && { focusZone: focus_zone_1.FocusZone })), useRender: function (userProps, useSlots) {
|
|
34
38
|
var menuList = (0, useMenuList_1.useMenuList)(userProps);
|
|
35
39
|
var menuContext = (0, context_1.useMenuContext)();
|
|
36
40
|
var menuListContextValue = (0, useMenuListContextValue_1.useMenuListContextValue)(menuList);
|
|
37
|
-
var Slots = useSlots(menuList.props);
|
|
41
|
+
var Slots = useSlots(menuList.props, function (layer) { return (0, exports.menuListLookup)(layer, menuList, userProps); });
|
|
38
42
|
var focusZoneRef = react_1.default.useRef();
|
|
39
43
|
react_1.default.useEffect(function () {
|
|
40
44
|
var _a;
|
|
@@ -48,7 +52,8 @@ exports.MenuList = (0, framework_1.compose)(tslib_1.__assign(tslib_1.__assign({
|
|
|
48
52
|
// For root menu, let's set focus on the container to block FZ setting focus on the first key view.
|
|
49
53
|
defaultTabbableElement: menuContext.isSubmenu ? null : focusZoneRef,
|
|
50
54
|
// @ts-ignore FocusZone takes ViewProps, but that isn't defined on it's type.
|
|
51
|
-
enableFocusRing: false }, children)))) : ((0, framework_1.withSlots)(Slots.root, null,
|
|
55
|
+
enableFocusRing: false }, children)))) : menuContext.hasMaxHeight ? ((0, framework_1.withSlots)(Slots.root, null,
|
|
56
|
+
(0, framework_1.withSlots)(Slots.scrollView, null, children))) : ((0, framework_1.withSlots)(Slots.root, null, children));
|
|
52
57
|
return (0, framework_1.withSlots)(menuListContext_1.MenuListProvider, { value: menuListContextValue }, content);
|
|
53
58
|
};
|
|
54
59
|
} }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuList.js","sourceRoot":"","sources":["../../src/MenuList/MenuList.tsx"],"names":[],"mappings":";;;;AAAA,qBAAqB;AACrB,wDAA0B;AAC1B,6CAA0D;AAE1D,8DAAmG;AAEnG,mDAAgD;AAChD,uDAAqD;AACrD,8DAA8D;AAC9D,6CAA4C;AAC5C,qEAAoE;AAEpE,gEAA8D;AAC9D,sCAA4C;AAE5C,IAAM,SAAS,GAAG,IAAA,2BAAe,EAAC,UAAC,KAAwD;IACjF,IAAA,GAAG,GAAc,KAAK,IAAnB,EAAK,IAAI,kBAAK,KAAK,EAAxB,OAAgB,CAAF,CAAW;IAC/B,OAAO,UAAC,KAAwD,EAAE,QAAyB;QACzF,IAAI,GAAG,IAAI,GAAG,GAAG,CAAC,IAAI,QAAQ,EAAE;YAC9B,6DAA6D;YAC7D,yCAAyC;YACzC,QAAQ,GAAG,eAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAC,KAAuB,EAAE,KAAa;gBAC7E,IAAI,eAAK,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE;oBAC5C,OAAO,eAAK,CAAC,YAAY,CAAC,KAAK,EAAE,IAAA,sBAAU,EAAC,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;iBAC1F;gBACD,OAAO,KAAK,CAAC;YACf,CAAC,CAAC,CAAC;SACJ;QAED,OAAO,2BAAC,mBAAI,uBAAK,IAAA,sBAAU,EAAC,IAAI,EAAE,KAAK,CAAC,GAAG,QAAQ,CAAQ,CAAC;IAC9D,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AACH,SAAS,CAAC,WAAW,GAAG,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"MenuList.js","sourceRoot":"","sources":["../../src/MenuList/MenuList.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { UseStylingOptions } from '@fluentui-react-native/framework';
|
|
2
2
|
import type { MenuListProps, MenuListTokens, MenuListSlotProps } from './MenuList.types';
|
|
3
|
+
export declare const menuListStates: (keyof MenuListTokens)[];
|
|
3
4
|
export declare const stylingSettings: UseStylingOptions<MenuListProps, MenuListSlotProps, MenuListTokens>;
|
|
4
5
|
//# sourceMappingURL=MenuList.styling.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuList.styling.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuList.styling.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAS,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAIjF,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGzF,eAAO,MAAM,eAAe,EAAE,iBAAiB,CAAC,aAAa,EAAE,iBAAiB,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"MenuList.styling.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuList.styling.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAS,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAIjF,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGzF,eAAO,MAAM,cAAc,EAAE,CAAC,MAAM,cAAc,CAAC,EAAqB,CAAC;AAEzE,eAAO,MAAM,eAAe,EAAE,iBAAiB,CAAC,aAAa,EAAE,iBAAiB,EAAE,cAAc,CAgB/F,CAAC"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.stylingSettings = void 0;
|
|
3
|
+
exports.stylingSettings = exports.menuListStates = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
5
|
var framework_1 = require("@fluentui-react-native/framework");
|
|
6
6
|
var tokens_1 = require("@fluentui-react-native/tokens");
|
|
7
7
|
var MenuListTokens_1 = require("./MenuListTokens");
|
|
8
8
|
var MenuList_types_1 = require("./MenuList.types");
|
|
9
|
+
exports.menuListStates = ['hasMaxHeight'];
|
|
9
10
|
exports.stylingSettings = {
|
|
10
11
|
tokens: [MenuListTokens_1.defaultMenuListTokens, MenuList_types_1.menuListName],
|
|
12
|
+
states: exports.menuListStates,
|
|
11
13
|
slotProps: {
|
|
12
14
|
root: (0, framework_1.buildProps)(function (tokens, theme) { return ({
|
|
13
15
|
style: tslib_1.__assign({ backgroundColor: tokens.backgroundColor, display: 'flex' }, tokens_1.layoutStyles.from(tokens, theme)),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuList.styling.js","sourceRoot":"","sources":["../../src/MenuList/MenuList.styling.ts"],"names":[],"mappings":";;;;AACA,8DAA8D;AAC9D,wDAA6D;AAC7D,mDAAyD;AAEzD,mDAAgD;AAEnC,QAAA,eAAe,GAAwE;IAClG,MAAM,EAAE,CAAC,sCAAqB,EAAE,6BAAY,CAAC;IAC7C,SAAS,EAAE;QACT,IAAI,EAAE,IAAA,sBAAU,EACd,UAAC,MAAsB,EAAE,KAAY,IAAK,OAAA,CAAC;YACzC,KAAK,qBACH,eAAe,EAAE,MAAM,CAAC,eAAe,EACvC,OAAO,EAAE,MAAM,IACZ,qBAAY,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CACpC;YACD,GAAG,EAAE,MAAM,CAAC,GAAG;SAChB,CAAC,EAPwC,CAOxC,yBACD,iBAAiB,EAAE,KAAK,GAAK,qBAAY,CAAC,IAAI,QAChD;KACF;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"MenuList.styling.js","sourceRoot":"","sources":["../../src/MenuList/MenuList.styling.ts"],"names":[],"mappings":";;;;AACA,8DAA8D;AAC9D,wDAA6D;AAC7D,mDAAyD;AAEzD,mDAAgD;AAEnC,QAAA,cAAc,GAA6B,CAAC,cAAc,CAAC,CAAC;AAE5D,QAAA,eAAe,GAAwE;IAClG,MAAM,EAAE,CAAC,sCAAqB,EAAE,6BAAY,CAAC;IAC7C,MAAM,EAAE,sBAAc;IACtB,SAAS,EAAE;QACT,IAAI,EAAE,IAAA,sBAAU,EACd,UAAC,MAAsB,EAAE,KAAY,IAAK,OAAA,CAAC;YACzC,KAAK,qBACH,eAAe,EAAE,MAAM,CAAC,eAAe,EACvC,OAAO,EAAE,MAAM,IACZ,qBAAY,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CACpC;YACD,GAAG,EAAE,MAAM,CAAC,GAAG;SAChB,CAAC,EAPwC,CAOxC,yBACD,iBAAiB,EAAE,KAAK,GAAK,qBAAY,CAAC,IAAI,QAChD;KACF;CACF,CAAC"}
|
|
@@ -10,6 +10,7 @@ export interface MenuListTokens extends LayoutTokens, IBackgroundColorTokens {
|
|
|
10
10
|
* Space between items in pixels
|
|
11
11
|
*/
|
|
12
12
|
gap?: number;
|
|
13
|
+
hasMaxHeight?: MenuListTokens;
|
|
13
14
|
}
|
|
14
15
|
export interface MenuListProps extends Omit<IViewProps, 'onPress'> {
|
|
15
16
|
/**
|
|
@@ -40,6 +41,7 @@ export interface MenuListState extends Omit<MenuListProps, 'checked' | 'onChecke
|
|
|
40
41
|
selectRadio?: (e: InteractionEvent, name: string) => void;
|
|
41
42
|
addRadioItem: (name: string) => void;
|
|
42
43
|
removeRadioItem: (name: string) => void;
|
|
44
|
+
hasMaxHeight?: boolean;
|
|
43
45
|
}
|
|
44
46
|
export interface MenuListSlotProps {
|
|
45
47
|
root: React.PropsWithRef<IViewProps> & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuList.types.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuList.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC1F,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,eAAO,MAAM,YAAY,aAAa,CAAC;AAEvC,MAAM,WAAW,cAAe,SAAQ,YAAY,EAAE,sBAAsB;IAC1E;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"MenuList.types.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuList.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC1F,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,eAAO,MAAM,YAAY,aAAa,CAAC;AAEvC,MAAM,WAAW,cAAe,SAAQ,YAAY,EAAE,sBAAsB;IAC1E;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,cAAc,CAAC;CAC/B;AAED,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC;IAChE;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAE1B;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;;OAIG;IACH,eAAe,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;CACpE;AAED,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,aAAa,EAAE,SAAS,GAAG,iBAAiB,CAAC;IACvF,KAAK,EAAE,aAAa,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC7C,eAAe,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAClF,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACxD,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,UAAU,CAAC,EAAE,eAAe,CAAC;CAC9B;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,iBAAiB,CAAC;CAC9B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuListTokens.win32.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuListTokens.win32.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAE9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,cAAc,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"MenuListTokens.win32.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuListTokens.win32.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAE9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,cAAc,EAAE,KAAK,CASrE,CAAC"}
|
|
@@ -4,9 +4,13 @@ exports.defaultMenuListTokens = void 0;
|
|
|
4
4
|
var theme_tokens_1 = require("@fluentui-react-native/theme-tokens");
|
|
5
5
|
var defaultMenuListTokens = function (t) { return ({
|
|
6
6
|
paddingVertical: theme_tokens_1.globalTokens.size40,
|
|
7
|
-
minWidth:
|
|
7
|
+
minWidth: 160,
|
|
8
8
|
maxWidth: 300,
|
|
9
9
|
backgroundColor: t.colors.neutralBackground1,
|
|
10
|
+
/* To account for the width of the vertical scrollView. With the default minWidth, some content may be cut off */
|
|
11
|
+
hasMaxHeight: {
|
|
12
|
+
minWidth: 175,
|
|
13
|
+
},
|
|
10
14
|
}); };
|
|
11
15
|
exports.defaultMenuListTokens = defaultMenuListTokens;
|
|
12
16
|
//# sourceMappingURL=MenuListTokens.win32.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuListTokens.win32.js","sourceRoot":"","sources":["../../src/MenuList/MenuListTokens.win32.ts"],"names":[],"mappings":";;;AACA,oEAAmE;AAI5D,IAAM,qBAAqB,GAAyC,UAAC,CAAQ,IAAqB,OAAA,CAAC;IACxG,eAAe,EAAE,2BAAY,CAAC,MAAM;IACpC,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,GAAG;IACb,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;
|
|
1
|
+
{"version":3,"file":"MenuListTokens.win32.js","sourceRoot":"","sources":["../../src/MenuList/MenuListTokens.win32.ts"],"names":[],"mappings":";;;AACA,oEAAmE;AAI5D,IAAM,qBAAqB,GAAyC,UAAC,CAAQ,IAAqB,OAAA,CAAC;IACxG,eAAe,EAAE,2BAAY,CAAC,MAAM;IACpC,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,GAAG;IACb,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAC5C,iHAAiH;IACjH,YAAY,EAAE;QACZ,QAAQ,EAAE,GAAG;KACd;CACF,CAAC,EATuG,CASvG,CAAC;AATU,QAAA,qBAAqB,yBAS/B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMenuList.d.ts","sourceRoot":"","sources":["../../src/MenuList/useMenuList.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAcrE,eAAO,MAAM,WAAW,WAAY,aAAa,KAAG,
|
|
1
|
+
{"version":3,"file":"useMenuList.d.ts","sourceRoot":"","sources":["../../src/MenuList/useMenuList.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAcrE,eAAO,MAAM,WAAW,WAAY,aAAa,KAAG,aA2GnD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMenuList.js","sourceRoot":"","sources":["../../src/MenuList/useMenuList.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"useMenuList.js","sourceRoot":"","sources":["../../src/MenuList/useMenuList.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuPopover.d.ts","sourceRoot":"","sources":["../../src/MenuPopover/MenuPopover.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAoB,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"MenuPopover.d.ts","sourceRoot":"","sources":["../../src/MenuPopover/MenuPopover.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAoB,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAO/E,eAAO,MAAM,WAAW,gMAsCvB,CAAC;AAGF,eAAe,WAAW,CAAC"}
|
|
@@ -9,12 +9,15 @@ var MenuPopover_types_1 = require("./MenuPopover.types");
|
|
|
9
9
|
var useMenuPopover_1 = require("./useMenuPopover");
|
|
10
10
|
var MenuPopoverTokens_1 = require("./MenuPopoverTokens");
|
|
11
11
|
var react_native_1 = require("react-native");
|
|
12
|
+
var context_1 = require("../context");
|
|
12
13
|
exports.MenuPopover = (0, framework_1.compressible)(function (props, useTokens) {
|
|
13
14
|
var _a;
|
|
14
15
|
var directionalHint = props.directionalHint, gapSpace = props.gapSpace, maxHeight = props.maxHeight, maxWidth = props.maxWidth, minPadding = props.minPadding, borderWidth = props.borderWidth, borderColor = props.borderColor, backgroundColor = props.backgroundColor;
|
|
15
16
|
var state = (0, useMenuPopover_1.useMenuPopover)(props);
|
|
16
17
|
var theme = (0, framework_1.useFluentTheme)();
|
|
18
|
+
var context = (0, context_1.useMenuContext)();
|
|
17
19
|
var _b = useTokens(theme), tokens = _b[0], cache = _b[1];
|
|
20
|
+
context.hasMaxHeight = maxHeight != undefined;
|
|
18
21
|
_a = (0, framework_1.patchTokens)(tokens, cache, {
|
|
19
22
|
directionalHint: directionalHint,
|
|
20
23
|
gapSpace: gapSpace,
|
|
@@ -27,7 +30,13 @@ exports.MenuPopover = (0, framework_1.compressible)(function (props, useTokens)
|
|
|
27
30
|
}), tokens = _a[0], cache = _a[1];
|
|
28
31
|
return function (final, children) {
|
|
29
32
|
var mergedProps = (0, framework_1.mergeProps)(tokens, state.props, final);
|
|
30
|
-
var
|
|
33
|
+
var innerViewProps =
|
|
34
|
+
//For windows platforms, styling needs to be set on container view instead of the callout itself for the scrollview to reflect correct width and height
|
|
35
|
+
react_native_1.Platform.OS === 'windows' || react_native_1.Platform.OS === 'win32'
|
|
36
|
+
? tslib_1.__assign(tslib_1.__assign({}, state.innerView), { style: {
|
|
37
|
+
maxHeight: mergedProps.maxHeight,
|
|
38
|
+
} }) : state.innerView;
|
|
39
|
+
var content = react_1.default.createElement(react_native_1.View, innerViewProps, children);
|
|
31
40
|
return react_1.default.createElement(callout_1.Callout, tslib_1.__assign({}, mergedProps), content);
|
|
32
41
|
};
|
|
33
42
|
}, MenuPopoverTokens_1.useMenuPopoverTokens);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuPopover.js","sourceRoot":"","sources":["../../src/MenuPopover/MenuPopover.tsx"],"names":[],"mappings":";;;;AAAA,wDAA0B;AAE1B,8DAAyG;AACzG,0DAAyD;AAEzD,yDAAsD;AACtD,mDAAkD;AAClD,yDAA2D;AAC3D,
|
|
1
|
+
{"version":3,"file":"MenuPopover.js","sourceRoot":"","sources":["../../src/MenuPopover/MenuPopover.tsx"],"names":[],"mappings":";;;;AAAA,wDAA0B;AAE1B,8DAAyG;AACzG,0DAAyD;AAEzD,yDAAsD;AACtD,mDAAkD;AAClD,yDAA2D;AAC3D,6CAA8C;AAC9C,sCAA4C;AAE/B,QAAA,WAAW,GAAG,IAAA,wBAAY,EACrC,UAAC,KAAuB,EAAE,SAAuC;;IACvD,IAAA,eAAe,GAA2F,KAAK,gBAAhG,EAAE,QAAQ,GAAiF,KAAK,SAAtF,EAAE,SAAS,GAAsE,KAAK,UAA3E,EAAE,QAAQ,GAA4D,KAAK,SAAjE,EAAE,UAAU,GAAgD,KAAK,WAArD,EAAE,WAAW,GAAmC,KAAK,YAAxC,EAAE,WAAW,GAAsB,KAAK,YAA3B,EAAE,eAAe,GAAK,KAAK,gBAAV,CAAW;IACxH,IAAM,KAAK,GAAG,IAAA,+BAAc,EAAC,KAAK,CAAC,CAAC;IACpC,IAAM,KAAK,GAAG,IAAA,0BAAc,GAAE,CAAC;IAC/B,IAAM,OAAO,GAAG,IAAA,wBAAc,GAAE,CAAC;IAC7B,IAAA,KAAkB,SAAS,CAAC,KAAK,CAAC,EAAjC,MAAM,QAAA,EAAE,KAAK,QAAoB,CAAC;IAEvC,OAAO,CAAC,YAAY,GAAG,SAAS,IAAI,SAAS,CAAC;IAE9C,KAAkB,IAAA,uBAAW,EAAC,MAAM,EAAE,KAAK,EAAE;QAC3C,eAAe,iBAAA;QACf,QAAQ,UAAA;QACR,SAAS,WAAA;QACT,QAAQ,UAAA;QACR,UAAU,YAAA;QACV,WAAW,aAAA;QACX,WAAW,aAAA;QACX,eAAe,iBAAA;KAChB,CAAC,EATD,MAAM,QAAA,EAAE,KAAK,QAAA,CASX;IAEH,OAAO,UAAC,KAAuB,EAAE,QAAyB;QACxD,IAAM,WAAW,GAAG,IAAA,sBAAU,EAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC3D,IAAM,cAAc;QAClB,uJAAuJ;QACvJ,uBAAQ,CAAC,EAAE,KAAK,SAAS,IAAI,uBAAQ,CAAC,EAAE,KAAM,OAAe;YAC3D,CAAC,uCACM,KAAK,CAAC,SAAS,KAClB,KAAK,EAAE;oBACL,SAAS,EAAE,WAAW,CAAC,SAAS;iBACjC,IAEL,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;QACtB,IAAM,OAAO,GAAG,eAAK,CAAC,aAAa,CAAC,mBAAI,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC;QACpE,OAAO,8BAAC,iBAAO,uBAAK,WAAW,GAAG,OAAO,CAAW,CAAC;IACvD,CAAC,CAAC;AACJ,CAAC,EACD,wCAAoB,CACrB,CAAC;AACF,mBAAW,CAAC,WAAW,GAAG,mCAAe,CAAC;AAE1C,kBAAe,mBAAW,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menuContext.d.ts","sourceRoot":"","sources":["../../src/context/menuContext.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IACjD,oBAAoB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IACtC,oBAAoB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IACtC,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC;IAC1D,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC;CAC3D;AAED,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"menuContext.d.ts","sourceRoot":"","sources":["../../src/context/menuContext.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IACjD,oBAAoB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IACtC,oBAAoB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IACtC,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC;IAC1D,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC;CAC3D;AAED,eAAO,MAAM,WAAW,iCAYtB,CAAC;AAEH,eAAO,MAAM,YAAY,kCAAuB,CAAC;AACjD,eAAO,MAAM,cAAc,wBAAsC,CAAC"}
|
|
@@ -14,6 +14,7 @@ exports.MenuContext = React.createContext({
|
|
|
14
14
|
setOpen: function () { return false; },
|
|
15
15
|
shouldFocusOnContainer: false,
|
|
16
16
|
triggerRef: null,
|
|
17
|
+
hasMaxHeight: false,
|
|
17
18
|
});
|
|
18
19
|
exports.MenuProvider = exports.MenuContext.Provider;
|
|
19
20
|
var useMenuContext = function () { return React.useContext(exports.MenuContext); };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menuContext.js","sourceRoot":"","sources":["../../src/context/menuContext.ts"],"names":[],"mappings":";;;;AAAA,mDAA+B;AAalB,QAAA,WAAW,GAAG,KAAK,CAAC,aAAa,CAAmB;IAC/D,YAAY,EAAE,KAAK;IACnB,OAAO,EAAE,EAAE;IACX,cAAc,EAAE,EAAE;IAClB,aAAa,EAAE,KAAK;IACpB,SAAS,EAAE,KAAK;IAChB,IAAI,EAAE,KAAK;IACX,eAAe,EAAE,cAAM,OAAA,KAAK,EAAL,CAAK;IAC5B,OAAO,EAAE,cAAM,OAAA,KAAK,EAAL,CAAK;IACpB,sBAAsB,EAAE,KAAK;IAC7B,UAAU,EAAE,IAAI;
|
|
1
|
+
{"version":3,"file":"menuContext.js","sourceRoot":"","sources":["../../src/context/menuContext.ts"],"names":[],"mappings":";;;;AAAA,mDAA+B;AAalB,QAAA,WAAW,GAAG,KAAK,CAAC,aAAa,CAAmB;IAC/D,YAAY,EAAE,KAAK;IACnB,OAAO,EAAE,EAAE;IACX,cAAc,EAAE,EAAE;IAClB,aAAa,EAAE,KAAK;IACpB,SAAS,EAAE,KAAK;IAChB,IAAI,EAAE,KAAK;IACX,eAAe,EAAE,cAAM,OAAA,KAAK,EAAL,CAAK;IAC5B,OAAO,EAAE,cAAM,OAAA,KAAK,EAAL,CAAK;IACpB,sBAAsB,EAAE,KAAK;IAC7B,UAAU,EAAE,IAAI;IAChB,YAAY,EAAE,KAAK;CACpB,CAAC,CAAC;AAEU,QAAA,YAAY,GAAG,mBAAW,CAAC,QAAQ,CAAC;AAC1C,IAAM,cAAc,GAAG,cAAM,OAAA,KAAK,CAAC,UAAU,CAAC,mBAAW,CAAC,EAA7B,CAA6B,CAAC;AAArD,QAAA,cAAc,kBAAuC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluentui-react-native/menu",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.0",
|
|
4
4
|
"description": "A cross-platform Menu component using the Fluent Design System",
|
|
5
5
|
"main": "lib-commonjs/index.js",
|
|
6
6
|
"module": "lib/index.js",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
25
|
"@fluentui-react-native/adapters": ">=0.10.1 <1.0.0",
|
|
26
|
-
"@fluentui-react-native/callout": ">=0.
|
|
26
|
+
"@fluentui-react-native/callout": ">=0.22.0 <1.0.0",
|
|
27
27
|
"@fluentui-react-native/focus-zone": ">=0.11.29 <1.0.0",
|
|
28
28
|
"@fluentui-react-native/framework": "0.9.0",
|
|
29
29
|
"@fluentui-react-native/interactive-hooks": ">=0.22.17 <1.0.0",
|
package/src/Menu/Menu.types.ts
CHANGED
|
@@ -5,15 +5,16 @@ import type { MenuItemTokens } from './MenuItem.types';
|
|
|
5
5
|
|
|
6
6
|
export const defaultMenuItemTokens: TokenSettings<MenuItemTokens, Theme> = (t: Theme): MenuItemTokens => ({
|
|
7
7
|
backgroundColor: t.colors.transparentBackground,
|
|
8
|
-
borderRadius: 5, // hardcoded for now to match
|
|
8
|
+
borderRadius: 5, // hardcoded for now to match NSMenu
|
|
9
9
|
checkmarkSize: 16,
|
|
10
|
-
color: t.colors.menuItemText, //
|
|
10
|
+
color: t.colors.menuItemText, // hardcoded for now to match NSMenu
|
|
11
11
|
fontFamily: t.typography.families.primary,
|
|
12
12
|
fontSize: 13, // aligning with NSMenu font size
|
|
13
13
|
fontWeight: globalTokens.font.weight.regular as FontWeightValue,
|
|
14
14
|
gap: globalTokens.size40,
|
|
15
|
-
paddingHorizontal: 5, // hardcoded for now to match
|
|
16
|
-
paddingVertical: 3, // hardcoded for now to match
|
|
15
|
+
paddingHorizontal: 5, // hardcoded for now to match NSMenu
|
|
16
|
+
paddingVertical: 3, // hardcoded for now to match NSMenu
|
|
17
|
+
submenuIndicatorColor: t.colors.neutralForeground2,
|
|
17
18
|
submenuIndicatorPadding: globalTokens.sizeNone,
|
|
18
19
|
submenuIndicatorSize: 16,
|
|
19
20
|
focused: {
|
|
@@ -5,8 +5,11 @@ import { defaultMenuListTokens } from './MenuListTokens';
|
|
|
5
5
|
import type { MenuListProps, MenuListTokens, MenuListSlotProps } from './MenuList.types';
|
|
6
6
|
import { menuListName } from './MenuList.types';
|
|
7
7
|
|
|
8
|
+
export const menuListStates: (keyof MenuListTokens)[] = ['hasMaxHeight'];
|
|
9
|
+
|
|
8
10
|
export const stylingSettings: UseStylingOptions<MenuListProps, MenuListSlotProps, MenuListTokens> = {
|
|
9
11
|
tokens: [defaultMenuListTokens, menuListName],
|
|
12
|
+
states: menuListStates,
|
|
10
13
|
slotProps: {
|
|
11
14
|
root: buildProps(
|
|
12
15
|
(tokens: MenuListTokens, theme: Theme) => ({
|
|
@@ -3,7 +3,7 @@ import React from 'react';
|
|
|
3
3
|
import { Platform, ScrollView, View } from 'react-native';
|
|
4
4
|
import type { UseSlots } from '@fluentui-react-native/framework';
|
|
5
5
|
import { compose, mergeProps, stagedComponent, withSlots } from '@fluentui-react-native/framework';
|
|
6
|
-
import type { MenuListProps, MenuListType } from './MenuList.types';
|
|
6
|
+
import type { MenuListProps, MenuListState, MenuListType } from './MenuList.types';
|
|
7
7
|
import { menuListName } from './MenuList.types';
|
|
8
8
|
import { stylingSettings } from './MenuList.styling';
|
|
9
9
|
import { MenuListProvider } from '../context/menuListContext';
|
|
@@ -32,19 +32,22 @@ const MenuStack = stagedComponent((props: React.PropsWithRef<IViewProps> & { gap
|
|
|
32
32
|
});
|
|
33
33
|
MenuStack.displayName = 'MenuStack';
|
|
34
34
|
|
|
35
|
+
export const menuListLookup = (layer: string, state: MenuListState, userProps: MenuListProps): boolean => {
|
|
36
|
+
return state[layer] || userProps[layer] || layer === 'hasMaxHeight' || layer === userProps['minWidth'];
|
|
37
|
+
};
|
|
35
38
|
export const MenuList = compose<MenuListType>({
|
|
36
39
|
displayName: menuListName,
|
|
37
40
|
...stylingSettings,
|
|
38
41
|
slots: {
|
|
39
42
|
root: MenuStack,
|
|
40
|
-
|
|
43
|
+
scrollView: ScrollView,
|
|
41
44
|
...(Platform.OS === 'macos' && { focusZone: FocusZone }),
|
|
42
45
|
},
|
|
43
46
|
useRender: (userProps: MenuListProps, useSlots: UseSlots<MenuListType>) => {
|
|
44
47
|
const menuList = useMenuList(userProps);
|
|
45
48
|
const menuContext = useMenuContext();
|
|
46
49
|
const menuListContextValue = useMenuListContextValue(menuList);
|
|
47
|
-
const Slots = useSlots(menuList.props);
|
|
50
|
+
const Slots = useSlots(menuList.props, (layer) => menuListLookup(layer, menuList, userProps));
|
|
48
51
|
|
|
49
52
|
const focusZoneRef = React.useRef<View>();
|
|
50
53
|
|
|
@@ -70,6 +73,10 @@ export const MenuList = compose<MenuListType>({
|
|
|
70
73
|
</Slots.focusZone>
|
|
71
74
|
</Slots.scrollView>
|
|
72
75
|
</Slots.root>
|
|
76
|
+
) : menuContext.hasMaxHeight ? (
|
|
77
|
+
<Slots.root>
|
|
78
|
+
<Slots.scrollView>{children}</Slots.scrollView>
|
|
79
|
+
</Slots.root>
|
|
73
80
|
) : (
|
|
74
81
|
<Slots.root>{children}</Slots.root>
|
|
75
82
|
);
|
|
@@ -12,6 +12,7 @@ export interface MenuListTokens extends LayoutTokens, IBackgroundColorTokens {
|
|
|
12
12
|
* Space between items in pixels
|
|
13
13
|
*/
|
|
14
14
|
gap?: number;
|
|
15
|
+
hasMaxHeight?: MenuListTokens;
|
|
15
16
|
}
|
|
16
17
|
|
|
17
18
|
export interface MenuListProps extends Omit<IViewProps, 'onPress'> {
|
|
@@ -47,12 +48,13 @@ export interface MenuListState extends Omit<MenuListProps, 'checked' | 'onChecke
|
|
|
47
48
|
selectRadio?: (e: InteractionEvent, name: string) => void;
|
|
48
49
|
addRadioItem: (name: string) => void;
|
|
49
50
|
removeRadioItem: (name: string) => void;
|
|
51
|
+
hasMaxHeight?: boolean;
|
|
50
52
|
}
|
|
51
53
|
|
|
52
54
|
export interface MenuListSlotProps {
|
|
53
55
|
root: React.PropsWithRef<IViewProps> & { gap?: number };
|
|
54
56
|
focusZone?: FocusZoneProps; // macOS only
|
|
55
|
-
scrollView?: ScrollViewProps;
|
|
57
|
+
scrollView?: ScrollViewProps;
|
|
56
58
|
}
|
|
57
59
|
|
|
58
60
|
export interface MenuListType {
|
|
@@ -4,7 +4,7 @@ import type { TokenSettings } from '@fluentui-react-native/use-styling';
|
|
|
4
4
|
import type { MenuListTokens } from './MenuList.types';
|
|
5
5
|
|
|
6
6
|
export const defaultMenuListTokens: TokenSettings<MenuListTokens, Theme> = (t: Theme): MenuListTokens => ({
|
|
7
|
-
padding: 5, // hardcoded for now to match
|
|
7
|
+
padding: 5, // hardcoded for now to match NSMenu
|
|
8
8
|
backgroundColor: t.colors.transparentBackground,
|
|
9
9
|
gap: globalTokens.size20,
|
|
10
10
|
});
|
|
@@ -5,7 +5,11 @@ import type { MenuListTokens } from './MenuList.types';
|
|
|
5
5
|
|
|
6
6
|
export const defaultMenuListTokens: TokenSettings<MenuListTokens, Theme> = (t: Theme): MenuListTokens => ({
|
|
7
7
|
paddingVertical: globalTokens.size40,
|
|
8
|
-
minWidth:
|
|
8
|
+
minWidth: 160,
|
|
9
9
|
maxWidth: 300,
|
|
10
10
|
backgroundColor: t.colors.neutralBackground1,
|
|
11
|
+
/* To account for the width of the vertical scrollView. With the default minWidth, some content may be cut off */
|
|
12
|
+
hasMaxHeight: {
|
|
13
|
+
minWidth: 175,
|
|
14
|
+
},
|
|
11
15
|
});
|
|
@@ -6,15 +6,19 @@ import type { MenuPopoverProps, MenuPopoverTokens } from './MenuPopover.types';
|
|
|
6
6
|
import { menuPopoverName } from './MenuPopover.types';
|
|
7
7
|
import { useMenuPopover } from './useMenuPopover';
|
|
8
8
|
import { useMenuPopoverTokens } from './MenuPopoverTokens';
|
|
9
|
-
import { View } from 'react-native';
|
|
9
|
+
import { Platform, View } from 'react-native';
|
|
10
|
+
import { useMenuContext } from '../context';
|
|
10
11
|
|
|
11
12
|
export const MenuPopover = compressible<MenuPopoverProps, MenuPopoverTokens>(
|
|
12
13
|
(props: MenuPopoverProps, useTokens: UseTokens<MenuPopoverTokens>) => {
|
|
13
14
|
const { directionalHint, gapSpace, maxHeight, maxWidth, minPadding, borderWidth, borderColor, backgroundColor } = props;
|
|
14
15
|
const state = useMenuPopover(props);
|
|
15
16
|
const theme = useFluentTheme();
|
|
17
|
+
const context = useMenuContext();
|
|
16
18
|
let [tokens, cache] = useTokens(theme);
|
|
17
19
|
|
|
20
|
+
context.hasMaxHeight = maxHeight != undefined;
|
|
21
|
+
|
|
18
22
|
[tokens, cache] = patchTokens(tokens, cache, {
|
|
19
23
|
directionalHint,
|
|
20
24
|
gapSpace,
|
|
@@ -28,7 +32,17 @@ export const MenuPopover = compressible<MenuPopoverProps, MenuPopoverTokens>(
|
|
|
28
32
|
|
|
29
33
|
return (final: MenuPopoverProps, children: React.ReactNode) => {
|
|
30
34
|
const mergedProps = mergeProps(tokens, state.props, final);
|
|
31
|
-
const
|
|
35
|
+
const innerViewProps =
|
|
36
|
+
//For windows platforms, styling needs to be set on container view instead of the callout itself for the scrollview to reflect correct width and height
|
|
37
|
+
Platform.OS === 'windows' || Platform.OS === ('win32' as any)
|
|
38
|
+
? {
|
|
39
|
+
...state.innerView,
|
|
40
|
+
style: {
|
|
41
|
+
maxHeight: mergedProps.maxHeight,
|
|
42
|
+
},
|
|
43
|
+
}
|
|
44
|
+
: state.innerView;
|
|
45
|
+
const content = React.createElement(View, innerViewProps, children);
|
|
32
46
|
return <Callout {...mergedProps}>{content}</Callout>;
|
|
33
47
|
};
|
|
34
48
|
},
|
|
@@ -200,6 +200,11 @@ Array [
|
|
|
200
200
|
onKeyUp={[Function]}
|
|
201
201
|
onMouseEnter={[Function]}
|
|
202
202
|
onMouseLeave={[Function]}
|
|
203
|
+
style={
|
|
204
|
+
Object {
|
|
205
|
+
"maxHeight": undefined,
|
|
206
|
+
}
|
|
207
|
+
}
|
|
203
208
|
>
|
|
204
209
|
<View
|
|
205
210
|
style={
|
|
@@ -207,7 +212,7 @@ Array [
|
|
|
207
212
|
"backgroundColor": "#ffffff",
|
|
208
213
|
"display": "flex",
|
|
209
214
|
"maxWidth": 300,
|
|
210
|
-
"minWidth":
|
|
215
|
+
"minWidth": 175,
|
|
211
216
|
"paddingVertical": 4,
|
|
212
217
|
}
|
|
213
218
|
}
|
|
@@ -471,6 +476,11 @@ Array [
|
|
|
471
476
|
onKeyUp={[Function]}
|
|
472
477
|
onMouseEnter={[Function]}
|
|
473
478
|
onMouseLeave={[Function]}
|
|
479
|
+
style={
|
|
480
|
+
Object {
|
|
481
|
+
"maxHeight": undefined,
|
|
482
|
+
}
|
|
483
|
+
}
|
|
474
484
|
>
|
|
475
485
|
<View
|
|
476
486
|
style={
|
|
@@ -478,7 +488,7 @@ Array [
|
|
|
478
488
|
"backgroundColor": "#ffffff",
|
|
479
489
|
"display": "flex",
|
|
480
490
|
"maxWidth": 300,
|
|
481
|
-
"minWidth":
|
|
491
|
+
"minWidth": 175,
|
|
482
492
|
"paddingVertical": 4,
|
|
483
493
|
}
|
|
484
494
|
}
|
|
@@ -674,6 +684,11 @@ Array [
|
|
|
674
684
|
onKeyUp={[Function]}
|
|
675
685
|
onMouseEnter={[Function]}
|
|
676
686
|
onMouseLeave={[Function]}
|
|
687
|
+
style={
|
|
688
|
+
Object {
|
|
689
|
+
"maxHeight": undefined,
|
|
690
|
+
}
|
|
691
|
+
}
|
|
677
692
|
>
|
|
678
693
|
<View
|
|
679
694
|
style={
|
|
@@ -681,7 +696,7 @@ Array [
|
|
|
681
696
|
"backgroundColor": "#ffffff",
|
|
682
697
|
"display": "flex",
|
|
683
698
|
"maxWidth": 300,
|
|
684
|
-
"minWidth":
|
|
699
|
+
"minWidth": 175,
|
|
685
700
|
"paddingVertical": 4,
|
|
686
701
|
}
|
|
687
702
|
}
|
|
@@ -1077,6 +1092,11 @@ Array [
|
|
|
1077
1092
|
onKeyUp={[Function]}
|
|
1078
1093
|
onMouseEnter={[Function]}
|
|
1079
1094
|
onMouseLeave={[Function]}
|
|
1095
|
+
style={
|
|
1096
|
+
Object {
|
|
1097
|
+
"maxHeight": undefined,
|
|
1098
|
+
}
|
|
1099
|
+
}
|
|
1080
1100
|
>
|
|
1081
1101
|
<View
|
|
1082
1102
|
style={
|
|
@@ -1084,7 +1104,7 @@ Array [
|
|
|
1084
1104
|
"backgroundColor": "#ffffff",
|
|
1085
1105
|
"display": "flex",
|
|
1086
1106
|
"maxWidth": 300,
|
|
1087
|
-
"minWidth":
|
|
1107
|
+
"minWidth": 175,
|
|
1088
1108
|
"paddingVertical": 4,
|
|
1089
1109
|
}
|
|
1090
1110
|
}
|
|
@@ -1480,6 +1500,11 @@ Array [
|
|
|
1480
1500
|
onKeyUp={[Function]}
|
|
1481
1501
|
onMouseEnter={[Function]}
|
|
1482
1502
|
onMouseLeave={[Function]}
|
|
1503
|
+
style={
|
|
1504
|
+
Object {
|
|
1505
|
+
"maxHeight": undefined,
|
|
1506
|
+
}
|
|
1507
|
+
}
|
|
1483
1508
|
>
|
|
1484
1509
|
<View
|
|
1485
1510
|
style={
|
|
@@ -1487,7 +1512,7 @@ Array [
|
|
|
1487
1512
|
"backgroundColor": "#ffffff",
|
|
1488
1513
|
"display": "flex",
|
|
1489
1514
|
"maxWidth": 300,
|
|
1490
|
-
"minWidth":
|
|
1515
|
+
"minWidth": 175,
|
|
1491
1516
|
"paddingVertical": 4,
|
|
1492
1517
|
}
|
|
1493
1518
|
}
|
|
@@ -1883,6 +1908,11 @@ Array [
|
|
|
1883
1908
|
onKeyUp={[Function]}
|
|
1884
1909
|
onMouseEnter={[Function]}
|
|
1885
1910
|
onMouseLeave={[Function]}
|
|
1911
|
+
style={
|
|
1912
|
+
Object {
|
|
1913
|
+
"maxHeight": undefined,
|
|
1914
|
+
}
|
|
1915
|
+
}
|
|
1886
1916
|
>
|
|
1887
1917
|
<View
|
|
1888
1918
|
style={
|
|
@@ -1890,7 +1920,7 @@ Array [
|
|
|
1890
1920
|
"backgroundColor": "#ffffff",
|
|
1891
1921
|
"display": "flex",
|
|
1892
1922
|
"maxWidth": 300,
|
|
1893
|
-
"minWidth":
|
|
1923
|
+
"minWidth": 175,
|
|
1894
1924
|
"paddingVertical": 4,
|
|
1895
1925
|
}
|
|
1896
1926
|
}
|
|
@@ -2274,6 +2304,11 @@ Array [
|
|
|
2274
2304
|
onKeyUp={[Function]}
|
|
2275
2305
|
onMouseEnter={[Function]}
|
|
2276
2306
|
onMouseLeave={[Function]}
|
|
2307
|
+
style={
|
|
2308
|
+
Object {
|
|
2309
|
+
"maxHeight": undefined,
|
|
2310
|
+
}
|
|
2311
|
+
}
|
|
2277
2312
|
>
|
|
2278
2313
|
<View
|
|
2279
2314
|
style={
|
|
@@ -2281,7 +2316,7 @@ Array [
|
|
|
2281
2316
|
"backgroundColor": "#ffffff",
|
|
2282
2317
|
"display": "flex",
|
|
2283
2318
|
"maxWidth": 300,
|
|
2284
|
-
"minWidth":
|
|
2319
|
+
"minWidth": 175,
|
|
2285
2320
|
"paddingVertical": 4,
|
|
2286
2321
|
}
|
|
2287
2322
|
}
|