@salutejs/plasma-new-hope 0.174.0-canary.1505.11518120718.0 → 0.174.0-dev.0
Sign up to get free protection for your applications and to get access to all the features.
- package/cjs/components/Combobox/ComboboxNew/Combobox.js +22 -27
- package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
- package/cjs/components/Combobox/ComboboxNew/utils/initialItemsTransform.js +5 -9
- package/cjs/components/Combobox/ComboboxNew/utils/initialItemsTransform.js.map +1 -1
- package/cjs/components/Drawer/Drawer.js +2 -1
- package/cjs/components/Drawer/Drawer.js.map +1 -1
- package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.js +2 -2
- package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.js.map +1 -1
- package/cjs/components/Select/Select.js +25 -13
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/Select/hooks/useKeyboardNavigation.js +1 -1
- package/cjs/components/Select/hooks/useKeyboardNavigation.js.map +1 -1
- package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +1 -1
- package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
- package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +1 -1
- package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js.map +1 -1
- package/cjs/components/Select/utils/getButtonLabel.js +1 -1
- package/cjs/components/Select/utils/getButtonLabel.js.map +1 -1
- package/cjs/components/Select/utils/initialItemsTransform.js +6 -9
- package/cjs/components/Select/utils/initialItemsTransform.js.map +1 -1
- package/cjs/components/ViewContainer/ViewContainer.js +38 -0
- package/cjs/components/ViewContainer/ViewContainer.js.map +1 -0
- package/cjs/components/ViewContainer/ViewContainer_yiqfcb.css +1 -0
- package/cjs/components/ViewContainer/_view/base.js +9 -0
- package/cjs/components/ViewContainer/_view/base.js.map +1 -0
- package/cjs/components/ViewContainer/_view/base_x642ct.css +1 -0
- package/cjs/index.css +2 -0
- package/cjs/index.js +3 -0
- package/cjs/index.js.map +1 -1
- package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.js +22 -26
- package/emotion/cjs/components/Combobox/ComboboxNew/utils/index.js +1 -8
- package/emotion/cjs/components/Combobox/ComboboxNew/utils/initialItemsTransform.js +5 -19
- package/emotion/cjs/components/Drawer/Drawer.js +4 -3
- package/emotion/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.js +2 -2
- package/emotion/cjs/components/Select/Select.js +25 -12
- package/emotion/cjs/components/Select/hooks/useKeyboardNavigation.js +1 -1
- package/emotion/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +1 -1
- package/emotion/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +13 -13
- package/emotion/cjs/components/Select/utils/getButtonLabel.js +1 -1
- package/emotion/cjs/components/Select/utils/index.js +1 -8
- package/emotion/cjs/components/Select/utils/initialItemsTransform.js +6 -19
- package/emotion/cjs/components/ViewContainer/ViewContainer.js +49 -0
- package/emotion/cjs/components/ViewContainer/ViewContainer.template-doc.mdx +82 -0
- package/emotion/cjs/components/ViewContainer/_view/base.js +8 -0
- package/emotion/cjs/components/ViewContainer/_view/tokens.json +1 -0
- package/emotion/cjs/components/ViewContainer/index.js +18 -0
- package/emotion/cjs/examples/_helpers.js +3 -14
- package/emotion/cjs/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +0 -6
- package/emotion/cjs/examples/plasma_b2c/components/ViewContainer/ViewContainer.config.js +16 -0
- package/emotion/cjs/examples/plasma_b2c/components/ViewContainer/ViewContainer.js +11 -0
- package/emotion/cjs/examples/plasma_b2c/components/ViewContainer/ViewContainer.stories.tsx +65 -0
- package/emotion/cjs/examples/plasma_web/components/Combobox/Combobox.stories.tsx +0 -6
- package/emotion/cjs/examples/plasma_web/components/ViewContainer/ViewContainer.config.js +16 -0
- package/emotion/cjs/examples/plasma_web/components/ViewContainer/ViewContainer.js +11 -0
- package/emotion/cjs/examples/plasma_web/components/ViewContainer/ViewContainer.stories.tsx +65 -0
- package/emotion/cjs/index.js +11 -0
- package/emotion/es/components/Combobox/ComboboxNew/Combobox.js +23 -27
- package/emotion/es/components/Combobox/ComboboxNew/utils/index.js +1 -2
- package/emotion/es/components/Combobox/ComboboxNew/utils/initialItemsTransform.js +5 -19
- package/emotion/es/components/Drawer/Drawer.js +2 -1
- package/emotion/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.js +2 -2
- package/emotion/es/components/Select/Select.js +26 -13
- package/emotion/es/components/Select/hooks/useKeyboardNavigation.js +1 -1
- package/emotion/es/components/Select/ui/Target/ui/Textfield/Textfield.js +1 -1
- package/emotion/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +13 -13
- package/emotion/es/components/Select/utils/getButtonLabel.js +1 -1
- package/emotion/es/components/Select/utils/index.js +1 -2
- package/emotion/es/components/Select/utils/initialItemsTransform.js +6 -19
- package/emotion/es/components/ViewContainer/ViewContainer.js +40 -0
- package/emotion/es/components/ViewContainer/ViewContainer.template-doc.mdx +82 -0
- package/emotion/es/components/ViewContainer/_view/base.js +2 -0
- package/emotion/es/components/ViewContainer/_view/tokens.json +1 -0
- package/emotion/es/components/ViewContainer/index.js +1 -0
- package/emotion/es/examples/_helpers.js +3 -14
- package/emotion/es/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +0 -6
- package/emotion/es/examples/plasma_b2c/components/ViewContainer/ViewContainer.config.js +10 -0
- package/emotion/es/examples/plasma_b2c/components/ViewContainer/ViewContainer.js +5 -0
- package/emotion/es/examples/plasma_b2c/components/ViewContainer/ViewContainer.stories.tsx +65 -0
- package/emotion/es/examples/plasma_web/components/Combobox/Combobox.stories.tsx +0 -6
- package/emotion/es/examples/plasma_web/components/ViewContainer/ViewContainer.config.js +10 -0
- package/emotion/es/examples/plasma_web/components/ViewContainer/ViewContainer.js +5 -0
- package/emotion/es/examples/plasma_web/components/ViewContainer/ViewContainer.stories.tsx +65 -0
- package/emotion/es/index.js +2 -1
- package/es/components/Combobox/ComboboxNew/Combobox.js +22 -27
- package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
- package/es/components/Combobox/ComboboxNew/utils/initialItemsTransform.js +5 -9
- package/es/components/Combobox/ComboboxNew/utils/initialItemsTransform.js.map +1 -1
- package/es/components/Drawer/Drawer.js +2 -1
- package/es/components/Drawer/Drawer.js.map +1 -1
- package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.js +2 -2
- package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.js.map +1 -1
- package/es/components/Select/Select.js +26 -14
- package/es/components/Select/Select.js.map +1 -1
- package/es/components/Select/hooks/useKeyboardNavigation.js +1 -1
- package/es/components/Select/hooks/useKeyboardNavigation.js.map +1 -1
- package/es/components/Select/ui/Target/ui/Textfield/Textfield.js +1 -1
- package/es/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
- package/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +1 -1
- package/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js.map +1 -1
- package/es/components/Select/utils/getButtonLabel.js +1 -1
- package/es/components/Select/utils/getButtonLabel.js.map +1 -1
- package/es/components/Select/utils/initialItemsTransform.js +6 -9
- package/es/components/Select/utils/initialItemsTransform.js.map +1 -1
- package/es/components/ViewContainer/ViewContainer.js +33 -0
- package/es/components/ViewContainer/ViewContainer.js.map +1 -0
- package/es/components/ViewContainer/ViewContainer_yiqfcb.css +1 -0
- package/es/components/ViewContainer/_view/base.js +5 -0
- package/es/components/ViewContainer/_view/base.js.map +1 -0
- package/es/components/ViewContainer/_view/base_x642ct.css +1 -0
- package/es/index.css +2 -0
- package/es/index.js +1 -0
- package/es/index.js.map +1 -1
- package/package.json +3 -2
- package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.js +22 -26
- package/styled-components/cjs/components/Combobox/ComboboxNew/utils/index.js +1 -8
- package/styled-components/cjs/components/Combobox/ComboboxNew/utils/initialItemsTransform.js +5 -19
- package/styled-components/cjs/components/Drawer/Drawer.js +4 -3
- package/styled-components/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.js +2 -2
- package/styled-components/cjs/components/Select/Select.js +25 -12
- package/styled-components/cjs/components/Select/hooks/useKeyboardNavigation.js +1 -1
- package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +1 -1
- package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +1 -1
- package/styled-components/cjs/components/Select/utils/getButtonLabel.js +1 -1
- package/styled-components/cjs/components/Select/utils/index.js +1 -8
- package/styled-components/cjs/components/Select/utils/initialItemsTransform.js +6 -19
- package/styled-components/cjs/components/ViewContainer/ViewContainer.js +40 -0
- package/styled-components/cjs/components/ViewContainer/ViewContainer.template-doc.mdx +82 -0
- package/styled-components/cjs/components/ViewContainer/_view/base.js +8 -0
- package/styled-components/cjs/components/ViewContainer/_view/tokens.json +1 -0
- package/styled-components/cjs/components/ViewContainer/index.js +18 -0
- package/styled-components/cjs/examples/_helpers.js +3 -14
- package/styled-components/cjs/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +0 -6
- package/styled-components/cjs/examples/plasma_b2c/components/ViewContainer/ViewContainer.config.js +16 -0
- package/styled-components/cjs/examples/plasma_b2c/components/ViewContainer/ViewContainer.js +11 -0
- package/styled-components/cjs/examples/plasma_b2c/components/ViewContainer/ViewContainer.stories.tsx +65 -0
- package/styled-components/cjs/examples/plasma_web/components/Combobox/Combobox.stories.tsx +0 -6
- package/styled-components/cjs/examples/plasma_web/components/ViewContainer/ViewContainer.config.js +16 -0
- package/styled-components/cjs/examples/plasma_web/components/ViewContainer/ViewContainer.js +11 -0
- package/styled-components/cjs/examples/plasma_web/components/ViewContainer/ViewContainer.stories.tsx +65 -0
- package/styled-components/cjs/index.js +11 -0
- package/styled-components/es/components/Combobox/ComboboxNew/Combobox.js +23 -27
- package/styled-components/es/components/Combobox/ComboboxNew/utils/index.js +1 -2
- package/styled-components/es/components/Combobox/ComboboxNew/utils/initialItemsTransform.js +5 -19
- package/styled-components/es/components/Drawer/Drawer.js +2 -1
- package/styled-components/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.js +2 -2
- package/styled-components/es/components/Select/Select.js +26 -13
- package/styled-components/es/components/Select/hooks/useKeyboardNavigation.js +1 -1
- package/styled-components/es/components/Select/ui/Target/ui/Textfield/Textfield.js +1 -1
- package/styled-components/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +1 -1
- package/styled-components/es/components/Select/utils/getButtonLabel.js +1 -1
- package/styled-components/es/components/Select/utils/index.js +1 -2
- package/styled-components/es/components/Select/utils/initialItemsTransform.js +6 -19
- package/styled-components/es/components/ViewContainer/ViewContainer.js +31 -0
- package/styled-components/es/components/ViewContainer/ViewContainer.template-doc.mdx +82 -0
- package/styled-components/es/components/ViewContainer/_view/base.js +2 -0
- package/styled-components/es/components/ViewContainer/_view/tokens.json +1 -0
- package/styled-components/es/components/ViewContainer/index.js +1 -0
- package/styled-components/es/examples/_helpers.js +3 -14
- package/styled-components/es/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +0 -6
- package/styled-components/es/examples/plasma_b2c/components/ViewContainer/ViewContainer.config.js +10 -0
- package/styled-components/es/examples/plasma_b2c/components/ViewContainer/ViewContainer.js +5 -0
- package/styled-components/es/examples/plasma_b2c/components/ViewContainer/ViewContainer.stories.tsx +65 -0
- package/styled-components/es/examples/plasma_web/components/Combobox/Combobox.stories.tsx +0 -6
- package/styled-components/es/examples/plasma_web/components/ViewContainer/ViewContainer.config.js +10 -0
- package/styled-components/es/examples/plasma_web/components/ViewContainer/ViewContainer.js +5 -0
- package/styled-components/es/examples/plasma_web/components/ViewContainer/ViewContainer.stories.tsx +65 -0
- package/styled-components/es/index.js +2 -1
- package/types/components/Combobox/ComboboxNew/Combobox.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts +3 -14
- package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/utils/index.d.ts +0 -1
- package/types/components/Combobox/ComboboxNew/utils/index.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/utils/initialItemsTransform.d.ts.map +1 -1
- package/types/components/Drawer/Drawer.d.ts.map +1 -1
- package/types/components/Select/Select.d.ts.map +1 -1
- package/types/components/Select/Select.types.d.ts +0 -1
- package/types/components/Select/Select.types.d.ts.map +1 -1
- package/types/components/Select/hooks/useKeyboardNavigation.d.ts +2 -2
- package/types/components/Select/hooks/useKeyboardNavigation.d.ts.map +1 -1
- package/types/components/Select/ui/Target/Target.types.d.ts +2 -2
- package/types/components/Select/ui/Target/Target.types.d.ts.map +1 -1
- package/types/components/Select/ui/Target/ui/Textfield/Textfield.styles.d.ts +4 -4
- package/types/components/Select/ui/Target/ui/Textfield/Textfield.styles.d.ts.map +1 -1
- package/types/components/Select/utils/index.d.ts +0 -1
- package/types/components/Select/utils/index.d.ts.map +1 -1
- package/types/components/Select/utils/initialItemsTransform.d.ts.map +1 -1
- package/types/components/ViewContainer/ViewContainer.d.ts +26 -0
- package/types/components/ViewContainer/ViewContainer.d.ts.map +1 -0
- package/types/components/ViewContainer/_view/base.d.ts +2 -0
- package/types/components/ViewContainer/_view/base.d.ts.map +1 -0
- package/types/components/ViewContainer/index.d.ts +2 -0
- package/types/components/ViewContainer/index.d.ts.map +1 -0
- package/types/examples/_helpers.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Combobox/Combobox.d.ts +6 -30
- package/types/examples/plasma_b2c/components/Combobox/Combobox.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/ViewContainer/ViewContainer.config.d.ts +9 -0
- package/types/examples/plasma_b2c/components/ViewContainer/ViewContainer.config.d.ts.map +1 -0
- package/types/examples/plasma_b2c/components/ViewContainer/ViewContainer.d.ts +8 -0
- package/types/examples/plasma_b2c/components/ViewContainer/ViewContainer.d.ts.map +1 -0
- package/types/examples/plasma_web/components/Combobox/Combobox.d.ts +6 -30
- package/types/examples/plasma_web/components/Combobox/Combobox.d.ts.map +1 -1
- package/types/examples/plasma_web/components/ViewContainer/ViewContainer.config.d.ts +9 -0
- package/types/examples/plasma_web/components/ViewContainer/ViewContainer.config.d.ts.map +1 -0
- package/types/examples/plasma_web/components/ViewContainer/ViewContainer.d.ts +8 -0
- package/types/examples/plasma_web/components/ViewContainer/ViewContainer.d.ts.map +1 -0
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -1
- package/cjs/components/Combobox/ComboboxNew/utils/getInitialValue.js +0 -21
- package/cjs/components/Combobox/ComboboxNew/utils/getInitialValue.js.map +0 -1
- package/cjs/components/Select/utils/getInitialValue.js +0 -21
- package/cjs/components/Select/utils/getInitialValue.js.map +0 -1
- package/emotion/cjs/components/Combobox/ComboboxNew/utils/getInitialValue.js +0 -20
- package/emotion/cjs/components/Select/utils/getInitialValue.js +0 -20
- package/emotion/cjs/examples/themes/declaration.d.ts +0 -4
- package/emotion/cjs/examples/themes/index.js +0 -15
- package/emotion/cjs/examples/themes/plasma_b2c.module.css +0 -984
- package/emotion/cjs/examples/themes/plasma_web.module.css +0 -984
- package/emotion/es/components/Combobox/ComboboxNew/utils/getInitialValue.js +0 -14
- package/emotion/es/components/Select/utils/getInitialValue.js +0 -14
- package/emotion/es/examples/themes/declaration.d.ts +0 -4
- package/emotion/es/examples/themes/index.js +0 -7
- package/emotion/es/examples/themes/plasma_b2c.module.css +0 -984
- package/emotion/es/examples/themes/plasma_web.module.css +0 -984
- package/es/components/Combobox/ComboboxNew/utils/getInitialValue.js +0 -17
- package/es/components/Combobox/ComboboxNew/utils/getInitialValue.js.map +0 -1
- package/es/components/Select/utils/getInitialValue.js +0 -17
- package/es/components/Select/utils/getInitialValue.js.map +0 -1
- package/styled-components/cjs/components/Combobox/ComboboxNew/utils/getInitialValue.js +0 -20
- package/styled-components/cjs/components/Select/utils/getInitialValue.js +0 -20
- package/styled-components/cjs/examples/themes/declaration.d.ts +0 -4
- package/styled-components/cjs/examples/themes/index.js +0 -15
- package/styled-components/cjs/examples/themes/plasma_b2c.module.css +0 -984
- package/styled-components/cjs/examples/themes/plasma_web.module.css +0 -984
- package/styled-components/es/components/Combobox/ComboboxNew/utils/getInitialValue.js +0 -14
- package/styled-components/es/components/Select/utils/getInitialValue.js +0 -14
- package/styled-components/es/examples/themes/declaration.d.ts +0 -4
- package/styled-components/es/examples/themes/index.js +0 -7
- package/styled-components/es/examples/themes/plasma_b2c.module.css +0 -984
- package/styled-components/es/examples/themes/plasma_web.module.css +0 -984
- package/types/components/Combobox/ComboboxNew/utils/getInitialValue.d.ts +0 -4
- package/types/components/Combobox/ComboboxNew/utils/getInitialValue.d.ts.map +0 -1
- package/types/components/Select/utils/getInitialValue.d.ts +0 -4
- package/types/components/Select/utils/getInitialValue.d.ts.map +0 -1
- package/types/examples/themes/index.d.ts +0 -6
- package/types/examples/themes/index.d.ts.map +0 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useKeyboardNavigation.js","sources":["../../../../src/components/Select/hooks/useKeyboardNavigation.ts"],"sourcesContent":["import type { KeyboardEvent, Dispatch } from 'react';\nimport React from 'react';\n\nimport {\n PathAction,\n PathState,\n FocusedPathAction,\n FocusedPathState,\n FocusedChipIndexState,\n FocusedChipIndexAction,\n} from '../reducers';\nimport { SelectProps, DefaultValueType } from '../Select.types';\nimport type { MergedDropdownNodeTransformed } from '../ui/Inner/ui/Item/Item.types';\n\nimport { PathMapType, FocusedToValueMapType, ValueToItemMapType } from './usePathMaps';\n\nconst JUMP_SIZE = 10;\n\nexport const keys = {\n Enter: 'Enter',\n Space: 'Space',\n Tab: 'Tab',\n Escape: 'Escape',\n Backspace: 'Backspace',\n ArrowLeft: 'ArrowLeft',\n ArrowRight: 'ArrowRight',\n ArrowUp: 'ArrowUp',\n ArrowDown: 'ArrowDown',\n Home: 'Home',\n End: 'End',\n PageUp: 'PageUp',\n PageDown: 'PageDown',\n};\n\nconst getFurtherPath = (focusedPath: FocusedPathState, focusedToValueMap: FocusedToValueMapType) => {\n const focusedPathAsString = focusedPath.reduce((acc, n) => `${acc}/${n}`, '').replace(/^(\\/)/, '');\n\n return focusedToValueMap.get(focusedPathAsString);\n};\n\ntype Props = {\n focusedPath: FocusedPathState;\n dispatchFocusedPath: Dispatch<FocusedPathAction>;\n path: PathState;\n dispatchPath: Dispatch<PathAction>;\n pathMap: PathMapType;\n focusedToValueMap: FocusedToValueMapType;\n handleToggle: (opened: boolean) => void;\n handlePressDown: (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => void;\n focusedChipIndex: FocusedChipIndexState;\n dispatchFocusedChipIndex: Dispatch<FocusedChipIndexAction>;\n value: DefaultValueType;\n valueToItemMap: ValueToItemMapType;\n multiselect: SelectProps['multiselect'];\n isTargetAmount: SelectProps['isTargetAmount'];\n};\n\ntype ReturnedProps = {\n onKeyDown: (event: React.KeyboardEvent<HTMLElement>) => void;\n};\n\nexport const useKeyNavigation = ({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleToggle,\n handlePressDown,\n focusedChipIndex,\n dispatchFocusedChipIndex,\n value,\n valueToItemMap,\n multiselect,\n isTargetAmount,\n}: Props): ReturnedProps => {\n const currentIndex: number = focusedPath?.[focusedPath.length - 1] || 0;\n const currentLength: number = pathMap.get(path?.[focusedPath.length - 1]) || 0;\n\n const onKeyDown = (event: KeyboardEvent<HTMLElement>) => {\n switch (event.code) {\n case keys.ArrowUp: {\n if (focusedPath.length) {\n if (currentIndex > 0) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\n dispatchFocusedPath({ type: 'change_last_focus', value: currentIndex - 1 });\n }\n } else {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n handleToggle(true);\n }\n\n if (Array.isArray(value)) {\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n\n break;\n }\n\n case keys.ArrowDown: {\n if (focusedPath.length) {\n if (currentIndex + 1 < currentLength) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\n dispatchFocusedPath({ type: 'change_last_focus', value: currentIndex + 1 });\n }\n } else {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n handleToggle(true);\n }\n\n if (Array.isArray(value)) {\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n\n break;\n }\n\n case keys.ArrowLeft: {\n if (path[0]) {\n if (focusedPath.length) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n } else {\n dispatchFocusedPath({ type: 'return_prev_focus' });\n }\n }\n\n if (path.length === 1) {\n handleToggle(false);\n }\n } else if (Array.isArray(value) && !isTargetAmount) {\n dispatchFocusedChipIndex({ type: 'moveLeft' });\n }\n\n break;\n }\n\n case keys.ArrowRight: {\n if (path[0]) {\n if (!focusedPath.length) {\n break;\n }\n\n const currentItem = getFurtherPath(focusedPath, focusedToValueMap);\n\n if (currentItem?.items) {\n if (path.length > focusedPath.length) {\n dispatchFocusedPath({ type: 'add_focus', value: 0 });\n } else {\n dispatchPath({ type: 'added_next_level', value: currentItem.value.toString() });\n }\n }\n } else if (Array.isArray(value) && !isTargetAmount) {\n dispatchFocusedChipIndex({ type: 'moveRight', total: value.length });\n }\n\n break;\n }\n\n case keys.Backspace: {\n if (!multiselect || !Array.isArray(value)) break;\n\n if (focusedChipIndex !== null) {\n const currentItem = valueToItemMap.get(value[focusedChipIndex])!;\n\n handlePressDown(currentItem);\n\n if (value.length === 1) {\n dispatchFocusedChipIndex({ type: 'reset' });\n\n break;\n }\n\n if (focusedChipIndex === value.length - 1) {\n dispatchFocusedChipIndex({ type: 'moveLeft' });\n\n break;\n }\n }\n\n break;\n }\n\n case keys.Space: {\n event.preventDefault();\n\n const currentItem = getFurtherPath(focusedPath, focusedToValueMap);\n\n if (!path[0]) {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n break;\n }\n\n if (!currentItem || currentItem?.disabled) {\n break;\n }\n\n handlePressDown(currentItem);\n\n break;\n }\n\n case keys.Enter: {\n event.preventDefault();\n\n if (Array.isArray(value)) {\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n\n const currentItem = getFurtherPath(focusedPath, focusedToValueMap)!;\n\n if (currentItem?.disabled) {\n break;\n }\n\n if (!path[0]) {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n break;\n }\n\n if (currentItem?.items) {\n if (path.length > focusedPath.length) {\n dispatchFocusedPath({ type: 'add_focus', value: 0 });\n } else {\n dispatchPath({ type: 'added_next_level', value: currentItem.value.toString() });\n }\n\n break;\n }\n\n handlePressDown(currentItem);\n\n break;\n }\n\n case keys.Tab:\n case keys.Escape: {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n dispatchFocusedChipIndex({ type: 'reset' });\n handleToggle(false);\n\n break;\n }\n\n case keys.Home: {\n if (path[0]) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\n dispatchFocusedPath({ type: 'change_last_focus', value: 0 });\n } else {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n\n handleToggle(true);\n }\n\n break;\n }\n\n case keys.End: {\n if (path[0]) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\n dispatchFocusedPath({ type: 'change_last_focus', value: currentLength - 1 });\n } else {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'change_last_focus', value: (pathMap.get('root') || 0) - 1 });\n\n handleToggle(true);\n }\n\n break;\n }\n\n case keys.PageUp: {\n if (!path[0]) {\n break;\n }\n\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\n if (currentIndex <= JUMP_SIZE) {\n dispatchFocusedPath({ type: 'change_last_focus', value: 0 });\n } else {\n dispatchFocusedPath({ type: 'change_last_focus', value: currentIndex - JUMP_SIZE });\n }\n\n break;\n }\n\n case keys.PageDown: {\n if (!path[0]) {\n break;\n }\n\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\n if (currentLength - currentIndex <= JUMP_SIZE) {\n dispatchFocusedPath({ type: 'change_last_focus', value: currentLength - 1 });\n } else {\n dispatchFocusedPath({ type: 'change_last_focus', value: currentIndex + JUMP_SIZE });\n }\n\n break;\n }\n\n default: {\n break;\n }\n }\n };\n\n return { onKeyDown };\n};\n"],"names":["JUMP_SIZE","keys","Enter","Space","Tab","Escape","Backspace","ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End","PageUp","PageDown","getFurtherPath","focusedPath","focusedToValueMap","focusedPathAsString","reduce","acc","n","concat","replace","get","useKeyNavigation","_ref","dispatchFocusedPath","path","dispatchPath","pathMap","handleToggle","handlePressDown","focusedChipIndex","dispatchFocusedChipIndex","value","valueToItemMap","multiselect","isTargetAmount","currentIndex","length","currentLength","onKeyDown","event","code","type","Array","isArray","currentItem","items","toString","total","preventDefault","disabled"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"useKeyboardNavigation.js","sources":["../../../../src/components/Select/hooks/useKeyboardNavigation.ts"],"sourcesContent":["import type { KeyboardEvent, Dispatch } from 'react';\nimport React from 'react';\n\nimport {\n PathAction,\n PathState,\n FocusedPathAction,\n FocusedPathState,\n FocusedChipIndexState,\n FocusedChipIndexAction,\n} from '../reducers';\nimport { SelectProps } from '../Select.types';\nimport type { MergedDropdownNodeTransformed } from '../ui/Inner/ui/Item/Item.types';\n\nimport { PathMapType, FocusedToValueMapType, ValueToItemMapType } from './usePathMaps';\n\nconst JUMP_SIZE = 10;\n\nexport const keys = {\n Enter: 'Enter',\n Space: 'Space',\n Tab: 'Tab',\n Escape: 'Escape',\n Backspace: 'Backspace',\n ArrowLeft: 'ArrowLeft',\n ArrowRight: 'ArrowRight',\n ArrowUp: 'ArrowUp',\n ArrowDown: 'ArrowDown',\n Home: 'Home',\n End: 'End',\n PageUp: 'PageUp',\n PageDown: 'PageDown',\n};\n\nconst getFurtherPath = (focusedPath: FocusedPathState, focusedToValueMap: FocusedToValueMapType) => {\n const focusedPathAsString = focusedPath.reduce((acc, n) => `${acc}/${n}`, '').replace(/^(\\/)/, '');\n\n return focusedToValueMap.get(focusedPathAsString);\n};\n\ntype Props = {\n focusedPath: FocusedPathState;\n dispatchFocusedPath: Dispatch<FocusedPathAction>;\n path: PathState;\n dispatchPath: Dispatch<PathAction>;\n pathMap: PathMapType;\n focusedToValueMap: FocusedToValueMapType;\n handleToggle: (opened: boolean) => void;\n handlePressDown: (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => void;\n focusedChipIndex: FocusedChipIndexState;\n dispatchFocusedChipIndex: Dispatch<FocusedChipIndexAction>;\n value: string | string[];\n valueToItemMap: ValueToItemMapType;\n multiselect: SelectProps['multiselect'];\n isTargetAmount: SelectProps['isTargetAmount'];\n};\n\ntype ReturnedProps = {\n onKeyDown: (event: React.KeyboardEvent<HTMLElement>) => void;\n};\n\nexport const useKeyNavigation = ({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleToggle,\n handlePressDown,\n focusedChipIndex,\n dispatchFocusedChipIndex,\n value,\n valueToItemMap,\n multiselect,\n isTargetAmount,\n}: Props): ReturnedProps => {\n const currentIndex: number = focusedPath?.[focusedPath.length - 1] || 0;\n const currentLength: number = pathMap.get(path?.[focusedPath.length - 1]) || 0;\n\n const onKeyDown = (event: KeyboardEvent<HTMLElement>) => {\n switch (event.code) {\n case keys.ArrowUp: {\n if (focusedPath.length) {\n if (currentIndex > 0) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\n dispatchFocusedPath({ type: 'change_last_focus', value: currentIndex - 1 });\n }\n } else {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n handleToggle(true);\n }\n\n if (Array.isArray(value)) {\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n\n break;\n }\n\n case keys.ArrowDown: {\n if (focusedPath.length) {\n if (currentIndex + 1 < currentLength) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\n dispatchFocusedPath({ type: 'change_last_focus', value: currentIndex + 1 });\n }\n } else {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n handleToggle(true);\n }\n\n if (Array.isArray(value)) {\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n\n break;\n }\n\n case keys.ArrowLeft: {\n if (path[0]) {\n if (focusedPath.length) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n } else {\n dispatchFocusedPath({ type: 'return_prev_focus' });\n }\n }\n\n if (path.length === 1) {\n handleToggle(false);\n }\n } else if (Array.isArray(value) && !isTargetAmount) {\n dispatchFocusedChipIndex({ type: 'moveLeft' });\n }\n\n break;\n }\n\n case keys.ArrowRight: {\n if (path[0]) {\n if (!focusedPath.length) {\n break;\n }\n\n const currentItem = getFurtherPath(focusedPath, focusedToValueMap);\n\n if (currentItem?.items) {\n if (path.length > focusedPath.length) {\n dispatchFocusedPath({ type: 'add_focus', value: 0 });\n } else {\n dispatchPath({ type: 'added_next_level', value: currentItem.value.toString() });\n }\n }\n } else if (Array.isArray(value) && !isTargetAmount) {\n dispatchFocusedChipIndex({ type: 'moveRight', total: value.length });\n }\n\n break;\n }\n\n case keys.Backspace: {\n if (!multiselect) break;\n\n if (focusedChipIndex !== null) {\n const currentItem = valueToItemMap.get(value[focusedChipIndex])!;\n\n handlePressDown(currentItem);\n\n if (value.length === 1) {\n dispatchFocusedChipIndex({ type: 'reset' });\n\n break;\n }\n\n if (focusedChipIndex === value.length - 1) {\n dispatchFocusedChipIndex({ type: 'moveLeft' });\n\n break;\n }\n }\n\n break;\n }\n\n case keys.Space: {\n event.preventDefault();\n\n const currentItem = getFurtherPath(focusedPath, focusedToValueMap);\n\n if (!path[0]) {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n break;\n }\n\n if (!currentItem || currentItem?.disabled) {\n break;\n }\n\n handlePressDown(currentItem);\n\n break;\n }\n\n case keys.Enter: {\n event.preventDefault();\n\n if (Array.isArray(value)) {\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n\n const currentItem = getFurtherPath(focusedPath, focusedToValueMap)!;\n\n if (currentItem?.disabled) {\n break;\n }\n\n if (!path[0]) {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n break;\n }\n\n if (currentItem?.items) {\n if (path.length > focusedPath.length) {\n dispatchFocusedPath({ type: 'add_focus', value: 0 });\n } else {\n dispatchPath({ type: 'added_next_level', value: currentItem.value.toString() });\n }\n\n break;\n }\n\n handlePressDown(currentItem);\n\n break;\n }\n\n case keys.Tab:\n case keys.Escape: {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n dispatchFocusedChipIndex({ type: 'reset' });\n handleToggle(false);\n\n break;\n }\n\n case keys.Home: {\n if (path[0]) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\n dispatchFocusedPath({ type: 'change_last_focus', value: 0 });\n } else {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n\n handleToggle(true);\n }\n\n break;\n }\n\n case keys.End: {\n if (path[0]) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\n dispatchFocusedPath({ type: 'change_last_focus', value: currentLength - 1 });\n } else {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'change_last_focus', value: (pathMap.get('root') || 0) - 1 });\n\n handleToggle(true);\n }\n\n break;\n }\n\n case keys.PageUp: {\n if (!path[0]) {\n break;\n }\n\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\n if (currentIndex <= JUMP_SIZE) {\n dispatchFocusedPath({ type: 'change_last_focus', value: 0 });\n } else {\n dispatchFocusedPath({ type: 'change_last_focus', value: currentIndex - JUMP_SIZE });\n }\n\n break;\n }\n\n case keys.PageDown: {\n if (!path[0]) {\n break;\n }\n\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\n if (currentLength - currentIndex <= JUMP_SIZE) {\n dispatchFocusedPath({ type: 'change_last_focus', value: currentLength - 1 });\n } else {\n dispatchFocusedPath({ type: 'change_last_focus', value: currentIndex + JUMP_SIZE });\n }\n\n break;\n }\n\n default: {\n break;\n }\n }\n };\n\n return { onKeyDown };\n};\n"],"names":["JUMP_SIZE","keys","Enter","Space","Tab","Escape","Backspace","ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End","PageUp","PageDown","getFurtherPath","focusedPath","focusedToValueMap","focusedPathAsString","reduce","acc","n","concat","replace","get","useKeyNavigation","_ref","dispatchFocusedPath","path","dispatchPath","pathMap","handleToggle","handlePressDown","focusedChipIndex","dispatchFocusedChipIndex","value","valueToItemMap","multiselect","isTargetAmount","currentIndex","length","currentLength","onKeyDown","event","code","type","Array","isArray","currentItem","items","toString","total","preventDefault","disabled"],"mappings":"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"}
|
@@ -36,7 +36,7 @@ var getLabel = function getLabel(_ref) {
|
|
36
36
|
text: renderValue ? renderValue(valueToItemMap.get(currentValue)) : itemLabel,
|
37
37
|
onClick: function onClick(e) {
|
38
38
|
e.stopPropagation();
|
39
|
-
onChipClick(currentValue
|
39
|
+
onChipClick(currentValue);
|
40
40
|
},
|
41
41
|
focused: focusedChipIndex === index
|
42
42
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Textfield.js","sources":["../../../../../../../src/components/Select/ui/Target/ui/Textfield/Textfield.tsx"],"sourcesContent":["import React from 'react';\n\nimport { cx, isEmpty } from '../../../../../../utils';\nimport { classes } from '../../../../Select.tokens';\nimport { sizeToIconSize } from '../../../../utils';\n\nimport { TextfieldProps, GetTextfieldLabelProps } from './Textfield.types';\nimport { Chip } from './ui';\nimport {\n StyledButton,\n StyledArrow,\n Wrapper,\n ChipWrapper,\n TextfieldWrapper,\n IconArrowWrapper,\n Label,\n Placeholder,\n InnerLabel,\n InnerLabelWrapper,\n ContentLeftWrapper,\n Value,\n} from './Textfield.styles';\n\nconst getLabel = ({\n value,\n isTargetAmount,\n valueToItemMap,\n onChipClick,\n label,\n placeholder,\n focusedChipIndex,\n labelPlacement,\n size,\n renderValue,\n}: GetTextfieldLabelProps) => {\n if (isEmpty(value) && typeof value !== 'number') {\n if (!label || labelPlacement === 'outer') {\n return <Placeholder>{placeholder}</Placeholder>;\n }\n\n return <Label>{label}</Label>;\n }\n\n if (Array.isArray(value) && isTargetAmount) {\n return <Chip text={`Выбрано: ${value.length}`} isTargetAmount={isTargetAmount} />;\n }\n\n if (Array.isArray(value)) {\n return value.map((currentValue, index) => {\n const itemLabel = valueToItemMap.get(currentValue)!.label;\n\n return (\n <Chip\n text={renderValue ? renderValue(valueToItemMap.get(currentValue)!) : itemLabel}\n onClick={(e: React.MouseEvent<HTMLElement>) => {\n e.stopPropagation();\n onChipClick(currentValue.toString());\n }}\n focused={focusedChipIndex === index}\n />\n );\n });\n }\n\n const itemLabel = valueToItemMap.get(value)!.label;\n\n if (!label || labelPlacement === 'outer') {\n return <Value>{renderValue ? renderValue(valueToItemMap.get(value)!) : itemLabel}</Value>;\n }\n\n return (\n <InnerLabelWrapper>\n {size !== 'xs' && <InnerLabel>{label}</InnerLabel>}\n <Value>{renderValue ? renderValue(valueToItemMap.get(value)!) : itemLabel}</Value>\n </InnerLabelWrapper>\n );\n};\n\nexport const Textfield: React.FC<TextfieldProps> = ({\n opened,\n value,\n valueToItemMap,\n onChipClick,\n label,\n placeholder,\n onKeyDown,\n focusedChipIndex,\n labelPlacement,\n size,\n contentLeft,\n disabled,\n renderValue,\n focusedPath,\n focusedToValueMap,\n selectProps,\n}) => {\n const withArrowInverse = opened ? classes.arrowInverse : undefined;\n\n const getActiveDescendant = () => {\n const focusedPathAsString = focusedPath.reduce((acc, n) => `${acc}/${n}`, '').replace(/^(\\/)/, '');\n return focusedToValueMap?.get(focusedPathAsString)?.value.toString();\n };\n\n return (\n <TextfieldWrapper opened={opened} value={value}>\n <StyledButton\n stretching=\"filled\"\n className={cx(\n classes.textfieldTarget,\n opened || focusedChipIndex !== null ? classes.selectWithoutBoxShadow : undefined,\n )}\n onKeyDown={onKeyDown}\n disabled={disabled}\n role=\"combobox\"\n aria-controls=\"tree_level_1\"\n aria-expanded={opened}\n aria-activedescendant={getActiveDescendant()}\n aria-label={label}\n renderTarget={Boolean(selectProps.renderTarget)}\n >\n <Wrapper>\n {selectProps?.renderTarget ? (\n selectProps.renderTarget(\n Array.isArray(value)\n ? value.map((value) => valueToItemMap.get(value)!)\n : valueToItemMap.get(value)!,\n )\n ) : (\n <>\n {contentLeft && (!selectProps.multiselect || isEmpty(value)) && (\n <ContentLeftWrapper>{contentLeft}</ContentLeftWrapper>\n )}\n\n <ChipWrapper multiselect={selectProps.multiselect} value={value}>\n {getLabel({\n value,\n valueToItemMap,\n onChipClick,\n focusedChipIndex,\n label,\n labelPlacement,\n placeholder,\n isTargetAmount: selectProps.isTargetAmount,\n renderValue,\n size,\n })}\n </ChipWrapper>\n </>\n )}\n\n <IconArrowWrapper>\n <StyledArrow\n size={sizeToIconSize(size)}\n color=\"inherit\"\n className={cx(classes.selectTargetArrow, withArrowInverse)}\n />\n </IconArrowWrapper>\n </Wrapper>\n </StyledButton>\n </TextfieldWrapper>\n );\n};\n"],"names":["getLabel","_ref","value","isTargetAmount","valueToItemMap","onChipClick","label","placeholder","focusedChipIndex","labelPlacement","size","renderValue","isEmpty","React","createElement","Placeholder","Label","Array","isArray","Chip","text","concat","length","map","currentValue","index","itemLabel","get","onClick","e","stopPropagation","toString","focused","Value","InnerLabelWrapper","InnerLabel","Textfield","_ref2","opened","onKeyDown","contentLeft","disabled","focusedPath","focusedToValueMap","selectProps","withArrowInverse","classes","arrowInverse","undefined","getActiveDescendant","_focusedToValueMap$ge","focusedPathAsString","reduce","acc","n","replace","TextfieldWrapper","StyledButton","stretching","className","cx","textfieldTarget","selectWithoutBoxShadow","role","renderTarget","Boolean","Wrapper","Fragment","multiselect","ContentLeftWrapper","ChipWrapper","IconArrowWrapper","StyledArrow","sizeToIconSize","color","selectTargetArrow"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Textfield.js","sources":["../../../../../../../src/components/Select/ui/Target/ui/Textfield/Textfield.tsx"],"sourcesContent":["import React from 'react';\n\nimport { cx, isEmpty } from '../../../../../../utils';\nimport { classes } from '../../../../Select.tokens';\nimport { sizeToIconSize } from '../../../../utils';\n\nimport { TextfieldProps, GetTextfieldLabelProps } from './Textfield.types';\nimport { Chip } from './ui';\nimport {\n StyledButton,\n StyledArrow,\n Wrapper,\n ChipWrapper,\n TextfieldWrapper,\n IconArrowWrapper,\n Label,\n Placeholder,\n InnerLabel,\n InnerLabelWrapper,\n ContentLeftWrapper,\n Value,\n} from './Textfield.styles';\n\nconst getLabel = ({\n value,\n isTargetAmount,\n valueToItemMap,\n onChipClick,\n label,\n placeholder,\n focusedChipIndex,\n labelPlacement,\n size,\n renderValue,\n}: GetTextfieldLabelProps) => {\n if (isEmpty(value) && typeof value !== 'number') {\n if (!label || labelPlacement === 'outer') {\n return <Placeholder>{placeholder}</Placeholder>;\n }\n\n return <Label>{label}</Label>;\n }\n\n if (Array.isArray(value) && isTargetAmount) {\n return <Chip text={`Выбрано: ${value.length}`} isTargetAmount={isTargetAmount} />;\n }\n\n if (Array.isArray(value)) {\n return value.map((currentValue, index) => {\n const itemLabel = valueToItemMap.get(currentValue)!.label;\n\n return (\n <Chip\n text={renderValue ? renderValue(valueToItemMap.get(currentValue)!) : itemLabel}\n onClick={(e: React.MouseEvent<HTMLElement>) => {\n e.stopPropagation();\n onChipClick(currentValue);\n }}\n focused={focusedChipIndex === index}\n />\n );\n });\n }\n\n const itemLabel = valueToItemMap.get(value)!.label;\n\n if (!label || labelPlacement === 'outer') {\n return <Value>{renderValue ? renderValue(valueToItemMap.get(value)!) : itemLabel}</Value>;\n }\n\n return (\n <InnerLabelWrapper>\n {size !== 'xs' && <InnerLabel>{label}</InnerLabel>}\n <Value>{renderValue ? renderValue(valueToItemMap.get(value)!) : itemLabel}</Value>\n </InnerLabelWrapper>\n );\n};\n\nexport const Textfield: React.FC<TextfieldProps> = ({\n opened,\n value,\n valueToItemMap,\n onChipClick,\n label,\n placeholder,\n onKeyDown,\n focusedChipIndex,\n labelPlacement,\n size,\n contentLeft,\n disabled,\n renderValue,\n focusedPath,\n focusedToValueMap,\n selectProps,\n}) => {\n const withArrowInverse = opened ? classes.arrowInverse : undefined;\n\n const getActiveDescendant = () => {\n const focusedPathAsString = focusedPath.reduce((acc, n) => `${acc}/${n}`, '').replace(/^(\\/)/, '');\n return focusedToValueMap?.get(focusedPathAsString)?.value.toString();\n };\n\n return (\n <TextfieldWrapper opened={opened} value={value}>\n <StyledButton\n stretching=\"filled\"\n className={cx(\n classes.textfieldTarget,\n opened || focusedChipIndex !== null ? classes.selectWithoutBoxShadow : undefined,\n )}\n onKeyDown={onKeyDown}\n disabled={disabled}\n role=\"combobox\"\n aria-controls=\"tree_level_1\"\n aria-expanded={opened}\n aria-activedescendant={getActiveDescendant()}\n aria-label={label}\n renderTarget={Boolean(selectProps.renderTarget)}\n >\n <Wrapper>\n {selectProps?.renderTarget ? (\n selectProps.renderTarget(\n Array.isArray(value)\n ? value.map((value) => valueToItemMap.get(value)!)\n : valueToItemMap.get(value)!,\n )\n ) : (\n <>\n {contentLeft && (!selectProps.multiselect || isEmpty(value)) && (\n <ContentLeftWrapper>{contentLeft}</ContentLeftWrapper>\n )}\n\n <ChipWrapper multiselect={selectProps.multiselect} value={value}>\n {getLabel({\n value,\n valueToItemMap,\n onChipClick,\n focusedChipIndex,\n label,\n labelPlacement,\n placeholder,\n isTargetAmount: selectProps.isTargetAmount,\n renderValue,\n size,\n })}\n </ChipWrapper>\n </>\n )}\n\n <IconArrowWrapper>\n <StyledArrow\n size={sizeToIconSize(size)}\n color=\"inherit\"\n className={cx(classes.selectTargetArrow, withArrowInverse)}\n />\n </IconArrowWrapper>\n </Wrapper>\n </StyledButton>\n </TextfieldWrapper>\n );\n};\n"],"names":["getLabel","_ref","value","isTargetAmount","valueToItemMap","onChipClick","label","placeholder","focusedChipIndex","labelPlacement","size","renderValue","isEmpty","React","createElement","Placeholder","Label","Array","isArray","Chip","text","concat","length","map","currentValue","index","itemLabel","get","onClick","e","stopPropagation","focused","Value","InnerLabelWrapper","InnerLabel","Textfield","_ref2","opened","onKeyDown","contentLeft","disabled","focusedPath","focusedToValueMap","selectProps","withArrowInverse","classes","arrowInverse","undefined","getActiveDescendant","_focusedToValueMap$ge","focusedPathAsString","reduce","acc","n","replace","toString","TextfieldWrapper","StyledButton","stretching","className","cx","textfieldTarget","selectWithoutBoxShadow","role","renderTarget","Boolean","Wrapper","Fragment","multiselect","ContentLeftWrapper","ChipWrapper","IconArrowWrapper","StyledArrow","sizeToIconSize","color","selectTargetArrow"],"mappings":"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"}
|
@@ -82,7 +82,7 @@ var _exp47 = function _exp47() {
|
|
82
82
|
return function (_ref6) {
|
83
83
|
var multiselect = _ref6.multiselect,
|
84
84
|
value = _ref6.value;
|
85
|
-
return "calc(".concat(constants.focusSize, " + ").concat(multiselect && value && value.
|
85
|
+
return "calc(".concat(constants.focusSize, " + ").concat(multiselect && value && value.length > 0 ? "var(".concat(tokens.focusOffset, ")") : 0, ")");
|
86
86
|
};
|
87
87
|
};
|
88
88
|
var ChipWrapper = /*#__PURE__*/styled('div')({
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Textfield.styles.js","sources":["../../../../../../../src/components/Select/ui/Target/ui/Textfield/Textfield.styles.tsx"],"sourcesContent":["import { styled } from '@linaria/react';\n\nimport { isEmpty } from '../../../../../../utils';\nimport { applyEllipsis, addFocus } from '../../../../../../mixins';\nimport { IconDisclosureDownCentered } from '../../../../../_Icon';\nimport { component, mergeConfig } from '../../../../../../engines';\nimport { buttonConfig, buttonTokens } from '../../../../../Button';\nimport { tokens, classes, constants } from '../../../../Select.tokens';\nimport type { MergedSelectProps } from '../../../../Select.types';\n\nconst mergedButtonConfig = mergeConfig(buttonConfig);\nconst Button = component(mergedButtonConfig);\n\nexport const TextfieldWrapper = styled.div<{ opened: boolean; value: MergedSelectProps['value'] }>`\n display: inline;\n\n .${classes.textfieldTarget} {\n transition: 100ms;\n background: ${({ opened }) =>\n opened\n ? `var(${tokens.targetTextfieldBackgroundColorOpened})`\n : `var(${tokens.targetTextfieldBackgroundColor})`};\n padding: ${({ value }) =>\n Array.isArray(value) && !isEmpty(value)\n ? `0 var(${tokens.targetTextfieldChipPadding})`\n : `0 var(${tokens.targetTextfieldPadding})`};\n border: ${({ opened }) =>\n opened\n ? `var(${tokens.targetTextfieldBorderSize}) solid var(${tokens.targetTextfieldBorderOpenedColor})`\n : `var(${tokens.targetTextfieldBorderSize}) solid var(${tokens.targetTextfieldBorderColor})`};\n }\n\n .${classes.textfieldTarget}:hover {\n transition: 100ms;\n border: ${({ opened }) =>\n opened\n ? `var(${tokens.targetTextfieldBorderSize}) solid var(${tokens.targetTextfieldBorderOpenedColor})`\n : `var(${tokens.targetTextfieldBorderSize}) solid var(${tokens.targetTextfieldBorderColorHover})`};\n }\n\n .${classes.selectWithoutBoxShadow}::before {\n box-shadow: none !important;\n }\n`;\n\nexport const StyledButton = styled(Button)<{ renderTarget: boolean }>`\n ${buttonTokens.buttonColor}: var(${constants.textfieldTargetColor});\n ${buttonTokens.buttonColorHover}: var(${constants.textfieldTargetColor});\n ${buttonTokens.buttonColorActive}: var(${constants.textfieldTargetColor});\n ${buttonTokens.buttonHeight}: ${({ renderTarget }) => (renderTarget ? 'auto' : `var(${tokens.targetHeight})`)};\n ${buttonTokens.buttonWidth}: 100%;\n ${buttonTokens.buttonPadding}: var(${tokens.targetTextfieldPadding});\n ${buttonTokens.buttonRadius}: var(${tokens.borderRadius});\n ${buttonTokens.buttonFontFamily}: var(${tokens.fontFamily});\n ${buttonTokens.buttonFontSize}: var(${tokens.fontSize});\n ${buttonTokens.buttonFontStyle}: var(${tokens.fontStyle});\n ${buttonTokens.buttonFontWeight}:var(${tokens.fontWeight});\n ${buttonTokens.buttonLetterSpacing}: var(${tokens.fontLetterSpacing});\n ${buttonTokens.buttonLineHeight}: var(${tokens.fontLineHeight});\n ${buttonTokens.buttonDisabledOpacity}: ${constants.opacity};\n ${buttonTokens.buttonFocusColor}: var(${constants.focusColor});\n box-shadow: inset 0 0 0 ${tokens.targetTextfieldBorderSize} var(${tokens.targetTextfieldBorderColor});\n text-align: left;\n\n ${addFocus({\n outlineOffset: tokens.targetTextfieldBorderSize,\n outlineSize: constants.focusSize,\n outlineRadius: `calc(var(${tokens.borderRadius}) - ${tokens.targetTextfieldBorderSize})`,\n outlineColor: `var(${constants.focusColor})`,\n })}\n`;\n\nexport const StyledArrow = styled(IconDisclosureDownCentered)``;\n\nexport const IconArrowWrapper = styled.div`\n line-height: 0;\n margin: var(${tokens.targetTextfieldArrowMargin});\n color: var(${tokens.targetTextfieldArrowColor});\n\n &:hover {\n color: var(${tokens.targetTextfieldArrowColorHover});\n }\n\n &:active {\n color: var(${tokens.targetTextfieldArrowColorActive});\n }\n`;\n\nexport const Wrapper = styled.div`\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: space-between;\n\n .${classes.arrowInverse} {\n transform: rotate(-180deg);\n }\n`;\n\nexport const ChipWrapper = styled.div<{\n multiselect: MergedSelectProps['multiselect'];\n value: MergedSelectProps['value'];\n}>`\n width: 100%;\n display: flex;\n min-width: 0;\n padding: ${({ multiselect, value }) =>\n `calc(${constants.focusSize} + ${\n multiselect && value && value.toString().length > 0 ? `var(${tokens.focusOffset})` : 0\n })`};\n gap: 0.25rem;\n overflow-x: scroll;\n border-top-right-radius: var(${tokens.chipBorderRadius});\n border-bottom-right-radius: var(${tokens.chipBorderRadius});\n\n -ms-overflow-style: none;\n scrollbar-width: none;\n\n &::-webkit-scrollbar {\n display: none;\n }\n`;\n\nexport const Label = styled.label`\n color: var(${constants.textfieldInnerLabelColor});\n font-family: var(${tokens.fontFamily});\n font-size: var(${tokens.fontSize});\n font-style: var(${tokens.fontStyle});\n font-weight: var(${tokens.fontWeight});\n letter-spacing: var(${tokens.fontLetterSpacing});\n line-height: var(${tokens.fontLineHeight});\n`;\n\nexport const Placeholder = styled.div`\n color: var(${constants.textfieldPlaceholderColor});\n font-family: var(${tokens.fontFamily});\n font-size: var(${tokens.fontSize});\n font-style: var(${tokens.fontStyle});\n font-weight: var(${tokens.fontWeight});\n letter-spacing: var(${tokens.fontLetterSpacing});\n line-height: var(${tokens.fontLineHeight});\n`;\n\nexport const InnerLabelWrapper = styled.div`\n display: flex;\n flex-direction: column;\n align-items: start;\n row-gap: var(${tokens.innerLabelGap});\n font-family: var(${tokens.fontFamily});\n font-size: var(${tokens.fontSize});\n font-style: var(${tokens.fontStyle});\n font-weight: var(${tokens.fontWeight});\n letter-spacing: var(${tokens.fontLetterSpacing});\n line-height: var(${tokens.fontLineHeight});\n`;\n\nexport const InnerLabel = styled.label`\n color: var(${constants.textfieldInnerLabelColor});\n font-family: var(${constants.fontFamily});\n font-size: var(${constants.fontSize});\n font-style: var(${constants.fontStyle});\n font-weight: var(${constants.fontWeight});\n letter-spacing: var(${constants.fontLetterSpacing});\n line-height: var(${constants.fontLineHeight});\n text-align: left;\n`;\n\nexport const ContentLeftWrapper = styled.div`\n flex: none;\n margin-left: -0.125rem;\n margin-right: 0.375rem;\n line-height: 0;\n`;\n\nexport const Value = styled.span`\n ${applyEllipsis()}\n`;\n"],"names":["mergedButtonConfig","mergeConfig","buttonConfig","Button","component","_exp2","_ref","opened","concat","tokens","targetTextfieldBackgroundColorOpened","targetTextfieldBackgroundColor","_exp3","_ref2","value","Array","isArray","isEmpty","targetTextfieldChipPadding","targetTextfieldPadding","_exp4","_ref3","targetTextfieldBorderSize","targetTextfieldBorderOpenedColor","targetTextfieldBorderColor","_exp6","_ref4","targetTextfieldBorderColorHover","TextfieldWrapper","styled","name","class","propsAsIs","vars","_exp8","_exp16","_ref5","renderTarget","targetHeight","StyledButton","_exp41","IconDisclosureDownCentered","StyledArrow","IconArrowWrapper","Wrapper","_exp47","_ref6","multiselect","constants","focusSize","toString","length","focusOffset","ChipWrapper","Label","Placeholder","InnerLabelWrapper","InnerLabel","ContentLeftWrapper","Value"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Textfield.styles.js","sources":["../../../../../../../src/components/Select/ui/Target/ui/Textfield/Textfield.styles.tsx"],"sourcesContent":["import { styled } from '@linaria/react';\n\nimport { isEmpty } from '../../../../../../utils';\nimport { applyEllipsis, addFocus } from '../../../../../../mixins';\nimport { IconDisclosureDownCentered } from '../../../../../_Icon';\nimport { component, mergeConfig } from '../../../../../../engines';\nimport { buttonConfig, buttonTokens } from '../../../../../Button';\nimport { tokens, classes, constants } from '../../../../Select.tokens';\nimport type { SelectProps } from '../../../../Select.types';\n\nconst mergedButtonConfig = mergeConfig(buttonConfig);\nconst Button = component(mergedButtonConfig);\n\nexport const TextfieldWrapper = styled.div<{ opened: boolean; value: SelectProps['value'] }>`\n display: inline;\n\n .${classes.textfieldTarget} {\n transition: 100ms;\n background: ${({ opened }) =>\n opened\n ? `var(${tokens.targetTextfieldBackgroundColorOpened})`\n : `var(${tokens.targetTextfieldBackgroundColor})`};\n padding: ${({ value }) =>\n Array.isArray(value) && !isEmpty(value)\n ? `0 var(${tokens.targetTextfieldChipPadding})`\n : `0 var(${tokens.targetTextfieldPadding})`};\n border: ${({ opened }) =>\n opened\n ? `var(${tokens.targetTextfieldBorderSize}) solid var(${tokens.targetTextfieldBorderOpenedColor})`\n : `var(${tokens.targetTextfieldBorderSize}) solid var(${tokens.targetTextfieldBorderColor})`};\n }\n\n .${classes.textfieldTarget}:hover {\n transition: 100ms;\n border: ${({ opened }) =>\n opened\n ? `var(${tokens.targetTextfieldBorderSize}) solid var(${tokens.targetTextfieldBorderOpenedColor})`\n : `var(${tokens.targetTextfieldBorderSize}) solid var(${tokens.targetTextfieldBorderColorHover})`};\n }\n\n .${classes.selectWithoutBoxShadow}::before {\n box-shadow: none !important;\n }\n`;\n\nexport const StyledButton = styled(Button)<{ renderTarget: boolean }>`\n ${buttonTokens.buttonColor}: var(${constants.textfieldTargetColor});\n ${buttonTokens.buttonColorHover}: var(${constants.textfieldTargetColor});\n ${buttonTokens.buttonColorActive}: var(${constants.textfieldTargetColor});\n ${buttonTokens.buttonHeight}: ${({ renderTarget }) => (renderTarget ? 'auto' : `var(${tokens.targetHeight})`)};\n ${buttonTokens.buttonWidth}: 100%;\n ${buttonTokens.buttonPadding}: var(${tokens.targetTextfieldPadding});\n ${buttonTokens.buttonRadius}: var(${tokens.borderRadius});\n ${buttonTokens.buttonFontFamily}: var(${tokens.fontFamily});\n ${buttonTokens.buttonFontSize}: var(${tokens.fontSize});\n ${buttonTokens.buttonFontStyle}: var(${tokens.fontStyle});\n ${buttonTokens.buttonFontWeight}:var(${tokens.fontWeight});\n ${buttonTokens.buttonLetterSpacing}: var(${tokens.fontLetterSpacing});\n ${buttonTokens.buttonLineHeight}: var(${tokens.fontLineHeight});\n ${buttonTokens.buttonDisabledOpacity}: ${constants.opacity};\n ${buttonTokens.buttonFocusColor}: var(${constants.focusColor});\n box-shadow: inset 0 0 0 ${tokens.targetTextfieldBorderSize} var(${tokens.targetTextfieldBorderColor});\n text-align: left;\n\n ${addFocus({\n outlineOffset: tokens.targetTextfieldBorderSize,\n outlineSize: constants.focusSize,\n outlineRadius: `calc(var(${tokens.borderRadius}) - ${tokens.targetTextfieldBorderSize})`,\n outlineColor: `var(${constants.focusColor})`,\n })}\n`;\n\nexport const StyledArrow = styled(IconDisclosureDownCentered)``;\n\nexport const IconArrowWrapper = styled.div`\n line-height: 0;\n margin: var(${tokens.targetTextfieldArrowMargin});\n color: var(${tokens.targetTextfieldArrowColor});\n\n &:hover {\n color: var(${tokens.targetTextfieldArrowColorHover});\n }\n\n &:active {\n color: var(${tokens.targetTextfieldArrowColorActive});\n }\n`;\n\nexport const Wrapper = styled.div`\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: space-between;\n\n .${classes.arrowInverse} {\n transform: rotate(-180deg);\n }\n`;\n\nexport const ChipWrapper = styled.div<{ multiselect: SelectProps['multiselect']; value: SelectProps['value'] }>`\n width: 100%;\n display: flex;\n min-width: 0;\n padding: ${({ multiselect, value }) =>\n `calc(${constants.focusSize} + ${\n multiselect && value && value.length > 0 ? `var(${tokens.focusOffset})` : 0\n })`};\n gap: 0.25rem;\n overflow-x: scroll;\n border-top-right-radius: var(${tokens.chipBorderRadius});\n border-bottom-right-radius: var(${tokens.chipBorderRadius});\n\n -ms-overflow-style: none;\n scrollbar-width: none;\n\n &::-webkit-scrollbar {\n display: none;\n }\n`;\n\nexport const Label = styled.label`\n color: var(${constants.textfieldInnerLabelColor});\n font-family: var(${tokens.fontFamily});\n font-size: var(${tokens.fontSize});\n font-style: var(${tokens.fontStyle});\n font-weight: var(${tokens.fontWeight});\n letter-spacing: var(${tokens.fontLetterSpacing});\n line-height: var(${tokens.fontLineHeight});\n`;\n\nexport const Placeholder = styled.div`\n color: var(${constants.textfieldPlaceholderColor});\n font-family: var(${tokens.fontFamily});\n font-size: var(${tokens.fontSize});\n font-style: var(${tokens.fontStyle});\n font-weight: var(${tokens.fontWeight});\n letter-spacing: var(${tokens.fontLetterSpacing});\n line-height: var(${tokens.fontLineHeight});\n`;\n\nexport const InnerLabelWrapper = styled.div`\n display: flex;\n flex-direction: column;\n align-items: start;\n row-gap: var(${tokens.innerLabelGap});\n font-family: var(${tokens.fontFamily});\n font-size: var(${tokens.fontSize});\n font-style: var(${tokens.fontStyle});\n font-weight: var(${tokens.fontWeight});\n letter-spacing: var(${tokens.fontLetterSpacing});\n line-height: var(${tokens.fontLineHeight});\n`;\n\nexport const InnerLabel = styled.label`\n color: var(${constants.textfieldInnerLabelColor});\n font-family: var(${constants.fontFamily});\n font-size: var(${constants.fontSize});\n font-style: var(${constants.fontStyle});\n font-weight: var(${constants.fontWeight});\n letter-spacing: var(${constants.fontLetterSpacing});\n line-height: var(${constants.fontLineHeight});\n text-align: left;\n`;\n\nexport const ContentLeftWrapper = styled.div`\n flex: none;\n margin-left: -0.125rem;\n margin-right: 0.375rem;\n line-height: 0;\n`;\n\nexport const Value = styled.span`\n ${applyEllipsis()}\n`;\n"],"names":["mergedButtonConfig","mergeConfig","buttonConfig","Button","component","_exp2","_ref","opened","concat","tokens","targetTextfieldBackgroundColorOpened","targetTextfieldBackgroundColor","_exp3","_ref2","value","Array","isArray","isEmpty","targetTextfieldChipPadding","targetTextfieldPadding","_exp4","_ref3","targetTextfieldBorderSize","targetTextfieldBorderOpenedColor","targetTextfieldBorderColor","_exp6","_ref4","targetTextfieldBorderColorHover","TextfieldWrapper","styled","name","class","propsAsIs","vars","_exp8","_exp16","_ref5","renderTarget","targetHeight","StyledButton","_exp41","IconDisclosureDownCentered","StyledArrow","IconArrowWrapper","Wrapper","_exp47","_ref6","multiselect","constants","focusSize","length","focusOffset","ChipWrapper","Label","Placeholder","InnerLabelWrapper","InnerLabel","ContentLeftWrapper","Value"],"mappings":"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"}
|
@@ -17,7 +17,7 @@ var getButtonLabel = function getButtonLabel(_ref3) {
|
|
17
17
|
if (isEmpty(value) && typeof value !== 'number') {
|
18
18
|
return label || '';
|
19
19
|
}
|
20
|
-
if (selectProps.multiselect &&
|
20
|
+
if (selectProps.multiselect && selectProps.isTargetAmount) {
|
21
21
|
return "\u0412\u044B\u0431\u0440\u0430\u043D\u043E: ".concat(value.length);
|
22
22
|
}
|
23
23
|
if (selectProps.multiselect && Array.isArray(value)) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getButtonLabel.js","sources":["../../../../src/components/Select/utils/getButtonLabel.ts"],"sourcesContent":["import { GetButtonLabelProps } from '../ui/Target/ui/Button/Button.types';\nimport { isEmpty } from '../../../utils';\n\nconst getLabel = ({\n value,\n valueToItemMap,\n renderValue,\n}: Omit<GetButtonLabelProps, 'label' | 'selectProps' | 'value'> & { value: any }): string => {\n const { label } = valueToItemMap.get(value)!;\n\n return renderValue ? renderValue(valueToItemMap.get(value)!) : label;\n};\n\nexport const getButtonLabel = ({\n value,\n valueToItemMap,\n label,\n renderValue,\n selectProps,\n}: GetButtonLabelProps): string => {\n if (isEmpty(value) && typeof value !== 'number') {\n return label || '';\n }\n\n if (selectProps.multiselect &&
|
1
|
+
{"version":3,"file":"getButtonLabel.js","sources":["../../../../src/components/Select/utils/getButtonLabel.ts"],"sourcesContent":["import { GetButtonLabelProps } from '../ui/Target/ui/Button/Button.types';\nimport { isEmpty } from '../../../utils';\n\nconst getLabel = ({\n value,\n valueToItemMap,\n renderValue,\n}: Omit<GetButtonLabelProps, 'label' | 'selectProps' | 'value'> & { value: any }): string => {\n const { label } = valueToItemMap.get(value)!;\n\n return renderValue ? renderValue(valueToItemMap.get(value)!) : label;\n};\n\nexport const getButtonLabel = ({\n value,\n valueToItemMap,\n label,\n renderValue,\n selectProps,\n}: GetButtonLabelProps): string => {\n if (isEmpty(value) && typeof value !== 'number') {\n return label || '';\n }\n\n if (selectProps.multiselect && selectProps.isTargetAmount) {\n return `Выбрано: ${value.length}`;\n }\n\n if (selectProps.multiselect && Array.isArray(value)) {\n return value\n ?.map((itemValue) =>\n getLabel({\n value: itemValue,\n valueToItemMap,\n renderValue,\n }),\n )\n .join(', ');\n }\n\n return getLabel({\n value,\n valueToItemMap,\n renderValue,\n });\n};\n"],"names":["getLabel","_ref","value","valueToItemMap","renderValue","_ref2","get","label","getButtonLabel","_ref3","selectProps","isEmpty","multiselect","isTargetAmount","concat","length","Array","isArray","map","itemValue","join"],"mappings":";;AAGA,IAAMA,QAAQ,GAAG,SAAXA,QAAQA,CAAAC,IAAA,EAI+E;AAAA,EAAA,IAHzFC,KAAK,GAAAD,IAAA,CAALC,KAAK;IACLC,cAAc,GAAAF,IAAA,CAAdE,cAAc;IACdC,WAAW,GAAAH,IAAA,CAAXG,WAAW,CAAA;AAEX,EAAA,IAAAC,KAAA,GAAkBF,cAAc,CAACG,GAAG,CAACJ,KAAK,CAAC;IAAnCK,KAAK,GAAAF,KAAA,CAALE,KAAK,CAAA;AAEb,EAAA,OAAOH,WAAW,GAAGA,WAAW,CAACD,cAAc,CAACG,GAAG,CAACJ,KAAK,CAAE,CAAC,GAAGK,KAAK,CAAA;AACxE,CAAC,CAAA;IAEYC,cAAc,GAAG,SAAjBA,cAAcA,CAAAC,KAAA,EAMQ;AAAA,EAAA,IAL/BP,KAAK,GAAAO,KAAA,CAALP,KAAK;IACLC,cAAc,GAAAM,KAAA,CAAdN,cAAc;IACdI,KAAK,GAAAE,KAAA,CAALF,KAAK;IACLH,WAAW,GAAAK,KAAA,CAAXL,WAAW;IACXM,WAAW,GAAAD,KAAA,CAAXC,WAAW,CAAA;EAEX,IAAIC,OAAO,CAACT,KAAK,CAAC,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC7C,OAAOK,KAAK,IAAI,EAAE,CAAA;AACtB,GAAA;AAEA,EAAA,IAAIG,WAAW,CAACE,WAAW,IAAIF,WAAW,CAACG,cAAc,EAAE;AACvD,IAAA,OAAA,8CAAA,CAAAC,MAAA,CAAmBZ,KAAK,CAACa,MAAM,CAAA,CAAA;AACnC,GAAA;EAEA,IAAIL,WAAW,CAACE,WAAW,IAAII,KAAK,CAACC,OAAO,CAACf,KAAK,CAAC,EAAE;IACjD,OAAOA,KAAK,aAALA,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAALA,KAAK,CACNgB,GAAG,CAAC,UAACC,SAAS,EAAA;AAAA,MAAA,OACZnB,QAAQ,CAAC;AACLE,QAAAA,KAAK,EAAEiB,SAAS;AAChBhB,QAAAA,cAAc,EAAdA,cAAc;AACdC,QAAAA,WAAW,EAAXA,WAAAA;AACJ,OAAC,CAAC,CAAA;AAAA,KACN,CAAC,CACAgB,IAAI,CAAC,IAAI,CAAC,CAAA;AACnB,GAAA;AAEA,EAAA,OAAOpB,QAAQ,CAAC;AACZE,IAAAA,KAAK,EAALA,KAAK;AACLC,IAAAA,cAAc,EAAdA,cAAc;AACdC,IAAAA,WAAW,EAAXA,WAAAA;AACJ,GAAC,CAAC,CAAA;AACN;;;;"}
|
@@ -1,17 +1,14 @@
|
|
1
|
-
import { toConsumableArray as _toConsumableArray, objectSpread2 as _objectSpread2 } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
2
|
-
|
3
1
|
// Проходимся по массиву items и добавляем в каждый item ключ parent, который ссылается на item родителя.
|
4
2
|
// Дает возможность прохода к корневому элементу (снизу вверх).
|
5
|
-
|
3
|
+
|
6
4
|
var initialItemsTransform = function initialItemsTransform(items, parent) {
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
itemCopy.items = initialItemsTransform(itemCopy.items, itemCopy);
|
5
|
+
items.forEach(function (item) {
|
6
|
+
item.parent = parent;
|
7
|
+
if (item.items) {
|
8
|
+
item.items = initialItemsTransform(item.items, item);
|
12
9
|
}
|
13
|
-
return itemCopy;
|
14
10
|
});
|
11
|
+
return items;
|
15
12
|
};
|
16
13
|
|
17
14
|
export { initialItemsTransform };
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"initialItemsTransform.js","sources":["../../../../src/components/Select/utils/initialItemsTransform.ts"],"sourcesContent":["import { MergedDropdownNodeTransformed } from '../ui/Inner/ui/Item/Item.types';\n\n// Проходимся по массиву items и добавляем в каждый item ключ parent, который ссылается на item родителя.\n// Дает возможность прохода к корневому элементу (снизу вверх).\n
|
1
|
+
{"version":3,"file":"initialItemsTransform.js","sources":["../../../../src/components/Select/utils/initialItemsTransform.ts"],"sourcesContent":["import { MergedDropdownNodeTransformed } from '../ui/Inner/ui/Item/Item.types';\n\n// Проходимся по массиву items и добавляем в каждый item ключ parent, который ссылается на item родителя.\n// Дает возможность прохода к корневому элементу (снизу вверх).\n\nexport const initialItemsTransform = (\n items: Array<MergedDropdownNodeTransformed>,\n parent?: MergedDropdownNodeTransformed,\n): Array<MergedDropdownNodeTransformed> => {\n items.forEach((item) => {\n item.parent = parent;\n\n if (item.items) {\n item.items = initialItemsTransform(item.items, item);\n }\n });\n\n return items;\n};\n"],"names":["initialItemsTransform","items","parent","forEach","item"],"mappings":"AAEA;AACA;;AAEO,IAAMA,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAC9BC,KAA2C,EAC3CC,MAAsC,EACC;AACvCD,EAAAA,KAAK,CAACE,OAAO,CAAC,UAACC,IAAI,EAAK;IACpBA,IAAI,CAACF,MAAM,GAAGA,MAAM,CAAA;IAEpB,IAAIE,IAAI,CAACH,KAAK,EAAE;MACZG,IAAI,CAACH,KAAK,GAAGD,qBAAqB,CAACI,IAAI,CAACH,KAAK,EAAEG,IAAI,CAAC,CAAA;AACxD,KAAA;AACJ,GAAC,CAAC,CAAA;AAEF,EAAA,OAAOH,KAAK,CAAA;AAChB;;;;"}
|
@@ -0,0 +1,33 @@
|
|
1
|
+
import './ViewContainer_yiqfcb.css';
|
2
|
+
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
3
|
+
import React, { forwardRef } from 'react';
|
4
|
+
import { base as base$1 } from './_view/base.js';
|
5
|
+
|
6
|
+
var _excluded = ["children"];
|
7
|
+
var base = "bemjbnt";
|
8
|
+
var viewContainerRoot = function viewContainerRoot(Root) {
|
9
|
+
return /*#__PURE__*/forwardRef(function (props, ref) {
|
10
|
+
var children = props.children,
|
11
|
+
rest = _objectWithoutProperties(props, _excluded);
|
12
|
+
return /*#__PURE__*/React.createElement(Root, _extends({
|
13
|
+
ref: ref
|
14
|
+
}, rest), children);
|
15
|
+
});
|
16
|
+
};
|
17
|
+
var viewContainerConfig = {
|
18
|
+
name: 'ViewContainer',
|
19
|
+
tag: 'div',
|
20
|
+
layout: viewContainerRoot,
|
21
|
+
base: base,
|
22
|
+
variations: {
|
23
|
+
view: {
|
24
|
+
css: base$1
|
25
|
+
}
|
26
|
+
},
|
27
|
+
defaults: {
|
28
|
+
view: undefined
|
29
|
+
}
|
30
|
+
};
|
31
|
+
|
32
|
+
export { viewContainerConfig, viewContainerRoot };
|
33
|
+
//# sourceMappingURL=ViewContainer.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ViewContainer.js","sources":["../../../src/components/ViewContainer/ViewContainer.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { css } from '@linaria/core';\n\nimport type { RootProps } from '../../engines/types';\n\nimport { base as viewCSS } from './_view/base';\n\nconst base = css`\n position: relative;\n`;\n\nexport type ViewContainerCustomProps = {\n /**\n * Вид компонента\n */\n view?: string;\n};\n\ntype ViewContainerProps = React.HTMLAttributes<HTMLDivElement> & ViewContainerCustomProps;\n\nexport const viewContainerRoot = (Root: RootProps<HTMLAnchorElement, ViewContainerProps>) =>\n forwardRef<HTMLAnchorElement, ViewContainerProps>((props, ref) => {\n const { children, ...rest } = props;\n\n return (\n <Root ref={ref} {...rest}>\n {children}\n </Root>\n );\n });\n\nexport const viewContainerConfig = {\n name: 'ViewContainer',\n tag: 'div',\n layout: viewContainerRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n },\n defaults: {\n view: undefined,\n },\n};\n"],"names":["base","viewContainerRoot","Root","forwardRef","props","ref","children","rest","_excluded","React","createElement","_extends","viewContainerConfig","name","tag","layout","variations","view","css","viewCSS","defaults","undefined"],"mappings":";;;;;AAOA,IAAMA,IAAI,GAET,SAAA,CAAA;IAWYC,iBAAiB,GAAGA,SAApBA,iBAAiBA,CAAIC,IAAsD,EAAA;AAAA,EAAA,oBACpFC,UAAU,CAAwC,UAACC,KAAK,EAAEC,GAAG,EAAK;AAC9D,IAAA,IAAQC,QAAQ,GAAcF,KAAK,CAA3BE,QAAQ;AAAKC,MAAAA,IAAAA,GAAAA,wBAAAA,CAASH,KAAK,EAAAI,SAAA,CAAA,CAAA;AAEnC,IAAA,oBACIC,KAAA,CAAAC,aAAA,CAACR,IAAI,EAAAS,QAAA,CAAA;AAACN,MAAAA,GAAG,EAAEA,GAAAA;KAASE,EAAAA,IAAI,CACnBD,EAAAA,QACC,CAAC,CAAA;AAEf,GAAC,CAAC,CAAA;AAAA,EAAA;AAEC,IAAMM,mBAAmB,GAAG;AAC/BC,EAAAA,IAAI,EAAE,eAAe;AACrBC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAEd,iBAAiB;AACzBD,EAAAA,IAAI,EAAJA,IAAI;AACJgB,EAAAA,UAAU,EAAE;AACRC,IAAAA,IAAI,EAAE;AACFC,MAAAA,GAAG,EAAEC,MAAAA;AACT,KAAA;GACH;AACDC,EAAAA,QAAQ,EAAE;AACNH,IAAAA,IAAI,EAAEI,SAAAA;AACV,GAAA;AACJ;;;;"}
|
@@ -0,0 +1 @@
|
|
1
|
+
.bemjbnt{position:relative;}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"base.js","sources":["../../../../src/components/ViewContainer/_view/base.ts"],"sourcesContent":["import { css } from '@linaria/core';\n\nexport const base = css``;\n"],"names":["base"],"mappings":"AAEO,IAAMA,IAAI,GAAQ;;;;"}
|
@@ -0,0 +1 @@
|
|
1
|
+
|
package/es/index.css
CHANGED
@@ -804,3 +804,5 @@
|
|
804
804
|
|
805
805
|
.IconButton_styles_1q2jfs2_s15ptif0__7aea03a6{--plasma-icon-button-color:var(--plasma-attach-icon-button-color);--plasma-icon-button-background-color:var(--plasma-attach-icon-button-background-color);--plasma-icon-button-loading-background-color:var(--plasma-attach-icon-button-loading-background-color);--plasma-icon-button-color-hover:var(--plasma-attach-icon-button-color-hover);--plasma-icon-button-background-color-hover:var(--plasma-attach-icon-button-background-color-hover);--plasma-icon-button-color-active:var(--plasma-attach-icon-button-color-active);--plasma-icon-button-background-color-active:var(--plasma-attach-icon-button-background-color-active);--plasma-icon-button-scale-hover:var(--plasma-attach-icon-button-scale-hover);---plasma-icon-button-scale-active:var(---plasma-attach-icon-button-scale-active);--plasma-icon-button-height:var(--plasma-attach-icon-button-height);--plasma-icon-button-width:var(--plasma-attach-icon-button-width);--plasma-icon-button-padding:var(--plasma-attach-icon-button-padding);--plasma-icon-button-radius:var(--plasma-attach-icon-button-radius);--plasma-icon-button-radius-circle:var(--plasma-attach-icon-button-radius-circle);--plasma-icon-button-font-family:var(--plasma-attach-icon-button-font-family);--plasma-icon-button-font-size:var(--plasma-attach-icon-button-font-size);--plasma-icon-button-font-style:var(--plasma-attach-icon-button-font-style);--plasma-icon-button-font-weight:var(--plasma-attach-icon-button-font-weight);--plasma-icon-button-letter-spacing:var(--plasma-attach-icon-button-letter-spacing);--plasma-icon-button-line-height:var(--plasma-attach-icon-button-line-height);--plasma-icon-button-disabled-opacity:var(--plasma-attach-icon-button-disabled-opacity);--plasma-icon-button-focus-color:var(--plasma-attach-icon-button-focus-color);--plasma-icon-button-spinner-color:var(--plasma-attach-icon-button-spinner-color);--plasma-icon-button-spinner-size:var(--plasma-attach-icon-button-spinner-size);-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;}
|
806
806
|
.IconButton_styles_1q2jfs2_shuaj1a__7aea03a6{--plasma-icon-button-color:var(--plasma-attach-icon-button-cancel-color);--plasma-icon-button-background-color:var(--plasma-attach-icon-button-cancel-background-color);--plasma-icon-button-loading-background-color:var(--plasma-attach-icon-button-cancel-loading-background-color);--plasma-icon-button-color-hover:var(--plasma-attach-icon-button-cancel-color-hover);--plasma-icon-button-background-color-hover:var(--plasma-attach-icon-button-cancel-background-color-hover);--plasma-icon-button-color-active:var(--plasma-attach-icon-button-cancel-color-active);--plasma-icon-button-background-color-active:var(--plasma-attach-icon-button-cancel-background-color-active);--plasma-icon-button-scale-hover:var(--plasma-attach-icon-button-cancel-scale-hover);---plasma-icon-button-scale-active:var(---plasma-attach-icon-button-cancel-scale-active);--plasma-icon-button-height:var(--plasma-attach-icon-button-cancel-height);--plasma-icon-button-width:var(--plasma-attach-icon-button-cancel-width);--plasma-icon-button-padding:var(--plasma-attach-icon-button-cancel-padding);--plasma-icon-button-radius:var(--plasma-attach-icon-button-cancel-radius);--plasma-icon-button-radius-circle:var(--plasma-attach-icon-button-cancel-radius-circle);--plasma-icon-button-font-family:var(--plasma-attach-icon-button-cancel-font-family);--plasma-icon-button-font-size:var(--plasma-attach-icon-button-cancel-font-size);--plasma-icon-button-font-style:var(--plasma-attach-icon-button-cancel-font-style);--plasma-icon-button-font-weight:var(--plasma-attach-icon-button-cancel-font-weight);--plasma-icon-button-letter-spacing:var(--plasma-attach-icon-button-cancel-letter-spacing);--plasma-icon-button-line-height:var(--plasma-attach-icon-button-cancel-line-height);--plasma-icon-button-disabled-opacity:var(--plasma-attach-icon-button-cancel-disabled-opacity);--plasma-icon-button-focus-color:var(--plasma-attach-icon-button-cancel-focus-color);--plasma-icon-button-spinner-color:var(--plasma-attach-icon-button-cancel-spinner-color);--plasma-icon-button-spinner-size:var(--plasma-attach-icon-button-cancel-spinner-size);}
|
807
|
+
|
808
|
+
.ViewContainer_yiqfcb_bemjbnt__5b2a6776{position:relative;}
|
package/es/index.js
CHANGED
@@ -202,4 +202,5 @@ export { tokens as editableTokens } from './components/Editable/Editable.tokens.
|
|
202
202
|
export { composeMask } from './components/Mask/Mask.js';
|
203
203
|
export { attachConfig, attachRoot } from './components/Attach/Attach.js';
|
204
204
|
export { tokens as attachTokens } from './components/Attach/Attach.tokens.js';
|
205
|
+
export { viewContainerConfig, viewContainerRoot } from './components/ViewContainer/ViewContainer.js';
|
205
206
|
//# sourceMappingURL=index.js.map
|
package/es/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@salutejs/plasma-new-hope",
|
3
|
-
"version": "0.174.0-
|
3
|
+
"version": "0.174.0-dev.0",
|
4
4
|
"description": "Salute Design System blueprint",
|
5
5
|
"main": "cjs/index.js",
|
6
6
|
"module": "es/index.js",
|
@@ -81,6 +81,7 @@
|
|
81
81
|
"@rollup/plugin-commonjs": "^25.0.4",
|
82
82
|
"@rollup/plugin-node-resolve": "^15.1.0",
|
83
83
|
"@salutejs/plasma-sb-utils": "0.181.0-dev.0",
|
84
|
+
"@salutejs/plasma-themes": "0.22.0-dev.0",
|
84
85
|
"@storybook/addon-docs": "^7.6.17",
|
85
86
|
"@storybook/addon-essentials": "^7.6.17",
|
86
87
|
"@storybook/addons": "^7.6.17",
|
@@ -127,5 +128,5 @@
|
|
127
128
|
"sideEffects": [
|
128
129
|
"*.css"
|
129
130
|
],
|
130
|
-
"gitHead": "
|
131
|
+
"gitHead": "4bf318fd0b74d9d2c19e73a1ad6ce3c2f780c321"
|
131
132
|
}
|
@@ -20,7 +20,7 @@ var _getPathMaps = /*#__PURE__*/require("./hooks/getPathMaps");
|
|
20
20
|
var _Combobox2 = /*#__PURE__*/require("./Combobox.styles");
|
21
21
|
var _base = /*#__PURE__*/require("./variations/_view/base");
|
22
22
|
var _base2 = /*#__PURE__*/require("./variations/_size/base");
|
23
|
-
var _excluded = ["multiple", "value", "onChange", "isTargetAmount", "
|
23
|
+
var _excluded = ["multiple", "value", "onChange", "isTargetAmount", "items", "placement", "label", "placeholder", "helperText", "contentLeft", "textBefore", "textAfter", "variant", "listOverflow", "listHeight", "listWidth", "portal", "renderItem", "view", "size", "labelPlacement", "readOnly", "disabled", "alwaysOpened", "filter", "closeAfterSelect"];
|
24
24
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
25
25
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
26
26
|
function _extends() { _extends = 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.apply(this, arguments); }
|
@@ -44,7 +44,6 @@ var comboboxRoot = exports.comboboxRoot = function comboboxRoot(Root) {
|
|
44
44
|
outerValue = props.value,
|
45
45
|
outerOnChange = props.onChange,
|
46
46
|
isTargetAmount = props.isTargetAmount,
|
47
|
-
targetAmount = props.targetAmount,
|
48
47
|
items = props.items,
|
49
48
|
_props$placement = props.placement,
|
50
49
|
placement = _props$placement === void 0 ? 'bottom-start' : _props$placement,
|
@@ -72,15 +71,10 @@ var comboboxRoot = exports.comboboxRoot = function comboboxRoot(Root) {
|
|
72
71
|
alwaysOpened = _props$alwaysOpened === void 0 ? false : _props$alwaysOpened,
|
73
72
|
filter = props.filter,
|
74
73
|
outerCloseAfterSelect = props.closeAfterSelect,
|
75
|
-
renderValue = props.renderValue,
|
76
74
|
rest = _objectWithoutProperties(props, _excluded);
|
77
|
-
var transformedItems = (0, _react.useMemo)(function () {
|
78
|
-
return (0, _utils3.initialItemsTransform)(items || []);
|
79
|
-
}, [items]);
|
80
|
-
|
81
75
|
// Создаем структуры для быстрой работы с деревом
|
82
76
|
var _useMemo = (0, _react.useMemo)(function () {
|
83
|
-
return (0, _getPathMaps.getTreeMaps)(
|
77
|
+
return (0, _getPathMaps.getTreeMaps)(items);
|
84
78
|
}, [items]),
|
85
79
|
_useMemo2 = _slicedToArray(_useMemo, 3),
|
86
80
|
valueToCheckedMap = _useMemo2[0],
|
@@ -94,11 +88,14 @@ var comboboxRoot = exports.comboboxRoot = function comboboxRoot(Root) {
|
|
94
88
|
_useState4 = _slicedToArray(_useState3, 2),
|
95
89
|
internalValue = _useState4[0],
|
96
90
|
setInternalValue = _useState4[1];
|
97
|
-
var value = outerValue
|
91
|
+
var value = outerValue || internalValue;
|
98
92
|
var inputRef = (0, _react.useRef)(null);
|
99
93
|
var floatingPopoverRef = (0, _react.useRef)(null);
|
100
94
|
var inputForkRef = (0, _plasmaCore.useForkRef)(inputRef, ref);
|
101
95
|
var treeId = (0, _plasmaCore.safeUseId)();
|
96
|
+
var transformedItems = (0, _react.useMemo)(function () {
|
97
|
+
return (0, _utils3.initialItemsTransform)(items || []);
|
98
|
+
}, [items]);
|
102
99
|
var filteredItems = (0, _utils3.filterItems)(transformedItems, textValue, (_valueToItemMap$get2 = valueToItemMap.get(value)) === null || _valueToItemMap$get2 === void 0 ? void 0 : _valueToItemMap$get2.label, filter);
|
103
100
|
var _useMemo3 = (0, _react.useMemo)(function () {
|
104
101
|
return (0, _getPathMaps.getPathMap)(filteredItems);
|
@@ -265,7 +262,16 @@ var comboboxRoot = exports.comboboxRoot = function comboboxRoot(Root) {
|
|
265
262
|
if (e) {
|
266
263
|
e.stopPropagation();
|
267
264
|
}
|
268
|
-
var
|
265
|
+
var checkedCopy = new Map(checked);
|
266
|
+
var isCurrentChecked = checkedCopy.get(item.value);
|
267
|
+
checkedCopy.forEach(function (_, key) {
|
268
|
+
checkedCopy.set(key, false);
|
269
|
+
});
|
270
|
+
if (!isCurrentChecked) {
|
271
|
+
checkedCopy.set(item.value, 'done');
|
272
|
+
(0, _utils3.updateSingleAncestors)(item, checkedCopy, 'dot');
|
273
|
+
}
|
274
|
+
setTextValue(isCurrentChecked ? '' : item.label);
|
269
275
|
if (!alwaysOpened && closeAfterSelect) {
|
270
276
|
dispatchPath({
|
271
277
|
type: 'reset'
|
@@ -279,18 +285,14 @@ var comboboxRoot = exports.comboboxRoot = function comboboxRoot(Root) {
|
|
279
285
|
}
|
280
286
|
};
|
281
287
|
var getChips = function getChips() {
|
282
|
-
if (multiple
|
288
|
+
if (multiple) {
|
283
289
|
if (value.length === 0) return [];
|
284
290
|
if (isTargetAmount) {
|
285
|
-
return ["\u0412\u044B\u0431\u0440\u0430\u043D\u043E ".concat(
|
291
|
+
return ["\u0412\u044B\u0431\u0440\u0430\u043D\u043E ".concat(value.length)];
|
286
292
|
}
|
287
|
-
|
288
|
-
return
|
289
|
-
};
|
290
|
-
var valueToItemMapper = function valueToItemMapper(stringValue) {
|
291
|
-
return valueToItemMap.get(stringValue).label;
|
292
|
-
};
|
293
|
-
return value.map(renderValueMapper || valueToItemMapper);
|
293
|
+
return value.map(function (value) {
|
294
|
+
return valueToItemMap.get(value).label;
|
295
|
+
});
|
294
296
|
}
|
295
297
|
return [];
|
296
298
|
};
|
@@ -318,7 +320,6 @@ var comboboxRoot = exports.comboboxRoot = function comboboxRoot(Root) {
|
|
318
320
|
// В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.
|
319
321
|
// Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.
|
320
322
|
(0, _react.useLayoutEffect)(function () {
|
321
|
-
var _valueToItemMap$get4;
|
322
323
|
var checkedCopy = new Map(checked);
|
323
324
|
checkedCopy.forEach(function (_, key) {
|
324
325
|
checkedCopy.set(key, false);
|
@@ -336,12 +337,7 @@ var comboboxRoot = exports.comboboxRoot = function comboboxRoot(Root) {
|
|
336
337
|
}
|
337
338
|
}
|
338
339
|
setChecked(checkedCopy);
|
339
|
-
|
340
|
-
|
341
|
-
// В deps мы кладем именно outerValue и internalValue, а не просто value.
|
342
|
-
// Т.к. вначале нужно отфильтровать и провалидировать outerValue и результат положить в переменную.
|
343
|
-
// А переменную, содержащую сложные типы данных, нельзя помещать в deps.
|
344
|
-
}, [outerValue, internalValue, items]);
|
340
|
+
}, [value]);
|
345
341
|
return /*#__PURE__*/_react["default"].createElement(Root, {
|
346
342
|
size: size,
|
347
343
|
view: view,
|
@@ -9,12 +9,6 @@ Object.defineProperty(exports, "filterItems", {
|
|
9
9
|
return _filterItems.filterItems;
|
10
10
|
}
|
11
11
|
});
|
12
|
-
Object.defineProperty(exports, "getInitialValue", {
|
13
|
-
enumerable: true,
|
14
|
-
get: function get() {
|
15
|
-
return _getInitialValue.getInitialValue;
|
16
|
-
}
|
17
|
-
});
|
18
12
|
Object.defineProperty(exports, "getItemId", {
|
19
13
|
enumerable: true,
|
20
14
|
get: function get() {
|
@@ -57,5 +51,4 @@ var _updateAncestors = /*#__PURE__*/require("./updateAncestors");
|
|
57
51
|
var _updateSingleAncestors = /*#__PURE__*/require("./updateSingleAncestors");
|
58
52
|
var _sizeToIconSize = /*#__PURE__*/require("./sizeToIconSize");
|
59
53
|
var _filterItems = /*#__PURE__*/require("./filterItems");
|
60
|
-
var _getItemId = /*#__PURE__*/require("./getItemId");
|
61
|
-
var _getInitialValue = /*#__PURE__*/require("./getInitialValue");
|
54
|
+
var _getItemId = /*#__PURE__*/require("./getItemId");
|