@gravity-ui/navigation 1.4.2 → 1.5.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/build/cjs/{HotkeysPanel-9e5af200.js → HotkeysPanel-7823f66a.js} +2 -2
- package/build/cjs/HotkeysPanel-7823f66a.js.map +1 -0
- package/build/cjs/index.js +1 -1
- package/build/cjs/index4.js +1 -1
- package/build/esm/{HotkeysPanel-67f3066d.js → HotkeysPanel-82fe991b.js} +2 -2
- package/build/esm/HotkeysPanel-82fe991b.js.map +1 -0
- package/build/esm/index.js +1 -1
- package/build/esm/index4.js +1 -1
- package/package.json +1 -1
- package/build/cjs/HotkeysPanel-9e5af200.js.map +0 -1
- package/build/esm/HotkeysPanel-67f3066d.js.map +0 -1
|
@@ -53,7 +53,7 @@ function HotkeysPanel(_a) {
|
|
|
53
53
|
item.value && React__default["default"].createElement(uikit.Hotkey, { className: b('hotkey'), value: item.value }))), []);
|
|
54
54
|
const drawerItemContent = (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
55
55
|
React__default["default"].createElement("h2", { className: b('title') }, title),
|
|
56
|
-
React__default["default"].createElement(uikit.TextInput, { value: filter, onUpdate: setFilter, placeholder: filterPlaceholder, autoFocus: true, className: b('search') }),
|
|
56
|
+
React__default["default"].createElement(uikit.TextInput, { value: filter, onUpdate: setFilter, placeholder: filterPlaceholder, autoFocus: true, className: b('search'), hasClear: true }),
|
|
57
57
|
React__default["default"].createElement(uikit.List, Object.assign({ className: b('list'), virtualized: false, filterable: false, items: hotkeysList, renderItem: renderItem, itemClassName: b('item', itemClassName), emptyPlaceholder: emptyState }, listProps))));
|
|
58
58
|
return (React__default["default"].createElement(Drawer.Drawer, { className: b(null, className), onVeilClick: onClose, onEscape: onClose, preventScrollBody: preventScrollBody, style: {
|
|
59
59
|
left: leftOffset,
|
|
@@ -63,4 +63,4 @@ function HotkeysPanel(_a) {
|
|
|
63
63
|
}
|
|
64
64
|
|
|
65
65
|
exports.HotkeysPanel = HotkeysPanel;
|
|
66
|
-
//# sourceMappingURL=HotkeysPanel-
|
|
66
|
+
//# sourceMappingURL=HotkeysPanel-7823f66a.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HotkeysPanel-7823f66a.js","sources":["../../../src/components/HotkeysPanel/utils/flattenHotkeyGroups.ts","../../../src/components/HotkeysPanel/utils/filterHotkeys.ts","../../../src/components/HotkeysPanel/HotkeysPanel.tsx"],"sourcesContent":["import type {HotkeysGroup, HotkeysListItem} from '../types';\n\nexport function flattenHotkeyGroups<T>(hotkeys: HotkeysGroup<T>[]) {\n const result: HotkeysListItem[] = [];\n\n for (const hotkeysGroup of hotkeys) {\n result.push({\n title: hotkeysGroup.title,\n group: true,\n });\n\n result.push(...hotkeysGroup.items);\n }\n\n return result;\n}\n","import type {HotkeysGroup} from '..';\n\nexport function filterHotkeys<T>(hotkeys: HotkeysGroup<T>[], filter: string) {\n if (filter) {\n const result = [];\n const normalizedFilter = filter.toLowerCase();\n\n for (const hotkeysBlock of hotkeys) {\n const filteredItems = hotkeysBlock.items.filter((item) =>\n item.title.toLowerCase().includes(normalizedFilter),\n );\n if (filteredItems.length > 0) {\n result.push({\n ...hotkeysBlock,\n items: filteredItems,\n });\n }\n }\n\n return result;\n }\n\n return hotkeys;\n}\n","import React, {useMemo, useCallback, useState} from 'react';\nimport type {ReactNode} from 'react';\n\nimport {Hotkey, List, TextInput} from '@gravity-ui/uikit';\nimport type {ListProps} from '@gravity-ui/uikit';\n\nimport {Drawer, DrawerItem} from '../Drawer/Drawer';\nimport type {DrawerProps} from '../Drawer/Drawer';\nimport {block} from '../utils/cn';\n\nimport {flattenHotkeyGroups} from './utils/flattenHotkeyGroups';\nimport {filterHotkeys} from './utils/filterHotkeys';\nimport type {HotkeysListItem, HotkeysGroup} from './types';\nimport './HotkeysPanel.scss';\n\nconst b = block('hotkeys-panel');\n\nexport type HotkeysPanelProps<T> = {\n hotkeys: HotkeysGroup<T>[];\n title?: ReactNode;\n filterPlaceholder?: string;\n emptyState?: ReactNode;\n visible: boolean;\n onClose?: () => void;\n className?: string;\n leftOffset?: number | string;\n topOffset?: number | string;\n preventScrollBody?: DrawerProps['preventScrollBody'];\n} & Omit<ListProps<HotkeysListItem>, 'items' | 'emptyPlaceholder'>;\n\nexport function HotkeysPanel<T = {}>({\n visible,\n onClose,\n leftOffset,\n topOffset,\n className,\n preventScrollBody,\n hotkeys,\n itemClassName,\n filterPlaceholder,\n title,\n emptyState,\n ...listProps\n}: HotkeysPanelProps<T>) {\n const [filter, setFilter] = useState('');\n\n const hotkeysList = useMemo(() => {\n const filteredHotkeys = filterHotkeys(hotkeys, filter);\n return flattenHotkeyGroups(filteredHotkeys);\n }, [hotkeys, filter]);\n\n const renderItem = useCallback(\n (item: HotkeysListItem) => (\n <div className={b('item-content', {group: item.group})} key={item.title}>\n {item.title}\n {item.value && <Hotkey className={b('hotkey')} value={item.value} />}\n </div>\n ),\n [],\n );\n\n const drawerItemContent = (\n <React.Fragment>\n <h2 className={b('title')}>{title}</h2>\n <TextInput\n value={filter}\n onUpdate={setFilter}\n placeholder={filterPlaceholder}\n autoFocus\n className={b('search')}\n hasClear\n />\n <List<HotkeysListItem>\n className={b('list')}\n virtualized={false}\n filterable={false}\n items={hotkeysList}\n renderItem={renderItem}\n itemClassName={b('item', itemClassName)}\n emptyPlaceholder={emptyState as string}\n {...listProps}\n />\n </React.Fragment>\n );\n\n return (\n <Drawer\n className={b(null, className)}\n onVeilClick={onClose}\n onEscape={onClose}\n preventScrollBody={preventScrollBody}\n style={{\n left: leftOffset,\n top: topOffset,\n }}\n >\n <DrawerItem\n id=\"hotkeys\"\n visible={visible}\n className={b('drawer-item')}\n content={drawerItemContent}\n />\n </Drawer>\n );\n}\n"],"names":["block","__rest","useState","useMemo","useCallback","React","Hotkey","TextInput","List","Drawer","DrawerItem"],"mappings":"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"}
|
package/build/cjs/index.js
CHANGED
|
@@ -11,7 +11,7 @@ var PageLayoutAside = require('./PageLayoutAside.js');
|
|
|
11
11
|
var registerKeyset = require('./registerKeyset-f4ce9ee7.js');
|
|
12
12
|
var ActionBar = require('./ActionBar-393db3ea.js');
|
|
13
13
|
var Title = require('./Title-d58ff158.js');
|
|
14
|
-
var HotkeysPanel = require('./HotkeysPanel-
|
|
14
|
+
var HotkeysPanel = require('./HotkeysPanel-7823f66a.js');
|
|
15
15
|
var Settings = require('./Settings-6db7b88c.js');
|
|
16
16
|
var FooterItem$1 = require('./FooterItem-01b32eb7.js');
|
|
17
17
|
require('./tslib.es6-705c6589.js');
|
package/build/cjs/index4.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var HotkeysPanel = require('./HotkeysPanel-
|
|
5
|
+
var HotkeysPanel = require('./HotkeysPanel-7823f66a.js');
|
|
6
6
|
require('./tslib.es6-705c6589.js');
|
|
7
7
|
require('react');
|
|
8
8
|
require('@gravity-ui/uikit');
|
|
@@ -47,7 +47,7 @@ function HotkeysPanel(_a) {
|
|
|
47
47
|
item.value && React__default.createElement(Hotkey, { className: b('hotkey'), value: item.value }))), []);
|
|
48
48
|
const drawerItemContent = (React__default.createElement(React__default.Fragment, null,
|
|
49
49
|
React__default.createElement("h2", { className: b('title') }, title),
|
|
50
|
-
React__default.createElement(TextInput, { value: filter, onUpdate: setFilter, placeholder: filterPlaceholder, autoFocus: true, className: b('search') }),
|
|
50
|
+
React__default.createElement(TextInput, { value: filter, onUpdate: setFilter, placeholder: filterPlaceholder, autoFocus: true, className: b('search'), hasClear: true }),
|
|
51
51
|
React__default.createElement(List, Object.assign({ className: b('list'), virtualized: false, filterable: false, items: hotkeysList, renderItem: renderItem, itemClassName: b('item', itemClassName), emptyPlaceholder: emptyState }, listProps))));
|
|
52
52
|
return (React__default.createElement(Drawer, { className: b(null, className), onVeilClick: onClose, onEscape: onClose, preventScrollBody: preventScrollBody, style: {
|
|
53
53
|
left: leftOffset,
|
|
@@ -57,4 +57,4 @@ function HotkeysPanel(_a) {
|
|
|
57
57
|
}
|
|
58
58
|
|
|
59
59
|
export { HotkeysPanel as H };
|
|
60
|
-
//# sourceMappingURL=HotkeysPanel-
|
|
60
|
+
//# sourceMappingURL=HotkeysPanel-82fe991b.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HotkeysPanel-82fe991b.js","sources":["../../../src/components/HotkeysPanel/utils/flattenHotkeyGroups.ts","../../../src/components/HotkeysPanel/utils/filterHotkeys.ts","../../../src/components/HotkeysPanel/HotkeysPanel.tsx"],"sourcesContent":["import type {HotkeysGroup, HotkeysListItem} from '../types';\n\nexport function flattenHotkeyGroups<T>(hotkeys: HotkeysGroup<T>[]) {\n const result: HotkeysListItem[] = [];\n\n for (const hotkeysGroup of hotkeys) {\n result.push({\n title: hotkeysGroup.title,\n group: true,\n });\n\n result.push(...hotkeysGroup.items);\n }\n\n return result;\n}\n","import type {HotkeysGroup} from '..';\n\nexport function filterHotkeys<T>(hotkeys: HotkeysGroup<T>[], filter: string) {\n if (filter) {\n const result = [];\n const normalizedFilter = filter.toLowerCase();\n\n for (const hotkeysBlock of hotkeys) {\n const filteredItems = hotkeysBlock.items.filter((item) =>\n item.title.toLowerCase().includes(normalizedFilter),\n );\n if (filteredItems.length > 0) {\n result.push({\n ...hotkeysBlock,\n items: filteredItems,\n });\n }\n }\n\n return result;\n }\n\n return hotkeys;\n}\n","import React, {useMemo, useCallback, useState} from 'react';\nimport type {ReactNode} from 'react';\n\nimport {Hotkey, List, TextInput} from '@gravity-ui/uikit';\nimport type {ListProps} from '@gravity-ui/uikit';\n\nimport {Drawer, DrawerItem} from '../Drawer/Drawer';\nimport type {DrawerProps} from '../Drawer/Drawer';\nimport {block} from '../utils/cn';\n\nimport {flattenHotkeyGroups} from './utils/flattenHotkeyGroups';\nimport {filterHotkeys} from './utils/filterHotkeys';\nimport type {HotkeysListItem, HotkeysGroup} from './types';\nimport './HotkeysPanel.scss';\n\nconst b = block('hotkeys-panel');\n\nexport type HotkeysPanelProps<T> = {\n hotkeys: HotkeysGroup<T>[];\n title?: ReactNode;\n filterPlaceholder?: string;\n emptyState?: ReactNode;\n visible: boolean;\n onClose?: () => void;\n className?: string;\n leftOffset?: number | string;\n topOffset?: number | string;\n preventScrollBody?: DrawerProps['preventScrollBody'];\n} & Omit<ListProps<HotkeysListItem>, 'items' | 'emptyPlaceholder'>;\n\nexport function HotkeysPanel<T = {}>({\n visible,\n onClose,\n leftOffset,\n topOffset,\n className,\n preventScrollBody,\n hotkeys,\n itemClassName,\n filterPlaceholder,\n title,\n emptyState,\n ...listProps\n}: HotkeysPanelProps<T>) {\n const [filter, setFilter] = useState('');\n\n const hotkeysList = useMemo(() => {\n const filteredHotkeys = filterHotkeys(hotkeys, filter);\n return flattenHotkeyGroups(filteredHotkeys);\n }, [hotkeys, filter]);\n\n const renderItem = useCallback(\n (item: HotkeysListItem) => (\n <div className={b('item-content', {group: item.group})} key={item.title}>\n {item.title}\n {item.value && <Hotkey className={b('hotkey')} value={item.value} />}\n </div>\n ),\n [],\n );\n\n const drawerItemContent = (\n <React.Fragment>\n <h2 className={b('title')}>{title}</h2>\n <TextInput\n value={filter}\n onUpdate={setFilter}\n placeholder={filterPlaceholder}\n autoFocus\n className={b('search')}\n hasClear\n />\n <List<HotkeysListItem>\n className={b('list')}\n virtualized={false}\n filterable={false}\n items={hotkeysList}\n renderItem={renderItem}\n itemClassName={b('item', itemClassName)}\n emptyPlaceholder={emptyState as string}\n {...listProps}\n />\n </React.Fragment>\n );\n\n return (\n <Drawer\n className={b(null, className)}\n onVeilClick={onClose}\n onEscape={onClose}\n preventScrollBody={preventScrollBody}\n style={{\n left: leftOffset,\n top: topOffset,\n }}\n >\n <DrawerItem\n id=\"hotkeys\"\n visible={visible}\n className={b('drawer-item')}\n content={drawerItemContent}\n />\n </Drawer>\n );\n}\n"],"names":["React"],"mappings":"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"}
|
package/build/esm/index.js
CHANGED
|
@@ -7,7 +7,7 @@ export { PageLayoutAside } from './PageLayoutAside.js';
|
|
|
7
7
|
export { L as Lang, c as configure } from './registerKeyset-35f1ea08.js';
|
|
8
8
|
export { P as ActionBar } from './ActionBar-f1c9a2d3.js';
|
|
9
9
|
export { T as Title } from './Title-3d579ca4.js';
|
|
10
|
-
export { H as HotkeysPanel } from './HotkeysPanel-
|
|
10
|
+
export { H as HotkeysPanel } from './HotkeysPanel-82fe991b.js';
|
|
11
11
|
export { S as Settings, a as useSettingsContext, u as useSettingsSelectionContext } from './Settings-21bc1aba.js';
|
|
12
12
|
export { M as MobileHeader, F as MobileHeaderFooterItem } from './FooterItem-d66ab545.js';
|
|
13
13
|
import './tslib.es6-3cd4e99f.js';
|
package/build/esm/index4.js
CHANGED
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"HotkeysPanel-9e5af200.js","sources":["../../../src/components/HotkeysPanel/utils/flattenHotkeyGroups.ts","../../../src/components/HotkeysPanel/utils/filterHotkeys.ts","../../../src/components/HotkeysPanel/HotkeysPanel.tsx"],"sourcesContent":["import type {HotkeysGroup, HotkeysListItem} from '../types';\n\nexport function flattenHotkeyGroups<T>(hotkeys: HotkeysGroup<T>[]) {\n const result: HotkeysListItem[] = [];\n\n for (const hotkeysGroup of hotkeys) {\n result.push({\n title: hotkeysGroup.title,\n group: true,\n });\n\n result.push(...hotkeysGroup.items);\n }\n\n return result;\n}\n","import type {HotkeysGroup} from '..';\n\nexport function filterHotkeys<T>(hotkeys: HotkeysGroup<T>[], filter: string) {\n if (filter) {\n const result = [];\n const normalizedFilter = filter.toLowerCase();\n\n for (const hotkeysBlock of hotkeys) {\n const filteredItems = hotkeysBlock.items.filter((item) =>\n item.title.toLowerCase().includes(normalizedFilter),\n );\n if (filteredItems.length > 0) {\n result.push({\n ...hotkeysBlock,\n items: filteredItems,\n });\n }\n }\n\n return result;\n }\n\n return hotkeys;\n}\n","import React, {useMemo, useCallback, useState} from 'react';\nimport type {ReactNode} from 'react';\n\nimport {Hotkey, List, TextInput} from '@gravity-ui/uikit';\nimport type {ListProps} from '@gravity-ui/uikit';\n\nimport {Drawer, DrawerItem} from '../Drawer/Drawer';\nimport type {DrawerProps} from '../Drawer/Drawer';\nimport {block} from '../utils/cn';\n\nimport {flattenHotkeyGroups} from './utils/flattenHotkeyGroups';\nimport {filterHotkeys} from './utils/filterHotkeys';\nimport type {HotkeysListItem, HotkeysGroup} from './types';\nimport './HotkeysPanel.scss';\n\nconst b = block('hotkeys-panel');\n\nexport type HotkeysPanelProps<T> = {\n hotkeys: HotkeysGroup<T>[];\n title?: ReactNode;\n filterPlaceholder?: string;\n emptyState?: ReactNode;\n visible: boolean;\n onClose?: () => void;\n className?: string;\n leftOffset?: number | string;\n topOffset?: number | string;\n preventScrollBody?: DrawerProps['preventScrollBody'];\n} & Omit<ListProps<HotkeysListItem>, 'items' | 'emptyPlaceholder'>;\n\nexport function HotkeysPanel<T = {}>({\n visible,\n onClose,\n leftOffset,\n topOffset,\n className,\n preventScrollBody,\n hotkeys,\n itemClassName,\n filterPlaceholder,\n title,\n emptyState,\n ...listProps\n}: HotkeysPanelProps<T>) {\n const [filter, setFilter] = useState('');\n\n const hotkeysList = useMemo(() => {\n const filteredHotkeys = filterHotkeys(hotkeys, filter);\n return flattenHotkeyGroups(filteredHotkeys);\n }, [hotkeys, filter]);\n\n const renderItem = useCallback(\n (item: HotkeysListItem) => (\n <div className={b('item-content', {group: item.group})} key={item.title}>\n {item.title}\n {item.value && <Hotkey className={b('hotkey')} value={item.value} />}\n </div>\n ),\n [],\n );\n\n const drawerItemContent = (\n <React.Fragment>\n <h2 className={b('title')}>{title}</h2>\n <TextInput\n value={filter}\n onUpdate={setFilter}\n placeholder={filterPlaceholder}\n autoFocus\n className={b('search')}\n />\n <List<HotkeysListItem>\n className={b('list')}\n virtualized={false}\n filterable={false}\n items={hotkeysList}\n renderItem={renderItem}\n itemClassName={b('item', itemClassName)}\n emptyPlaceholder={emptyState as string}\n {...listProps}\n />\n </React.Fragment>\n );\n\n return (\n <Drawer\n className={b(null, className)}\n onVeilClick={onClose}\n onEscape={onClose}\n preventScrollBody={preventScrollBody}\n style={{\n left: leftOffset,\n top: topOffset,\n }}\n >\n <DrawerItem\n id=\"hotkeys\"\n visible={visible}\n className={b('drawer-item')}\n content={drawerItemContent}\n />\n </Drawer>\n );\n}\n"],"names":["block","__rest","useState","useMemo","useCallback","React","Hotkey","TextInput","List","Drawer","DrawerItem"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"HotkeysPanel-67f3066d.js","sources":["../../../src/components/HotkeysPanel/utils/flattenHotkeyGroups.ts","../../../src/components/HotkeysPanel/utils/filterHotkeys.ts","../../../src/components/HotkeysPanel/HotkeysPanel.tsx"],"sourcesContent":["import type {HotkeysGroup, HotkeysListItem} from '../types';\n\nexport function flattenHotkeyGroups<T>(hotkeys: HotkeysGroup<T>[]) {\n const result: HotkeysListItem[] = [];\n\n for (const hotkeysGroup of hotkeys) {\n result.push({\n title: hotkeysGroup.title,\n group: true,\n });\n\n result.push(...hotkeysGroup.items);\n }\n\n return result;\n}\n","import type {HotkeysGroup} from '..';\n\nexport function filterHotkeys<T>(hotkeys: HotkeysGroup<T>[], filter: string) {\n if (filter) {\n const result = [];\n const normalizedFilter = filter.toLowerCase();\n\n for (const hotkeysBlock of hotkeys) {\n const filteredItems = hotkeysBlock.items.filter((item) =>\n item.title.toLowerCase().includes(normalizedFilter),\n );\n if (filteredItems.length > 0) {\n result.push({\n ...hotkeysBlock,\n items: filteredItems,\n });\n }\n }\n\n return result;\n }\n\n return hotkeys;\n}\n","import React, {useMemo, useCallback, useState} from 'react';\nimport type {ReactNode} from 'react';\n\nimport {Hotkey, List, TextInput} from '@gravity-ui/uikit';\nimport type {ListProps} from '@gravity-ui/uikit';\n\nimport {Drawer, DrawerItem} from '../Drawer/Drawer';\nimport type {DrawerProps} from '../Drawer/Drawer';\nimport {block} from '../utils/cn';\n\nimport {flattenHotkeyGroups} from './utils/flattenHotkeyGroups';\nimport {filterHotkeys} from './utils/filterHotkeys';\nimport type {HotkeysListItem, HotkeysGroup} from './types';\nimport './HotkeysPanel.scss';\n\nconst b = block('hotkeys-panel');\n\nexport type HotkeysPanelProps<T> = {\n hotkeys: HotkeysGroup<T>[];\n title?: ReactNode;\n filterPlaceholder?: string;\n emptyState?: ReactNode;\n visible: boolean;\n onClose?: () => void;\n className?: string;\n leftOffset?: number | string;\n topOffset?: number | string;\n preventScrollBody?: DrawerProps['preventScrollBody'];\n} & Omit<ListProps<HotkeysListItem>, 'items' | 'emptyPlaceholder'>;\n\nexport function HotkeysPanel<T = {}>({\n visible,\n onClose,\n leftOffset,\n topOffset,\n className,\n preventScrollBody,\n hotkeys,\n itemClassName,\n filterPlaceholder,\n title,\n emptyState,\n ...listProps\n}: HotkeysPanelProps<T>) {\n const [filter, setFilter] = useState('');\n\n const hotkeysList = useMemo(() => {\n const filteredHotkeys = filterHotkeys(hotkeys, filter);\n return flattenHotkeyGroups(filteredHotkeys);\n }, [hotkeys, filter]);\n\n const renderItem = useCallback(\n (item: HotkeysListItem) => (\n <div className={b('item-content', {group: item.group})} key={item.title}>\n {item.title}\n {item.value && <Hotkey className={b('hotkey')} value={item.value} />}\n </div>\n ),\n [],\n );\n\n const drawerItemContent = (\n <React.Fragment>\n <h2 className={b('title')}>{title}</h2>\n <TextInput\n value={filter}\n onUpdate={setFilter}\n placeholder={filterPlaceholder}\n autoFocus\n className={b('search')}\n />\n <List<HotkeysListItem>\n className={b('list')}\n virtualized={false}\n filterable={false}\n items={hotkeysList}\n renderItem={renderItem}\n itemClassName={b('item', itemClassName)}\n emptyPlaceholder={emptyState as string}\n {...listProps}\n />\n </React.Fragment>\n );\n\n return (\n <Drawer\n className={b(null, className)}\n onVeilClick={onClose}\n onEscape={onClose}\n preventScrollBody={preventScrollBody}\n style={{\n left: leftOffset,\n top: topOffset,\n }}\n >\n <DrawerItem\n id=\"hotkeys\"\n visible={visible}\n className={b('drawer-item')}\n content={drawerItemContent}\n />\n </Drawer>\n );\n}\n"],"names":["React"],"mappings":";;;;;;AAEM,SAAU,mBAAmB,CAAI,OAA0B,EAAA;IAC7D,MAAM,MAAM,GAAsB,EAAE,CAAC;AAErC,IAAA,KAAK,MAAM,YAAY,IAAI,OAAO,EAAE;QAChC,MAAM,CAAC,IAAI,CAAC;YACR,KAAK,EAAE,YAAY,CAAC,KAAK;AACzB,YAAA,KAAK,EAAE,IAAI;AACd,SAAA,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;AACtC,KAAA;AAED,IAAA,OAAO,MAAM,CAAC;AAClB;;ACbgB,SAAA,aAAa,CAAI,OAA0B,EAAE,MAAc,EAAA;AACvE,IAAA,IAAI,MAAM,EAAE;QACR,MAAM,MAAM,GAAG,EAAE,CAAC;AAClB,QAAA,MAAM,gBAAgB,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;AAE9C,QAAA,KAAK,MAAM,YAAY,IAAI,OAAO,EAAE;YAChC,MAAM,aAAa,GAAG,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,KACjD,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CACtD,CAAC;AACF,YAAA,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC1B,MAAM,CAAC,IAAI,CACJ,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,YAAY,KACf,KAAK,EAAE,aAAa,EAAA,CAAA,CACtB,CAAC;AACN,aAAA;AACJ,SAAA;AAED,QAAA,OAAO,MAAM,CAAC;AACjB,KAAA;AAED,IAAA,OAAO,OAAO,CAAC;AACnB;;;;;ACRA,MAAM,CAAC,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC;AAe3B,SAAU,YAAY,CAAS,EAad,EAAA;QAbc,EACjC,OAAO,EACP,OAAO,EACP,UAAU,EACV,SAAS,EACT,SAAS,EACT,iBAAiB,EACjB,OAAO,EACP,aAAa,EACb,iBAAiB,EACjB,KAAK,EACL,UAAU,EAAA,GAAA,EAES,EADhB,SAAS,GAZqB,MAAA,CAAA,EAAA,EAAA,CAAA,SAAA,EAAA,SAAA,EAAA,YAAA,EAAA,WAAA,EAAA,WAAA,EAAA,mBAAA,EAAA,SAAA,EAAA,eAAA,EAAA,mBAAA,EAAA,OAAA,EAAA,YAAA,CAapC,CADe,CAAA;IAEZ,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;AAEzC,IAAA,MAAM,WAAW,GAAG,OAAO,CAAC,MAAK;QAC7B,MAAM,eAAe,GAAG,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AACvD,QAAA,OAAO,mBAAmB,CAAC,eAAe,CAAC,CAAC;AAChD,KAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AAEtB,IAAA,MAAM,UAAU,GAAG,WAAW,CAC1B,CAAC,IAAqB,MAClBA,cAAK,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,CAAC,CAAC,cAAc,EAAE,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,EAAA;AAClE,QAAA,IAAI,CAAC,KAAK;QACV,IAAI,CAAC,KAAK,IAAIA,cAAC,CAAA,aAAA,CAAA,MAAM,IAAC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAA,CAAI,CAClE,CACT,EACD,EAAE,CACL,CAAC;AAEF,IAAA,MAAM,iBAAiB,IACnBA,cAAC,CAAA,aAAA,CAAAA,cAAK,CAAC,QAAQ,EAAA,IAAA;QACXA,cAAI,CAAA,aAAA,CAAA,IAAA,EAAA,EAAA,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,EAAA,EAAG,KAAK,CAAM;QACvCA,cAAC,CAAA,aAAA,CAAA,SAAS,IACN,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,SAAS,EACnB,WAAW,EAAE,iBAAiB,EAC9B,SAAS,EACT,IAAA,EAAA,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,EACxB,CAAA;AACF,QAAAA,cAAA,CAAA,aAAA,CAAC,IAAI,EACD,MAAA,CAAA,MAAA,CAAA,EAAA,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,EACpB,WAAW,EAAE,KAAK,EAClB,UAAU,EAAE,KAAK,EACjB,KAAK,EAAE,WAAW,EAClB,UAAU,EAAE,UAAU,EACtB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,aAAa,CAAC,EACvC,gBAAgB,EAAE,UAAoB,EAAA,EAClC,SAAS,CACf,CAAA,CACW,CACpB,CAAC;IAEF,QACIA,cAAC,CAAA,aAAA,CAAA,MAAM,EACH,EAAA,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAC7B,WAAW,EAAE,OAAO,EACpB,QAAQ,EAAE,OAAO,EACjB,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE;AACH,YAAA,IAAI,EAAE,UAAU;AAChB,YAAA,GAAG,EAAE,SAAS;AACjB,SAAA,EAAA;QAEDA,cAAC,CAAA,aAAA,CAAA,UAAU,IACP,EAAE,EAAC,SAAS,EACZ,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,CAAC,CAAC,aAAa,CAAC,EAC3B,OAAO,EAAE,iBAAiB,EAAA,CAC5B,CACG,EACX;AACN;;;;"}
|