@salutejs/plasma-new-hope 0.174.0-canary.1497.11463811587.0 → 0.174.0-canary.1503.11466452273.0
Sign up to get free protection for your applications and to get access to all the features.
- package/cjs/components/Combobox/ComboboxOld/Combobox.css +14 -28
- package/cjs/components/Combobox/ComboboxOld/Combobox.js +1 -2
- package/cjs/components/Combobox/ComboboxOld/Combobox.js.map +1 -1
- package/cjs/components/Combobox/ComboboxOld/ui/ComboboxDivider/ComboboxDivider.css +18 -32
- package/cjs/components/Combobox/ComboboxOld/ui/ComboboxDivider/ComboboxDivider.js +2 -3
- package/cjs/components/Combobox/ComboboxOld/ui/ComboboxDivider/ComboboxDivider.js.map +1 -1
- package/cjs/components/Combobox/ComboboxOld/ui/ComboboxFooter/ComboboxFooter.css +18 -32
- package/cjs/components/Combobox/ComboboxOld/ui/ComboboxFooter/ComboboxFooter.js +2 -3
- package/cjs/components/Combobox/ComboboxOld/ui/ComboboxFooter/ComboboxFooter.js.map +1 -1
- package/cjs/components/Combobox/ComboboxOld/ui/ComboboxGroup/ComboboxGroup.css +18 -32
- package/cjs/components/Combobox/ComboboxOld/ui/ComboboxGroup/ComboboxGroup.js +2 -3
- package/cjs/components/Combobox/ComboboxOld/ui/ComboboxGroup/ComboboxGroup.js.map +1 -1
- package/cjs/components/Combobox/ComboboxOld/ui/ComboboxHeader/ComboboxHeader.css +18 -32
- package/cjs/components/Combobox/ComboboxOld/ui/ComboboxHeader/ComboboxHeader.js +2 -3
- package/cjs/components/Combobox/ComboboxOld/ui/ComboboxHeader/ComboboxHeader.js.map +1 -1
- package/cjs/components/Dropdown/Dropdown.css +16 -30
- package/cjs/components/Dropdown/Dropdown.js +45 -67
- package/cjs/components/Dropdown/Dropdown.js.map +1 -1
- package/cjs/components/Dropdown/Dropdown.styles.js +27 -14
- package/cjs/components/Dropdown/Dropdown.styles.js.map +1 -1
- package/cjs/components/Dropdown/Dropdown.styles_1tihqkp.css +3 -0
- package/cjs/components/Dropdown/Dropdown.tokens.js +1 -24
- package/cjs/components/Dropdown/Dropdown.tokens.js.map +1 -1
- package/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js +52 -17
- package/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js.map +1 -1
- package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.css +6 -46
- package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.js +18 -29
- package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.js.map +1 -1
- package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js +31 -27
- package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js.map +1 -1
- package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.styles_blclup.css +6 -0
- package/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles.js +1 -1
- package/cjs/components/Dropdown/ui/DropdownItemOld/{DropdownItem.styles_1lyg81y.css → DropdownItem.styles_12e50g5.css} +1 -1
- package/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.css +4 -4
- package/cjs/components/Dropdown/utils/index.js.map +1 -1
- package/cjs/components/Notification/Notification.js +2 -2
- package/cjs/components/Notification/Notification.js.map +1 -1
- package/cjs/components/Notification/Notification.types.js.map +1 -1
- package/cjs/components/Notification/NotificationsPortal.js +4 -2
- package/cjs/components/Notification/NotificationsPortal.js.map +1 -1
- package/cjs/components/Notification/NotificationsProvider.js +3 -1
- package/cjs/components/Notification/NotificationsProvider.js.map +1 -1
- package/cjs/components/Select/utils/getCorrectHeight.js.map +1 -1
- package/cjs/hooks/useOutsideClick.js +1 -1
- package/cjs/hooks/useOutsideClick.js.map +1 -1
- package/cjs/index.css +14 -12
- package/cjs/index.js +1 -1
- package/emotion/cjs/components/Dropdown/Dropdown.js +37 -58
- package/emotion/cjs/components/Dropdown/Dropdown.styles.js +25 -9
- package/emotion/cjs/components/Dropdown/Dropdown.tokens.js +2 -36
- package/emotion/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js +51 -17
- package/emotion/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.js +18 -29
- package/emotion/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js +41 -21
- package/emotion/cjs/components/Dropdown/utils/index.js +1 -23
- package/emotion/cjs/components/Notification/Notification.js +2 -2
- package/emotion/cjs/components/Notification/Notification.template-doc.mdx +15 -7
- package/emotion/cjs/components/Notification/NotificationsPortal.js +5 -3
- package/emotion/cjs/components/Notification/NotificationsProvider.js +3 -1
- package/emotion/cjs/components/Notification/index.js +4 -4
- package/emotion/cjs/examples/plasma_b2c/components/Dropdown/Dropdown.config.js +5 -5
- package/emotion/cjs/examples/plasma_b2c/components/Dropdown/Dropdown.stories.tsx +5 -6
- package/emotion/cjs/examples/plasma_b2c/components/Notification/Notification.js +5 -3
- package/emotion/cjs/examples/plasma_b2c/components/Notification/Notification.stories.tsx +25 -4
- package/emotion/cjs/examples/plasma_web/components/Dropdown/Dropdown.config.js +5 -5
- package/emotion/cjs/examples/plasma_web/components/Dropdown/Dropdown.stories.tsx +5 -6
- package/emotion/cjs/examples/plasma_web/components/Notification/Notification.js +5 -3
- package/emotion/cjs/examples/plasma_web/components/Notification/Notification.stories.tsx +25 -4
- package/emotion/cjs/hooks/useOutsideClick.js +1 -1
- package/emotion/es/components/Dropdown/Dropdown.js +40 -60
- package/emotion/es/components/Dropdown/Dropdown.styles.js +25 -9
- package/emotion/es/components/Dropdown/Dropdown.tokens.js +1 -35
- package/emotion/es/components/Dropdown/ui/DropdownInner/DropdownInner.js +52 -18
- package/emotion/es/components/Dropdown/ui/DropdownItem/DropdownItem.js +20 -31
- package/emotion/es/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js +42 -22
- package/emotion/es/components/Dropdown/utils/index.js +1 -4
- package/emotion/es/components/Notification/Notification.js +1 -1
- package/emotion/es/components/Notification/Notification.template-doc.mdx +15 -7
- package/emotion/es/components/Notification/NotificationsPortal.js +5 -3
- package/emotion/es/components/Notification/NotificationsProvider.js +3 -1
- package/emotion/es/components/Notification/index.js +1 -1
- package/emotion/es/examples/plasma_b2c/components/Dropdown/Dropdown.config.js +6 -6
- package/emotion/es/examples/plasma_b2c/components/Dropdown/Dropdown.stories.tsx +5 -6
- package/emotion/es/examples/plasma_b2c/components/Notification/Notification.js +6 -4
- package/emotion/es/examples/plasma_b2c/components/Notification/Notification.stories.tsx +25 -4
- package/emotion/es/examples/plasma_web/components/Dropdown/Dropdown.config.js +6 -6
- package/emotion/es/examples/plasma_web/components/Dropdown/Dropdown.stories.tsx +5 -6
- package/emotion/es/examples/plasma_web/components/Notification/Notification.js +6 -4
- package/emotion/es/examples/plasma_web/components/Notification/Notification.stories.tsx +25 -4
- package/emotion/es/hooks/useOutsideClick.js +1 -1
- package/es/components/Combobox/ComboboxOld/Combobox.css +14 -28
- package/es/components/Combobox/ComboboxOld/Combobox.js +1 -2
- package/es/components/Combobox/ComboboxOld/Combobox.js.map +1 -1
- package/es/components/Combobox/ComboboxOld/ui/ComboboxDivider/ComboboxDivider.css +18 -32
- package/es/components/Combobox/ComboboxOld/ui/ComboboxDivider/ComboboxDivider.js +2 -3
- package/es/components/Combobox/ComboboxOld/ui/ComboboxDivider/ComboboxDivider.js.map +1 -1
- package/es/components/Combobox/ComboboxOld/ui/ComboboxFooter/ComboboxFooter.css +18 -32
- package/es/components/Combobox/ComboboxOld/ui/ComboboxFooter/ComboboxFooter.js +2 -3
- package/es/components/Combobox/ComboboxOld/ui/ComboboxFooter/ComboboxFooter.js.map +1 -1
- package/es/components/Combobox/ComboboxOld/ui/ComboboxGroup/ComboboxGroup.css +18 -32
- package/es/components/Combobox/ComboboxOld/ui/ComboboxGroup/ComboboxGroup.js +2 -3
- package/es/components/Combobox/ComboboxOld/ui/ComboboxGroup/ComboboxGroup.js.map +1 -1
- package/es/components/Combobox/ComboboxOld/ui/ComboboxHeader/ComboboxHeader.css +18 -32
- package/es/components/Combobox/ComboboxOld/ui/ComboboxHeader/ComboboxHeader.js +2 -3
- package/es/components/Combobox/ComboboxOld/ui/ComboboxHeader/ComboboxHeader.js.map +1 -1
- package/es/components/Dropdown/Dropdown.css +16 -30
- package/es/components/Dropdown/Dropdown.js +47 -68
- package/es/components/Dropdown/Dropdown.js.map +1 -1
- package/es/components/Dropdown/Dropdown.styles.js +27 -15
- package/es/components/Dropdown/Dropdown.styles.js.map +1 -1
- package/es/components/Dropdown/Dropdown.styles_1tihqkp.css +3 -0
- package/es/components/Dropdown/Dropdown.tokens.js +1 -24
- package/es/components/Dropdown/Dropdown.tokens.js.map +1 -1
- package/es/components/Dropdown/ui/DropdownInner/DropdownInner.js +53 -18
- package/es/components/Dropdown/ui/DropdownInner/DropdownInner.js.map +1 -1
- package/es/components/Dropdown/ui/DropdownItem/DropdownItem.css +6 -46
- package/es/components/Dropdown/ui/DropdownItem/DropdownItem.js +20 -31
- package/es/components/Dropdown/ui/DropdownItem/DropdownItem.js.map +1 -1
- package/es/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js +29 -26
- package/es/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js.map +1 -1
- package/es/components/Dropdown/ui/DropdownItem/DropdownItem.styles_blclup.css +6 -0
- package/es/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles.js +1 -1
- package/es/components/Dropdown/ui/DropdownItemOld/{DropdownItem.styles_1lyg81y.css → DropdownItem.styles_12e50g5.css} +1 -1
- package/es/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.css +4 -4
- package/es/components/Dropdown/utils/index.js.map +1 -1
- package/es/components/Notification/Notification.js +2 -2
- package/es/components/Notification/Notification.js.map +1 -1
- package/es/components/Notification/Notification.types.js.map +1 -1
- package/es/components/Notification/NotificationsPortal.js +4 -2
- package/es/components/Notification/NotificationsPortal.js.map +1 -1
- package/es/components/Notification/NotificationsProvider.js +3 -1
- package/es/components/Notification/NotificationsProvider.js.map +1 -1
- package/es/components/Select/utils/getCorrectHeight.js.map +1 -1
- package/es/hooks/useOutsideClick.js +1 -1
- package/es/hooks/useOutsideClick.js.map +1 -1
- package/es/index.css +14 -12
- package/es/index.js +1 -1
- package/package.json +2 -2
- package/styled-components/cjs/components/Dropdown/Dropdown.js +37 -58
- package/styled-components/cjs/components/Dropdown/Dropdown.styles.js +15 -9
- package/styled-components/cjs/components/Dropdown/Dropdown.tokens.js +2 -36
- package/styled-components/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js +51 -17
- package/styled-components/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.js +18 -29
- package/styled-components/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js +19 -17
- package/styled-components/cjs/components/Dropdown/utils/index.js +1 -23
- package/styled-components/cjs/components/Notification/Notification.js +2 -2
- package/styled-components/cjs/components/Notification/Notification.template-doc.mdx +15 -7
- package/styled-components/cjs/components/Notification/NotificationsPortal.js +4 -2
- package/styled-components/cjs/components/Notification/NotificationsProvider.js +3 -1
- package/styled-components/cjs/components/Notification/index.js +4 -4
- package/styled-components/cjs/examples/plasma_b2c/components/Dropdown/Dropdown.config.js +5 -5
- package/styled-components/cjs/examples/plasma_b2c/components/Dropdown/Dropdown.stories.tsx +5 -6
- package/styled-components/cjs/examples/plasma_b2c/components/Notification/Notification.js +5 -3
- package/styled-components/cjs/examples/plasma_b2c/components/Notification/Notification.stories.tsx +25 -4
- package/styled-components/cjs/examples/plasma_web/components/Dropdown/Dropdown.config.js +5 -5
- package/styled-components/cjs/examples/plasma_web/components/Dropdown/Dropdown.stories.tsx +5 -6
- package/styled-components/cjs/examples/plasma_web/components/Notification/Notification.js +5 -3
- package/styled-components/cjs/examples/plasma_web/components/Notification/Notification.stories.tsx +25 -4
- package/styled-components/cjs/hooks/useOutsideClick.js +1 -1
- package/styled-components/es/components/Dropdown/Dropdown.js +40 -60
- package/styled-components/es/components/Dropdown/Dropdown.styles.js +15 -9
- package/styled-components/es/components/Dropdown/Dropdown.tokens.js +1 -35
- package/styled-components/es/components/Dropdown/ui/DropdownInner/DropdownInner.js +52 -18
- package/styled-components/es/components/Dropdown/ui/DropdownItem/DropdownItem.js +20 -31
- package/styled-components/es/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js +20 -18
- package/styled-components/es/components/Dropdown/utils/index.js +1 -4
- package/styled-components/es/components/Notification/Notification.js +1 -1
- package/styled-components/es/components/Notification/Notification.template-doc.mdx +15 -7
- package/styled-components/es/components/Notification/NotificationsPortal.js +4 -2
- package/styled-components/es/components/Notification/NotificationsProvider.js +3 -1
- package/styled-components/es/components/Notification/index.js +1 -1
- package/styled-components/es/examples/plasma_b2c/components/Dropdown/Dropdown.config.js +6 -6
- package/styled-components/es/examples/plasma_b2c/components/Dropdown/Dropdown.stories.tsx +5 -6
- package/styled-components/es/examples/plasma_b2c/components/Notification/Notification.js +6 -4
- package/styled-components/es/examples/plasma_b2c/components/Notification/Notification.stories.tsx +25 -4
- package/styled-components/es/examples/plasma_web/components/Dropdown/Dropdown.config.js +6 -6
- package/styled-components/es/examples/plasma_web/components/Dropdown/Dropdown.stories.tsx +5 -6
- package/styled-components/es/examples/plasma_web/components/Notification/Notification.js +6 -4
- package/styled-components/es/examples/plasma_web/components/Notification/Notification.stories.tsx +25 -4
- package/styled-components/es/hooks/useOutsideClick.js +1 -1
- package/types/components/Combobox/ComboboxOld/Combobox.types.d.ts +1 -2
- package/types/components/Combobox/ComboboxOld/Combobox.types.d.ts.map +1 -1
- package/types/components/Dropdown/Dropdown.d.ts +1 -2
- package/types/components/Dropdown/Dropdown.d.ts.map +1 -1
- package/types/components/Dropdown/Dropdown.styles.d.ts +6 -1
- package/types/components/Dropdown/Dropdown.styles.d.ts.map +1 -1
- package/types/components/Dropdown/Dropdown.tokens.d.ts +0 -25
- package/types/components/Dropdown/Dropdown.tokens.d.ts.map +1 -1
- package/types/components/Dropdown/Dropdown.types.d.ts +4 -30
- package/types/components/Dropdown/Dropdown.types.d.ts.map +1 -1
- package/types/components/Dropdown/index.d.ts +1 -1
- package/types/components/Dropdown/index.d.ts.map +1 -1
- package/types/components/Dropdown/ui/DropdownInner/DropdownInner.d.ts.map +1 -1
- package/types/components/Dropdown/ui/DropdownInner/DropdownInner.type.d.ts +12 -1
- package/types/components/Dropdown/ui/DropdownInner/DropdownInner.type.d.ts.map +1 -1
- package/types/components/Dropdown/ui/DropdownItem/DropdownItem.d.ts.map +1 -1
- package/types/components/Dropdown/ui/DropdownItem/DropdownItem.styles.d.ts +3 -32
- package/types/components/Dropdown/ui/DropdownItem/DropdownItem.styles.d.ts.map +1 -1
- package/types/components/Dropdown/ui/DropdownItem/DropdownItem.type.d.ts +14 -1
- package/types/components/Dropdown/ui/DropdownItem/DropdownItem.type.d.ts.map +1 -1
- package/types/components/Dropdown/utils/index.d.ts +0 -3
- package/types/components/Dropdown/utils/index.d.ts.map +1 -1
- package/types/components/Notification/Notification.d.ts +3 -3
- package/types/components/Notification/Notification.d.ts.map +1 -1
- package/types/components/Notification/Notification.types.d.ts +11 -5
- package/types/components/Notification/Notification.types.d.ts.map +1 -1
- package/types/components/Notification/NotificationsProvider.d.ts +4 -3
- package/types/components/Notification/NotificationsProvider.d.ts.map +1 -1
- package/types/components/Notification/index.d.ts +2 -2
- package/types/components/Notification/index.d.ts.map +1 -1
- package/types/components/Select/utils/getCorrectHeight.d.ts +2 -2
- package/types/components/Select/utils/getCorrectHeight.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Dropdown/Dropdown.config.d.ts +3 -3
- package/types/examples/plasma_b2c/components/Dropdown/Dropdown.config.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Dropdown/Dropdown.d.ts +4 -4
- package/types/examples/plasma_b2c/components/Dropdown/Dropdown.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Notification/Notification.d.ts +4 -2
- package/types/examples/plasma_b2c/components/Notification/Notification.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Dropdown/Dropdown.config.d.ts +3 -3
- package/types/examples/plasma_web/components/Dropdown/Dropdown.config.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Dropdown/Dropdown.d.ts +4 -4
- package/types/examples/plasma_web/components/Dropdown/Dropdown.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Notification/Notification.d.ts +4 -13
- package/types/examples/plasma_web/components/Notification/Notification.d.ts.map +1 -1
- package/types/hooks/useOutsideClick.d.ts +1 -1
- package/types/hooks/useOutsideClick.d.ts.map +1 -1
- package/cjs/components/Dropdown/Dropdown.styles_18f0qpm.css +0 -2
- package/cjs/components/Dropdown/FloatingPopover.js +0 -104
- package/cjs/components/Dropdown/FloatingPopover.js.map +0 -1
- package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.styles_17va0nk.css +0 -5
- package/cjs/components/Dropdown/utils/getItemByFocused.js +0 -13
- package/cjs/components/Dropdown/utils/getItemByFocused.js.map +0 -1
- package/cjs/components/Dropdown/utils/getItemId.js +0 -10
- package/cjs/components/Dropdown/utils/getItemId.js.map +0 -1
- package/cjs/components/Dropdown/utils/getPlacement.js +0 -16
- package/cjs/components/Dropdown/utils/getPlacement.js.map +0 -1
- package/emotion/cjs/components/Dropdown/FloatingPopover.js +0 -109
- package/emotion/cjs/components/Dropdown/utils/getItemByFocused.js +0 -12
- package/emotion/cjs/components/Dropdown/utils/getItemId.js +0 -9
- package/emotion/cjs/components/Dropdown/utils/getPlacement.js +0 -15
- package/emotion/es/components/Dropdown/FloatingPopover.js +0 -102
- package/emotion/es/components/Dropdown/utils/getItemByFocused.js +0 -6
- package/emotion/es/components/Dropdown/utils/getItemId.js +0 -3
- package/emotion/es/components/Dropdown/utils/getPlacement.js +0 -9
- package/es/components/Dropdown/Dropdown.styles_18f0qpm.css +0 -2
- package/es/components/Dropdown/FloatingPopover.js +0 -100
- package/es/components/Dropdown/FloatingPopover.js.map +0 -1
- package/es/components/Dropdown/ui/DropdownItem/DropdownItem.styles_17va0nk.css +0 -5
- package/es/components/Dropdown/utils/getItemByFocused.js +0 -9
- package/es/components/Dropdown/utils/getItemByFocused.js.map +0 -1
- package/es/components/Dropdown/utils/getItemId.js +0 -6
- package/es/components/Dropdown/utils/getItemId.js.map +0 -1
- package/es/components/Dropdown/utils/getPlacement.js +0 -12
- package/es/components/Dropdown/utils/getPlacement.js.map +0 -1
- package/styled-components/cjs/components/Dropdown/FloatingPopover.js +0 -109
- package/styled-components/cjs/components/Dropdown/utils/getItemByFocused.js +0 -12
- package/styled-components/cjs/components/Dropdown/utils/getItemId.js +0 -9
- package/styled-components/cjs/components/Dropdown/utils/getPlacement.js +0 -15
- package/styled-components/es/components/Dropdown/FloatingPopover.js +0 -102
- package/styled-components/es/components/Dropdown/utils/getItemByFocused.js +0 -6
- package/styled-components/es/components/Dropdown/utils/getItemId.js +0 -3
- package/styled-components/es/components/Dropdown/utils/getPlacement.js +0 -9
- package/types/components/Dropdown/FloatingPopover.d.ts +0 -5
- package/types/components/Dropdown/FloatingPopover.d.ts.map +0 -1
- package/types/components/Dropdown/utils/getItemByFocused.d.ts +0 -4
- package/types/components/Dropdown/utils/getItemByFocused.d.ts.map +0 -1
- package/types/components/Dropdown/utils/getItemId.d.ts +0 -2
- package/types/components/Dropdown/utils/getItemId.d.ts.map +0 -1
- package/types/components/Dropdown/utils/getPlacement.d.ts +0 -3
- package/types/components/Dropdown/utils/getPlacement.d.ts.map +0 -1
@@ -7,19 +7,28 @@ var Dropdown_tokens = require('../../Dropdown.tokens.js');
|
|
7
7
|
var index = require('../../../../utils/index.js');
|
8
8
|
require('@linaria/react');
|
9
9
|
var IconDisclosureRight = require('../../../_Icon/Icons/IconDisclosureRight.js');
|
10
|
-
var Dropdown = require('../../Dropdown.js');
|
11
|
-
var getItemId = require('../../utils/getItemId.js');
|
12
10
|
var DropdownItem_styles = require('./DropdownItem.styles.js');
|
13
11
|
|
14
12
|
var DropdownItem = function DropdownItem(_ref) {
|
15
13
|
var item = _ref.item,
|
16
14
|
path = _ref.path,
|
15
|
+
focusedPath = _ref.focusedPath,
|
17
16
|
currentLevel = _ref.currentLevel,
|
18
17
|
index$1 = _ref.index,
|
18
|
+
itemRole = _ref.itemRole,
|
19
|
+
closeOnSelect = _ref.closeOnSelect,
|
20
|
+
handleGlobalToggle = _ref.handleGlobalToggle,
|
21
|
+
onHover = _ref.onHover,
|
22
|
+
onItemSelect = _ref.onItemSelect,
|
23
|
+
onItemClick = _ref.onItemClick,
|
19
24
|
ariaControls = _ref.ariaControls,
|
20
25
|
ariaExpanded = _ref.ariaExpanded,
|
26
|
+
ariaHasPopup = _ref.ariaHasPopup,
|
21
27
|
ariaLevel = _ref.ariaLevel,
|
22
|
-
ariaLabel = _ref.ariaLabel
|
28
|
+
ariaLabel = _ref.ariaLabel,
|
29
|
+
variant = _ref.variant,
|
30
|
+
hasArrow = _ref.hasArrow,
|
31
|
+
size = _ref.size;
|
23
32
|
var value = item.value,
|
24
33
|
label = item.label,
|
25
34
|
disabled = item.disabled,
|
@@ -29,19 +38,6 @@ var DropdownItem = function DropdownItem(_ref) {
|
|
29
38
|
dividerBefore = item.dividerBefore,
|
30
39
|
dividerAfter = item.dividerAfter;
|
31
40
|
var ref = React.useRef(null);
|
32
|
-
var _useContext = React.useContext(Dropdown.Context),
|
33
|
-
focusedPath = _useContext.focusedPath,
|
34
|
-
size = _useContext.size,
|
35
|
-
variant = _useContext.variant,
|
36
|
-
itemRole = _useContext.itemRole,
|
37
|
-
handleGlobalToggle = _useContext.handleGlobalToggle,
|
38
|
-
closeOnSelect = _useContext.closeOnSelect,
|
39
|
-
onHover = _useContext.onHover,
|
40
|
-
onItemSelect = _useContext.onItemSelect,
|
41
|
-
onItemClick = _useContext.onItemClick,
|
42
|
-
hasArrow = _useContext.hasArrow,
|
43
|
-
treeId = _useContext.treeId;
|
44
|
-
var hasDescendants = Boolean(item.items);
|
45
41
|
var disclosureIconSize = size === 'xs' ? 'xs' : 's';
|
46
42
|
var isDisabledClassName = disabled || isDisabled ? Dropdown_tokens.classes.dropdownItemIsDisabled : undefined;
|
47
43
|
var focusedClass = currentLevel === focusedPath.length - 1 && index$1 === (focusedPath === null || focusedPath === void 0 ? void 0 : focusedPath[currentLevel]) ? Dropdown_tokens.classes.dropdownItemIsFocused : undefined;
|
@@ -65,9 +61,7 @@ var DropdownItem = function DropdownItem(_ref) {
|
|
65
61
|
if (onItemClick) {
|
66
62
|
onItemClick(item, event);
|
67
63
|
}
|
68
|
-
|
69
|
-
// Закрываем весь дропдаун целиком при клике на айтем без потомков. Только при closeOnSelect === true.
|
70
|
-
if (closeOnSelect && !hasDescendants) {
|
64
|
+
if (handleGlobalToggle && closeOnSelect) {
|
71
65
|
handleGlobalToggle(false, event);
|
72
66
|
}
|
73
67
|
};
|
@@ -79,25 +73,20 @@ var DropdownItem = function DropdownItem(_ref) {
|
|
79
73
|
return /*#__PURE__*/React.createElement(React.Fragment, null, dividerBefore && /*#__PURE__*/React.createElement(DropdownItem_styles.Divider, {
|
80
74
|
variant: variant
|
81
75
|
}), /*#__PURE__*/React.createElement(DropdownItem_styles.Wrapper, {
|
82
|
-
ref: ref,
|
83
76
|
className: index.cx(isDisabledClassName, focusedClass, activeClass),
|
84
|
-
id:
|
77
|
+
id: value.toString(),
|
85
78
|
role: itemRole,
|
79
|
+
ref: ref,
|
80
|
+
"aria-disabled": disabled || isDisabled,
|
86
81
|
onClick: handleClick,
|
87
82
|
onMouseEnter: handleHover,
|
88
83
|
variant: variant,
|
89
|
-
"aria-disabled": disabled || isDisabled,
|
90
84
|
"aria-controls": ariaControls,
|
91
85
|
"aria-expanded": ariaExpanded,
|
86
|
+
"aria-haspopup": ariaHasPopup,
|
92
87
|
"aria-level": ariaLevel,
|
93
88
|
"aria-label": ariaLabel
|
94
|
-
}, /*#__PURE__*/React.createElement(DropdownItem_styles.
|
95
|
-
contentLeft: contentLeft,
|
96
|
-
contentRight: contentRight,
|
97
|
-
alignContentLeft: "center",
|
98
|
-
alignContentRight: "center",
|
99
|
-
title: label
|
100
|
-
})), item.items && hasArrow && /*#__PURE__*/React.createElement(DropdownItem_styles.DisclosureIconWrapper, null, /*#__PURE__*/React.createElement(IconDisclosureRight.IconDisclosureRight, {
|
89
|
+
}, contentLeft && /*#__PURE__*/React.createElement(DropdownItem_styles.StyledContentLeft, null, contentLeft), /*#__PURE__*/React.createElement(DropdownItem_styles.StyledText, null, label), contentRight && /*#__PURE__*/React.createElement(DropdownItem_styles.StyledContentRight, null, contentRight), item.items && hasArrow && /*#__PURE__*/React.createElement(DropdownItem_styles.DisclosureIconWrapper, null, /*#__PURE__*/React.createElement(IconDisclosureRight.IconDisclosureRight, {
|
101
90
|
size: disclosureIconSize,
|
102
91
|
color: "inherit"
|
103
92
|
}))), dividerAfter && /*#__PURE__*/React.createElement(DropdownItem_styles.Divider, {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"DropdownItem.js","sources":["../../../../../src/components/Dropdown/ui/DropdownItem/DropdownItem.tsx"],"sourcesContent":["import React, { useEffect, useRef, FC
|
1
|
+
{"version":3,"file":"DropdownItem.js","sources":["../../../../../src/components/Dropdown/ui/DropdownItem/DropdownItem.tsx"],"sourcesContent":["import React, { useEffect, useRef, FC } from 'react';\n\nimport { classes } from '../../Dropdown.tokens';\nimport { cx } from '../../../../utils';\nimport { IconDisclosureRight } from '../../../_Icon';\n\nimport {\n StyledContentLeft,\n StyledContentRight,\n StyledText,\n Wrapper,\n DisclosureIconWrapper,\n Divider,\n} from './DropdownItem.styles';\nimport type { DropdownItemProps } from './DropdownItem.type';\n\nexport const DropdownItem: FC<DropdownItemProps> = ({\n item,\n path,\n focusedPath,\n currentLevel,\n index,\n itemRole,\n closeOnSelect,\n handleGlobalToggle,\n onHover,\n onItemSelect,\n onItemClick,\n ariaControls,\n ariaExpanded,\n ariaHasPopup,\n ariaLevel,\n ariaLabel,\n variant,\n hasArrow,\n size,\n}) => {\n const { value, label, disabled, isDisabled, contentLeft, contentRight, dividerBefore, dividerAfter } = item;\n\n const ref = useRef<HTMLLIElement | null>(null);\n\n const disclosureIconSize = size === 'xs' ? 'xs' : 's';\n const isDisabledClassName = disabled || isDisabled ? classes.dropdownItemIsDisabled : undefined;\n const focusedClass =\n currentLevel === focusedPath.length - 1 && index === focusedPath?.[currentLevel]\n ? classes.dropdownItemIsFocused\n : undefined;\n const activeClass = value === path?.[currentLevel + 1] ? classes.dropdownItemIsActive : undefined;\n\n useEffect(() => {\n if (focusedClass && ref?.current) {\n ref.current.scrollIntoView({\n behavior: 'smooth',\n block: 'center',\n inline: 'center',\n });\n }\n }, [focusedClass]);\n\n const handleClick = (event: React.MouseEvent<HTMLLIElement>): void => {\n if (disabled || isDisabled) {\n return;\n }\n\n if (onItemSelect) {\n onItemSelect(item, event);\n }\n\n if (onItemClick) {\n onItemClick(item, event);\n }\n\n if (handleGlobalToggle && closeOnSelect) {\n handleGlobalToggle(false, event);\n }\n };\n\n const handleHover = () => {\n if (onHover) {\n onHover(index);\n }\n };\n\n return (\n <>\n {dividerBefore && <Divider variant={variant} />}\n <Wrapper\n className={cx(isDisabledClassName, focusedClass, activeClass)}\n id={value.toString()}\n role={itemRole}\n ref={ref}\n aria-disabled={disabled || isDisabled}\n onClick={handleClick}\n onMouseEnter={handleHover}\n variant={variant}\n aria-controls={ariaControls}\n aria-expanded={ariaExpanded}\n aria-haspopup={ariaHasPopup}\n aria-level={ariaLevel}\n aria-label={ariaLabel}\n >\n {contentLeft && <StyledContentLeft>{contentLeft}</StyledContentLeft>}\n <StyledText>{label}</StyledText>\n {contentRight && <StyledContentRight>{contentRight}</StyledContentRight>}\n\n {item.items && hasArrow && (\n <DisclosureIconWrapper>\n <IconDisclosureRight size={disclosureIconSize} color=\"inherit\" />\n </DisclosureIconWrapper>\n )}\n </Wrapper>\n {dividerAfter && <Divider variant={variant} />}\n </>\n );\n};\n"],"names":["DropdownItem","_ref","item","path","focusedPath","currentLevel","index","itemRole","closeOnSelect","handleGlobalToggle","onHover","onItemSelect","onItemClick","ariaControls","ariaExpanded","ariaHasPopup","ariaLevel","ariaLabel","variant","hasArrow","size","value","label","disabled","isDisabled","contentLeft","contentRight","dividerBefore","dividerAfter","ref","useRef","disclosureIconSize","isDisabledClassName","classes","dropdownItemIsDisabled","undefined","focusedClass","length","dropdownItemIsFocused","activeClass","dropdownItemIsActive","useEffect","current","scrollIntoView","behavior","block","inline","handleClick","event","handleHover","React","createElement","Fragment","Divider","Wrapper","className","cx","id","toString","role","onClick","onMouseEnter","StyledContentLeft","StyledText","StyledContentRight","items","DisclosureIconWrapper","IconDisclosureRight","color"],"mappings":"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"}
|
@@ -1,42 +1,38 @@
|
|
1
|
-
import './DropdownItem.
|
1
|
+
import './DropdownItem.styles_blclup.css';
|
2
2
|
'use strict';
|
3
3
|
|
4
4
|
Object.defineProperty(exports, '__esModule', { value: true });
|
5
5
|
|
6
6
|
var react = require('@linaria/react');
|
7
7
|
var Dropdown_tokens = require('../../Dropdown.tokens.js');
|
8
|
-
require('react');
|
9
|
-
var Cell$1 = require('../../../Cell/Cell.js');
|
10
|
-
require('@linaria/core');
|
11
|
-
var common = require('../../../../engines/common.js');
|
12
8
|
|
13
|
-
var
|
14
|
-
|
15
|
-
|
16
|
-
name: "CellWrapper",
|
17
|
-
"class": "c1gkzlls",
|
9
|
+
var StyledContentLeft = /*#__PURE__*/react.styled('div')({
|
10
|
+
name: "StyledContentLeft",
|
11
|
+
"class": "s1gkzlls",
|
18
12
|
propsAsIs: false
|
19
13
|
});
|
20
|
-
var
|
21
|
-
|
22
|
-
};
|
23
|
-
var StyledCell = /*#__PURE__*/react.styled(_exp29())({
|
24
|
-
name: "StyledCell",
|
14
|
+
var StyledContentRight = /*#__PURE__*/react.styled('div')({
|
15
|
+
name: "StyledContentRight",
|
25
16
|
"class": "sz6s14y",
|
26
|
-
propsAsIs:
|
17
|
+
propsAsIs: false
|
27
18
|
});
|
28
19
|
var DisclosureIconWrapper = /*#__PURE__*/react.styled('div')({
|
29
20
|
name: "DisclosureIconWrapper",
|
30
21
|
"class": "d1m97l2m",
|
31
22
|
propsAsIs: false
|
32
23
|
});
|
33
|
-
var
|
24
|
+
var StyledText = /*#__PURE__*/react.styled('div')({
|
25
|
+
name: "StyledText",
|
26
|
+
"class": "soib72h",
|
27
|
+
propsAsIs: false
|
28
|
+
});
|
29
|
+
var _exp3 = function _exp3() {
|
34
30
|
return function (_ref) {
|
35
31
|
var variant = _ref.variant;
|
36
32
|
return "var(".concat(variant === 'tight' ? Dropdown_tokens.tokens.dividerMarginTopTight : Dropdown_tokens.tokens.dividerMarginTop, ")");
|
37
33
|
};
|
38
34
|
};
|
39
|
-
var
|
35
|
+
var _exp5 = function _exp5() {
|
40
36
|
return function (_ref2) {
|
41
37
|
var variant = _ref2.variant;
|
42
38
|
return "var(".concat(variant === 'tight' ? Dropdown_tokens.tokens.dividerMarginBottomTight : Dropdown_tokens.tokens.dividerMarginBottom, ")");
|
@@ -44,31 +40,39 @@ var _exp33 = function _exp33() {
|
|
44
40
|
};
|
45
41
|
var Divider = /*#__PURE__*/react.styled('div')({
|
46
42
|
name: "Divider",
|
47
|
-
"class": "
|
43
|
+
"class": "d6l2f0g",
|
48
44
|
propsAsIs: false,
|
49
45
|
vars: {
|
50
|
-
"
|
51
|
-
"
|
46
|
+
"d6l2f0g-0": [/*#__PURE__*/_exp3()],
|
47
|
+
"d6l2f0g-1": [/*#__PURE__*/_exp5()]
|
52
48
|
}
|
53
49
|
});
|
54
|
-
var
|
50
|
+
var _exp8 = function _exp8() {
|
55
51
|
return function (_ref3) {
|
56
52
|
var variant = _ref3.variant;
|
57
|
-
return "var(".concat(variant === 'tight' ? Dropdown_tokens.tokens.
|
53
|
+
return "var(".concat(variant === 'tight' ? Dropdown_tokens.tokens.itemPaddingTopTight : Dropdown_tokens.tokens.itemPaddingTop, ")");
|
54
|
+
};
|
55
|
+
};
|
56
|
+
var _exp10 = function _exp10() {
|
57
|
+
return function (_ref4) {
|
58
|
+
var variant = _ref4.variant;
|
59
|
+
return "var(".concat(variant === 'tight' ? Dropdown_tokens.tokens.itemPaddingBottomTight : Dropdown_tokens.tokens.itemPaddingBottom, ")");
|
58
60
|
};
|
59
61
|
};
|
60
62
|
var Wrapper = /*#__PURE__*/react.styled('li')({
|
61
63
|
name: "Wrapper",
|
62
|
-
"class": "
|
64
|
+
"class": "w1jav4ek",
|
63
65
|
propsAsIs: false,
|
64
66
|
vars: {
|
65
|
-
"
|
67
|
+
"w1jav4ek-0": [/*#__PURE__*/_exp8()],
|
68
|
+
"w1jav4ek-1": [/*#__PURE__*/_exp10()]
|
66
69
|
}
|
67
70
|
});
|
68
71
|
|
69
|
-
exports.CellWrapper = CellWrapper;
|
70
72
|
exports.DisclosureIconWrapper = DisclosureIconWrapper;
|
71
73
|
exports.Divider = Divider;
|
72
|
-
exports.
|
74
|
+
exports.StyledContentLeft = StyledContentLeft;
|
75
|
+
exports.StyledContentRight = StyledContentRight;
|
76
|
+
exports.StyledText = StyledText;
|
73
77
|
exports.Wrapper = Wrapper;
|
74
78
|
//# sourceMappingURL=DropdownItem.styles.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"DropdownItem.styles.js","sources":["../../../../../src/components/Dropdown/ui/DropdownItem/DropdownItem.styles.ts"],"sourcesContent":["import { styled } from '@linaria/react';\n\nimport { classes, tokens
|
1
|
+
{"version":3,"file":"DropdownItem.styles.js","sources":["../../../../../src/components/Dropdown/ui/DropdownItem/DropdownItem.styles.ts"],"sourcesContent":["import { styled } from '@linaria/react';\n\nimport { classes, tokens } from '../../Dropdown.tokens';\nimport { addFocus, applyEllipsis } from '../../../../mixins';\nimport { DropdownProps } from '../../Dropdown.types';\n\nexport const StyledContentLeft = styled.div`\n display: inline-flex;\n`;\n\nexport const StyledContentRight = styled.div`\n margin-left: auto;\n display: inline-flex;\n`;\n\nexport const DisclosureIconWrapper = styled.div`\n line-height: 0;\n color: var(${tokens.disclosureIconColor});\n`;\n\nexport const StyledText = styled.div`\n ${applyEllipsis()};\n flex: 1;\n`;\n\nexport const Divider = styled.div<{ variant: DropdownProps['variant'] }>`\n height: 1px;\n margin-top: ${({ variant }) =>\n `var(${variant === 'tight' ? tokens.dividerMarginTopTight : tokens.dividerMarginTop})`};\n margin-right: var(${tokens.dividerMarginRight});\n margin-bottom: ${({ variant }) =>\n `var(${variant === 'tight' ? tokens.dividerMarginBottomTight : tokens.dividerMarginBottom})`};\n margin-left: var(${tokens.dividerMarginLeft});\n background: var(${tokens.dividerColor});\n`;\n\nexport const Wrapper = styled.li<{ variant: DropdownProps['variant'] }>`\n display: flex;\n align-items: center;\n margin: 0;\n box-sizing: content-box;\n padding-top: ${({ variant }) => `var(${variant === 'tight' ? tokens.itemPaddingTopTight : tokens.itemPaddingTop})`};\n padding-right: var(${tokens.itemPaddingRight});\n padding-bottom: ${({ variant }) =>\n `var(${variant === 'tight' ? tokens.itemPaddingBottomTight : tokens.itemPaddingBottom})`};\n padding-left: var(${tokens.itemPaddingLeft});\n font-family: var(${tokens.itemFontFamily});\n font-size: var(${tokens.itemFontSize});\n font-style: var(${tokens.itemFontStyle});\n font-weight: var(${tokens.itemFontWeightBold});\n letter-spacing: var(${tokens.itemFontLetterSpacing});\n line-height: var(${tokens.itemFontLineHeight});\n background: var(${tokens.itemBackground});\n color: var(${tokens.itemColor});\n border-radius: var(${tokens.itemBorderRadius});\n user-select: none;\n\n &:hover:not(.${classes.dropdownItemIsDisabled}) {\n cursor: pointer;\n background: var(${tokens.itemBackgroundHover});\n }\n\n &.${classes.dropdownItemIsActive} {\n background: var(${tokens.itemBackgroundHover});\n }\n\n &.${classes.dropdownItemIsDisabled} {\n opacity: var(${tokens.disabledOpacity});\n cursor: not-allowed;\n }\n\n :focus {\n outline: none;\n }\n\n ${addFocus({\n outlineSize: '0.0625rem',\n outlineOffset: '0',\n outlineColor: `var(${tokens.focusColor})`,\n outlineRadius: `var(${tokens.itemBorderRadius})`,\n hasTransition: false,\n customFocusRules: `\n &.${classes.dropdownItemIsFocused}:before {\n outline: none;\n box-shadow: 0 0 0 0.0625rem var(${tokens.focusColor});\n }\n `,\n })};\n`;\n"],"names":["StyledContentLeft","styled","name","class","propsAsIs","StyledContentRight","DisclosureIconWrapper","StyledText","_exp3","_ref","variant","tokens","dividerMarginTopTight","dividerMarginTop","_exp5","_ref2","dividerMarginBottomTight","dividerMarginBottom","Divider","vars","_exp8","_ref3","itemPaddingTopTight","itemPaddingTop","_exp10","_ref4","itemPaddingBottomTight","itemPaddingBottom","Wrapper"],"mappings":"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"}
|
@@ -0,0 +1,6 @@
|
|
1
|
+
.s1gkzlls{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;}
|
2
|
+
.sz6s14y{margin-left:auto;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;}
|
3
|
+
.d1m97l2m{line-height:0;color:var(--plasma-dropdown-disclosure-icon-color);}
|
4
|
+
.soib72h{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-flex:1;-ms-flex:1;flex:1;}
|
5
|
+
.d6l2f0g{height:1px;margin-top:var(--d6l2f0g-0);margin-right:var(--plasma-dropdown-divider-margin-right);margin-bottom:var(--d6l2f0g-1);margin-left:var(--plasma-dropdown-divider-margin-left);background:var(--plasma-dropdown-divider-color);}
|
6
|
+
.w1jav4ek{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0;box-sizing:content-box;padding-top:var(--w1jav4ek-0);padding-right:var(--plasma-dropdown-item-padding-right);padding-bottom:var(--w1jav4ek-1);padding-left:var(--plasma-dropdown-item-padding-left);font-family:var(--plasma-dropdown-item-font-family);font-size:var(--plasma-dropdown-item-font-size);font-style:var(--plasma-dropdown-item-font-style);font-weight:var(--plasma-dropdown-item-letter-spacing);-webkit-letter-spacing:var(--plasma-dropdown-item-line-height);-moz-letter-spacing:var(--plasma-dropdown-item-line-height);-ms-letter-spacing:var(--plasma-dropdown-item-line-height);letter-spacing:var(--plasma-dropdown-item-line-height);line-height:var(--plasma-dropdown-item-font-weight);background:var(--plasma-dropdown-item-background);color:var(--plasma-dropdown-item-color);border-radius:var(--plasma-dropdown-item-border-radius);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;}.w1jav4ek:hover:not(.dropdown-item-is-disabled){cursor:pointer;background:var(--plasma-dropdown-item-background-hover);}.w1jav4ek.dropdown-item-is-active{background:var(--plasma-dropdown-item-background-hover);}.w1jav4ek.dropdown-item-is-disabled{opacity:var(--plasma-dropdown-disabled-opacity);cursor:not-allowed;}.w1jav4ek:focus{outline:none;}.w1jav4ek::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:var(--plasma-dropdown-item-border-radius);-webkit-transition:none;transition:none;pointer-events:none;}.w1jav4ek.dropdown-item-is-focused:before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-dropdown-focus-color);}
|
@@ -1,4 +1,4 @@
|
|
1
1
|
.s1iqs5in{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;min-width:var(--plasma-dropdown-item-content-left-width);color:var(--plasma-dropdown-item-content-left-color);}
|
2
2
|
.sfg3dyd{margin-left:auto;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;min-width:var(--plasma-dropdown-item-content-right-width);color:var(--plasma-dropdown-item-content-right-color);}
|
3
3
|
.s1dea6tl{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
|
4
|
-
.b1b2nce8{box-sizing:content-box;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;width:auto;font-family:var(--plasma-dropdown-item-font-family);font-size:var(--plasma-dropdown-item-font-size);font-style:var(--plasma-dropdown-item-font-style);font-weight:var(--plasma-dropdown-item-letter-spacing);-webkit-letter-spacing:var(--plasma-dropdown-item-line-height);-moz-letter-spacing:var(--plasma-dropdown-item-line-height);-ms-letter-spacing:var(--plasma-dropdown-item-line-height);letter-spacing:var(--plasma-dropdown-item-line-height);line-height:var(--plasma-dropdown-item-font-weight);background:var(--plasma-dropdown-item-background);color:var(--plasma-dropdown-item-color);border-radius:var(--plasma-dropdown-item-border-radius);width:var(--plasma-dropdown-item-width);height:var(--plasma-dropdown-item-height);padding:var(--plasma-dropdown-item-padding-top) var(--plasma-dropdown-item-padding-right) var(--plasma-dropdown-item-padding-bottom) var(--plasma-dropdown-item-padding-left);margin:var(--plasma-dropdown-item-margin-top) var(--plasma-dropdown-item-margin-right) var(--plasma-dropdown-item-margin-bottom) var(--plasma-dropdown-item-margin-left);}.b1b2nce8:focus{outline:none;}.b1b2nce8::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:var(--plasma-dropdown-item-border-radius);-webkit-transition:none;transition:none;pointer-events:none;}.b1b2nce8.focus-visible:focus::before,.b1b2nce8[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-dropdown-focus-color);}.b1b2nce8:hover:not(.dropdown-item-is-disabled){cursor:pointer;background:var(--plasma-dropdown-item-background-hover);}.b1b2nce8.
|
4
|
+
.b1b2nce8{box-sizing:content-box;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;width:auto;font-family:var(--plasma-dropdown-item-font-family);font-size:var(--plasma-dropdown-item-font-size);font-style:var(--plasma-dropdown-item-font-style);font-weight:var(--plasma-dropdown-item-letter-spacing);-webkit-letter-spacing:var(--plasma-dropdown-item-line-height);-moz-letter-spacing:var(--plasma-dropdown-item-line-height);-ms-letter-spacing:var(--plasma-dropdown-item-line-height);letter-spacing:var(--plasma-dropdown-item-line-height);line-height:var(--plasma-dropdown-item-font-weight);background:var(--plasma-dropdown-item-background);color:var(--plasma-dropdown-item-color);border-radius:var(--plasma-dropdown-item-border-radius);width:var(--plasma-dropdown-item-width);height:var(--plasma-dropdown-item-height);padding:var(--plasma-dropdown-item-padding-top) var(--plasma-dropdown-item-padding-right) var(--plasma-dropdown-item-padding-bottom) var(--plasma-dropdown-item-padding-left);margin:var(--plasma-dropdown-item-margin-top) var(--plasma-dropdown-item-margin-right) var(--plasma-dropdown-item-margin-bottom) var(--plasma-dropdown-item-margin-left);}.b1b2nce8:focus{outline:none;}.b1b2nce8::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:var(--plasma-dropdown-item-border-radius);-webkit-transition:none;transition:none;pointer-events:none;}.b1b2nce8.focus-visible:focus::before,.b1b2nce8[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-dropdown-focus-color);}.b1b2nce8:hover:not(.dropdown-item-is-disabled){cursor:pointer;background:var(--plasma-dropdown-item-background-hover);}.b1b2nce8.dropdownItemIsSelected{color:var(--plasma-dropdown-item-color-selected);background:var(--plasma-dropdown-item-background-selected);}.b1b2nce8.dropdownItemIsSelected:hover:not(.dropdown-item-is-disabled){background:var(--plasma-dropdown-item-background-selected-hover);}.b1b2nce8.dropdown-item-is-disabled{opacity:var(--plasma-dropdown-disabled-opacity);cursor:not-allowed;}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
.
|
2
|
-
.
|
3
|
-
.
|
4
|
-
.
|
1
|
+
.DropdownItem_styles_12e50g5_s1iqs5in__94ac8eef{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;min-width:var(--plasma-dropdown-item-content-left-width);color:var(--plasma-dropdown-item-content-left-color);}
|
2
|
+
.DropdownItem_styles_12e50g5_sfg3dyd__94ac8eef{margin-left:auto;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;min-width:var(--plasma-dropdown-item-content-right-width);color:var(--plasma-dropdown-item-content-right-color);}
|
3
|
+
.DropdownItem_styles_12e50g5_s1dea6tl__94ac8eef{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
|
4
|
+
.DropdownItem_styles_12e50g5_b1b2nce8__94ac8eef{box-sizing:content-box;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;width:auto;font-family:var(--plasma-dropdown-item-font-family);font-size:var(--plasma-dropdown-item-font-size);font-style:var(--plasma-dropdown-item-font-style);font-weight:var(--plasma-dropdown-item-letter-spacing);-webkit-letter-spacing:var(--plasma-dropdown-item-line-height);-moz-letter-spacing:var(--plasma-dropdown-item-line-height);-ms-letter-spacing:var(--plasma-dropdown-item-line-height);letter-spacing:var(--plasma-dropdown-item-line-height);line-height:var(--plasma-dropdown-item-font-weight);background:var(--plasma-dropdown-item-background);color:var(--plasma-dropdown-item-color);border-radius:var(--plasma-dropdown-item-border-radius);width:var(--plasma-dropdown-item-width);height:var(--plasma-dropdown-item-height);padding:var(--plasma-dropdown-item-padding-top) var(--plasma-dropdown-item-padding-right) var(--plasma-dropdown-item-padding-bottom) var(--plasma-dropdown-item-padding-left);margin:var(--plasma-dropdown-item-margin-top) var(--plasma-dropdown-item-margin-right) var(--plasma-dropdown-item-margin-bottom) var(--plasma-dropdown-item-margin-left);}.DropdownItem_styles_12e50g5_b1b2nce8__94ac8eef:focus{outline:none;}.DropdownItem_styles_12e50g5_b1b2nce8__94ac8eef::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:var(--plasma-dropdown-item-border-radius);-webkit-transition:none;transition:none;pointer-events:none;}.DropdownItem_styles_12e50g5_b1b2nce8__94ac8eef.DropdownItem_styles_12e50g5_focusVisible__94ac8eef:focus::before,.DropdownItem_styles_12e50g5_b1b2nce8__94ac8eef[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-dropdown-focus-color);}.DropdownItem_styles_12e50g5_b1b2nce8__94ac8eef:hover:not(.DropdownItem_styles_12e50g5_dropdownItemIsDisabled__94ac8eef){cursor:pointer;background:var(--plasma-dropdown-item-background-hover);}.DropdownItem_styles_12e50g5_b1b2nce8__94ac8eef.DropdownItem_styles_12e50g5_dropdownItemIsSelected__94ac8eef{color:var(--plasma-dropdown-item-color-selected);background:var(--plasma-dropdown-item-background-selected);}.DropdownItem_styles_12e50g5_b1b2nce8__94ac8eef.DropdownItem_styles_12e50g5_dropdownItemIsSelected__94ac8eef:hover:not(.DropdownItem_styles_12e50g5_dropdownItemIsDisabled__94ac8eef){background:var(--plasma-dropdown-item-background-selected-hover);}.DropdownItem_styles_12e50g5_b1b2nce8__94ac8eef.DropdownItem_styles_12e50g5_dropdownItemIsDisabled__94ac8eef{opacity:var(--plasma-dropdown-disabled-opacity);cursor:not-allowed;}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/Dropdown/utils/index.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport React, { Children, HTMLAttributes, ElementType, cloneElement, isValidElement } from 'react';\n\nimport type { DropdownProps } from '../Dropdown.types';\n\nexport const getCorrectHeight = (listHeight: Required<DropdownProps>['listHeight']): string => {\n if (Number.isNaN(Number(listHeight))) {\n return listHeight.toString();\n }\n return `${listHeight}rem`;\n};\n\nexport const childrenWithProps = (children: ReactNode, additionalProps: HTMLAttributes<HTMLLIElement>) =>\n Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n return React.cloneElement(child, additionalProps);\n }\n return child;\n });\n\nconst isReactObject = (element: any): element is ElementType => {\n return typeof element === 'object' || typeof element === 'function';\n};\n\nexport const getValidComponent = (element: ElementType | ReactNode, props: object) => {\n if (isValidElement(element)) {\n return cloneElement(element, props);\n }\n\n if (isReactObject(element)) {\n const Component = element;\n\n return <Component {...props} />;\n }\n\n return element;\n};\n
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/components/Dropdown/utils/index.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport React, { Children, HTMLAttributes, ElementType, cloneElement, isValidElement } from 'react';\n\nimport type { DropdownProps } from '../Dropdown.types';\n\nexport const getCorrectHeight = (listHeight: Required<DropdownProps>['listHeight']): string => {\n if (Number.isNaN(Number(listHeight))) {\n return listHeight.toString();\n }\n return `${listHeight}rem`;\n};\n\nexport const childrenWithProps = (children: ReactNode, additionalProps: HTMLAttributes<HTMLLIElement>) =>\n Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n return React.cloneElement(child, additionalProps);\n }\n return child;\n });\n\nconst isReactObject = (element: any): element is ElementType => {\n return typeof element === 'object' || typeof element === 'function';\n};\n\nexport const getValidComponent = (element: ElementType | ReactNode, props: object) => {\n if (isValidElement(element)) {\n return cloneElement(element, props);\n }\n\n if (isReactObject(element)) {\n const Component = element;\n\n return <Component {...props} />;\n }\n\n return element;\n};\n"],"names":["getCorrectHeight","listHeight","Number","isNaN","toString","concat","childrenWithProps","children","additionalProps","Children","map","child","React","isValidElement","cloneElement","isReactObject","element","_typeof","getValidComponent","props","Component","createElement"],"mappings":";;;;;;;IAKaA,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIC,UAAiD,EAAa;EAC3F,IAAIC,MAAM,CAACC,KAAK,CAACD,MAAM,CAACD,UAAU,CAAC,CAAC,EAAE;AAClC,IAAA,OAAOA,UAAU,CAACG,QAAQ,EAAE,CAAA;AAChC,GAAA;EACA,OAAAC,EAAAA,CAAAA,MAAA,CAAUJ,UAAU,EAAA,KAAA,CAAA,CAAA;AACxB,EAAC;AAEM,IAAMK,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,QAAmB,EAAEC,eAA8C,EAAA;EAAA,OACjGC,cAAQ,CAACC,GAAG,CAACH,QAAQ,EAAE,UAACI,KAAK,EAAK;AAC9B,IAAA,kBAAIC,KAAK,CAACC,cAAc,CAACF,KAAK,CAAC,EAAE;AAC7B,MAAA,oBAAOC,KAAK,CAACE,YAAY,CAACH,KAAK,EAAEH,eAAe,CAAC,CAAA;AACrD,KAAA;AACA,IAAA,OAAOG,KAAK,CAAA;AAChB,GAAC,CAAC,CAAA;AAAA,EAAA;AAEN,IAAMI,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,OAAY,EAA6B;EAC5D,OAAOC,gCAAA,CAAOD,OAAO,CAAA,KAAK,QAAQ,IAAI,OAAOA,OAAO,KAAK,UAAU,CAAA;AACvE,CAAC,CAAA;AAEM,IAAME,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIF,OAAgC,EAAEG,KAAa,EAAK;AAClF,EAAA,kBAAIN,oBAAc,CAACG,OAAO,CAAC,EAAE;AACzB,IAAA,oBAAOF,kBAAY,CAACE,OAAO,EAAEG,KAAK,CAAC,CAAA;AACvC,GAAA;AAEA,EAAA,IAAIJ,aAAa,CAACC,OAAO,CAAC,EAAE;IACxB,IAAMI,SAAS,GAAGJ,OAAO,CAAA;AAEzB,IAAA,oBAAOJ,KAAA,CAAAS,aAAA,CAACD,SAAS,EAAKD,KAAQ,CAAC,CAAA;AACnC,GAAA;AAEA,EAAA,OAAOH,OAAO,CAAA;AAClB;;;;;;"}
|
@@ -89,7 +89,7 @@ var notificationRoot = function notificationRoot(Root) {
|
|
89
89
|
})))));
|
90
90
|
});
|
91
91
|
};
|
92
|
-
var
|
92
|
+
var notificationConfig = {
|
93
93
|
name: 'Notification',
|
94
94
|
tag: 'div',
|
95
95
|
layout: notificationRoot,
|
@@ -112,6 +112,6 @@ var noticationConfig = {
|
|
112
112
|
}
|
113
113
|
};
|
114
114
|
|
115
|
-
exports.
|
115
|
+
exports.notificationConfig = notificationConfig;
|
116
116
|
exports.notificationRoot = notificationRoot;
|
117
117
|
//# sourceMappingURL=Notification.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Notification.js","sources":["../../../src/components/Notification/Notification.tsx"],"sourcesContent":["import React, { forwardRef, useMemo } from 'react';\n\nimport { RootProps } from '../../engines';\nimport { cx } from '../../utils';\nimport { IconCross } from '../_Icon/Icons/IconCross';\n\nimport { classes } from './Notification.tokens';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as layoutCSS } from './variations/_layout/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { NotificationLayout, NotificationProps, layouts } from './Notification.types';\nimport {\n ButtonsWrapper,\n CloseIconWrapper,\n ContentBox,\n IconWrapper,\n StyledContent,\n StyledNotification,\n StyledTitle,\n TextBox,\n Wrapper,\n} from './Notification.styles';\nimport { getLayoutClass } from './utils';\n\n/**\n * Компонент для небольших уведомлений пользователя\n */\nexport const notificationRoot = (Root: RootProps<HTMLDivElement, NotificationProps
|
1
|
+
{"version":3,"file":"Notification.js","sources":["../../../src/components/Notification/Notification.tsx"],"sourcesContent":["import React, { forwardRef, useMemo } from 'react';\n\nimport { RootProps } from '../../engines';\nimport { cx } from '../../utils';\nimport { IconCross } from '../_Icon/Icons/IconCross';\n\nimport { classes } from './Notification.tokens';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as layoutCSS } from './variations/_layout/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { NotificationLayout, NotificationProps, layouts } from './Notification.types';\nimport {\n ButtonsWrapper,\n CloseIconWrapper,\n ContentBox,\n IconWrapper,\n StyledContent,\n StyledNotification,\n StyledTitle,\n TextBox,\n Wrapper,\n} from './Notification.styles';\nimport { getLayoutClass } from './utils';\n\n/**\n * Компонент для небольших уведомлений пользователя\n */\nexport const notificationRoot = (Root: RootProps<HTMLDivElement, Omit<NotificationProps, 'title'>>) =>\n forwardRef<HTMLDivElement, NotificationProps>((props, ref) => {\n const {\n role = 'status',\n title,\n children: content,\n actions,\n view,\n size,\n iconPlacement,\n showCloseIcon = true,\n layout = layouts.vertical as NotificationLayout,\n icon,\n onCloseButtonClick,\n ...rest\n } = props;\n\n let ariaLive: 'assertive' | 'polite' = 'polite';\n let ariaAtomic = false;\n\n if (role === 'alert') {\n ariaLive = 'assertive';\n } else if (role === 'status') {\n ariaAtomic = true;\n }\n\n const isOneLine = !content || !title;\n const oneLineClass = isOneLine ? classes.oneLine : undefined;\n const withoutIconClass = icon ? undefined : classes.withoutIcon;\n const withoutCloseIconClass = showCloseIcon ? undefined : classes.withoutCloseIcon;\n\n const IconPlacementInternal = useMemo(() => (icon ? iconPlacement : undefined), [icon, iconPlacement]);\n\n return (\n <Root\n view={view}\n size={size}\n layout={layout}\n ref={ref}\n role={role}\n aria-live={ariaLive}\n aria-atomic={ariaAtomic}\n {...rest}\n >\n <Wrapper className={cx(classes.wrapper, getLayoutClass(layout), oneLineClass, withoutCloseIconClass)}>\n <ContentBox\n iconPlacement={IconPlacementInternal}\n className={cx(classes.contentBox, getLayoutClass(layout), withoutIconClass)}\n >\n {icon && (\n <IconWrapper\n iconPlacement={IconPlacementInternal}\n className={cx(classes.icon, getLayoutClass(layout))}\n >\n {icon}\n </IconWrapper>\n )}\n <TextBox\n iconPlacement={IconPlacementInternal}\n showCloseIcon={showCloseIcon}\n className={cx(classes.textbox, getLayoutClass(layout))}\n >\n {title && <StyledTitle className={classes.title}>{title}</StyledTitle>}\n {content && <StyledContent className={classes.text}>{content}</StyledContent>}\n </TextBox>\n </ContentBox>\n {actions && (\n <ButtonsWrapper\n iconPlacement={IconPlacementInternal}\n className={cx(classes.buttonsWrapper, getLayoutClass(layout))}\n >\n {actions}\n </ButtonsWrapper>\n )}\n\n {showCloseIcon && (\n <CloseIconWrapper\n view=\"clear\"\n size=\"s\"\n onClick={onCloseButtonClick}\n className={cx(classes.closeIcon, getLayoutClass(layout))}\n >\n <IconCross size=\"s\" color=\"inherit\" />\n </CloseIconWrapper>\n )}\n </Wrapper>\n </Root>\n );\n });\n\nexport const notificationConfig = {\n name: 'Notification',\n tag: 'div',\n layout: notificationRoot,\n base: StyledNotification,\n variations: {\n layout: {\n css: layoutCSS,\n },\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n layout: layouts.vertical,\n size: 'xs',\n },\n};\n"],"names":["notificationRoot","Root","forwardRef","props","ref","_props$role","role","title","content","children","actions","view","size","iconPlacement","_props$showCloseIcon","showCloseIcon","_props$layout","layout","layouts","vertical","icon","onCloseButtonClick","rest","_objectWithoutProperties","_excluded","ariaLive","ariaAtomic","isOneLine","oneLineClass","classes","oneLine","undefined","withoutIconClass","withoutIcon","withoutCloseIconClass","withoutCloseIcon","IconPlacementInternal","useMemo","React","createElement","_extends","Wrapper","className","cx","wrapper","getLayoutClass","ContentBox","contentBox","IconWrapper","TextBox","textbox","StyledTitle","StyledContent","text","ButtonsWrapper","buttonsWrapper","CloseIconWrapper","onClick","closeIcon","_IconCross","IconCross","color","notificationConfig","name","tag","base","StyledNotification","variations","css","layoutCSS","viewCSS","sizeCSS","defaults"],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Notification.types.js","sources":["../../../src/components/Notification/Notification.types.ts"],"sourcesContent":["import type { AsProps } from '@salutejs/plasma-core';\nimport { HTMLAttributes, ReactNode
|
1
|
+
{"version":3,"file":"Notification.types.js","sources":["../../../src/components/Notification/Notification.types.ts"],"sourcesContent":["import type { AsProps } from '@salutejs/plasma-core';\nimport { HTMLAttributes, ReactNode } from 'react';\n\nimport { ComponentConfig, PropsType, Variants } from '../../engines/types';\n\nexport const layouts = {\n horizontal: 'horizontal',\n vertical: 'vertical',\n};\n\nexport type NotificationLayout = keyof typeof layouts;\n\nexport const placements = {\n top: 'top',\n left: 'left',\n};\n\nexport type NotificationIconPlacement = keyof typeof placements;\nexport type NotificationPlacement = 'bottom-right' | 'bottom-left';\n\nexport type LayoutType = {\n layout?: NotificationLayout;\n};\n\nexport type IconPlacementType = {\n iconPlacement?: NotificationIconPlacement;\n};\n\nexport type CloseIconType = {\n showCloseIcon?: boolean;\n};\n\nexport interface NotificationProps extends AsProps, Omit<HTMLAttributes<HTMLDivElement>, 'title'> {\n /**\n * Заголовок.\n */\n title?: ReactNode;\n /**\n * Контент под заголовком.\n */\n children?: ReactNode;\n /**\n * Кнопки снизу/справа для необходимых действий.\n */\n actions?: ReactNode;\n /**\n * Cхема расположение блоков Notification.\n */\n layout?: NotificationLayout;\n /**\n * Иконка слева.\n */\n icon?: ReactNode;\n /**\n * Расположение иконки слева внутри Textbox.\n */\n iconPlacement?: NotificationIconPlacement;\n /**\n * Показывать ли иконку закрытия справа.\n * @default\n * true\n */\n showCloseIcon?: boolean;\n /**\n * Колбек при нажатии на кнопку закрытия.\n */\n onCloseButtonClick?: () => void;\n /**\n * @deprecated\n * Не влияет на отображение компонента.\n * Статус компонента Notification.\n */\n status?: string;\n\n /**\n * Вид Notification.\n */\n view?: string;\n /**\n * Размер Notification (необходимо связать с размером используемых Button).\n */\n size?: string;\n}\n\nexport interface NotificationPortalProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'> {\n /**\n * Конфиг компонента Notification.\n */\n config: ComponentConfig<string, Variants, PropsType<Variants>, NotificationProps & HTMLAttributes<HTMLDivElement>>;\n /**\n * В каком контейнере позиционируется(по умолчанию document), можно также указать id элемента или ref для него.\n */\n frame?: string;\n /**\n * Расположение компонента Notification во frame\n * @default bottom-right\n */\n placement?: NotificationPlacement;\n}\n"],"names":["layouts","horizontal","vertical","placements","top","left"],"mappings":";;;;AAKO,IAAMA,OAAO,GAAG;AACnBC,EAAAA,UAAU,EAAE,YAAY;AACxBC,EAAAA,QAAQ,EAAE,UAAA;AACd,EAAC;AAIM,IAAMC,UAAU,GAAG;AACtBC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,IAAI,EAAE,MAAA;AACV;;;;;"}
|
@@ -34,7 +34,9 @@ var StyledPopup = /*#__PURE__*/react$1.styled(_exp())({
|
|
34
34
|
*/
|
35
35
|
var NotificationsPortal = function NotificationsPortal(_ref) {
|
36
36
|
var config = _ref.config,
|
37
|
-
frame = _ref.frame
|
37
|
+
frame = _ref.frame,
|
38
|
+
_ref$placement = _ref.placement,
|
39
|
+
placement = _ref$placement === void 0 ? 'bottom-right' : _ref$placement;
|
38
40
|
var _useStoreon = react.useStoreon('notifications'),
|
39
41
|
notifications = _useStoreon.notifications;
|
40
42
|
var Notification = React.useMemo(function () {
|
@@ -43,7 +45,7 @@ var NotificationsPortal = function NotificationsPortal(_ref) {
|
|
43
45
|
return /*#__PURE__*/React.createElement(PopupContext.PopupProvider, null, notifications.length > 0 && /*#__PURE__*/React.createElement(StyledPopup, {
|
44
46
|
opened: true,
|
45
47
|
frame: frame,
|
46
|
-
placement:
|
48
|
+
placement: placement,
|
47
49
|
zIndex: "9100"
|
48
50
|
}, /*#__PURE__*/React.createElement(Notification_styles.StyledRoot, null, notifications.map(function (_ref2) {
|
49
51
|
var id = _ref2.id,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"NotificationsPortal.js","sources":["../../../src/components/Notification/NotificationsPortal.tsx"],"sourcesContent":["import React, { FC, ForwardRefExoticComponent, RefAttributes, useMemo } from 'react';\nimport { useStoreon } from 'storeon/react';\nimport { styled } from '@linaria/react';\nimport { popupBaseRootClass } from '@salutejs/plasma-core';\n\nimport { PopupProvider, popupConfig } from '../Popup';\nimport { component } from '../../engines';\nimport { cx } from '../../utils';\n\nimport { NotificationsState, NotificationsEvents, closeNotification } from './NotificationsStore';\nimport { NotificationPortalProps, NotificationProps } from './Notification.types';\nimport { StyledItemWrapper, StyledRoot } from './Notification.styles';\nimport { classes } from './Notification.tokens';\n\n// issue #823\nconst Popup = component(popupConfig);\n\nconst StyledPopup = styled(Popup)`\n & > .${popupBaseRootClass} {\n overflow: hidden;\n }\n`;\n\n/**\n * Обертка для визуального представления уведомлений.\n */\nexport const NotificationsPortal: FC<NotificationPortalProps> = ({ config, frame }) => {\n const { notifications } = useStoreon<NotificationsState, NotificationsEvents>('notifications');\n\n const Notification = useMemo(\n () => component(config) as ForwardRefExoticComponent<NotificationProps & RefAttributes<HTMLDivElement>>,\n [],\n );\n\n return (\n <PopupProvider>\n {notifications.length > 0 && (\n <StyledPopup opened frame={frame} placement
|
1
|
+
{"version":3,"file":"NotificationsPortal.js","sources":["../../../src/components/Notification/NotificationsPortal.tsx"],"sourcesContent":["import React, { FC, ForwardRefExoticComponent, RefAttributes, useMemo } from 'react';\nimport { useStoreon } from 'storeon/react';\nimport { styled } from '@linaria/react';\nimport { popupBaseRootClass } from '@salutejs/plasma-core';\n\nimport { PopupProvider, popupConfig } from '../Popup';\nimport { component } from '../../engines';\nimport { cx } from '../../utils';\n\nimport { NotificationsState, NotificationsEvents, closeNotification } from './NotificationsStore';\nimport { NotificationPortalProps, NotificationProps } from './Notification.types';\nimport { StyledItemWrapper, StyledRoot } from './Notification.styles';\nimport { classes } from './Notification.tokens';\n\n// issue #823\nconst Popup = component(popupConfig);\n\nconst StyledPopup = styled(Popup)`\n & > .${popupBaseRootClass} {\n overflow: hidden;\n }\n`;\n\n/**\n * Обертка для визуального представления уведомлений.\n */\nexport const NotificationsPortal: FC<NotificationPortalProps> = ({ config, frame, placement = 'bottom-right' }) => {\n const { notifications } = useStoreon<NotificationsState, NotificationsEvents>('notifications');\n\n const Notification = useMemo(\n () => component(config) as ForwardRefExoticComponent<NotificationProps & RefAttributes<HTMLDivElement>>,\n [],\n );\n\n return (\n <PopupProvider>\n {notifications.length > 0 && (\n <StyledPopup opened frame={frame} placement={placement} zIndex=\"9100\">\n <StyledRoot>\n {notifications.map(({ id, isHidden, ...rest }) => (\n <StyledItemWrapper\n key={id}\n className={cx(\n isHidden ? classes.notificationItemHidden : classes.notificationItemOpened,\n )}\n isHidden={isHidden || false}\n >\n <Notification\n key={id}\n id={id}\n onCloseButtonClick={() => closeNotification(id)}\n {...rest}\n />\n </StyledItemWrapper>\n ))}\n </StyledRoot>\n </StyledPopup>\n )}\n </PopupProvider>\n );\n};\n"],"names":["Popup","component","popupConfig","_exp","StyledPopup","styled","name","class","propsAsIs","NotificationsPortal","_ref","config","frame","_ref$placement","placement","_useStoreon","useStoreon","notifications","Notification","useMemo","React","createElement","PopupProvider","length","opened","zIndex","StyledRoot","map","_ref2","id","isHidden","rest","StyledItemWrapper","key","className","cx","classes","notificationItemHidden","notificationItemOpened","_extends","onCloseButtonClick","closeNotification"],"mappings":";;;;;;;;;;;;;;;;;;;AAcA;AACA,IAAMA,KAAK,gBAAGC,gBAAS,CAACC,mBAAW,CAAC,CAAA;AAAC,IAAAC,IAAA,GAdnBA,SAcmBA,IAAAA,GAAA;AAAA,EAAA,OAEVH,KAAK,CAAA;AAAA,CAAA,CAAA;AAAhC,IAAMI,WAAW,gBAAGC,cAAM,CAAAF,IAAA,EAAA,CAAA,CAAA;AAAAG,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,IAAA;AAAA,CAIzB,CAAA,CAAA;;AAED;AACA;AACA;IACaC,mBAAgD,GAAGA,SAAnDA,mBAAgDA,CAAAC,IAAA,EAAsD;AAAA,EAAA,IAAhDC,MAAM,GAAAD,IAAA,CAANC,MAAM;IAAEC,KAAK,GAAAF,IAAA,CAALE,KAAK;IAAAC,cAAA,GAAAH,IAAA,CAAEI,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,cAAA,GAAAA,cAAA,CAAA;AAC1F,EAAA,IAAAE,WAAA,GAA0BC,gBAAU,CAA0C,eAAe,CAAC;IAAtFC,aAAAA,GAAAA,WAAAA,CAAAA,aAAAA,CAAAA;EAER,IAAMC,YAAY,GAAGC,aAAO,CACxB,YAAA;IAAA,OAAMlB,gBAAS,CAACU,MAAM,CAAC,CAAA;GACvB,EAAA,EACJ,CAAC,CAAA;AAED,EAAA,oBACIS,KAAA,CAAAC,aAAA,CAACC,0BAAa,QACTL,aAAa,CAACM,MAAM,GAAG,CAAC,iBACrBH,KAAA,CAAAC,aAAA,CAACjB,WAAW,EAAA;IAACoB,MAAM,EAAA,IAAA;AAACZ,IAAAA,KAAK,EAAEA,KAAM;AAACE,IAAAA,SAAS,EAAEA,SAAU;AAACW,IAAAA,MAAM,EAAC,MAAA;GAC3DL,eAAAA,KAAA,CAAAC,aAAA,CAACK,8BAAU,EACNT,IAAAA,EAAAA,aAAa,CAACU,GAAG,CAAC,UAAAC,KAAA,EAAA;AAAA,IAAA,IAAGC,EAAE,GAAAD,KAAA,CAAFC,EAAE;MAAEC,QAAQ,GAAAF,KAAA,CAARE,QAAQ;AAAKC,MAAAA,IAAAA,GAAAA,iDAAAA,CAAAA,KAAAA,EAAAA,SAAAA,CAAAA,CAAAA;AAAAA,IAAAA,oBACnCX,KAAA,CAAAC,aAAA,CAACW,qCAAiB,EAAA;AACdC,MAAAA,GAAG,EAAEJ,EAAG;AACRK,MAAAA,SAAS,EAAEC,QAAE,CACTL,QAAQ,GAAGM,2BAAO,CAACC,sBAAsB,GAAGD,2BAAO,CAACE,sBACxD,CAAE;MACFR,QAAQ,EAAEA,QAAQ,IAAI,KAAA;AAAM,KAAA,eAE5BV,KAAA,CAAAC,aAAA,CAACH,YAAY,EAAAqB,iCAAA,CAAA;AACTN,MAAAA,GAAG,EAAEJ,EAAG;AACRA,MAAAA,EAAE,EAAEA,EAAG;MACPW,kBAAkB,EAAE,SAAAA,kBAAA,GAAA;QAAA,OAAMC,oCAAiB,CAACZ,EAAE,CAAC,CAAA;AAAA,OAAA;KAC3CE,EAAAA,IAAI,CAAC,CAEE,CACtB,CAAA;GACO,CAAA,CACH,CAEN,CAAC,CAAA;AAExB;;;;"}
|
@@ -10,11 +10,13 @@ var NotificationsPortal = require('./NotificationsPortal.js');
|
|
10
10
|
var NotificationsProvider = function NotificationsProvider(_ref) {
|
11
11
|
var children = _ref.children,
|
12
12
|
config = _ref.config,
|
13
|
-
frame = _ref.frame
|
13
|
+
frame = _ref.frame,
|
14
|
+
placement = _ref.placement;
|
14
15
|
return /*#__PURE__*/React.createElement(react.StoreContext.Provider, {
|
15
16
|
value: NotificationsStore.NotificationsStore
|
16
17
|
}, children, /*#__PURE__*/React.createElement(NotificationsPortal.NotificationsPortal, {
|
17
18
|
frame: frame,
|
19
|
+
placement: placement,
|
18
20
|
config: config
|
19
21
|
}));
|
20
22
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"NotificationsProvider.js","sources":["../../../src/components/Notification/NotificationsProvider.tsx"],"sourcesContent":["import React, { FC,
|
1
|
+
{"version":3,"file":"NotificationsProvider.js","sources":["../../../src/components/Notification/NotificationsProvider.tsx"],"sourcesContent":["import React, { FC, HTMLAttributes, ReactNode } from 'react';\nimport { StoreContext } from 'storeon/react';\n\nimport { ComponentConfig } from '../../engines';\nimport { PropsType, Variants } from '../../engines/types';\n\nimport { NotificationsStore } from './NotificationsStore';\nimport { NotificationsPortal } from './NotificationsPortal';\nimport { NotificationPlacement, NotificationProps } from './Notification.types';\n\nexport const NotificationsProvider: FC<{\n children: ReactNode;\n config: ComponentConfig<string, Variants, PropsType<Variants>, NotificationProps & HTMLAttributes<HTMLDivElement>>;\n frame?: string;\n placement?: NotificationPlacement;\n}> = ({ children, config, frame, placement }) => {\n return (\n <StoreContext.Provider value={NotificationsStore}>\n {children}\n <NotificationsPortal frame={frame} placement={placement} config={config} />\n </StoreContext.Provider>\n );\n};\n"],"names":["NotificationsProvider","_ref","children","config","frame","placement","React","createElement","StoreContext","Provider","value","NotificationsStore","NotificationsPortal"],"mappings":";;;;;;;;;IAUaA,qBAKX,GAAG,SALQA,qBAKXA,CAAAC,IAAA,EAA+C;AAAA,EAAA,IAAzCC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAEC,MAAM,GAAAF,IAAA,CAANE,MAAM;IAAEC,KAAK,GAAAH,IAAA,CAALG,KAAK;IAAEC,SAAS,GAAAJ,IAAA,CAATI,SAAS,CAAA;AACtC,EAAA,oBACIC,KAAA,CAAAC,aAAA,CAACC,kBAAY,CAACC,QAAQ,EAAA;AAACC,IAAAA,KAAK,EAAEC,qCAAAA;AAAmB,GAAA,EAC5CT,QAAQ,eACTI,KAAA,CAAAC,aAAA,CAACK,uCAAmB,EAAA;AAACR,IAAAA,KAAK,EAAEA,KAAM;AAACC,IAAAA,SAAS,EAAEA,SAAU;AAACF,IAAAA,MAAM,EAAEA,MAAAA;AAAO,GAAE,CACvD,CAAC,CAAA;AAEhC;;;;"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getCorrectHeight.js","sources":["../../../../src/components/Select/utils/getCorrectHeight.ts"],"sourcesContent":["import type {
|
1
|
+
{"version":3,"file":"getCorrectHeight.js","sources":["../../../../src/components/Select/utils/getCorrectHeight.ts"],"sourcesContent":["import type { DropdownProps } from '../../Dropdown';\n\nexport const getCorrectHeight = (listHeight: Required<DropdownProps>['listHeight']): string => {\n if (Number.isNaN(Number(listHeight))) {\n return listHeight.toString();\n }\n return `${listHeight}rem`;\n};\n"],"names":["getCorrectHeight","listHeight","Number","isNaN","toString","concat"],"mappings":";;;;IAEaA,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIC,UAAiD,EAAa;EAC3F,IAAIC,MAAM,CAACC,KAAK,CAACD,MAAM,CAACD,UAAU,CAAC,CAAC,EAAE;AAClC,IAAA,OAAOA,UAAU,CAACG,QAAQ,EAAE,CAAA;AAChC,GAAA;EACA,OAAAC,EAAAA,CAAAA,MAAA,CAAUJ,UAAU,EAAA,KAAA,CAAA,CAAA;AACxB;;;;"}
|
@@ -10,7 +10,7 @@ var useOutsideClick = function useOutsideClick(callback, secondaryRef) {
|
|
10
10
|
var handleClickOutside = function handleClickOutside(event) {
|
11
11
|
if (ref.current && !ref.current.contains(event.target)) {
|
12
12
|
if (!(secondaryRef !== null && secondaryRef !== void 0 && secondaryRef.current) || secondaryRef.current && !secondaryRef.current.contains(event.target)) {
|
13
|
-
callback(
|
13
|
+
callback();
|
14
14
|
}
|
15
15
|
}
|
16
16
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useOutsideClick.js","sources":["../../src/hooks/useOutsideClick.ts"],"sourcesContent":["import { useEffect, useRef } from 'react';\nimport type { RefObject } from 'react';\n\nexport const useOutsideClick = <T extends HTMLElement = HTMLElement>(\n callback: (
|
1
|
+
{"version":3,"file":"useOutsideClick.js","sources":["../../src/hooks/useOutsideClick.ts"],"sourcesContent":["import { useEffect, useRef } from 'react';\nimport type { RefObject } from 'react';\n\nexport const useOutsideClick = <T extends HTMLElement = HTMLElement>(\n callback: () => void,\n secondaryRef?: RefObject<HTMLElement | null> | null,\n) => {\n const ref = useRef<T | null>(null);\n useEffect(() => {\n const handleClickOutside = (event: MouseEvent | TouchEvent) => {\n if (ref.current && !ref.current.contains(event.target as Node)) {\n if (\n !secondaryRef?.current ||\n (secondaryRef.current && !secondaryRef.current.contains(event.target as Node))\n ) {\n callback();\n }\n }\n };\n\n document.addEventListener('mouseup', handleClickOutside);\n document.addEventListener('touchend', handleClickOutside);\n\n return () => {\n document.removeEventListener('mouseup', handleClickOutside);\n document.removeEventListener('touchend', handleClickOutside);\n };\n }, [callback]);\n\n return ref;\n};\n"],"names":["useOutsideClick","callback","secondaryRef","ref","useRef","useEffect","handleClickOutside","event","current","contains","target","document","addEventListener","removeEventListener"],"mappings":";;;;;;AAGO,IAAMA,eAAe,GAAG,SAAlBA,eAAeA,CACxBC,QAAoB,EACpBC,YAAmD,EAClD;AACD,EAAA,IAAMC,GAAG,GAAGC,YAAM,CAAW,IAAI,CAAC,CAAA;AAClCC,EAAAA,eAAS,CAAC,YAAM;AACZ,IAAA,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIC,KAA8B,EAAK;AAC3D,MAAA,IAAIJ,GAAG,CAACK,OAAO,IAAI,CAACL,GAAG,CAACK,OAAO,CAACC,QAAQ,CAACF,KAAK,CAACG,MAAc,CAAC,EAAE;QAC5D,IACI,EAACR,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,KAAA,CAAA,IAAZA,YAAY,CAAEM,OAAO,CACrBN,IAAAA,YAAY,CAACM,OAAO,IAAI,CAACN,YAAY,CAACM,OAAO,CAACC,QAAQ,CAACF,KAAK,CAACG,MAAc,CAAE,EAChF;AACET,UAAAA,QAAQ,EAAE,CAAA;AACd,SAAA;AACJ,OAAA;KACH,CAAA;AAEDU,IAAAA,QAAQ,CAACC,gBAAgB,CAAC,SAAS,EAAEN,kBAAkB,CAAC,CAAA;AACxDK,IAAAA,QAAQ,CAACC,gBAAgB,CAAC,UAAU,EAAEN,kBAAkB,CAAC,CAAA;AAEzD,IAAA,OAAO,YAAM;AACTK,MAAAA,QAAQ,CAACE,mBAAmB,CAAC,SAAS,EAAEP,kBAAkB,CAAC,CAAA;AAC3DK,MAAAA,QAAQ,CAACE,mBAAmB,CAAC,UAAU,EAAEP,kBAAkB,CAAC,CAAA;KAC/D,CAAA;AACL,GAAC,EAAE,CAACL,QAAQ,CAAC,CAAC,CAAA;AAEd,EAAA,OAAOE,GAAG,CAAA;AACd;;;;"}
|