@gravity-ui/navigation 0.10.1 → 0.12.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/components/ActionBar/ActionBar.d.ts +7 -7
- package/build/cjs/components/ActionBar/Group/ActionBarGroup.d.ts +3 -3
- package/build/cjs/components/ActionBar/Item/ActionBarItem.d.ts +3 -3
- package/build/cjs/components/ActionBar/Section/ActionBarSection.d.ts +3 -3
- package/build/cjs/components/ActionBar/Separator/ActionBarSeparator.d.ts +2 -1
- package/build/cjs/components/ActionBar/__stories__/ActionBar.stories.d.ts +13 -58
- package/build/cjs/components/ActionBar/__stories__/ActionBarShowcase.d.ts +2 -2
- package/build/cjs/components/ActionBar/__stories__/ActionBarSingleSection.d.ts +2 -2
- package/build/cjs/components/ActionBar/types.d.ts +1 -1
- package/build/cjs/components/AsideHeader/AsideHeader.d.ts +2 -2
- package/build/cjs/components/AsideHeader/AsideHeaderContext.d.ts +9 -0
- package/build/cjs/components/AsideHeader/__stories__/AsideHeader.stories.d.ts +4 -5
- package/build/cjs/components/AsideHeader/__stories__/getAsideHeaderWrapper.d.ts +2 -2
- package/build/cjs/components/CompositeBar/CompositeBar.d.ts +3 -4
- package/build/cjs/components/CompositeBar/Item/Item.d.ts +0 -1
- package/build/cjs/components/CompositeBar/MultipleTooltip/MultipleTooltip.d.ts +1 -1
- package/build/cjs/components/CompositeBar/MultipleTooltip/MultipleTooltipContext.d.ts +2 -2
- package/build/cjs/components/CompositeBar/__stories__/CompositeBar.stories.d.ts +2 -4
- package/build/cjs/components/Content/Content.d.ts +1 -1
- package/build/cjs/components/Drawer/Drawer.d.ts +1 -1
- package/build/cjs/components/Drawer/__stories__/Drawer.stories.d.ts +2 -3
- package/build/cjs/components/Drawer/__stories__/DrawerShowcase.d.ts +2 -2
- package/build/cjs/components/FooterItem/__stories__/FooterItem.stories.d.ts +2 -4
- package/build/cjs/components/HotkeysPanel/HotkeysPanel.d.ts +3 -2
- package/build/cjs/components/HotkeysPanel/__stories__/HotkeysPanel.stories.d.ts +2 -3
- package/build/cjs/components/HotkeysPanel/__stories__/HotkeysPanelShowcase.d.ts +2 -2
- package/build/cjs/components/HotkeysPanel/types.d.ts +3 -3
- package/build/cjs/components/Logo/Logo.d.ts +1 -5
- package/build/cjs/components/MobileHeader/Burger/Burger.d.ts +1 -1
- package/build/cjs/components/MobileHeader/BurgerMenu/BurgerCompositeBar/BurgerCompositeBar.d.ts +1 -1
- package/build/cjs/components/MobileHeader/BurgerMenu/BurgerMenu.d.ts +1 -1
- package/build/cjs/components/MobileHeader/BurgerMenu/__stories__/BurgerMenu.stories.d.ts +2 -4
- package/build/cjs/components/MobileHeader/FooterItem/FooterItem.d.ts +1 -1
- package/build/cjs/components/MobileHeader/__stories__/MobileHeader.stories.d.ts +2 -3
- package/build/cjs/components/MobileHeader/__stories__/MobileHeaderShowcase.d.ts +2 -2
- package/build/cjs/components/MobileHeader/types.d.ts +4 -4
- package/build/cjs/components/Settings/Settings.d.ts +7 -7
- package/build/cjs/components/Settings/SettingsMenuMobile/SettingsMenuMobile.d.ts +2 -1
- package/build/cjs/components/Settings/SettingsSearch/SettingsSearch.d.ts +1 -1
- package/build/cjs/components/Settings/__stories__/Settings.stories.d.ts +3 -4
- package/build/cjs/components/Settings/__stories__/SettingsDemo.d.ts +2 -2
- package/build/cjs/components/Settings/__stories__/SettingsMobileDemo.d.ts +2 -2
- package/build/cjs/components/Settings/collect-settings.d.ts +1 -1
- package/build/cjs/components/Settings/helpers.d.ts +1 -1
- package/build/cjs/components/Settings/types.d.ts +1 -1
- package/build/cjs/components/Title/Title.d.ts +2 -2
- package/build/cjs/components/helpers.d.ts +5 -0
- package/build/cjs/components/index.d.ts +2 -0
- package/build/cjs/components/types.d.ts +3 -3
- package/build/cjs/components/utils/cn.d.ts +2 -2
- package/build/cjs/components/utils/configure.d.ts +12 -0
- package/build/cjs/index.js +355 -412
- package/build/cjs/index.js.map +1 -1
- package/build/esm/components/ActionBar/ActionBar.d.ts +7 -7
- package/build/esm/components/ActionBar/Group/ActionBarGroup.d.ts +3 -3
- package/build/esm/components/ActionBar/Item/ActionBarItem.d.ts +3 -3
- package/build/esm/components/ActionBar/Section/ActionBarSection.d.ts +3 -3
- package/build/esm/components/ActionBar/Separator/ActionBarSeparator.d.ts +2 -1
- package/build/esm/components/ActionBar/__stories__/ActionBar.stories.d.ts +13 -58
- package/build/esm/components/ActionBar/__stories__/ActionBarShowcase.d.ts +2 -2
- package/build/esm/components/ActionBar/__stories__/ActionBarSingleSection.d.ts +2 -2
- package/build/esm/components/ActionBar/types.d.ts +1 -1
- package/build/esm/components/AsideHeader/AsideHeader.d.ts +2 -2
- package/build/esm/components/AsideHeader/AsideHeaderContext.d.ts +9 -0
- package/build/esm/components/AsideHeader/__stories__/AsideHeader.stories.d.ts +4 -5
- package/build/esm/components/AsideHeader/__stories__/getAsideHeaderWrapper.d.ts +2 -2
- package/build/esm/components/CompositeBar/CompositeBar.d.ts +3 -4
- package/build/esm/components/CompositeBar/Item/Item.d.ts +0 -1
- package/build/esm/components/CompositeBar/MultipleTooltip/MultipleTooltip.d.ts +1 -1
- package/build/esm/components/CompositeBar/MultipleTooltip/MultipleTooltipContext.d.ts +2 -2
- package/build/esm/components/CompositeBar/__stories__/CompositeBar.stories.d.ts +2 -4
- package/build/esm/components/Content/Content.d.ts +1 -1
- package/build/esm/components/Drawer/Drawer.d.ts +1 -1
- package/build/esm/components/Drawer/__stories__/Drawer.stories.d.ts +2 -3
- package/build/esm/components/Drawer/__stories__/DrawerShowcase.d.ts +2 -2
- package/build/esm/components/FooterItem/__stories__/FooterItem.stories.d.ts +2 -4
- package/build/esm/components/HotkeysPanel/HotkeysPanel.d.ts +3 -2
- package/build/esm/components/HotkeysPanel/__stories__/HotkeysPanel.stories.d.ts +2 -3
- package/build/esm/components/HotkeysPanel/__stories__/HotkeysPanelShowcase.d.ts +2 -2
- package/build/esm/components/HotkeysPanel/types.d.ts +3 -3
- package/build/esm/components/Logo/Logo.d.ts +1 -5
- package/build/esm/components/MobileHeader/Burger/Burger.d.ts +1 -1
- package/build/esm/components/MobileHeader/BurgerMenu/BurgerCompositeBar/BurgerCompositeBar.d.ts +1 -1
- package/build/esm/components/MobileHeader/BurgerMenu/BurgerMenu.d.ts +1 -1
- package/build/esm/components/MobileHeader/BurgerMenu/__stories__/BurgerMenu.stories.d.ts +2 -4
- package/build/esm/components/MobileHeader/FooterItem/FooterItem.d.ts +1 -1
- package/build/esm/components/MobileHeader/__stories__/MobileHeader.stories.d.ts +2 -3
- package/build/esm/components/MobileHeader/__stories__/MobileHeaderShowcase.d.ts +2 -2
- package/build/esm/components/MobileHeader/types.d.ts +4 -4
- package/build/esm/components/Settings/Settings.d.ts +7 -7
- package/build/esm/components/Settings/SettingsMenuMobile/SettingsMenuMobile.d.ts +2 -1
- package/build/esm/components/Settings/SettingsSearch/SettingsSearch.d.ts +1 -1
- package/build/esm/components/Settings/__stories__/Settings.stories.d.ts +3 -4
- package/build/esm/components/Settings/__stories__/SettingsDemo.d.ts +2 -2
- package/build/esm/components/Settings/__stories__/SettingsMobileDemo.d.ts +2 -2
- package/build/esm/components/Settings/collect-settings.d.ts +1 -1
- package/build/esm/components/Settings/helpers.d.ts +1 -1
- package/build/esm/components/Settings/types.d.ts +1 -1
- package/build/esm/components/Title/Title.d.ts +2 -2
- package/build/esm/components/helpers.d.ts +5 -0
- package/build/esm/components/index.d.ts +2 -0
- package/build/esm/components/types.d.ts +3 -3
- package/build/esm/components/utils/cn.d.ts +2 -2
- package/build/esm/components/utils/configure.d.ts +12 -0
- package/build/esm/index.js +354 -414
- package/build/esm/index.js.map +1 -1
- package/package.json +107 -99
- package/CHANGELOG.md +0 -193
package/build/esm/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import React__default, { Children, isValidElement, cloneElement,
|
|
2
|
+
import React__default, { Children, isValidElement, cloneElement, Component, createElement, useRef, useContext, useCallback, useState, useMemo, useEffect } from 'react';
|
|
3
3
|
import { useBodyScrollLock, Button, Icon, Popup, List, Tooltip, Text, Hotkey, TextInput, Tabs, Loader, Sheet, eventBroker } from '@gravity-ui/uikit';
|
|
4
4
|
import ReactDOM from 'react-dom';
|
|
5
5
|
import { Ellipsis, Xmark } from '@gravity-ui/icons';
|
|
@@ -22,7 +22,13 @@ var lib = {exports: {}};
|
|
|
22
22
|
|
|
23
23
|
Object.defineProperty(lib$1, "__esModule", { value: true });
|
|
24
24
|
var bem_cn_1 = lib.exports;
|
|
25
|
-
var block$1 = bem_cn_1.setup();
|
|
25
|
+
var block$1 = (0, bem_cn_1.setup)();
|
|
26
|
+
function isString(data) {
|
|
27
|
+
return typeof data === 'string';
|
|
28
|
+
}
|
|
29
|
+
function hasMixinShape(data) {
|
|
30
|
+
return isString(data) || (Array.isArray(data) && data.every(isString));
|
|
31
|
+
}
|
|
26
32
|
function bemClassNameLite(blockName) {
|
|
27
33
|
var b = block$1(blockName);
|
|
28
34
|
function element() {
|
|
@@ -33,7 +39,7 @@ function bemClassNameLite(blockName) {
|
|
|
33
39
|
var elementName = args.shift();
|
|
34
40
|
var modifiers = args[0], mixin = args[1];
|
|
35
41
|
var result;
|
|
36
|
-
if (typeof elementName !== 'string' ||
|
|
42
|
+
if (typeof elementName !== 'string' || hasMixinShape(modifiers)) {
|
|
37
43
|
mixin = modifiers;
|
|
38
44
|
modifiers = null;
|
|
39
45
|
}
|
|
@@ -49,10 +55,10 @@ function bemClassNameLite(blockName) {
|
|
|
49
55
|
return element;
|
|
50
56
|
}
|
|
51
57
|
bemClassNameLite.setup = function (config) {
|
|
52
|
-
block$1 = bem_cn_1.setup(config);
|
|
58
|
+
block$1 = (0, bem_cn_1.setup)(config);
|
|
53
59
|
};
|
|
54
60
|
bemClassNameLite.reset = function () {
|
|
55
|
-
block$1 = bem_cn_1.setup();
|
|
61
|
+
block$1 = (0, bem_cn_1.setup)();
|
|
56
62
|
};
|
|
57
63
|
var _default = lib$1.default = bemClassNameLite;
|
|
58
64
|
|
|
@@ -84,8 +90,8 @@ const defaultDict$2 = {
|
|
|
84
90
|
[MobileHeaderDict.OpenBurger]: 'Open menu',
|
|
85
91
|
};
|
|
86
92
|
|
|
87
|
-
function _extends$
|
|
88
|
-
_extends$
|
|
93
|
+
function _extends$2() {
|
|
94
|
+
_extends$2 = Object.assign ? Object.assign.bind() : function (target) {
|
|
89
95
|
for (var i = 1; i < arguments.length; i++) {
|
|
90
96
|
var source = arguments[i];
|
|
91
97
|
for (var key in source) {
|
|
@@ -96,7 +102,7 @@ function _extends$3() {
|
|
|
96
102
|
}
|
|
97
103
|
return target;
|
|
98
104
|
};
|
|
99
|
-
return _extends$
|
|
105
|
+
return _extends$2.apply(this, arguments);
|
|
100
106
|
}
|
|
101
107
|
|
|
102
108
|
function _objectWithoutPropertiesLoose(source, excluded) {
|
|
@@ -1351,7 +1357,7 @@ function removeClass$1(element, className) {
|
|
|
1351
1357
|
}
|
|
1352
1358
|
}
|
|
1353
1359
|
|
|
1354
|
-
var config = {
|
|
1360
|
+
var config$1 = {
|
|
1355
1361
|
disabled: false
|
|
1356
1362
|
};
|
|
1357
1363
|
|
|
@@ -1631,7 +1637,7 @@ var Transition = /*#__PURE__*/function (_React$Component) {
|
|
|
1631
1637
|
var enterTimeout = appearing ? timeouts.appear : timeouts.enter; // no enter animation skip right to ENTERED
|
|
1632
1638
|
// if we are mounting and running this it means appear _must_ be set
|
|
1633
1639
|
|
|
1634
|
-
if (!mounting && !enter || config.disabled) {
|
|
1640
|
+
if (!mounting && !enter || config$1.disabled) {
|
|
1635
1641
|
this.safeSetState({
|
|
1636
1642
|
status: ENTERED
|
|
1637
1643
|
}, function () {
|
|
@@ -1663,7 +1669,7 @@ var Transition = /*#__PURE__*/function (_React$Component) {
|
|
|
1663
1669
|
var timeouts = this.getTimeouts();
|
|
1664
1670
|
var maybeNode = this.props.nodeRef ? undefined : ReactDOM.findDOMNode(this); // no exit animation skip right to EXITED
|
|
1665
1671
|
|
|
1666
|
-
if (!exit || config.disabled) {
|
|
1672
|
+
if (!exit || config$1.disabled) {
|
|
1667
1673
|
this.safeSetState({
|
|
1668
1674
|
status: EXITED
|
|
1669
1675
|
}, function () {
|
|
@@ -2249,7 +2255,7 @@ var CSSTransition = /*#__PURE__*/function (_React$Component) {
|
|
|
2249
2255
|
_this$props.classNames;
|
|
2250
2256
|
var props = _objectWithoutPropertiesLoose(_this$props, ["classNames"]);
|
|
2251
2257
|
|
|
2252
|
-
return /*#__PURE__*/React__default.createElement(Transition, _extends$
|
|
2258
|
+
return /*#__PURE__*/React__default.createElement(Transition, _extends$2({}, props, {
|
|
2253
2259
|
onEnter: this.onEnter,
|
|
2254
2260
|
onEntered: this.onEntered,
|
|
2255
2261
|
onEntering: this.onEntering,
|
|
@@ -2265,7 +2271,7 @@ var CSSTransition = /*#__PURE__*/function (_React$Component) {
|
|
|
2265
2271
|
CSSTransition.defaultProps = {
|
|
2266
2272
|
classNames: ''
|
|
2267
2273
|
};
|
|
2268
|
-
CSSTransition.propTypes = process.env.NODE_ENV !== "production" ? _extends$
|
|
2274
|
+
CSSTransition.propTypes = process.env.NODE_ENV !== "production" ? _extends$2({}, Transition.propTypes, {
|
|
2269
2275
|
/**
|
|
2270
2276
|
* The animation classNames applied to the component as it appears, enters,
|
|
2271
2277
|
* exits or has finished the transition. A single name can be provided, which
|
|
@@ -2627,7 +2633,7 @@ var TransitionGroup = /*#__PURE__*/function (_React$Component) {
|
|
|
2627
2633
|
|
|
2628
2634
|
if (this.mounted) {
|
|
2629
2635
|
this.setState(function (state) {
|
|
2630
|
-
var children = _extends$
|
|
2636
|
+
var children = _extends$2({}, state.children);
|
|
2631
2637
|
|
|
2632
2638
|
delete children[child.key];
|
|
2633
2639
|
return {
|
|
@@ -3130,7 +3136,7 @@ function styleInject(css, ref) {
|
|
|
3130
3136
|
}
|
|
3131
3137
|
}
|
|
3132
3138
|
|
|
3133
|
-
var css_248z$m = ".ycn-drawer__item {\n position: absolute;\n left: 0;\n top: 0;\n bottom: 0;\n height: 100%;\n will-change: transform;\n background-color: var(--
|
|
3139
|
+
var css_248z$m = ".ycn-drawer__item {\n position: absolute;\n left: 0;\n top: 0;\n bottom: 0;\n height: 100%;\n will-change: transform;\n background-color: var(--g-color-base-background);\n}\n.ycn-drawer__item_direction_right {\n left: auto;\n right: 0;\n}\n.ycn-drawer__item-transition-enter {\n transform: translate(-100%, 0);\n}\n.ycn-drawer__item-transition_direction_right-enter {\n transform: translate(100%, 0);\n}\n.ycn-drawer__item-transition-enter-active, .ycn-drawer__item-transition_direction_right-enter-active {\n transform: translate(0, 0);\n transition: transform 300ms;\n}\n.ycn-drawer__item-transition-enter-done, .ycn-drawer__item-transition_direction_right-enter-done {\n filter: blur(0px);\n transform: translateZ(0);\n}\n.ycn-drawer__item-transition-exit, .ycn-drawer__item-transition_direction_right-exit {\n transform: translate(0, 0);\n}\n.ycn-drawer__item-transition-exit-active, .ycn-drawer__item-transition_direction_right-exit-active {\n transition: transform 300ms;\n}\n.ycn-drawer__item-transition-exit-active {\n transform: translate(-100%, 0);\n}\n.ycn-drawer__item-transition_direction_right-exit-active {\n transform: translate(100%, 0);\n}\n.ycn-drawer__item-transition-exit-done, .ycn-drawer__item-transition_direction_right-exit-done {\n visibility: hidden;\n}\n.ycn-drawer__veil {\n position: absolute;\n left: 0;\n right: 0;\n bottom: 0;\n top: 0;\n background-color: var(--g-color-sfx-veil);\n}\n.ycn-drawer__veil-transition-enter {\n opacity: 0;\n}\n.ycn-drawer__veil-transition-enter-active {\n opacity: 1;\n transition: opacity 300ms;\n}\n.ycn-drawer__veil-transition-exit {\n opacity: 1;\n}\n.ycn-drawer__veil-transition-exit-active {\n opacity: 0;\n transition: opacity 300ms;\n}\n.ycn-drawer__veil-transition-exit-done {\n visibility: hidden;\n}";
|
|
3134
3140
|
styleInject(css_248z$m);
|
|
3135
3141
|
|
|
3136
3142
|
const b$n = block('drawer');
|
|
@@ -3183,11 +3189,19 @@ const Drawer = ({ className, children, style, onVeilClick, onEscape, preventScro
|
|
|
3183
3189
|
}));
|
|
3184
3190
|
};
|
|
3185
3191
|
|
|
3186
|
-
|
|
3192
|
+
const AsideHeaderContext = React__default.createContext({
|
|
3193
|
+
compact: false,
|
|
3194
|
+
size: ASIDE_HEADER_COMPACT_WIDTH,
|
|
3195
|
+
});
|
|
3196
|
+
const AsideHeaderContextProvider = AsideHeaderContext.Provider;
|
|
3197
|
+
const useAsideHeaderContext = () => React__default.useContext(AsideHeaderContext);
|
|
3198
|
+
|
|
3199
|
+
var css_248z$l = ".ycn-logo {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n height: 40px;\n}\n.ycn-logo__logo-btn-place {\n flex-shrink: 0;\n width: var(--aside-header-min-width);\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n}\n.ycn-logo__logo-btn-place .yc-button::before {\n background-color: transparent;\n}\n.ycn-logo__btn-logo.yc-button_view_flat.yc-button_size_l {\n --yc-button-height: 38px;\n}\n.ycn-logo__logo {\n font-size: var(--g-text-body-2-font-size);\n line-height: var(--g-text-body-2-line-height);\n font-weight: var(--g-text-body-font-weight);\n vertical-align: middle;\n cursor: pointer;\n}\n.ycn-logo__logo-link, .ycn-logo__logo-link:hover, .ycn-logo__logo-link:active, .ycn-logo__logo-link:visited, .ycn-logo__logo-link:focus {\n text-decoration: none;\n outline: none;\n color: inherit;\n}\n.yc-root .ycn-logo__btn-logo.button2_theme_flat.button2_hovered_yes::before {\n background-color: transparent;\n}";
|
|
3187
3200
|
styleInject(css_248z$l);
|
|
3188
3201
|
|
|
3189
3202
|
const b$m = block('logo');
|
|
3190
|
-
const Logo$1 = ({ text,
|
|
3203
|
+
const Logo$1 = ({ text, icon, iconSrc, iconClassName, iconSize = 24, textSize = 15, href = '/', wrapper, onClick, }) => {
|
|
3204
|
+
const { compact } = useAsideHeaderContext();
|
|
3191
3205
|
const hasClickHandler = typeof onClick === 'function';
|
|
3192
3206
|
const hasWrapper = typeof wrapper === 'function';
|
|
3193
3207
|
const linkProps = hasClickHandler
|
|
@@ -3218,143 +3232,38 @@ const Logo$1 = ({ text, compact, icon, iconSrc, iconClassName, iconSize = 24, te
|
|
|
3218
3232
|
(hasWrapper ? (React__default.createElement("div", { onClick: onClick }, wrapper(logo, compact))) : (React__default.createElement("a", Object.assign({}, linkProps, { className: b$m('logo-link'), onClick: onClick }), logo)))));
|
|
3219
3233
|
};
|
|
3220
3234
|
|
|
3221
|
-
var classCallCheck = function (instance, Constructor) {
|
|
3222
|
-
if (!(instance instanceof Constructor)) {
|
|
3223
|
-
throw new TypeError("Cannot call a class as a function");
|
|
3224
|
-
}
|
|
3225
|
-
};
|
|
3226
|
-
|
|
3227
|
-
var createClass = function () {
|
|
3228
|
-
function defineProperties(target, props) {
|
|
3229
|
-
for (var i = 0; i < props.length; i++) {
|
|
3230
|
-
var descriptor = props[i];
|
|
3231
|
-
descriptor.enumerable = descriptor.enumerable || false;
|
|
3232
|
-
descriptor.configurable = true;
|
|
3233
|
-
if ("value" in descriptor) descriptor.writable = true;
|
|
3234
|
-
Object.defineProperty(target, descriptor.key, descriptor);
|
|
3235
|
-
}
|
|
3236
|
-
}
|
|
3237
|
-
|
|
3238
|
-
return function (Constructor, protoProps, staticProps) {
|
|
3239
|
-
if (protoProps) defineProperties(Constructor.prototype, protoProps);
|
|
3240
|
-
if (staticProps) defineProperties(Constructor, staticProps);
|
|
3241
|
-
return Constructor;
|
|
3242
|
-
};
|
|
3243
|
-
}();
|
|
3244
|
-
|
|
3245
|
-
var _extends$2 = Object.assign || function (target) {
|
|
3246
|
-
for (var i = 1; i < arguments.length; i++) {
|
|
3247
|
-
var source = arguments[i];
|
|
3248
|
-
|
|
3249
|
-
for (var key in source) {
|
|
3250
|
-
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
3251
|
-
target[key] = source[key];
|
|
3252
|
-
}
|
|
3253
|
-
}
|
|
3254
|
-
}
|
|
3255
|
-
|
|
3256
|
-
return target;
|
|
3257
|
-
};
|
|
3258
|
-
|
|
3259
|
-
var inherits = function (subClass, superClass) {
|
|
3260
|
-
if (typeof superClass !== "function" && superClass !== null) {
|
|
3261
|
-
throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);
|
|
3262
|
-
}
|
|
3263
|
-
|
|
3264
|
-
subClass.prototype = Object.create(superClass && superClass.prototype, {
|
|
3265
|
-
constructor: {
|
|
3266
|
-
value: subClass,
|
|
3267
|
-
enumerable: false,
|
|
3268
|
-
writable: true,
|
|
3269
|
-
configurable: true
|
|
3270
|
-
}
|
|
3271
|
-
});
|
|
3272
|
-
if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;
|
|
3273
|
-
};
|
|
3274
|
-
|
|
3275
|
-
var possibleConstructorReturn = function (self, call) {
|
|
3276
|
-
if (!self) {
|
|
3277
|
-
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
3278
|
-
}
|
|
3279
|
-
|
|
3280
|
-
return call && (typeof call === "object" || typeof call === "function") ? call : self;
|
|
3281
|
-
};
|
|
3282
|
-
|
|
3283
|
-
var slicedToArray = function () {
|
|
3284
|
-
function sliceIterator(arr, i) {
|
|
3285
|
-
var _arr = [];
|
|
3286
|
-
var _n = true;
|
|
3287
|
-
var _d = false;
|
|
3288
|
-
var _e = undefined;
|
|
3289
|
-
|
|
3290
|
-
try {
|
|
3291
|
-
for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
|
|
3292
|
-
_arr.push(_s.value);
|
|
3293
|
-
|
|
3294
|
-
if (i && _arr.length === i) break;
|
|
3295
|
-
}
|
|
3296
|
-
} catch (err) {
|
|
3297
|
-
_d = true;
|
|
3298
|
-
_e = err;
|
|
3299
|
-
} finally {
|
|
3300
|
-
try {
|
|
3301
|
-
if (!_n && _i["return"]) _i["return"]();
|
|
3302
|
-
} finally {
|
|
3303
|
-
if (_d) throw _e;
|
|
3304
|
-
}
|
|
3305
|
-
}
|
|
3306
|
-
|
|
3307
|
-
return _arr;
|
|
3308
|
-
}
|
|
3309
|
-
|
|
3310
|
-
return function (arr, i) {
|
|
3311
|
-
if (Array.isArray(arr)) {
|
|
3312
|
-
return arr;
|
|
3313
|
-
} else if (Symbol.iterator in Object(arr)) {
|
|
3314
|
-
return sliceIterator(arr, i);
|
|
3315
|
-
} else {
|
|
3316
|
-
throw new TypeError("Invalid attempt to destructure non-iterable instance");
|
|
3317
|
-
}
|
|
3318
|
-
};
|
|
3319
|
-
}();
|
|
3320
|
-
|
|
3321
3235
|
/**
|
|
3322
3236
|
* Detect Element Resize.
|
|
3323
3237
|
* https://github.com/sdecima/javascript-detect-element-resize
|
|
3324
3238
|
* Sebastian Decima
|
|
3325
3239
|
*
|
|
3326
3240
|
* Forked from version 0.5.3; includes the following modifications:
|
|
3327
|
-
* 1)
|
|
3328
|
-
* 2)
|
|
3241
|
+
* 1) Guard against unsafe 'window' and 'document' references (to support SSR).
|
|
3242
|
+
* 2) Defer initialization code via a top-level function wrapper (to support SSR).
|
|
3329
3243
|
* 3) Avoid unnecessary reflows by not measuring size for scroll events bubbling from children.
|
|
3330
3244
|
* 4) Add nonce for style element.
|
|
3245
|
+
* 5) Use 'export' statement over 'module.exports' assignment
|
|
3331
3246
|
**/
|
|
3332
3247
|
|
|
3333
3248
|
// Check `document` and `window` in case of server-side rendering
|
|
3334
|
-
|
|
3335
|
-
if (typeof window !==
|
|
3249
|
+
let windowObject;
|
|
3250
|
+
if (typeof window !== "undefined") {
|
|
3336
3251
|
windowObject = window;
|
|
3337
3252
|
|
|
3338
3253
|
// eslint-disable-next-line no-restricted-globals
|
|
3339
|
-
} else if (typeof self !==
|
|
3254
|
+
} else if (typeof self !== "undefined") {
|
|
3340
3255
|
// eslint-disable-next-line no-restricted-globals
|
|
3341
3256
|
windowObject = self;
|
|
3342
3257
|
} else {
|
|
3343
3258
|
windowObject = global;
|
|
3344
3259
|
}
|
|
3345
|
-
|
|
3346
|
-
|
|
3347
|
-
|
|
3348
|
-
|
|
3349
|
-
|
|
3350
|
-
|
|
3351
|
-
|
|
3352
|
-
var setTimeoutFn = windowObject.setTimeout;
|
|
3353
|
-
|
|
3354
|
-
var cancelAnimationFrameFn = windowObject.cancelAnimationFrame || windowObject.mozCancelAnimationFrame || windowObject.webkitCancelAnimationFrame;
|
|
3355
|
-
|
|
3356
|
-
var requestAnimationFrameFn = windowObject.requestAnimationFrame || windowObject.mozRequestAnimationFrame || windowObject.webkitRequestAnimationFrame;
|
|
3357
|
-
|
|
3260
|
+
let cancelFrame = null;
|
|
3261
|
+
let requestFrame = null;
|
|
3262
|
+
const TIMEOUT_DURATION = 20;
|
|
3263
|
+
const clearTimeoutFn = windowObject.clearTimeout;
|
|
3264
|
+
const setTimeoutFn = windowObject.setTimeout;
|
|
3265
|
+
const cancelAnimationFrameFn = windowObject.cancelAnimationFrame || windowObject.mozCancelAnimationFrame || windowObject.webkitCancelAnimationFrame;
|
|
3266
|
+
const requestAnimationFrameFn = windowObject.requestAnimationFrame || windowObject.mozRequestAnimationFrame || windowObject.webkitRequestAnimationFrame;
|
|
3358
3267
|
if (cancelAnimationFrameFn == null || requestAnimationFrameFn == null) {
|
|
3359
3268
|
// For environments that don't support animation frame,
|
|
3360
3269
|
// fallback to a setTimeout based approach.
|
|
@@ -3366,64 +3275,53 @@ if (cancelAnimationFrameFn == null || requestAnimationFrameFn == null) {
|
|
|
3366
3275
|
// Counter intuitively, environments that support animation frames can be trickier.
|
|
3367
3276
|
// Chrome's "Throttle non-visible cross-origin iframes" flag can prevent rAFs from being called.
|
|
3368
3277
|
// In this case, we should fallback to a setTimeout() implementation.
|
|
3369
|
-
cancelFrame = function cancelFrame(
|
|
3370
|
-
var _ref2 = slicedToArray(_ref, 2),
|
|
3371
|
-
animationFrameID = _ref2[0],
|
|
3372
|
-
timeoutID = _ref2[1];
|
|
3373
|
-
|
|
3278
|
+
cancelFrame = function cancelFrame([animationFrameID, timeoutID]) {
|
|
3374
3279
|
cancelAnimationFrameFn(animationFrameID);
|
|
3375
3280
|
clearTimeoutFn(timeoutID);
|
|
3376
3281
|
};
|
|
3377
3282
|
requestFrame = function requestAnimationFrameWithSetTimeoutFallback(callback) {
|
|
3378
|
-
|
|
3283
|
+
const animationFrameID = requestAnimationFrameFn(function animationFrameCallback() {
|
|
3379
3284
|
clearTimeoutFn(timeoutID);
|
|
3380
3285
|
callback();
|
|
3381
3286
|
});
|
|
3382
|
-
|
|
3383
|
-
var timeoutID = setTimeoutFn(function timeoutCallback() {
|
|
3287
|
+
const timeoutID = setTimeoutFn(function timeoutCallback() {
|
|
3384
3288
|
cancelAnimationFrameFn(animationFrameID);
|
|
3385
3289
|
callback();
|
|
3386
3290
|
}, TIMEOUT_DURATION);
|
|
3387
|
-
|
|
3388
3291
|
return [animationFrameID, timeoutID];
|
|
3389
3292
|
};
|
|
3390
3293
|
}
|
|
3391
|
-
|
|
3392
3294
|
function createDetectElementResize(nonce) {
|
|
3393
|
-
|
|
3394
|
-
|
|
3395
|
-
|
|
3396
|
-
|
|
3397
|
-
|
|
3398
|
-
|
|
3399
|
-
|
|
3400
|
-
|
|
3401
|
-
var attachEvent = typeof document !== 'undefined' && document.attachEvent;
|
|
3295
|
+
let animationKeyframes;
|
|
3296
|
+
let animationName;
|
|
3297
|
+
let animationStartEvent;
|
|
3298
|
+
let animationStyle;
|
|
3299
|
+
let checkTriggers;
|
|
3300
|
+
let resetTriggers;
|
|
3301
|
+
let scrollListener;
|
|
3302
|
+
const attachEvent = typeof document !== "undefined" && document.attachEvent;
|
|
3402
3303
|
if (!attachEvent) {
|
|
3403
|
-
resetTriggers = function
|
|
3404
|
-
|
|
3405
|
-
|
|
3406
|
-
|
|
3407
|
-
|
|
3304
|
+
resetTriggers = function (element) {
|
|
3305
|
+
const triggers = element.__resizeTriggers__,
|
|
3306
|
+
expand = triggers.firstElementChild,
|
|
3307
|
+
contract = triggers.lastElementChild,
|
|
3308
|
+
expandChild = expand.firstElementChild;
|
|
3408
3309
|
contract.scrollLeft = contract.scrollWidth;
|
|
3409
3310
|
contract.scrollTop = contract.scrollHeight;
|
|
3410
|
-
expandChild.style.width = expand.offsetWidth + 1 +
|
|
3411
|
-
expandChild.style.height = expand.offsetHeight + 1 +
|
|
3311
|
+
expandChild.style.width = expand.offsetWidth + 1 + "px";
|
|
3312
|
+
expandChild.style.height = expand.offsetHeight + 1 + "px";
|
|
3412
3313
|
expand.scrollLeft = expand.scrollWidth;
|
|
3413
3314
|
expand.scrollTop = expand.scrollHeight;
|
|
3414
3315
|
};
|
|
3415
|
-
|
|
3416
|
-
checkTriggers = function checkTriggers(element) {
|
|
3316
|
+
checkTriggers = function (element) {
|
|
3417
3317
|
return element.offsetWidth !== element.__resizeLast__.width || element.offsetHeight !== element.__resizeLast__.height;
|
|
3418
3318
|
};
|
|
3419
|
-
|
|
3420
|
-
scrollListener = function scrollListener(e) {
|
|
3319
|
+
scrollListener = function (e) {
|
|
3421
3320
|
// Don't measure (which forces) reflow for scrolls that happen inside of children!
|
|
3422
|
-
if (e.target.className && typeof e.target.className.indexOf ===
|
|
3321
|
+
if (e.target.className && typeof e.target.className.indexOf === "function" && e.target.className.indexOf("contract-trigger") < 0 && e.target.className.indexOf("expand-trigger") < 0) {
|
|
3423
3322
|
return;
|
|
3424
3323
|
}
|
|
3425
|
-
|
|
3426
|
-
var element = this;
|
|
3324
|
+
const element = this;
|
|
3427
3325
|
resetTriggers(this);
|
|
3428
3326
|
if (this.__resizeRAF__) {
|
|
3429
3327
|
cancelFrame(this.__resizeRAF__);
|
|
@@ -3440,23 +3338,22 @@ function createDetectElementResize(nonce) {
|
|
|
3440
3338
|
};
|
|
3441
3339
|
|
|
3442
3340
|
/* Detect CSS Animations support to detect element display/re-attach */
|
|
3443
|
-
|
|
3444
|
-
|
|
3445
|
-
animationStartEvent =
|
|
3446
|
-
|
|
3447
|
-
|
|
3448
|
-
|
|
3341
|
+
let animation = false;
|
|
3342
|
+
let keyframeprefix = "";
|
|
3343
|
+
animationStartEvent = "animationstart";
|
|
3344
|
+
const domPrefixes = "Webkit Moz O ms".split(" ");
|
|
3345
|
+
let startEvents = "webkitAnimationStart animationstart oAnimationStart MSAnimationStart".split(" ");
|
|
3346
|
+
let pfx = "";
|
|
3449
3347
|
{
|
|
3450
|
-
|
|
3348
|
+
const elm = document.createElement("fakeelement");
|
|
3451
3349
|
if (elm.style.animationName !== undefined) {
|
|
3452
3350
|
animation = true;
|
|
3453
3351
|
}
|
|
3454
|
-
|
|
3455
3352
|
if (animation === false) {
|
|
3456
|
-
for (
|
|
3457
|
-
if (elm.style[domPrefixes[i] +
|
|
3353
|
+
for (let i = 0; i < domPrefixes.length; i++) {
|
|
3354
|
+
if (elm.style[domPrefixes[i] + "AnimationName"] !== undefined) {
|
|
3458
3355
|
pfx = domPrefixes[i];
|
|
3459
|
-
keyframeprefix =
|
|
3356
|
+
keyframeprefix = "-" + pfx.toLowerCase() + "-";
|
|
3460
3357
|
animationStartEvent = startEvents[i];
|
|
3461
3358
|
animation = true;
|
|
3462
3359
|
break;
|
|
@@ -3464,60 +3361,53 @@ function createDetectElementResize(nonce) {
|
|
|
3464
3361
|
}
|
|
3465
3362
|
}
|
|
3466
3363
|
}
|
|
3467
|
-
|
|
3468
|
-
|
|
3469
|
-
|
|
3470
|
-
animationStyle = keyframeprefix + 'animation: 1ms ' + animationName + '; ';
|
|
3364
|
+
animationName = "resizeanim";
|
|
3365
|
+
animationKeyframes = "@" + keyframeprefix + "keyframes " + animationName + " { from { opacity: 0; } to { opacity: 0; } } ";
|
|
3366
|
+
animationStyle = keyframeprefix + "animation: 1ms " + animationName + "; ";
|
|
3471
3367
|
}
|
|
3472
|
-
|
|
3473
|
-
|
|
3474
|
-
if (!doc.getElementById('detectElementResize')) {
|
|
3368
|
+
const createStyles = function (doc) {
|
|
3369
|
+
if (!doc.getElementById("detectElementResize")) {
|
|
3475
3370
|
//opacity:0 works around a chrome bug https://code.google.com/p/chromium/issues/detail?id=286360
|
|
3476
|
-
|
|
3477
|
-
|
|
3478
|
-
|
|
3479
|
-
|
|
3480
|
-
style.
|
|
3481
|
-
style.type = 'text/css';
|
|
3482
|
-
|
|
3371
|
+
const css = (animationKeyframes ? animationKeyframes : "") + ".resize-triggers { " + (animationStyle ? animationStyle : "") + "visibility: hidden; opacity: 0; } " + '.resize-triggers, .resize-triggers > div, .contract-trigger:before { content: " "; display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; z-index: -1; } .resize-triggers > div { background: #eee; overflow: auto; } .contract-trigger:before { width: 200%; height: 200%; }',
|
|
3372
|
+
head = doc.head || doc.getElementsByTagName("head")[0],
|
|
3373
|
+
style = doc.createElement("style");
|
|
3374
|
+
style.id = "detectElementResize";
|
|
3375
|
+
style.type = "text/css";
|
|
3483
3376
|
if (nonce != null) {
|
|
3484
|
-
style.setAttribute(
|
|
3377
|
+
style.setAttribute("nonce", nonce);
|
|
3485
3378
|
}
|
|
3486
|
-
|
|
3487
3379
|
if (style.styleSheet) {
|
|
3488
3380
|
style.styleSheet.cssText = css;
|
|
3489
3381
|
} else {
|
|
3490
3382
|
style.appendChild(doc.createTextNode(css));
|
|
3491
3383
|
}
|
|
3492
|
-
|
|
3493
3384
|
head.appendChild(style);
|
|
3494
3385
|
}
|
|
3495
3386
|
};
|
|
3496
|
-
|
|
3497
|
-
var addResizeListener = function addResizeListener(element, fn) {
|
|
3387
|
+
const addResizeListener = function (element, fn) {
|
|
3498
3388
|
if (attachEvent) {
|
|
3499
|
-
element.attachEvent(
|
|
3389
|
+
element.attachEvent("onresize", fn);
|
|
3500
3390
|
} else {
|
|
3501
3391
|
if (!element.__resizeTriggers__) {
|
|
3502
|
-
|
|
3503
|
-
|
|
3504
|
-
if (elementStyle && elementStyle.position ===
|
|
3505
|
-
element.style.position =
|
|
3392
|
+
const doc = element.ownerDocument;
|
|
3393
|
+
const elementStyle = windowObject.getComputedStyle(element);
|
|
3394
|
+
if (elementStyle && elementStyle.position === "static") {
|
|
3395
|
+
element.style.position = "relative";
|
|
3506
3396
|
}
|
|
3507
3397
|
createStyles(doc);
|
|
3508
3398
|
element.__resizeLast__ = {};
|
|
3509
3399
|
element.__resizeListeners__ = [];
|
|
3510
|
-
(element.__resizeTriggers__ = doc.createElement(
|
|
3511
|
-
|
|
3512
|
-
expandTrigger.className =
|
|
3513
|
-
expandTrigger.appendChild(doc.createElement(
|
|
3514
|
-
|
|
3515
|
-
contractTrigger.className =
|
|
3400
|
+
(element.__resizeTriggers__ = doc.createElement("div")).className = "resize-triggers";
|
|
3401
|
+
const expandTrigger = doc.createElement("div");
|
|
3402
|
+
expandTrigger.className = "expand-trigger";
|
|
3403
|
+
expandTrigger.appendChild(doc.createElement("div"));
|
|
3404
|
+
const contractTrigger = doc.createElement("div");
|
|
3405
|
+
contractTrigger.className = "contract-trigger";
|
|
3516
3406
|
element.__resizeTriggers__.appendChild(expandTrigger);
|
|
3517
3407
|
element.__resizeTriggers__.appendChild(contractTrigger);
|
|
3518
3408
|
element.appendChild(element.__resizeTriggers__);
|
|
3519
3409
|
resetTriggers(element);
|
|
3520
|
-
element.addEventListener(
|
|
3410
|
+
element.addEventListener("scroll", scrollListener, true);
|
|
3521
3411
|
|
|
3522
3412
|
/* Listen for a css animation to detect element display/re-attach */
|
|
3523
3413
|
if (animationStartEvent) {
|
|
@@ -3532,14 +3422,13 @@ function createDetectElementResize(nonce) {
|
|
|
3532
3422
|
element.__resizeListeners__.push(fn);
|
|
3533
3423
|
}
|
|
3534
3424
|
};
|
|
3535
|
-
|
|
3536
|
-
var removeResizeListener = function removeResizeListener(element, fn) {
|
|
3425
|
+
const removeResizeListener = function (element, fn) {
|
|
3537
3426
|
if (attachEvent) {
|
|
3538
|
-
element.detachEvent(
|
|
3427
|
+
element.detachEvent("onresize", fn);
|
|
3539
3428
|
} else {
|
|
3540
3429
|
element.__resizeListeners__.splice(element.__resizeListeners__.indexOf(fn), 1);
|
|
3541
3430
|
if (!element.__resizeListeners__.length) {
|
|
3542
|
-
element.removeEventListener(
|
|
3431
|
+
element.removeEventListener("scroll", scrollListener, true);
|
|
3543
3432
|
if (element.__resizeTriggers__.__animationListener__) {
|
|
3544
3433
|
element.__resizeTriggers__.removeEventListener(animationStartEvent, element.__resizeTriggers__.__animationListener__);
|
|
3545
3434
|
element.__resizeTriggers__.__animationListener__ = null;
|
|
@@ -3552,154 +3441,171 @@ function createDetectElementResize(nonce) {
|
|
|
3552
3441
|
}
|
|
3553
3442
|
}
|
|
3554
3443
|
};
|
|
3555
|
-
|
|
3556
3444
|
return {
|
|
3557
|
-
addResizeListener
|
|
3558
|
-
removeResizeListener
|
|
3445
|
+
addResizeListener,
|
|
3446
|
+
removeResizeListener
|
|
3559
3447
|
};
|
|
3560
3448
|
}
|
|
3561
3449
|
|
|
3562
|
-
|
|
3563
|
-
|
|
3564
|
-
|
|
3565
|
-
|
|
3566
|
-
|
|
3567
|
-
|
|
3568
|
-
|
|
3569
|
-
|
|
3570
|
-
|
|
3571
|
-
|
|
3572
|
-
|
|
3573
|
-
|
|
3574
|
-
|
|
3575
|
-
|
|
3576
|
-
|
|
3577
|
-
|
|
3578
|
-
|
|
3579
|
-
|
|
3580
|
-
|
|
3581
|
-
|
|
3582
|
-
|
|
3583
|
-
|
|
3584
|
-
|
|
3585
|
-
|
|
3586
|
-
if (_this._parentNode) {
|
|
3450
|
+
class AutoSizer extends Component {
|
|
3451
|
+
constructor(...args) {
|
|
3452
|
+
super(...args);
|
|
3453
|
+
this.state = {
|
|
3454
|
+
height: this.props.defaultHeight || 0,
|
|
3455
|
+
scaledHeight: this.props.defaultHeight || 0,
|
|
3456
|
+
scaledWidth: this.props.defaultWidth || 0,
|
|
3457
|
+
width: this.props.defaultWidth || 0
|
|
3458
|
+
};
|
|
3459
|
+
this._autoSizer = null;
|
|
3460
|
+
this._detectElementResize = null;
|
|
3461
|
+
this._parentNode = null;
|
|
3462
|
+
this._resizeObserver = null;
|
|
3463
|
+
this._timeoutId = null;
|
|
3464
|
+
this._onResize = () => {
|
|
3465
|
+
this._timeoutId = null;
|
|
3466
|
+
const {
|
|
3467
|
+
disableHeight,
|
|
3468
|
+
disableWidth,
|
|
3469
|
+
onResize
|
|
3470
|
+
} = this.props;
|
|
3471
|
+
if (this._parentNode) {
|
|
3472
|
+
var _style$paddingLeft, _style$paddingRight, _style$paddingTop, _style$paddingBottom;
|
|
3587
3473
|
// Guard against AutoSizer component being removed from the DOM immediately after being added.
|
|
3588
3474
|
// This can result in invalid style values which can result in NaN values if we don't handle them.
|
|
3589
3475
|
// See issue #150 for more context.
|
|
3590
3476
|
|
|
3591
|
-
|
|
3592
|
-
|
|
3593
|
-
|
|
3594
|
-
|
|
3595
|
-
|
|
3596
|
-
|
|
3597
|
-
|
|
3598
|
-
|
|
3599
|
-
|
|
3600
|
-
|
|
3601
|
-
|
|
3602
|
-
|
|
3603
|
-
|
|
3604
|
-
|
|
3605
|
-
|
|
3606
|
-
|
|
3477
|
+
const style = window.getComputedStyle(this._parentNode) || {};
|
|
3478
|
+
const paddingLeft = parseFloat((_style$paddingLeft = style.paddingLeft) !== null && _style$paddingLeft !== void 0 ? _style$paddingLeft : "0");
|
|
3479
|
+
const paddingRight = parseFloat((_style$paddingRight = style.paddingRight) !== null && _style$paddingRight !== void 0 ? _style$paddingRight : "0");
|
|
3480
|
+
const paddingTop = parseFloat((_style$paddingTop = style.paddingTop) !== null && _style$paddingTop !== void 0 ? _style$paddingTop : "0");
|
|
3481
|
+
const paddingBottom = parseFloat((_style$paddingBottom = style.paddingBottom) !== null && _style$paddingBottom !== void 0 ? _style$paddingBottom : "0");
|
|
3482
|
+
const rect = this._parentNode.getBoundingClientRect();
|
|
3483
|
+
const scaledHeight = rect.height - paddingTop - paddingBottom;
|
|
3484
|
+
const scaledWidth = rect.width - paddingLeft - paddingRight;
|
|
3485
|
+
const height = this._parentNode.offsetHeight - paddingTop - paddingBottom;
|
|
3486
|
+
const width = this._parentNode.offsetWidth - paddingLeft - paddingRight;
|
|
3487
|
+
if (!disableHeight && (this.state.height !== height || this.state.scaledHeight !== scaledHeight) || !disableWidth && (this.state.width !== width || this.state.scaledWidth !== scaledWidth)) {
|
|
3488
|
+
this.setState({
|
|
3489
|
+
height,
|
|
3490
|
+
width,
|
|
3491
|
+
scaledHeight,
|
|
3492
|
+
scaledWidth
|
|
3607
3493
|
});
|
|
3608
|
-
|
|
3609
|
-
|
|
3494
|
+
if (typeof onResize === "function") {
|
|
3495
|
+
onResize({
|
|
3496
|
+
height,
|
|
3497
|
+
scaledHeight,
|
|
3498
|
+
scaledWidth,
|
|
3499
|
+
width
|
|
3500
|
+
});
|
|
3501
|
+
}
|
|
3610
3502
|
}
|
|
3611
3503
|
}
|
|
3612
|
-
}
|
|
3613
|
-
|
|
3614
|
-
|
|
3504
|
+
};
|
|
3505
|
+
this._setRef = autoSizer => {
|
|
3506
|
+
this._autoSizer = autoSizer;
|
|
3507
|
+
};
|
|
3615
3508
|
}
|
|
3616
|
-
|
|
3617
|
-
|
|
3618
|
-
|
|
3619
|
-
|
|
3620
|
-
|
|
3621
|
-
|
|
3622
|
-
|
|
3623
|
-
|
|
3624
|
-
|
|
3625
|
-
|
|
3626
|
-
|
|
3627
|
-
|
|
3628
|
-
|
|
3629
|
-
|
|
3630
|
-
|
|
3631
|
-
|
|
3632
|
-
|
|
3509
|
+
componentDidMount() {
|
|
3510
|
+
const {
|
|
3511
|
+
nonce
|
|
3512
|
+
} = this.props;
|
|
3513
|
+
if (this._autoSizer && this._autoSizer.parentNode && this._autoSizer.parentNode.ownerDocument && this._autoSizer.parentNode.ownerDocument.defaultView && this._autoSizer.parentNode instanceof this._autoSizer.parentNode.ownerDocument.defaultView.HTMLElement) {
|
|
3514
|
+
// Delay access of parentNode until mount.
|
|
3515
|
+
// This handles edge-cases where the component has already been unmounted before its ref has been set,
|
|
3516
|
+
// As well as libraries like react-lite which have a slightly different lifecycle.
|
|
3517
|
+
this._parentNode = this._autoSizer.parentNode;
|
|
3518
|
+
|
|
3519
|
+
// Defer requiring resize handler in order to support server-side rendering.
|
|
3520
|
+
// See issue #41
|
|
3521
|
+
if (this._parentNode != null) {
|
|
3522
|
+
if (typeof ResizeObserver !== "undefined") {
|
|
3523
|
+
this._resizeObserver = new ResizeObserver(() => {
|
|
3524
|
+
// Guard against "ResizeObserver loop limit exceeded" error;
|
|
3525
|
+
// could be triggered if the state update causes the ResizeObserver handler to run long.
|
|
3526
|
+
// See https://github.com/bvaughn/react-virtualized-auto-sizer/issues/55
|
|
3527
|
+
this._timeoutId = setTimeout(this._onResize, 0);
|
|
3528
|
+
});
|
|
3529
|
+
this._resizeObserver.observe(this._parentNode);
|
|
3530
|
+
} else {
|
|
3531
|
+
this._detectElementResize = createDetectElementResize(nonce);
|
|
3532
|
+
this._detectElementResize.addResizeListener(this._parentNode, this._onResize);
|
|
3533
|
+
}
|
|
3633
3534
|
this._onResize();
|
|
3634
3535
|
}
|
|
3635
3536
|
}
|
|
3636
|
-
}
|
|
3637
|
-
|
|
3638
|
-
|
|
3639
|
-
if (this._detectElementResize
|
|
3537
|
+
}
|
|
3538
|
+
componentWillUnmount() {
|
|
3539
|
+
if (this._parentNode) {
|
|
3540
|
+
if (this._detectElementResize) {
|
|
3640
3541
|
this._detectElementResize.removeResizeListener(this._parentNode, this._onResize);
|
|
3641
3542
|
}
|
|
3543
|
+
if (this._timeoutId !== null) {
|
|
3544
|
+
clearTimeout(this._timeoutId);
|
|
3545
|
+
}
|
|
3546
|
+
if (this._resizeObserver) {
|
|
3547
|
+
this._resizeObserver.observe(this._parentNode);
|
|
3548
|
+
this._resizeObserver.disconnect();
|
|
3549
|
+
}
|
|
3642
3550
|
}
|
|
3643
|
-
}
|
|
3644
|
-
|
|
3645
|
-
|
|
3646
|
-
|
|
3647
|
-
|
|
3648
|
-
|
|
3649
|
-
|
|
3650
|
-
|
|
3651
|
-
|
|
3652
|
-
|
|
3653
|
-
|
|
3654
|
-
|
|
3655
|
-
|
|
3656
|
-
|
|
3657
|
-
|
|
3658
|
-
|
|
3659
|
-
|
|
3660
|
-
|
|
3661
|
-
|
|
3662
|
-
|
|
3663
|
-
|
|
3664
|
-
|
|
3665
|
-
|
|
3666
|
-
|
|
3667
|
-
|
|
3668
|
-
|
|
3669
|
-
|
|
3670
|
-
|
|
3671
|
-
|
|
3672
|
-
|
|
3551
|
+
}
|
|
3552
|
+
render() {
|
|
3553
|
+
const {
|
|
3554
|
+
children,
|
|
3555
|
+
defaultHeight,
|
|
3556
|
+
defaultWidth,
|
|
3557
|
+
disableHeight = false,
|
|
3558
|
+
disableWidth = false,
|
|
3559
|
+
nonce,
|
|
3560
|
+
onResize,
|
|
3561
|
+
style = {},
|
|
3562
|
+
tagName = "div",
|
|
3563
|
+
...rest
|
|
3564
|
+
} = this.props;
|
|
3565
|
+
const {
|
|
3566
|
+
height,
|
|
3567
|
+
scaledHeight,
|
|
3568
|
+
scaledWidth,
|
|
3569
|
+
width
|
|
3570
|
+
} = this.state;
|
|
3571
|
+
|
|
3572
|
+
// Outer div should not force width/height since that may prevent containers from shrinking.
|
|
3573
|
+
// Inner component should overflow and use calculated width/height.
|
|
3574
|
+
// See issue #68 for more information.
|
|
3575
|
+
const outerStyle = {
|
|
3576
|
+
overflow: "visible"
|
|
3577
|
+
};
|
|
3578
|
+
const childParams = {};
|
|
3579
|
+
|
|
3580
|
+
// Avoid rendering children before the initial measurements have been collected.
|
|
3581
|
+
// At best this would just be wasting cycles.
|
|
3582
|
+
let bailoutOnChildren = false;
|
|
3583
|
+
if (!disableHeight) {
|
|
3584
|
+
if (height === 0) {
|
|
3585
|
+
bailoutOnChildren = true;
|
|
3673
3586
|
}
|
|
3674
|
-
|
|
3675
|
-
|
|
3676
|
-
|
|
3677
|
-
|
|
3678
|
-
|
|
3679
|
-
|
|
3680
|
-
|
|
3587
|
+
outerStyle.height = 0;
|
|
3588
|
+
childParams.height = height;
|
|
3589
|
+
childParams.scaledHeight = scaledHeight;
|
|
3590
|
+
}
|
|
3591
|
+
if (!disableWidth) {
|
|
3592
|
+
if (width === 0) {
|
|
3593
|
+
bailoutOnChildren = true;
|
|
3681
3594
|
}
|
|
3682
|
-
|
|
3683
|
-
|
|
3684
|
-
|
|
3685
|
-
{
|
|
3686
|
-
className: className,
|
|
3687
|
-
ref: this._setRef,
|
|
3688
|
-
style: _extends$2({}, outerStyle, style)
|
|
3689
|
-
},
|
|
3690
|
-
!bailoutOnChildren && children(childParams)
|
|
3691
|
-
);
|
|
3595
|
+
outerStyle.width = 0;
|
|
3596
|
+
childParams.width = width;
|
|
3597
|
+
childParams.scaledWidth = scaledWidth;
|
|
3692
3598
|
}
|
|
3693
|
-
|
|
3694
|
-
|
|
3695
|
-
|
|
3696
|
-
|
|
3697
|
-
|
|
3698
|
-
|
|
3699
|
-
|
|
3700
|
-
|
|
3701
|
-
|
|
3702
|
-
}
|
|
3599
|
+
return createElement(tagName, {
|
|
3600
|
+
ref: this._setRef,
|
|
3601
|
+
style: {
|
|
3602
|
+
...outerStyle,
|
|
3603
|
+
...style
|
|
3604
|
+
},
|
|
3605
|
+
...rest
|
|
3606
|
+
}, !bailoutOnChildren && children(childParams));
|
|
3607
|
+
}
|
|
3608
|
+
}
|
|
3703
3609
|
|
|
3704
3610
|
const ICON_SIZE = 24;
|
|
3705
3611
|
const ITEM_HEIGHT = 40;
|
|
@@ -3796,7 +3702,7 @@ function getAutosizeListItems(items, height, collapseItem) {
|
|
|
3796
3702
|
return { listItems, collapseItems };
|
|
3797
3703
|
}
|
|
3798
3704
|
|
|
3799
|
-
var css_248z$k = ".ycn-composite-bar-item {\n --composite-bar-item-action-size: 36px;\n display: flex;\n width: 100%;\n height: 100%;\n align-items: center;\n cursor: pointer;\n}\n.ycn-composite-bar-item__icon {\n color: var(--
|
|
3705
|
+
var css_248z$k = ".ycn-composite-bar-item {\n --composite-bar-item-action-size: 36px;\n display: flex;\n width: 100%;\n height: 100%;\n align-items: center;\n cursor: pointer;\n}\n.ycn-composite-bar-item__icon {\n color: var(--g-color-text-misc);\n}\n.ycn-composite-bar-item__icon-place {\n flex-shrink: 0;\n width: var(--aside-header-min-width);\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n}\n.ycn-composite-bar-item__title {\n display: flex;\n overflow: hidden;\n}\n.ycn-composite-bar-item__title-text {\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n.ycn-composite-bar-item__title-adornment {\n margin: 0 10px;\n}\n.ycn-composite-bar-item__collapse-item {\n display: flex;\n padding: 0 16px;\n align-items: center;\n width: 100%;\n height: 100%;\n cursor: pointer;\n}\n.ycn-composite-bar-item__collapse-item .ycn-composite-bar-item__title-adornment {\n margin-right: 0;\n}\n.ycn-composite-bar-item__menu-divider {\n margin: 0 8px;\n width: 100%;\n border-top: 1px solid var(--g-color-line-generic);\n cursor: default;\n}\n.ycn-composite-bar-item__collapse-items-popup-content {\n padding: 4px 0;\n}\n.ycn-composite-bar-item__link {\n display: flex;\n width: 100%;\n height: 100%;\n align-items: center;\n}\n.ycn-composite-bar-item__link, .ycn-composite-bar-item__link:hover, .ycn-composite-bar-item__link:active, .ycn-composite-bar-item__link:visited, .ycn-composite-bar-item__link:focus {\n text-decoration: none;\n outline: none;\n color: inherit;\n}\n.ycn-composite-bar-item__btn-icon {\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.ycn-composite-bar-item_type_action {\n justify-content: center;\n height: var(--composite-bar-item-action-size);\n margin: 0 10px 8px;\n background: var(--g-color-base-float);\n box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.03), 0px 5px 6px rgba(0, 0, 0, 0.12);\n border-radius: var(--composite-bar-item-action-size);\n transition: transform 0.1s ease-out, background-color 0.15s linear;\n}\n.ycn-composite-bar-item_type_action:focus {\n box-shadow: 0 0 0 2px var(--g-color-line-misc);\n}\n.ycn-composite-bar-item_type_action:focus:not(:focus-visible) {\n box-shadow: none;\n}\n.ycn-composite-bar-item_type_action:hover {\n background-color: var(--g-color-base-float-hover);\n}\n.ycn-composite-bar-item_type_action:active {\n box-shadow: 0 1px 2px var(--g-color-sfx-shadow);\n transition: none;\n transform: scale(0.96);\n}\n.ycn-composite-bar-item_type_action .ycn-composite-bar-item__icon-place {\n width: var(--composite-bar-item-action-size);\n}\n.ycn-composite-bar-item_type_action .ycn-composite-bar-item__title {\n margin-right: 16px;\n}\n.ycn-composite-bar-item__icon-tooltip_item-type_action {\n margin-left: 10px;\n}\n.ycn-composite-bar-item:not(.ycn-composite-bar-item_compact).ycn-composite-bar-item_current.ycn-composite-bar-item_type_regular {\n background-color: var(--g-color-base-selection);\n}\n.ycn-composite-bar-item:not(.ycn-composite-bar-item_compact):not(.ycn-composite-bar-item_current):hover.ycn-composite-bar-item_type_regular {\n background-color: var(--g-color-base-simple-hover);\n}\n.ycn-composite-bar-item_compact.ycn-composite-bar-item_type_action {\n width: var(--composite-bar-item-action-size);\n}\n.ycn-composite-bar-item_compact.ycn-composite-bar-item_type_action .ycn-composite-bar-item__title {\n margin: 0;\n}\n.ycn-composite-bar-item_compact.ycn-composite-bar-item_current.ycn-composite-bar-item_type_regular .ycn-composite-bar-item__btn-icon {\n position: relative;\n background-color: transparent;\n}\n.ycn-composite-bar-item_compact.ycn-composite-bar-item_current.ycn-composite-bar-item_type_regular .ycn-composite-bar-item__btn-icon::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n z-index: -1;\n width: 38px;\n height: 38px;\n margin-top: -19px;\n margin-left: -19px;\n border-radius: 7px;\n}\n.ycn-composite-bar-item_compact.ycn-composite-bar-item_current.ycn-composite-bar-item_type_regular .ycn-composite-bar-item__btn-icon::before {\n background-color: var(--g-color-base-selection);\n}\n.ycn-composite-bar-item_compact:not(.ycn-composite-bar-item_current):hover.ycn-composite-bar-item_type_regular .ycn-composite-bar-item__btn-icon {\n position: relative;\n background-color: transparent;\n}\n.ycn-composite-bar-item_compact:not(.ycn-composite-bar-item_current):hover.ycn-composite-bar-item_type_regular .ycn-composite-bar-item__btn-icon::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n z-index: -1;\n width: 38px;\n height: 38px;\n margin-top: -19px;\n margin-left: -19px;\n border-radius: 7px;\n}\n.ycn-composite-bar-item_compact:not(.ycn-composite-bar-item_current):hover.ycn-composite-bar-item_type_regular .ycn-composite-bar-item__btn-icon::before {\n background-color: var(--g-color-base-simple-hover);\n}";
|
|
3800
3706
|
styleInject(css_248z$k);
|
|
3801
3707
|
|
|
3802
3708
|
const b$l = block('composite-bar-item');
|
|
@@ -3812,7 +3718,8 @@ function renderItemTitle(item) {
|
|
|
3812
3718
|
const defaultPopupPlacement = ['right-end'];
|
|
3813
3719
|
const defaultPopupOffset = [-20, 8];
|
|
3814
3720
|
const Item$1 = (props) => {
|
|
3815
|
-
const { item,
|
|
3721
|
+
const { item, className, collapseItems, onMouseLeave, onMouseEnter, enableTooltip = true, popupVisible = false, popupAnchor, popupPlacement = defaultPopupPlacement, popupOffset = defaultPopupOffset, popupKeepMounted, renderPopupContent, onClosePopup, onItemClick, } = props;
|
|
3722
|
+
const { compact } = useAsideHeaderContext();
|
|
3816
3723
|
if (item.type === 'divider') {
|
|
3817
3724
|
return React__default.createElement("div", { className: b$l('menu-divider') });
|
|
3818
3725
|
}
|
|
@@ -3859,7 +3766,7 @@ const Item$1 = (props) => {
|
|
|
3859
3766
|
React__default.createElement("div", { className: b$l('icon-place') }, compact ? (React__default.createElement(Tooltip, { content: tooltipText, disabled: !enableTooltip || (collapsedItem && open), placement: "right", className: b$l('icon-tooltip', { 'item-type': type }) },
|
|
3860
3767
|
React__default.createElement("div", { onMouseEnter: () => onMouseEnter === null || onMouseEnter === void 0 ? void 0 : onMouseEnter(), onMouseLeave: () => onMouseLeave === null || onMouseLeave === void 0 ? void 0 : onMouseLeave(), className: b$l('btn-icon') }, iconEl))) : (iconEl)),
|
|
3861
3768
|
React__default.createElement("div", { className: b$l('title'), title: typeof item.title === 'string' ? item.title : undefined }, titleEl),
|
|
3862
|
-
renderPopupContent && Boolean(anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.current) && (React__default.createElement(Popup, {
|
|
3769
|
+
renderPopupContent && Boolean(anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.current) && (React__default.createElement(Popup, { contentClassName: b$l('popup'), open: popupVisible, keepMounted: popupKeepMounted, placement: popupPlacement, offset: popupOffset, anchorRef: anchorRef, onClose: onClose }, renderPopupContent()))));
|
|
3863
3770
|
return item.link ? (React__default.createElement("a", { href: item.link, className: b$l('link') }, createdNode)) : (createdNode);
|
|
3864
3771
|
};
|
|
3865
3772
|
const iconNode = icon ? React__default.createElement(Icon, { data: icon, size: iconSize, className: b$l('icon') }) : null;
|
|
@@ -3878,7 +3785,8 @@ const Item$1 = (props) => {
|
|
|
3878
3785
|
open && collapsedItem && (collapseItems === null || collapseItems === void 0 ? void 0 : collapseItems.length) && Boolean(anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.current) && (React__default.createElement(CollapsedPopup, Object.assign({}, props, { anchorRef: ref, onClose: () => toggleOpen(false) })))));
|
|
3879
3786
|
};
|
|
3880
3787
|
Item$1.displayName = 'Item';
|
|
3881
|
-
function CollapsedPopup({
|
|
3788
|
+
function CollapsedPopup({ onItemClick, collapseItems, anchorRef, onClose, }) {
|
|
3789
|
+
const { compact } = useAsideHeaderContext();
|
|
3882
3790
|
return (collapseItems === null || collapseItems === void 0 ? void 0 : collapseItems.length) ? (React__default.createElement(Popup, { placement: POPUP_PLACEMENT, open: true, anchorRef: anchorRef, onClose: onClose },
|
|
3883
3791
|
React__default.createElement("div", { className: b$l('collapse-items-popup-content') },
|
|
3884
3792
|
React__default.createElement(List, { itemClassName: b$l('root-collapse-item'), items: collapseItems, selectedItemIndex: getSelectedItemIndex$1(collapseItems), itemHeight: POPUP_ITEM_HEIGHT, itemsHeight: collapseItems.length * POPUP_ITEM_HEIGHT, virtualized: false, filterable: false, sortable: false, renderItem: (collapseItem) => {
|
|
@@ -3900,9 +3808,6 @@ function CollapsedPopup({ compact, onItemClick, collapseItems, anchorRef, onClos
|
|
|
3900
3808
|
} })))) : null;
|
|
3901
3809
|
}
|
|
3902
3810
|
|
|
3903
|
-
var css_248z$j = ".ycn-composite-bar {\n flex: 1 0 auto;\n width: 100%;\n min-height: 40px;\n}\n.ycn-composite-bar .ycn-composite-bar__root-menu-item[class] {\n background-color: transparent;\n}";
|
|
3904
|
-
styleInject(css_248z$j);
|
|
3905
|
-
|
|
3906
3811
|
const multipleTooltipContextDefaults = {
|
|
3907
3812
|
active: false,
|
|
3908
3813
|
activeIndex: undefined,
|
|
@@ -3925,8 +3830,8 @@ class MultipleTooltipProvider extends React__default.PureComponent {
|
|
|
3925
3830
|
}
|
|
3926
3831
|
}
|
|
3927
3832
|
|
|
3928
|
-
var css_248z$
|
|
3929
|
-
styleInject(css_248z$
|
|
3833
|
+
var css_248z$j = ".yc-root_theme_dark .ycn-multiple-tooltip,\n.yc-root_theme_dark-hc .ycn-multiple-tooltip {\n --multiple-tooltip-item-bg-color: #424147;\n --multiple-tooltip-item-active-bg-color: var(--g-color-base-float-heavy);\n --multiple-tooltip-backdrop-background: linear-gradient(\n 90deg,\n #313036 0%,\n rgba(49, 48, 54, 0.3) 100%\n );\n --multiple-tooltip-backdrop-filter: blur(16px);\n}\n\n.yc-root_theme_light .ycn-multiple-tooltip,\n.yc-root_theme_light-hc .ycn-multiple-tooltip {\n --multiple-tooltip-item-bg-color: #7a7a7a;\n --multiple-tooltip-item-active-bg-color: var(--g-color-base-float-heavy);\n --multiple-tooltip-backdrop-background: linear-gradient(\n 90deg,\n #ffffff 0%,\n rgba(255, 255, 255, 0.3) 100%\n );\n --multiple-tooltip-backdrop-filter: blur(12px);\n}\n\n.ycn-multiple-tooltip {\n background-color: transparent;\n box-shadow: none;\n}\n.ycn-multiple-tooltip::before {\n content: \"\";\n box-shadow: none;\n position: absolute;\n width: 100%;\n height: 100%;\n z-index: -1;\n background: var(--multiple-tooltip-backdrop-background);\n filter: var(--multiple-tooltip-backdrop-filter);\n}\n.ycn-multiple-tooltip__items-container {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n padding: 32px 40px 32px 12px;\n}\n.ycn-multiple-tooltip__item {\n display: flex;\n box-sizing: border-box;\n height: 30px;\n padding: 8px 12px;\n background-color: var(--multiple-tooltip-item-bg-color);\n position: relative;\n border-radius: 5px;\n align-items: center;\n color: var(--g-color-text-light-primary);\n margin-bottom: 5px;\n transition: transform 100ms ease-in-out;\n}\n.ycn-multiple-tooltip__item:not(.ycn-multiple-tooltip__item_divider) + .ycn-multiple-tooltip__item:not(.ycn-multiple-tooltip__item_divider), .ycn-multiple-tooltip__item:first-child {\n margin-top: 5px;\n}\n.ycn-multiple-tooltip__item_divider + .ycn-multiple-tooltip__item:not(.ycn-multiple-tooltip__item_divider) {\n margin-top: 4px;\n}\n.ycn-multiple-tooltip__item_active {\n background-color: var(--multiple-tooltip-item-active-bg-color);\n transform: translateX(-12px);\n}\n.ycn-multiple-tooltip__item_divider {\n height: 15px;\n visibility: hidden;\n margin: 0;\n}";
|
|
3834
|
+
styleInject(css_248z$j);
|
|
3930
3835
|
|
|
3931
3836
|
const b$k = block('multiple-tooltip');
|
|
3932
3837
|
const POPUP_OFFSET = [-32, 4];
|
|
@@ -3939,7 +3844,7 @@ const POPUP_MODIFIERS = [
|
|
|
3939
3844
|
const MultipleTooltip = ({ items, open, anchorRef, placement, }) => {
|
|
3940
3845
|
const { activeIndex, hideCollapseItemTooltip } = React__default.useContext(MultipleTooltipContext);
|
|
3941
3846
|
const activeItem = activeIndex === undefined ? null : items[activeIndex];
|
|
3942
|
-
return (React__default.createElement(Popup, { open: open, anchorRef: anchorRef, placement: placement, offset: POPUP_OFFSET,
|
|
3847
|
+
return (React__default.createElement(Popup, { open: open, anchorRef: anchorRef, placement: placement, offset: POPUP_OFFSET, contentClassName: b$k(null), modifiers: POPUP_MODIFIERS },
|
|
3943
3848
|
React__default.createElement("div", { className: b$k('items-container') }, items
|
|
3944
3849
|
.filter(({ type = 'regular', id }) => !hideCollapseItemTooltip ||
|
|
3945
3850
|
(id !== COLLAPSE_ITEM_ID && type !== 'action'))
|
|
@@ -3955,11 +3860,15 @@ const MultipleTooltip = ({ items, open, anchorRef, placement, }) => {
|
|
|
3955
3860
|
}))));
|
|
3956
3861
|
};
|
|
3957
3862
|
|
|
3863
|
+
var css_248z$i = ".ycn-composite-bar {\n flex: 1 0 auto;\n width: 100%;\n min-height: 40px;\n}\n.ycn-composite-bar .ycn-composite-bar__root-menu-item[class] {\n background-color: transparent;\n}";
|
|
3864
|
+
styleInject(css_248z$i);
|
|
3865
|
+
|
|
3958
3866
|
const b$j = block('composite-bar');
|
|
3959
|
-
const CompositeBarView = ({ items,
|
|
3867
|
+
const CompositeBarView = ({ items, onItemClick, collapseItems, multipleTooltip = true, }) => {
|
|
3960
3868
|
const ref = useRef(null);
|
|
3961
3869
|
const tooltipRef = useRef(null);
|
|
3962
3870
|
const { setValue: setMultipleTooltipContextValue, active: multipleTooltipActive, activeIndex, lastClickedItemIndex, } = useContext(MultipleTooltipContext);
|
|
3871
|
+
const { compact } = useAsideHeaderContext();
|
|
3963
3872
|
const onTooltipMouseEnter = useCallback((e) => {
|
|
3964
3873
|
if (!multipleTooltipActive &&
|
|
3965
3874
|
activeIndex !== lastClickedItemIndex &&
|
|
@@ -4006,7 +3915,7 @@ const CompositeBarView = ({ items, compact, onItemClick, collapseItems, multiple
|
|
|
4006
3915
|
}
|
|
4007
3916
|
}
|
|
4008
3917
|
}, [activeIndex, lastClickedItemIndex, setMultipleTooltipContextValue]);
|
|
4009
|
-
const onItemClickByIndex = useCallback((itemIndex) => (item, collapsed) => {
|
|
3918
|
+
const onItemClickByIndex = useCallback((itemIndex) => (item, collapsed, event) => {
|
|
4010
3919
|
if (compact &&
|
|
4011
3920
|
multipleTooltip &&
|
|
4012
3921
|
itemIndex !== lastClickedItemIndex &&
|
|
@@ -4016,30 +3925,30 @@ const CompositeBarView = ({ items, compact, onItemClick, collapseItems, multiple
|
|
|
4016
3925
|
active: false,
|
|
4017
3926
|
});
|
|
4018
3927
|
}
|
|
4019
|
-
onItemClick === null || onItemClick === void 0 ? void 0 : onItemClick(item, collapsed);
|
|
3928
|
+
onItemClick === null || onItemClick === void 0 ? void 0 : onItemClick(item, collapsed, event);
|
|
4020
3929
|
}, [lastClickedItemIndex, setMultipleTooltipContextValue]);
|
|
4021
3930
|
return (React__default.createElement(React__default.Fragment, null,
|
|
4022
3931
|
React__default.createElement("div", { ref: tooltipRef, onMouseEnter: onTooltipMouseEnter, onMouseLeave: onTooltipMouseLeave },
|
|
4023
|
-
React__default.createElement(List, { ref: ref, items: items, selectedItemIndex: getSelectedItemIndex$1(items), itemHeight: getItemHeight$1, itemClassName: b$j('root-menu-item'), itemsHeight: getItemsHeight, virtualized: false, filterable: false, sortable: false, renderItem: (item, _isItemActive, itemIndex) => (React__default.createElement(Item$1, { item: item, onMouseEnter: onMouseEnterByIndex(itemIndex), onMouseLeave: onMouseLeave, onItemClick: onItemClickByIndex(itemIndex),
|
|
3932
|
+
React__default.createElement(List, { ref: ref, items: items, selectedItemIndex: getSelectedItemIndex$1(items), itemHeight: getItemHeight$1, itemClassName: b$j('root-menu-item'), itemsHeight: getItemsHeight, virtualized: false, filterable: false, sortable: false, renderItem: (item, _isItemActive, itemIndex) => (React__default.createElement(Item$1, { item: item, onMouseEnter: onMouseEnterByIndex(itemIndex), onMouseLeave: onMouseLeave, onItemClick: onItemClickByIndex(itemIndex), collapseItems: collapseItems, enableTooltip: !multipleTooltip })) })),
|
|
4024
3933
|
React__default.createElement(MultipleTooltip, { open: compact && multipleTooltip && multipleTooltipActive, anchorRef: tooltipRef, placement: ['right-start'], items: items })));
|
|
4025
3934
|
};
|
|
4026
|
-
const CompositeBar = ({ items,
|
|
3935
|
+
const CompositeBar = ({ items, enableCollapsing, dict, onItemClick, multipleTooltip = false, }) => {
|
|
4027
3936
|
if (items.length === 0) {
|
|
4028
3937
|
return null;
|
|
4029
3938
|
}
|
|
4030
|
-
let node
|
|
3939
|
+
let node;
|
|
4031
3940
|
if (enableCollapsing) {
|
|
4032
3941
|
const minHeight = getItemsMinHeight(items);
|
|
4033
3942
|
const collapseItem = getMoreButtonItem(dict);
|
|
4034
3943
|
node = (React__default.createElement("div", { className: b$j({ autosizer: true }), style: { minHeight } }, items.length !== 0 && (React__default.createElement(AutoSizer, null, ({ width, height }) => {
|
|
4035
3944
|
const { listItems, collapseItems } = getAutosizeListItems(items, height, collapseItem);
|
|
4036
3945
|
return (React__default.createElement("div", { style: { width, height } },
|
|
4037
|
-
React__default.createElement(CompositeBarView, { items: listItems,
|
|
3946
|
+
React__default.createElement(CompositeBarView, { items: listItems, onItemClick: onItemClick, collapseItems: collapseItems, multipleTooltip: multipleTooltip })));
|
|
4038
3947
|
}))));
|
|
4039
3948
|
}
|
|
4040
3949
|
else {
|
|
4041
3950
|
node = (React__default.createElement("div", { className: b$j() },
|
|
4042
|
-
React__default.createElement(CompositeBarView, { items: items,
|
|
3951
|
+
React__default.createElement(CompositeBarView, { items: items, onItemClick: onItemClick, multipleTooltip: multipleTooltip })));
|
|
4043
3952
|
}
|
|
4044
3953
|
return React__default.createElement(MultipleTooltipProvider, null, node);
|
|
4045
3954
|
};
|
|
@@ -4049,10 +3958,17 @@ const RenderContent = React__default.memo(({ renderContent, size }) => {
|
|
|
4049
3958
|
return React__default.createElement(React__default.Fragment, null, renderContent({ size }));
|
|
4050
3959
|
});
|
|
4051
3960
|
RenderContent.displayName = 'RenderContent';
|
|
4052
|
-
const Content = ({ size,
|
|
3961
|
+
const Content = ({ size, // TODO: move to context when MobileHeader will support it
|
|
3962
|
+
className, cssSizeVariableName = '--aside-header-size', renderContent, }) => {
|
|
4053
3963
|
return (React__default.createElement("div", { className: className, style: Object.assign({}, { [cssSizeVariableName]: `${size}px` }) }, typeof renderContent === 'function' && (React__default.createElement(RenderContent, { size: size, renderContent: renderContent }))));
|
|
4054
3964
|
};
|
|
4055
3965
|
|
|
3966
|
+
function fakeDisplayName(newDisplayName, Component) {
|
|
3967
|
+
const Fake = (props) => React__default.createElement(Component, Object.assign({}, props));
|
|
3968
|
+
Fake.displayName = newDisplayName;
|
|
3969
|
+
return Fake;
|
|
3970
|
+
}
|
|
3971
|
+
|
|
4056
3972
|
var _path$1;
|
|
4057
3973
|
function _extends$1() { _extends$1 = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$1.apply(this, arguments); }
|
|
4058
3974
|
var SvgControlMenuButton = function SvgControlMenuButton(props) {
|
|
@@ -4083,22 +3999,24 @@ var SvgDividerCollapsed = function SvgDividerCollapsed(props) {
|
|
|
4083
3999
|
};
|
|
4084
4000
|
var headerDividerCollapsedIcon = SvgDividerCollapsed;
|
|
4085
4001
|
|
|
4086
|
-
var css_248z$h = ".yc-root {\n --aside-header-background-color: var(--
|
|
4002
|
+
var css_248z$h = ".yc-root {\n --aside-header-background-color: var(--g-color-base-warning-light);\n --aside-header-collapse-button-divider-line-color: var(\n --aside-header-header-divider-line-color\n );\n}\n\n.yc-root_theme_light,\n.yc-root_theme_light-hc {\n --aside-header-divider-line-color: transparent;\n --aside-header-header-divider-line-color: var(--g-color-line-generic);\n}\n\n.yc-root_theme_dark,\n.yc-root_theme_dark-hc {\n --aside-header-divider-line-color: var(--g-color-line-generic-solid);\n --aside-header-header-divider-line-color: var(--g-color-line-generic-solid);\n}\n\n.ycn-aside-header {\n --aside-header-min-width: 56px;\n height: 100%;\n width: 100%;\n position: relative;\n background-color: var(--g-color-base-background);\n}\n.ycn-aside-header__aside {\n position: sticky;\n top: 0;\n left: 0;\n height: 100vh;\n width: inherit;\n display: flex;\n flex-direction: column;\n background-color: var(--g-color-base-background);\n z-index: 100;\n box-sizing: border-box;\n}\n.ycn-aside-header__aside::after {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n width: 1px;\n height: 100%;\n content: \"\";\n background-color: var(--aside-header-divider-line-color);\n}\n.ycn-aside-header__aside-popup-anchor {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n}\n.ycn-aside-header__aside-content {\n --gradient-height: 334px;\n display: flex;\n flex-direction: column;\n overflow-x: hidden;\n width: inherit;\n height: inherit;\n position: relative;\n z-index: 2;\n user-select: none;\n}\n.ycn-aside-header__aside-content::after {\n position: absolute;\n top: 0;\n right: -100px;\n bottom: 0;\n width: 100px;\n content: \"\";\n box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.1), 0px 0px 24px rgba(0, 0, 0, 0.08);\n}\n.ycn-aside-header__aside-content > .ycn-aside-header-logo {\n margin: 8px 0;\n}\n.ycn-aside-header__aside-content_with-decoration {\n background: linear-gradient(180deg, var(--aside-header-background-color) calc(var(--gradient-height) * 0.33), transparent calc(var(--gradient-height) * 0.88));\n}\n.ycn-aside-header_compact .ycn-aside-header__aside-content {\n background: transparent;\n}\n.ycn-aside-header__header {\n --aside-header-header-divider-height: 29px;\n position: relative;\n z-index: 1;\n flex: none;\n box-sizing: border-box;\n width: 100%;\n padding-top: 8px;\n padding-bottom: 22px;\n}\n.ycn-aside-header__header .ycn-aside-header__header-divider {\n position: absolute;\n bottom: 0;\n left: 0;\n z-index: -2;\n display: none;\n color: var(--aside-header-background-color);\n}\n.ycn-aside-header__header_with-decoration::before {\n position: absolute;\n top: 0;\n left: 0;\n z-index: -2;\n display: none;\n width: 100%;\n height: calc(100% - var(--aside-header-header-divider-height));\n content: \"\";\n background-color: var(--aside-header-background-color);\n}\n.ycn-aside-header__header::after {\n position: absolute;\n bottom: 12px;\n left: 0;\n z-index: -2;\n width: 100%;\n height: 1px;\n content: \"\";\n background-color: var(--aside-header-header-divider-line-color);\n}\n.ycn-aside-header_compact .ycn-aside-header__header::before {\n display: block;\n}\n.ycn-aside-header_compact .ycn-aside-header__header_with-decoration .ycn-aside-header__header-divider {\n display: block;\n}\n.ycn-aside-header_compact .ycn-aside-header__header_with-decoration::after {\n display: none;\n}\n.ycn-aside-header__menu-items {\n flex-grow: 1;\n}\n.ycn-aside-header__footer {\n flex-shrink: 0;\n width: 100%;\n margin: 8px 0;\n display: flex;\n flex-direction: column;\n}\n.ycn-aside-header__panels {\n z-index: 98;\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n top: 0;\n overflow: auto;\n}\n.ycn-aside-header__panel {\n height: 100%;\n}\n.ycn-aside-header__pane-container {\n display: flex;\n outline: none;\n overflow: visible;\n user-select: text;\n flex-direction: row;\n}\n.ycn-aside-header__content {\n width: calc(100% - var(--aside-header-size));\n z-index: 95;\n}\n.ycn-aside-header__collapse-button {\n --yc-button-background-color-hover: transparent;\n overflow: hidden;\n box-sizing: border-box;\n flex: none;\n width: 100%;\n height: 20px;\n border-top: 1px solid var(--aside-header-collapse-button-divider-line-color);\n margin-top: auto;\n}\n.ycn-aside-header__collapse-button > .yc-button__text {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 20px;\n}\n.ycn-aside-header__collapse-button:not(.ycn-aside-header__collapse-button_compact) .ycn-aside-header__collapse-icon {\n transform: rotate(180deg);\n}\n.ycn-aside-header__collapse-button .ycn-aside-header__collapse-icon {\n color: var(--g-color-text-secondary);\n}\n.ycn-aside-header__collapse-button:hover .ycn-aside-header__collapse-icon {\n color: var(--g-color-text-primary);\n}";
|
|
4087
4003
|
styleInject(css_248z$h);
|
|
4088
4004
|
|
|
4005
|
+
// TODO: remove temporary fix for expand button
|
|
4006
|
+
const NotIcon = fakeDisplayName('NotIcon', Icon);
|
|
4089
4007
|
const b$i = block('aside-header');
|
|
4090
4008
|
class AsideHeader extends React__default.Component {
|
|
4091
4009
|
constructor() {
|
|
4092
4010
|
super(...arguments);
|
|
4093
4011
|
this.asideRef = React__default.createRef();
|
|
4094
4012
|
this.renderFirstPane = (size) => {
|
|
4095
|
-
const { dict, menuItems, panelItems,
|
|
4013
|
+
const { dict, menuItems, panelItems, headerDecoration, multipleTooltip } = this.props;
|
|
4096
4014
|
return (React__default.createElement(React__default.Fragment, null,
|
|
4097
4015
|
React__default.createElement("div", { className: b$i('aside'), style: { width: size } },
|
|
4098
4016
|
React__default.createElement("div", { className: b$i('aside-popup-anchor'), ref: this.asideRef }),
|
|
4099
4017
|
React__default.createElement("div", { className: b$i('aside-content', { ['with-decoration']: headerDecoration }) },
|
|
4100
4018
|
this.renderHeader(),
|
|
4101
|
-
(menuItems === null || menuItems === void 0 ? void 0 : menuItems.length) ? (React__default.createElement(CompositeBar, { items: menuItems,
|
|
4019
|
+
(menuItems === null || menuItems === void 0 ? void 0 : menuItems.length) ? (React__default.createElement(CompositeBar, { items: menuItems, enableCollapsing: true, dict: dict, onItemClick: this.onItemClick, multipleTooltip: multipleTooltip })) : (React__default.createElement("div", { className: b$i('menu-items') })),
|
|
4102
4020
|
this.renderFooter(size),
|
|
4103
4021
|
this.renderCollapseButton())),
|
|
4104
4022
|
panelItems && this.renderPanels(size)));
|
|
@@ -4106,13 +4024,13 @@ class AsideHeader extends React__default.Component {
|
|
|
4106
4024
|
this.renderSecondPane = (size) => {
|
|
4107
4025
|
return (React__default.createElement(Content, { size: size, renderContent: this.props.renderContent, className: b$i('content') }));
|
|
4108
4026
|
};
|
|
4109
|
-
this.renderLogo = () =>
|
|
4027
|
+
this.renderLogo = () => React__default.createElement(Logo$1, Object.assign({}, this.props.logo, { onClick: this.onLogoClick }));
|
|
4110
4028
|
this.renderHeader = () => (React__default.createElement("div", { className: b$i('header', { ['with-decoration']: this.props.headerDecoration }) },
|
|
4111
4029
|
this.renderLogo(),
|
|
4112
|
-
React__default.createElement(CompositeBar, { items: this.props.subheaderItems,
|
|
4030
|
+
React__default.createElement(CompositeBar, { items: this.props.subheaderItems, enableCollapsing: false, onItemClick: this.onItemClick }),
|
|
4113
4031
|
React__default.createElement(Icon, { data: headerDividerCollapsedIcon, className: b$i('header-divider'), width: ASIDE_HEADER_COMPACT_WIDTH, height: "29" })));
|
|
4114
4032
|
this.renderFooter = (size) => {
|
|
4115
|
-
const {
|
|
4033
|
+
const { renderFooter, compact } = this.props;
|
|
4116
4034
|
return (React__default.createElement("div", { className: b$i('footer') }, renderFooter === null || renderFooter === void 0 ? void 0 : renderFooter({
|
|
4117
4035
|
size,
|
|
4118
4036
|
compact,
|
|
@@ -4125,10 +4043,10 @@ class AsideHeader extends React__default.Component {
|
|
|
4125
4043
|
};
|
|
4126
4044
|
this.renderCollapseButton = () => {
|
|
4127
4045
|
var _a;
|
|
4128
|
-
const {
|
|
4046
|
+
const { dict, compact } = this.props;
|
|
4129
4047
|
const typeButton = compact ? Dict.ExpandButton : Dict.CollapseButton;
|
|
4130
4048
|
return (React__default.createElement(Button, { className: b$i('collapse-button', { compact }), view: "flat", onClick: this.onCollapseButtonClick, title: (_a = dict === null || dict === void 0 ? void 0 : dict[typeButton]) !== null && _a !== void 0 ? _a : defaultDict$2[typeButton] },
|
|
4131
|
-
React__default.createElement(
|
|
4049
|
+
React__default.createElement(NotIcon, { data: controlMenuButtonIcon, className: b$i('collapse-icon'), width: "16", height: "10" })));
|
|
4132
4050
|
};
|
|
4133
4051
|
this.onCollapseButtonClick = () => {
|
|
4134
4052
|
var _a, _b;
|
|
@@ -4138,10 +4056,10 @@ class AsideHeader extends React__default.Component {
|
|
|
4138
4056
|
var _a, _b;
|
|
4139
4057
|
(_b = (_a = this.props).onClosePanel) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
4140
4058
|
};
|
|
4141
|
-
this.onItemClick = (item, collapsed) => {
|
|
4059
|
+
this.onItemClick = (item, collapsed, event) => {
|
|
4142
4060
|
var _a, _b, _c;
|
|
4143
4061
|
(_b = (_a = this.props).onClosePanel) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
4144
|
-
(_c = item.onItemClick) === null || _c === void 0 ? void 0 : _c.call(item, item, collapsed);
|
|
4062
|
+
(_c = item.onItemClick) === null || _c === void 0 ? void 0 : _c.call(item, item, collapsed, event);
|
|
4145
4063
|
};
|
|
4146
4064
|
this.onLogoClick = (event) => {
|
|
4147
4065
|
var _a, _b, _c, _d;
|
|
@@ -4152,10 +4070,11 @@ class AsideHeader extends React__default.Component {
|
|
|
4152
4070
|
render() {
|
|
4153
4071
|
const { className, compact } = this.props;
|
|
4154
4072
|
const size = compact ? ASIDE_HEADER_COMPACT_WIDTH : ASIDE_HEADER_EXPANDED_WIDTH;
|
|
4155
|
-
return (React__default.createElement(
|
|
4156
|
-
React__default.createElement("div", { className: b$i(
|
|
4157
|
-
|
|
4158
|
-
|
|
4073
|
+
return (React__default.createElement(AsideHeaderContextProvider, { value: { compact, size } },
|
|
4074
|
+
React__default.createElement("div", { className: b$i({ compact }, className) },
|
|
4075
|
+
React__default.createElement("div", { className: b$i('pane-container') },
|
|
4076
|
+
this.renderFirstPane(size),
|
|
4077
|
+
this.renderSecondPane(size)))));
|
|
4159
4078
|
}
|
|
4160
4079
|
}
|
|
4161
4080
|
AsideHeader.defaultProps = {
|
|
@@ -4165,33 +4084,38 @@ AsideHeader.defaultProps = {
|
|
|
4165
4084
|
headerDecoration: true,
|
|
4166
4085
|
};
|
|
4167
4086
|
|
|
4168
|
-
/******************************************************************************
|
|
4169
|
-
Copyright (c) Microsoft Corporation.
|
|
4170
|
-
|
|
4171
|
-
Permission to use, copy, modify, and/or distribute this software for any
|
|
4172
|
-
purpose with or without fee is hereby granted.
|
|
4173
|
-
|
|
4174
|
-
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
4175
|
-
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
4176
|
-
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
4177
|
-
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
4178
|
-
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
4179
|
-
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
4180
|
-
PERFORMANCE OF THIS SOFTWARE.
|
|
4181
|
-
***************************************************************************** */
|
|
4182
|
-
|
|
4183
|
-
function __rest(s, e) {
|
|
4184
|
-
|
|
4185
|
-
|
|
4186
|
-
|
|
4187
|
-
|
|
4188
|
-
|
|
4189
|
-
|
|
4190
|
-
|
|
4191
|
-
|
|
4192
|
-
|
|
4087
|
+
/******************************************************************************
|
|
4088
|
+
Copyright (c) Microsoft Corporation.
|
|
4089
|
+
|
|
4090
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
4091
|
+
purpose with or without fee is hereby granted.
|
|
4092
|
+
|
|
4093
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
4094
|
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
4095
|
+
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
4096
|
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
4097
|
+
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
4098
|
+
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
4099
|
+
PERFORMANCE OF THIS SOFTWARE.
|
|
4100
|
+
***************************************************************************** */
|
|
4101
|
+
|
|
4102
|
+
function __rest(s, e) {
|
|
4103
|
+
var t = {};
|
|
4104
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4105
|
+
t[p] = s[p];
|
|
4106
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
4107
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
4108
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
4109
|
+
t[p[i]] = s[p[i]];
|
|
4110
|
+
}
|
|
4111
|
+
return t;
|
|
4193
4112
|
}
|
|
4194
4113
|
|
|
4114
|
+
typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
4115
|
+
var e = new Error(message);
|
|
4116
|
+
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
4117
|
+
};
|
|
4118
|
+
|
|
4195
4119
|
var css_248z$g = ".ycn-footer-item {\n width: 100%;\n height: 40px;\n}";
|
|
4196
4120
|
styleInject(css_248z$g);
|
|
4197
4121
|
|
|
@@ -4219,7 +4143,7 @@ const ActionBarItem = ({ children, className, pull, spacing = true }) => {
|
|
|
4219
4143
|
};
|
|
4220
4144
|
ActionBarItem.displayName = 'ActionBar.Item';
|
|
4221
4145
|
|
|
4222
|
-
var css_248z$d = ".ycn-action-bar-section {\n display: flex;\n flex-flow: row nowrap;\n justify-content: flex-start;\n align-items: stretch;\n}\n.ycn-action-bar-section + .ycn-action-bar-section {\n border-left: solid 1px var(--
|
|
4146
|
+
var css_248z$d = ".ycn-action-bar-section {\n display: flex;\n flex-flow: row nowrap;\n justify-content: flex-start;\n align-items: stretch;\n}\n.ycn-action-bar-section + .ycn-action-bar-section {\n border-left: solid 1px var(--g-color-line-generic);\n}\n.ycn-action-bar-section_type_primary {\n flex: 1 1 auto;\n padding-left: 20px;\n padding-right: 20px;\n}\n.ycn-action-bar-section_type_secondary {\n padding-left: 6px;\n padding-right: 6px;\n}";
|
|
4223
4147
|
styleInject(css_248z$d);
|
|
4224
4148
|
|
|
4225
4149
|
const b$e = block('action-bar-section');
|
|
@@ -4228,7 +4152,7 @@ const ActionBarSection = ({ children, type = 'primary' }) => {
|
|
|
4228
4152
|
};
|
|
4229
4153
|
ActionBarSection.displayName = 'ActionBar.Section';
|
|
4230
4154
|
|
|
4231
|
-
var css_248z$c = ".ycn-action-bar-separator {\n list-style: none;\n margin: 0;\n padding: 0;\n margin-left: 6px;\n margin-right: 6px;\n border-right: solid 1px var(--
|
|
4155
|
+
var css_248z$c = ".ycn-action-bar-separator {\n list-style: none;\n margin: 0;\n padding: 0;\n margin-left: 6px;\n margin-right: 6px;\n border-right: solid 1px var(--g-color-line-generic);\n height: 40px;\n}";
|
|
4232
4156
|
styleInject(css_248z$c);
|
|
4233
4157
|
|
|
4234
4158
|
const b$d = block('action-bar-separator');
|
|
@@ -4237,7 +4161,7 @@ const ActionBarSeparator = () => {
|
|
|
4237
4161
|
};
|
|
4238
4162
|
ActionBarSeparator.displayName = 'ActionBar.Separator';
|
|
4239
4163
|
|
|
4240
|
-
var css_248z$b = ".ycn-action-bar {\n box-sizing: border-box;\n height: 40px;\n border-bottom: solid 1px var(--
|
|
4164
|
+
var css_248z$b = ".ycn-action-bar {\n box-sizing: border-box;\n height: 40px;\n border-bottom: solid 1px var(--g-color-line-generic);\n display: flex;\n flex-flow: row nowrap;\n justify-content: flex-start;\n align-items: stretch;\n}";
|
|
4241
4165
|
styleInject(css_248z$b);
|
|
4242
4166
|
|
|
4243
4167
|
const b$c = block('action-bar');
|
|
@@ -4252,7 +4176,7 @@ const PublicActionBar = Object.assign(ActionBar, {
|
|
|
4252
4176
|
Separator: ActionBarSeparator,
|
|
4253
4177
|
});
|
|
4254
4178
|
|
|
4255
|
-
var css_248z$a = ".ycn-title {\n box-sizing: border-box;\n padding: 14px 10px 14px 20px;\n min-height: 64px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n.ycn-title_separator {\n border-bottom: 1px solid var(--
|
|
4179
|
+
var css_248z$a = ".ycn-title {\n box-sizing: border-box;\n padding: 14px 10px 14px 20px;\n min-height: 64px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n.ycn-title_separator {\n border-bottom: 1px solid var(--g-color-line-generic);\n}\n.ycn-title__text {\n margin: 0;\n margin-right: 20px;\n}";
|
|
4256
4180
|
styleInject(css_248z$a);
|
|
4257
4181
|
|
|
4258
4182
|
const b$b = block('title');
|
|
@@ -4296,7 +4220,7 @@ function filterHotkeys(hotkeys, filter) {
|
|
|
4296
4220
|
return hotkeys;
|
|
4297
4221
|
}
|
|
4298
4222
|
|
|
4299
|
-
var css_248z$9 = ".ycn-hotkeys-panel {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n --hotkeys-panel-width: 400px;\n --hotkeys-panel-vertical-padding: 18px;\n --hotkeys-panel-horizontal-padding: 24px;\n}\n.ycn-hotkeys-panel__drawer-item {\n width: var(--hotkeys-panel-width);\n padding: var(--hotkeys-panel-vertical-padding) 0;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n}\n.ycn-hotkeys-panel__title {\n margin: 0 var(--hotkeys-panel-horizontal-padding) 16px var(--hotkeys-panel-horizontal-padding);\n}\n.ycn-hotkeys-panel__search {\n padding: 0 var(--hotkeys-panel-horizontal-padding);\n margin-bottom: 14px;\n}\n.ycn-hotkeys-panel__list {\n flex: 1;\n overflow-y: auto;\n}\n.ycn-hotkeys-panel__item {\n height: auto;\n padding: 8px var(--hotkeys-panel-horizontal-padding);\n}\n.ycn-hotkeys-panel__item.yc-list__item_active {\n background: inherit;\n}\n.ycn-hotkeys-panel__item-content {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n width: 100%;\n font-size: var(--
|
|
4223
|
+
var css_248z$9 = ".ycn-hotkeys-panel {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n --hotkeys-panel-width: 400px;\n --hotkeys-panel-vertical-padding: 18px;\n --hotkeys-panel-horizontal-padding: 24px;\n}\n.ycn-hotkeys-panel__drawer-item {\n width: var(--hotkeys-panel-width);\n padding: var(--hotkeys-panel-vertical-padding) 0;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n}\n.ycn-hotkeys-panel__title {\n margin: 0 var(--hotkeys-panel-horizontal-padding) 16px var(--hotkeys-panel-horizontal-padding);\n}\n.ycn-hotkeys-panel__search {\n padding: 0 var(--hotkeys-panel-horizontal-padding);\n margin-bottom: 14px;\n}\n.ycn-hotkeys-panel__list {\n flex: 1;\n overflow-y: auto;\n}\n.ycn-hotkeys-panel__item {\n height: auto;\n padding: 8px var(--hotkeys-panel-horizontal-padding);\n}\n.ycn-hotkeys-panel__item.yc-list__item_active {\n background: inherit;\n}\n.ycn-hotkeys-panel__item-content {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n width: 100%;\n font-size: var(--g-text-body-1-font-size);\n line-height: var(--g-text-body-1-line-height);\n color: var(--g-color-text-primary);\n}\n.ycn-hotkeys-panel__item-content_group {\n font-size: var(--g-text-body-2-font-size);\n font-weight: 500;\n line-height: var(--g-text-body-2-line-height);\n}\n.ycn-hotkeys-panel__hotkey {\n color: var(--g-color-text-complementary);\n}";
|
|
4300
4224
|
styleInject(css_248z$9);
|
|
4301
4225
|
|
|
4302
4226
|
const b$a = block('hotkeys-panel');
|
|
@@ -4920,7 +4844,7 @@ function SettingsSearch({ className, onChange, debounce = 200, inputRef, inputSi
|
|
|
4920
4844
|
React__default.createElement(TextInput, { controlRef: inputRef, hasClear: true, autoFocus: autoFocus, size: inputSize, placeholder: placeholder, onUpdate: handleUpdate })));
|
|
4921
4845
|
}
|
|
4922
4846
|
|
|
4923
|
-
var css_248z$8 = ".ycn-settings-menu__group-heading {\n font-weight: var(--
|
|
4847
|
+
var css_248z$8 = ".ycn-settings-menu__group-heading {\n font-weight: var(--g-text-accent-font-weight);\n display: inline-block;\n padding: 0 20px;\n margin-bottom: 12px;\n line-height: 18px;\n}\n.ycn-settings-menu__group + .ycn-settings-menu__group {\n margin-top: 24px;\n}\n.ycn-settings-menu__item {\n display: flex;\n align-items: center;\n height: 40px;\n padding: 0 20px;\n cursor: pointer;\n color: var(--g-color-text-primary);\n}\n.ycn-settings-menu__item-icon {\n color: var(--g-color-text-misc);\n margin-right: 5px;\n}\n.ycn-settings-menu__item:hover, .ycn-settings-menu__item_focused {\n background: var(--g-color-base-simple-hover);\n}\n.ycn-settings-menu__item_selected {\n background: var(--g-color-base-selection);\n}\n.ycn-settings-menu__item_selected:hover, .ycn-settings-menu__item_selected.ycn-settings-menu__item_focused {\n background: var(--g-color-base-selection-hover);\n}\n.ycn-settings-menu__item_disabled {\n color: var(--g-color-text-secondary);\n cursor: auto;\n}\n.ycn-settings-menu__item_disabled:hover {\n background: none;\n}\n.ycn-settings-menu__item_disabled .ycn-settings-menu__item-icon {\n color: var(--g-color-base-misc-heavy);\n}\n.ycn-settings-menu__item_badge {\n position: relative;\n}\n.ycn-settings-menu__item_badge::after {\n content: \"\";\n display: block;\n width: 6px;\n height: 6px;\n border-radius: 50%;\n background-color: var(--g-color-text-danger);\n position: absolute;\n right: 9px;\n top: calc(50% - 3px);\n}";
|
|
4924
4848
|
styleInject(css_248z$8);
|
|
4925
4849
|
|
|
4926
4850
|
const b$8 = block('settings-menu');
|
|
@@ -4994,7 +4918,7 @@ function focusNext(container, focused, direction) {
|
|
|
4994
4918
|
return (_a = elements[currentIndex].getAttribute('data-id')) !== null && _a !== void 0 ? _a : undefined;
|
|
4995
4919
|
}
|
|
4996
4920
|
|
|
4997
|
-
var css_248z$7 = ".ycn-settings-menu-mobile.yc-tabs_direction_horizontal {\n overflow-x: auto;\n flex-wrap: nowrap;\n overscroll-behavior-x: none;\n -ms-overflow-style: none;\n scrollbar-width: none;\n}\n.ycn-settings-menu-mobile.yc-tabs_direction_horizontal::-webkit-scrollbar {\n display: none;\n}\n.ycn-settings-menu-mobile__item_badge {\n position: relative;\n}\n.ycn-settings-menu-mobile__item_badge::after {\n content: \"\";\n display: block;\n width: 6px;\n height: 6px;\n border-radius: 50%;\n background-color: var(--
|
|
4921
|
+
var css_248z$7 = ".ycn-settings-menu-mobile.yc-tabs_direction_horizontal {\n overflow-x: auto;\n flex-wrap: nowrap;\n overscroll-behavior-x: none;\n -ms-overflow-style: none;\n scrollbar-width: none;\n}\n.ycn-settings-menu-mobile.yc-tabs_direction_horizontal::-webkit-scrollbar {\n display: none;\n}\n.ycn-settings-menu-mobile__item_badge {\n position: relative;\n}\n.ycn-settings-menu-mobile__item_badge::after {\n content: \"\";\n display: block;\n width: 6px;\n height: 6px;\n border-radius: 50%;\n background-color: var(--g-color-text-danger);\n position: absolute;\n right: -8px;\n top: 11px;\n}";
|
|
4998
4922
|
styleInject(css_248z$7);
|
|
4999
4923
|
|
|
5000
4924
|
const b$7 = block('settings-menu-mobile');
|
|
@@ -5146,7 +5070,7 @@ function getSettingsItemsFromChildren(children, filterRe) {
|
|
|
5146
5070
|
return { items, hidden };
|
|
5147
5071
|
}
|
|
5148
5072
|
|
|
5149
|
-
var css_248z$6 = ".ycn-settings {\n display: grid;\n grid-template-columns: 216px 1fr;\n width: 834px;\n height: 100%;\n}\n.ycn-settings_view_mobile {\n display: block;\n width: auto;\n height: calc(80vh - 56px);\n overflow-x: hidden;\n}\n@supports (height: 90dvh) {\n .ycn-settings_view_mobile {\n /* stylelint-disable-next-line */\n height: calc(90dvh - 56px);\n }\n}\n.ycn-settings_view_mobile.ycn-settings_loading {\n text-align: center;\n}\n.ycn-settings_view_mobile .ycn-settings__loader {\n margin-top: 20px;\n}\n.ycn-settings_view_mobile .ycn-settings__search {\n padding: 0 20px;\n margin: 4px 0 16px;\n}\n.ycn-settings_view_mobile .ycn-settings__page {\n overflow-y: visible;\n}\n.ycn-settings_view_mobile .ycn-settings__tabs .yc-tabs__item:first-child {\n margin-left: 20px;\n}\n.ycn-settings_view_mobile .ycn-settings__tabs .yc-tabs__item:last-child {\n margin-right: 20px;\n}\n.ycn-settings_view_mobile .ycn-settings__section-heading {\n font-size: var(--
|
|
5073
|
+
var css_248z$6 = ".ycn-settings {\n display: grid;\n grid-template-columns: 216px 1fr;\n width: 834px;\n height: 100%;\n}\n.ycn-settings_view_mobile {\n display: block;\n width: auto;\n height: calc(80vh - 56px);\n overflow-x: hidden;\n}\n@supports (height: 90dvh) {\n .ycn-settings_view_mobile {\n /* stylelint-disable-next-line */\n height: calc(90dvh - 56px);\n }\n}\n.ycn-settings_view_mobile.ycn-settings_loading {\n text-align: center;\n}\n.ycn-settings_view_mobile .ycn-settings__loader {\n margin-top: 20px;\n}\n.ycn-settings_view_mobile .ycn-settings__search {\n padding: 0 20px;\n margin: 4px 0 16px;\n}\n.ycn-settings_view_mobile .ycn-settings__page {\n overflow-y: visible;\n}\n.ycn-settings_view_mobile .ycn-settings__tabs .yc-tabs__item:first-child {\n margin-left: 20px;\n}\n.ycn-settings_view_mobile .ycn-settings__tabs .yc-tabs__item:last-child {\n margin-right: 20px;\n}\n.ycn-settings_view_mobile .ycn-settings__section-heading {\n font-size: var(--g-text-subheader-3-font-size);\n line-height: var(--g-text-subheader-3-line-height);\n font-weight: var(--g-text-subheader-font-weight);\n}\n.ycn-settings_view_mobile .ycn-settings__section-subheader {\n color: var(--g-color-text-secondary);\n}\n.ycn-settings_view_mobile .ycn-settings__section-heading + .ycn-settings-subheader {\n margin-top: 8px;\n}\n.ycn-settings_view_mobile .ycn-settings__section-item {\n margin-top: 0;\n}\n.ycn-settings_view_mobile .ycn-settings__section-heading + .ycn-settings__section-item, .ycn-settings_view_mobile .ycn-settings__section-subheader + .ycn-settings__section-item {\n margin-top: 30px;\n}\n.ycn-settings_view_mobile .ycn-settings__section-item + .ycn-settings__section-item {\n margin-top: 22px;\n}\n.ycn-settings_view_mobile .ycn-settings__item:not(.ycn-settings_view_mobile .ycn-settings__item_mode_row) {\n grid-template-columns: 1fr;\n gap: 8px;\n}\n.ycn-settings_view_mobile .ycn-settings__item-heading {\n font-size: var(--g-text-body-2-font-size);\n line-height: var(--g-text-body-2-line-height);\n font-weight: var(--g-text-body-font-weight);\n}\n.ycn-settings_view_mobile .ycn-settings__item-description {\n font-size: var(--g-text-body-1-font-size);\n line-height: var(--g-text-body-1-line-height);\n font-weight: var(--g-text-body-font-weight);\n}\n.ycn-settings_view_mobile .ycn-settings__item_mode_row {\n grid-template-columns: 1fr auto;\n}\n.ycn-settings_view_mobile .ycn-settings__item_mode_row .ycn-settings__item-heading {\n padding-right: 20px;\n}\n.ycn-settings_view_mobile .ycn-settings__item-content {\n width: 100%;\n}\n.ycn-settings_loading {\n grid-template-columns: auto;\n}\n.ycn-settings__loader {\n align-self: center;\n justify-self: center;\n}\n.ycn-settings__not-found {\n display: grid;\n align-items: center;\n justify-items: center;\n height: 100%;\n}\n.ycn-settings__menu {\n border-right: 1px solid var(--g-color-line-generic);\n}\n.ycn-settings__heading {\n font-size: var(--g-text-subheader-2-font-size);\n line-height: var(--g-text-subheader-2-line-height);\n font-weight: var(--g-text-subheader-font-weight);\n margin: 20px 20px 0;\n}\n.ycn-settings__search {\n margin: 0 20px 16px;\n}\n.ycn-settings__page {\n overflow-y: auto;\n}\n.ycn-settings__content {\n padding: 20px;\n}\n.ycn-settings__section-heading {\n font-size: var(--g-text-subheader-2-font-size);\n line-height: var(--g-text-subheader-2-line-height);\n font-weight: var(--g-text-subheader-font-weight);\n margin: 0;\n}\n.ycn-settings__section-item {\n margin-top: 24px;\n}\n.ycn-settings__section + .ycn-settings__section {\n margin-top: 32px;\n}\n.ycn-settings__item {\n display: grid;\n grid-template-columns: 216px 1fr;\n justify-items: start;\n}\n.ycn-settings__item_align_top {\n align-items: start;\n}\n.ycn-settings__item_align_center {\n align-items: center;\n}\n.ycn-settings__item-title_badge {\n position: relative;\n}\n.ycn-settings__item-title_badge::after {\n content: \"\";\n display: block;\n width: 6px;\n height: 6px;\n border-radius: 50%;\n background-color: var(--g-color-text-danger);\n position: absolute;\n right: -8px;\n top: 1px;\n}\n.ycn-settings__item-description {\n font-size: var(--g-text-caption-2-font-size);\n line-height: var(--g-text-caption-2-line-height);\n font-weight: var(--g-text-caption-font-weight);\n display: block;\n margin-top: 2px;\n padding-right: 20px;\n color: var(--g-color-text-secondary);\n}\n.ycn-settings__found {\n font-weight: var(--g-text-accent-font-weight);\n background: var(--g-color-base-selection);\n}";
|
|
5150
5074
|
styleInject(css_248z$6);
|
|
5151
5075
|
|
|
5152
5076
|
const b$6 = block('settings');
|
|
@@ -5306,7 +5230,7 @@ const useForwardRef = (ref, initialValue = null) => {
|
|
|
5306
5230
|
return targetRef;
|
|
5307
5231
|
};
|
|
5308
5232
|
|
|
5309
|
-
var css_248z$5 = ".ycn-mobile-header-burger {\n margin: 0;\n padding: 0;\n font-family: var(--
|
|
5233
|
+
var css_248z$5 = ".ycn-mobile-header-burger {\n margin: 0;\n padding: 0;\n font-family: var(--g-font-family-sans);\n font-size: inherit;\n font-weight: 400;\n color: inherit;\n background: none;\n border: none;\n outline: none;\n cursor: pointer;\n}\n.ycn-mobile-header-burger_opened .ycn-mobile-header-burger__icon:before, .ycn-mobile-header-burger_opened .ycn-mobile-header-burger__icon:after,\n.ycn-mobile-header-burger_opened .ycn-mobile-header-burger__icon .ycn-mobile-header-burger__icon-dash {\n left: 3px;\n}\n.ycn-mobile-header-burger_opened .ycn-mobile-header-burger__icon:before {\n transform: rotate(45deg);\n}\n.ycn-mobile-header-burger_opened .ycn-mobile-header-burger__icon:after {\n transform: rotate(-45deg);\n}\n.ycn-mobile-header-burger_opened .ycn-mobile-header-burger__icon .ycn-mobile-header-burger__icon-dash {\n opacity: 0;\n}\n.ycn-mobile-header-burger__icon {\n display: flex;\n align-content: center;\n justify-content: center;\n height: var(--mobile-header-icon-size);\n width: var(--mobile-header-icon-size);\n position: relative;\n}\n.ycn-mobile-header-burger__icon:after, .ycn-mobile-header-burger__icon:before {\n content: \"\";\n transform-origin: left center;\n transition: transform 0.2s, left 0.2s;\n}\n.ycn-mobile-header-burger__icon:before {\n top: 2px;\n}\n.ycn-mobile-header-burger__icon:after {\n bottom: 2px;\n}\n.ycn-mobile-header-burger__icon:before, .ycn-mobile-header-burger__icon:after,\n.ycn-mobile-header-burger__icon .ycn-mobile-header-burger__icon-dash {\n background-color: var(--g-color-text-primary);\n border-radius: 1px;\n height: 2px;\n left: 0;\n position: absolute;\n width: 100%;\n}\n.ycn-mobile-header-burger__icon .ycn-mobile-header-burger__icon-dash {\n margin-top: -1px;\n top: 50%;\n transition: opacity 0.2s;\n}";
|
|
5310
5234
|
styleInject(css_248z$5);
|
|
5311
5235
|
|
|
5312
5236
|
const b$5 = block('mobile-header-burger');
|
|
@@ -5315,7 +5239,7 @@ const Burger = React__default.memo(({ opened, className, onClick }) => (React__d
|
|
|
5315
5239
|
React__default.createElement("span", { className: b$5('icon-dash') })))));
|
|
5316
5240
|
Burger.displayName = 'Burger';
|
|
5317
5241
|
|
|
5318
|
-
var css_248z$4 = ".ycn-mobile-header-logo {\n display: flex;\n align-items: center;\n overflow: hidden;\n gap: 8px;\n}\n.ycn-mobile-header-logo:is(a), .ycn-mobile-header-logo:is(a):hover, .ycn-mobile-header-logo:is(a):active, .ycn-mobile-header-logo:is(a):visited, .ycn-mobile-header-logo:is(a):focus {\n text-decoration: none;\n outline: none;\n color: var(--
|
|
5242
|
+
var css_248z$4 = ".ycn-mobile-header-logo {\n display: flex;\n align-items: center;\n overflow: hidden;\n gap: 8px;\n}\n.ycn-mobile-header-logo:is(a), .ycn-mobile-header-logo:is(a):hover, .ycn-mobile-header-logo:is(a):active, .ycn-mobile-header-logo:is(a):visited, .ycn-mobile-header-logo:is(a):focus {\n text-decoration: none;\n outline: none;\n color: var(--g-color-text-primary);\n}\n.ycn-mobile-header-logo__icon {\n flex-shrink: 0;\n}\n.ycn-mobile-header-logo__title {\n font-size: var(--g-text-header-1-font-size);\n line-height: var(--g-text-header-1-line-height);\n font-weight: var(--g-text-header-font-weight);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}";
|
|
5319
5243
|
styleInject(css_248z$4);
|
|
5320
5244
|
|
|
5321
5245
|
const b$4 = block('mobile-header-logo');
|
|
@@ -5372,7 +5296,7 @@ const getSelectedItemIndex = (items) => {
|
|
|
5372
5296
|
return index === -1 ? undefined : index;
|
|
5373
5297
|
};
|
|
5374
5298
|
|
|
5375
|
-
var css_248z$3 = ".ycn-burger-composite-bar {\n overflow-y: auto;\n}\n.ycn-burger-composite-bar__item {\n display: flex;\n height: 100%;\n align-items: center;\n flex-grow: 1;\n box-sizing: border-box;\n padding: 4px 22px 4px 12px;\n overflow: hidden;\n}\n.ycn-burger-composite-bar__item-icon-place {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n width: 40px;\n margin-right: 8px;\n}\n.ycn-burger-composite-bar .ycn-burger-composite-bar__item-icon {\n color: var(--
|
|
5299
|
+
var css_248z$3 = ".ycn-burger-composite-bar {\n overflow-y: auto;\n}\n.ycn-burger-composite-bar__item {\n display: flex;\n height: 100%;\n align-items: center;\n flex-grow: 1;\n box-sizing: border-box;\n padding: 4px 22px 4px 12px;\n overflow: hidden;\n}\n.ycn-burger-composite-bar__item-icon-place {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n width: 40px;\n margin-right: 8px;\n}\n.ycn-burger-composite-bar .ycn-burger-composite-bar__item-icon {\n color: var(--g-color-text-misc);\n}\n.ycn-burger-composite-bar__item-title {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n font-size: var(--g-text-body-2-font-size);\n line-height: var(--g-text-body-2-line-height);\n font-weight: var(--g-text-body-font-weight);\n}\n.ycn-burger-composite-bar__link {\n display: flex;\n flex-grow: 1;\n height: 100%;\n align-items: center;\n}\n.ycn-burger-composite-bar__link, .ycn-burger-composite-bar__link:hover, .ycn-burger-composite-bar__link:active, .ycn-burger-composite-bar__link:visited, .ycn-burger-composite-bar__link:focus {\n text-decoration: none;\n outline: none;\n color: inherit;\n}\n.ycn-burger-composite-bar__menu-divider {\n margin: 0;\n flex-grow: 1;\n border-top: 1px solid var(--g-color-line-generic);\n}\n.ycn-burger-composite-bar__root-menu-item.yc-list__item_selected {\n background-color: var(--g-color-base-selection);\n}\n.ycn-burger-composite-bar__root-menu-item:not(.yc-list__item_selected).yc-list__item_active {\n background: none;\n}";
|
|
5376
5300
|
styleInject(css_248z$3);
|
|
5377
5301
|
|
|
5378
5302
|
const b$3 = block('burger-composite-bar');
|
|
@@ -5403,7 +5327,7 @@ const BurgerCompositeBar = React__default.memo(({ items, onItemClick }) => {
|
|
|
5403
5327
|
});
|
|
5404
5328
|
BurgerCompositeBar.displayName = 'BurgerCompositeBar';
|
|
5405
5329
|
|
|
5406
|
-
var css_248z$2 = ".ycn-mobile-header-burger-menu {\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n.ycn-mobile-header-burger-menu__footer {\n display: flex;\n border-top: 1px solid var(--
|
|
5330
|
+
var css_248z$2 = ".ycn-mobile-header-burger-menu {\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n.ycn-mobile-header-burger-menu__footer {\n display: flex;\n border-top: 1px solid var(--g-color-base-generic);\n margin-top: auto;\n}";
|
|
5407
5331
|
styleInject(css_248z$2);
|
|
5408
5332
|
|
|
5409
5333
|
const b$2 = block('mobile-header-burger-menu');
|
|
@@ -5416,7 +5340,7 @@ const BurgerMenu = React__default.memo(({ items = [], renderFooter, modalItem, c
|
|
|
5416
5340
|
});
|
|
5417
5341
|
BurgerMenu.displayName = 'BurgerMenu';
|
|
5418
5342
|
|
|
5419
|
-
var css_248z$1 = ".ycn-mobile-header {\n --mobile-header-min-heigth: 50px;\n --mobile-header-icon-size: 20px;\n background-color: var(--
|
|
5343
|
+
var css_248z$1 = ".ycn-mobile-header {\n --mobile-header-min-heigth: 50px;\n --mobile-header-icon-size: 20px;\n background-color: var(--g-color-base-background);\n}\n.ycn-mobile-header__header {\n background-color: var(--g-color-base-background);\n border-bottom: 1px solid var(--g-color-line-generic);\n position: sticky;\n top: 0;\n padding: 0 10px;\n box-sizing: border-box;\n display: flex;\n justify-content: space-between;\n align-items: center;\n z-index: 100;\n}\n.ycn-mobile-header__burger {\n padding: 12px;\n}\n.ycn-mobile-header__burger-menu, .ycn-mobile-header__panel-item {\n background-color: var(--g-color-base-background);\n width: 320px;\n max-width: 90vw;\n max-height: 100%;\n}\n.ycn-mobile-header__user-menu {\n overflow-y: auto;\n}\n.ycn-mobile-header__panels {\n z-index: 98;\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n top: var(--mobile-header-min-heigth);\n overflow: hidden;\n}\n.ycn-mobile-header__content {\n overflow: auto;\n}";
|
|
5420
5344
|
styleInject(css_248z$1);
|
|
5421
5345
|
|
|
5422
5346
|
const b$1 = block('mobile-header');
|
|
@@ -5518,7 +5442,7 @@ const MobileHeader = React__default.forwardRef(({ logo, burgerMenu, panelItems =
|
|
|
5518
5442
|
});
|
|
5519
5443
|
MobileHeader.displayName = 'MobileHeader';
|
|
5520
5444
|
|
|
5521
|
-
var css_248z = ".ycn-mobile-header-footer-item {\n flex-grow: 1;\n position: relative;\n}\n.ycn-mobile-header-footer-item__button {\n margin: 0;\n padding: 0;\n font-family: var(--
|
|
5445
|
+
var css_248z = ".ycn-mobile-header-footer-item {\n flex-grow: 1;\n position: relative;\n}\n.ycn-mobile-header-footer-item__button {\n margin: 0;\n padding: 0;\n font-family: var(--g-font-family-sans);\n font-size: inherit;\n font-weight: 400;\n color: inherit;\n background: none;\n border: none;\n outline: none;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 13px 10px;\n width: 100%;\n box-sizing: border-box;\n}\n.ycn-mobile-header-footer-item .ycn-mobile-header-footer-item__icon {\n color: var(--g-color-text-misc);\n}\n.ycn-mobile-header-footer-item + .ycn-mobile-header-footer-item::before {\n content: \"\";\n border-left: 1px solid var(--g-color-base-generic);\n position: absolute;\n top: 8px;\n bottom: 8px;\n left: 0;\n}\n.ycn-mobile-header-footer-item:empty {\n display: none;\n}";
|
|
5522
5446
|
styleInject(css_248z);
|
|
5523
5447
|
|
|
5524
5448
|
const b = block('mobile-header-footer-item');
|
|
@@ -5537,5 +5461,21 @@ const FooterItem = ({ icon, iconSize = MOBILE_HEADER_ICON_SIZE, className, modal
|
|
|
5537
5461
|
React__default.createElement(Sheet, { id: modalItem.id, title: modalItem.title, visible: modalItem.visible, className: b('modal', modalItem.className), contentClassName: b('modal-content', modalItem.contentClassName), allowHideOnContentScroll: modalItem.modalAllowHideOnContentScroll, onClose: modalItem.onClose }, (_a = modalItem.renderContent) === null || _a === void 0 ? void 0 : _a.call(modalItem))));
|
|
5538
5462
|
};
|
|
5539
5463
|
|
|
5540
|
-
|
|
5464
|
+
var Lang;
|
|
5465
|
+
(function (Lang) {
|
|
5466
|
+
Lang["Ru"] = "ru";
|
|
5467
|
+
Lang["En"] = "en";
|
|
5468
|
+
})(Lang || (Lang = {}));
|
|
5469
|
+
let subs = [];
|
|
5470
|
+
const config = {
|
|
5471
|
+
lang: Lang.En,
|
|
5472
|
+
};
|
|
5473
|
+
const configure = (newConfig) => {
|
|
5474
|
+
Object.assign(config, newConfig);
|
|
5475
|
+
subs.forEach((sub) => {
|
|
5476
|
+
sub(config);
|
|
5477
|
+
});
|
|
5478
|
+
};
|
|
5479
|
+
|
|
5480
|
+
export { PublicActionBar as ActionBar, AsideHeader, AsideHeaderContextProvider, Dict, Drawer, DrawerItem, FooterItem$1 as FooterItem, HotkeysPanel, Lang, MobileHeader, MobileHeaderDict, FooterItem as MobileHeaderFooterItem, Settings, Title, configure, useAsideHeaderContext };
|
|
5541
5481
|
//# sourceMappingURL=index.js.map
|