@salutejs/plasma-new-hope 0.174.0-canary.1505.11515852860.0 → 0.174.0-canary.1511.11518967304.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/NumberInput/NumberInput.css +54 -0
- package/cjs/components/NumberInput/NumberInput.js +188 -0
- package/cjs/components/NumberInput/NumberInput.js.map +1 -0
- package/cjs/components/NumberInput/NumberInput.styles.js +9 -0
- package/cjs/components/NumberInput/NumberInput.styles.js.map +1 -0
- package/cjs/components/NumberInput/NumberInput.styles_jeawjl.css +1 -0
- package/cjs/components/NumberInput/NumberInput.tokens.js +90 -0
- package/cjs/components/NumberInput/NumberInput.tokens.js.map +1 -0
- package/cjs/components/NumberInput/ui/ActionButton/ActionButton.js +19 -0
- package/cjs/components/NumberInput/ui/ActionButton/ActionButton.js.map +1 -0
- package/cjs/components/NumberInput/ui/ActionButton/ActionButton.styles.js +22 -0
- package/cjs/components/NumberInput/ui/ActionButton/ActionButton.styles.js.map +1 -0
- package/cjs/components/NumberInput/ui/ActionButton/ActionButton.styles_x642ct.css +1 -0
- package/cjs/components/NumberInput/ui/Input/Input.css +15 -0
- package/cjs/components/NumberInput/ui/Input/Input.js +190 -0
- package/cjs/components/NumberInput/ui/Input/Input.js.map +1 -0
- package/cjs/components/NumberInput/ui/Input/Input.styles.js +96 -0
- package/cjs/components/NumberInput/ui/Input/Input.styles.js.map +1 -0
- package/cjs/components/NumberInput/ui/Input/Input.styles_jszc0c.css +8 -0
- package/cjs/components/NumberInput/utils/index.js +8 -0
- package/cjs/components/NumberInput/utils/index.js.map +1 -0
- package/cjs/components/NumberInput/variations/_background-type/base.js +9 -0
- package/cjs/components/NumberInput/variations/_background-type/base.js.map +1 -0
- package/cjs/components/NumberInput/variations/_background-type/base_1jmdljr.css +1 -0
- package/cjs/components/NumberInput/variations/_clear/base.js +9 -0
- package/cjs/components/NumberInput/variations/_clear/base.js.map +1 -0
- package/cjs/components/NumberInput/variations/_clear/base_3l8dqb.css +1 -0
- package/cjs/components/NumberInput/variations/_disabled/base.js +9 -0
- package/cjs/components/NumberInput/variations/_disabled/base.js.map +1 -0
- package/cjs/components/NumberInput/variations/_disabled/base_1sl0mh8.css +1 -0
- package/cjs/components/NumberInput/variations/_segmentation/base.js +9 -0
- package/cjs/components/NumberInput/variations/_segmentation/base.js.map +1 -0
- package/cjs/components/NumberInput/variations/_segmentation/base_nl8ve.css +1 -0
- package/cjs/components/NumberInput/variations/_shape/base.js +9 -0
- package/cjs/components/NumberInput/variations/_shape/base.js.map +1 -0
- package/cjs/components/NumberInput/variations/_shape/base_k05biw.css +1 -0
- package/cjs/components/NumberInput/variations/_size/base.js +9 -0
- package/cjs/components/NumberInput/variations/_size/base.js.map +1 -0
- package/cjs/components/NumberInput/variations/_size/base_1pju5qf.css +1 -0
- package/cjs/components/NumberInput/variations/_view/base.js +9 -0
- package/cjs/components/NumberInput/variations/_view/base.js.map +1 -0
- package/cjs/components/NumberInput/variations/_view/base_cghr9q.css +1 -0
- 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/index.css +25 -0
- package/cjs/index.js +6 -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/NumberInput/NumberInput.js +198 -0
- package/emotion/cjs/components/NumberInput/NumberInput.styles.js +17 -0
- package/emotion/cjs/components/NumberInput/NumberInput.tokens.js +87 -0
- package/emotion/cjs/components/NumberInput/NumberInput.types.js +5 -0
- package/emotion/cjs/components/NumberInput/index.js +31 -0
- package/emotion/cjs/components/NumberInput/ui/ActionButton/ActionButton.js +18 -0
- package/emotion/cjs/components/NumberInput/ui/ActionButton/ActionButton.styles.js +16 -0
- package/emotion/cjs/components/NumberInput/ui/ActionButton/ActionButton.types.js +5 -0
- package/emotion/cjs/components/NumberInput/ui/Input/Input.js +198 -0
- package/emotion/cjs/components/NumberInput/ui/Input/Input.styles.js +82 -0
- package/emotion/cjs/components/NumberInput/ui/Input/Input.types.js +5 -0
- package/emotion/cjs/components/NumberInput/ui/index.js +19 -0
- package/emotion/cjs/components/NumberInput/utils/index.js +7 -0
- package/emotion/cjs/components/NumberInput/variations/_background-type/base.js +10 -0
- package/emotion/cjs/components/NumberInput/variations/_background-type/tokens.json +6 -0
- package/emotion/cjs/components/NumberInput/variations/_clear/base.js +12 -0
- package/emotion/cjs/components/NumberInput/variations/_clear/tokens.json +5 -0
- package/emotion/cjs/components/NumberInput/variations/_disabled/base.js +9 -0
- package/emotion/cjs/components/NumberInput/variations/_disabled/tokens.json +4 -0
- package/emotion/cjs/components/NumberInput/variations/_segmentation/base.js +12 -0
- package/emotion/cjs/components/NumberInput/variations/_segmentation/tokens.json +1 -0
- package/emotion/cjs/components/NumberInput/variations/_shape/base.js +11 -0
- package/emotion/cjs/components/NumberInput/variations/_shape/tokens.json +1 -0
- package/emotion/cjs/components/NumberInput/variations/_size/base.js +13 -0
- package/emotion/cjs/components/NumberInput/variations/_size/tokens.json +22 -0
- package/emotion/cjs/components/NumberInput/variations/_view/base.js +13 -0
- package/emotion/cjs/components/NumberInput/variations/_view/tokens.json +14 -0
- 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/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +0 -6
- package/emotion/cjs/examples/plasma_b2c/components/NumberInput/NumberInput.config.js +48 -0
- package/emotion/cjs/examples/plasma_b2c/components/NumberInput/NumberInput.js +11 -0
- package/emotion/cjs/examples/plasma_b2c/components/NumberInput/NumberInput.stories.tsx +109 -0
- package/emotion/cjs/examples/plasma_web/components/Combobox/Combobox.stories.tsx +0 -6
- package/emotion/cjs/examples/plasma_web/components/NumberInput/NumberInput.config.js +48 -0
- package/emotion/cjs/examples/plasma_web/components/NumberInput/NumberInput.js +11 -0
- package/emotion/cjs/examples/plasma_web/components/NumberInput/NumberInput.stories.tsx +109 -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/NumberInput/NumberInput.js +190 -0
- package/emotion/es/components/NumberInput/NumberInput.styles.js +11 -0
- package/emotion/es/components/NumberInput/NumberInput.tokens.js +81 -0
- package/emotion/es/components/NumberInput/NumberInput.types.js +1 -0
- package/emotion/es/components/NumberInput/index.js +2 -0
- package/emotion/es/components/NumberInput/ui/ActionButton/ActionButton.js +11 -0
- package/emotion/es/components/NumberInput/ui/ActionButton/ActionButton.styles.js +9 -0
- package/emotion/es/components/NumberInput/ui/ActionButton/ActionButton.types.js +1 -0
- package/emotion/es/components/NumberInput/ui/Input/Input.js +189 -0
- package/emotion/es/components/NumberInput/ui/Input/Input.styles.js +75 -0
- package/emotion/es/components/NumberInput/ui/Input/Input.types.js +1 -0
- package/emotion/es/components/NumberInput/ui/index.js +2 -0
- package/emotion/es/components/NumberInput/utils/index.js +1 -0
- package/emotion/es/components/NumberInput/variations/_background-type/base.js +4 -0
- package/emotion/es/components/NumberInput/variations/_background-type/tokens.json +6 -0
- package/emotion/es/components/NumberInput/variations/_clear/base.js +6 -0
- package/emotion/es/components/NumberInput/variations/_clear/tokens.json +5 -0
- package/emotion/es/components/NumberInput/variations/_disabled/base.js +3 -0
- package/emotion/es/components/NumberInput/variations/_disabled/tokens.json +4 -0
- package/emotion/es/components/NumberInput/variations/_segmentation/base.js +6 -0
- package/emotion/es/components/NumberInput/variations/_segmentation/tokens.json +1 -0
- package/emotion/es/components/NumberInput/variations/_shape/base.js +5 -0
- package/emotion/es/components/NumberInput/variations/_shape/tokens.json +1 -0
- package/emotion/es/components/NumberInput/variations/_size/base.js +7 -0
- package/emotion/es/components/NumberInput/variations/_size/tokens.json +22 -0
- package/emotion/es/components/NumberInput/variations/_view/base.js +7 -0
- package/emotion/es/components/NumberInput/variations/_view/tokens.json +14 -0
- 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/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +0 -6
- package/emotion/es/examples/plasma_b2c/components/NumberInput/NumberInput.config.js +42 -0
- package/emotion/es/examples/plasma_b2c/components/NumberInput/NumberInput.js +5 -0
- package/emotion/es/examples/plasma_b2c/components/NumberInput/NumberInput.stories.tsx +109 -0
- package/emotion/es/examples/plasma_web/components/Combobox/Combobox.stories.tsx +0 -6
- package/emotion/es/examples/plasma_web/components/NumberInput/NumberInput.config.js +42 -0
- package/emotion/es/examples/plasma_web/components/NumberInput/NumberInput.js +5 -0
- package/emotion/es/examples/plasma_web/components/NumberInput/NumberInput.stories.tsx +109 -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/NumberInput/NumberInput.css +54 -0
- package/es/components/NumberInput/NumberInput.js +183 -0
- package/es/components/NumberInput/NumberInput.js.map +1 -0
- package/es/components/NumberInput/NumberInput.styles.js +5 -0
- package/es/components/NumberInput/NumberInput.styles.js.map +1 -0
- package/es/components/NumberInput/NumberInput.styles_jeawjl.css +1 -0
- package/es/components/NumberInput/NumberInput.tokens.js +84 -0
- package/es/components/NumberInput/NumberInput.tokens.js.map +1 -0
- package/es/components/NumberInput/ui/ActionButton/ActionButton.js +15 -0
- package/es/components/NumberInput/ui/ActionButton/ActionButton.js.map +1 -0
- package/es/components/NumberInput/ui/ActionButton/ActionButton.styles.js +18 -0
- package/es/components/NumberInput/ui/ActionButton/ActionButton.styles.js.map +1 -0
- package/es/components/NumberInput/ui/ActionButton/ActionButton.styles_x642ct.css +1 -0
- package/es/components/NumberInput/ui/Input/Input.css +15 -0
- package/es/components/NumberInput/ui/Input/Input.js +186 -0
- package/es/components/NumberInput/ui/Input/Input.js.map +1 -0
- package/es/components/NumberInput/ui/Input/Input.styles.js +85 -0
- package/es/components/NumberInput/ui/Input/Input.styles.js.map +1 -0
- package/es/components/NumberInput/ui/Input/Input.styles_jszc0c.css +8 -0
- package/es/components/NumberInput/utils/index.js +4 -0
- package/es/components/NumberInput/utils/index.js.map +1 -0
- package/es/components/NumberInput/variations/_background-type/base.js +5 -0
- package/es/components/NumberInput/variations/_background-type/base.js.map +1 -0
- package/es/components/NumberInput/variations/_background-type/base_1jmdljr.css +1 -0
- package/es/components/NumberInput/variations/_clear/base.js +5 -0
- package/es/components/NumberInput/variations/_clear/base.js.map +1 -0
- package/es/components/NumberInput/variations/_clear/base_3l8dqb.css +1 -0
- package/es/components/NumberInput/variations/_disabled/base.js +5 -0
- package/es/components/NumberInput/variations/_disabled/base.js.map +1 -0
- package/es/components/NumberInput/variations/_disabled/base_1sl0mh8.css +1 -0
- package/es/components/NumberInput/variations/_segmentation/base.js +5 -0
- package/es/components/NumberInput/variations/_segmentation/base.js.map +1 -0
- package/es/components/NumberInput/variations/_segmentation/base_nl8ve.css +1 -0
- package/es/components/NumberInput/variations/_shape/base.js +5 -0
- package/es/components/NumberInput/variations/_shape/base.js.map +1 -0
- package/es/components/NumberInput/variations/_shape/base_k05biw.css +1 -0
- package/es/components/NumberInput/variations/_size/base.js +5 -0
- package/es/components/NumberInput/variations/_size/base.js.map +1 -0
- package/es/components/NumberInput/variations/_size/base_1pju5qf.css +1 -0
- package/es/components/NumberInput/variations/_view/base.js +5 -0
- package/es/components/NumberInput/variations/_view/base.js.map +1 -0
- package/es/components/NumberInput/variations/_view/base_cghr9q.css +1 -0
- 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/index.css +25 -0
- package/es/index.js +2 -0
- package/es/index.js.map +1 -1
- package/package.json +2 -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/NumberInput/NumberInput.js +198 -0
- package/styled-components/cjs/components/NumberInput/NumberInput.styles.js +8 -0
- package/styled-components/cjs/components/NumberInput/NumberInput.tokens.js +87 -0
- package/styled-components/cjs/components/NumberInput/NumberInput.types.js +5 -0
- package/styled-components/cjs/components/NumberInput/index.js +31 -0
- package/styled-components/cjs/components/NumberInput/ui/ActionButton/ActionButton.js +18 -0
- package/styled-components/cjs/components/NumberInput/ui/ActionButton/ActionButton.styles.js +15 -0
- package/styled-components/cjs/components/NumberInput/ui/ActionButton/ActionButton.types.js +5 -0
- package/styled-components/cjs/components/NumberInput/ui/Input/Input.js +198 -0
- package/styled-components/cjs/components/NumberInput/ui/Input/Input.styles.js +49 -0
- package/styled-components/cjs/components/NumberInput/ui/Input/Input.types.js +5 -0
- package/styled-components/cjs/components/NumberInput/ui/index.js +19 -0
- package/styled-components/cjs/components/NumberInput/utils/index.js +7 -0
- package/styled-components/cjs/components/NumberInput/variations/_background-type/base.js +10 -0
- package/styled-components/cjs/components/NumberInput/variations/_background-type/tokens.json +6 -0
- package/styled-components/cjs/components/NumberInput/variations/_clear/base.js +12 -0
- package/styled-components/cjs/components/NumberInput/variations/_clear/tokens.json +5 -0
- package/styled-components/cjs/components/NumberInput/variations/_disabled/base.js +9 -0
- package/styled-components/cjs/components/NumberInput/variations/_disabled/tokens.json +4 -0
- package/styled-components/cjs/components/NumberInput/variations/_segmentation/base.js +12 -0
- package/styled-components/cjs/components/NumberInput/variations/_segmentation/tokens.json +1 -0
- package/styled-components/cjs/components/NumberInput/variations/_shape/base.js +11 -0
- package/styled-components/cjs/components/NumberInput/variations/_shape/tokens.json +1 -0
- package/styled-components/cjs/components/NumberInput/variations/_size/base.js +13 -0
- package/styled-components/cjs/components/NumberInput/variations/_size/tokens.json +22 -0
- package/styled-components/cjs/components/NumberInput/variations/_view/base.js +13 -0
- package/styled-components/cjs/components/NumberInput/variations/_view/tokens.json +14 -0
- 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/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +0 -6
- package/styled-components/cjs/examples/plasma_b2c/components/NumberInput/NumberInput.config.js +48 -0
- package/styled-components/cjs/examples/plasma_b2c/components/NumberInput/NumberInput.js +11 -0
- package/styled-components/cjs/examples/plasma_b2c/components/NumberInput/NumberInput.stories.tsx +109 -0
- package/styled-components/cjs/examples/plasma_web/components/Combobox/Combobox.stories.tsx +0 -6
- package/styled-components/cjs/examples/plasma_web/components/NumberInput/NumberInput.config.js +48 -0
- package/styled-components/cjs/examples/plasma_web/components/NumberInput/NumberInput.js +11 -0
- package/styled-components/cjs/examples/plasma_web/components/NumberInput/NumberInput.stories.tsx +109 -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/NumberInput/NumberInput.js +190 -0
- package/styled-components/es/components/NumberInput/NumberInput.styles.js +2 -0
- package/styled-components/es/components/NumberInput/NumberInput.tokens.js +81 -0
- package/styled-components/es/components/NumberInput/NumberInput.types.js +1 -0
- package/styled-components/es/components/NumberInput/index.js +2 -0
- package/styled-components/es/components/NumberInput/ui/ActionButton/ActionButton.js +11 -0
- package/styled-components/es/components/NumberInput/ui/ActionButton/ActionButton.styles.js +8 -0
- package/styled-components/es/components/NumberInput/ui/ActionButton/ActionButton.types.js +1 -0
- package/styled-components/es/components/NumberInput/ui/Input/Input.js +189 -0
- package/styled-components/es/components/NumberInput/ui/Input/Input.styles.js +42 -0
- package/styled-components/es/components/NumberInput/ui/Input/Input.types.js +1 -0
- package/styled-components/es/components/NumberInput/ui/index.js +2 -0
- package/styled-components/es/components/NumberInput/utils/index.js +1 -0
- package/styled-components/es/components/NumberInput/variations/_background-type/base.js +4 -0
- package/styled-components/es/components/NumberInput/variations/_background-type/tokens.json +6 -0
- package/styled-components/es/components/NumberInput/variations/_clear/base.js +6 -0
- package/styled-components/es/components/NumberInput/variations/_clear/tokens.json +5 -0
- package/styled-components/es/components/NumberInput/variations/_disabled/base.js +3 -0
- package/styled-components/es/components/NumberInput/variations/_disabled/tokens.json +4 -0
- package/styled-components/es/components/NumberInput/variations/_segmentation/base.js +6 -0
- package/styled-components/es/components/NumberInput/variations/_segmentation/tokens.json +1 -0
- package/styled-components/es/components/NumberInput/variations/_shape/base.js +5 -0
- package/styled-components/es/components/NumberInput/variations/_shape/tokens.json +1 -0
- package/styled-components/es/components/NumberInput/variations/_size/base.js +7 -0
- package/styled-components/es/components/NumberInput/variations/_size/tokens.json +22 -0
- package/styled-components/es/components/NumberInput/variations/_view/base.js +7 -0
- package/styled-components/es/components/NumberInput/variations/_view/tokens.json +14 -0
- 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/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +0 -6
- package/styled-components/es/examples/plasma_b2c/components/NumberInput/NumberInput.config.js +42 -0
- package/styled-components/es/examples/plasma_b2c/components/NumberInput/NumberInput.js +5 -0
- package/styled-components/es/examples/plasma_b2c/components/NumberInput/NumberInput.stories.tsx +109 -0
- package/styled-components/es/examples/plasma_web/components/Combobox/Combobox.stories.tsx +0 -6
- package/styled-components/es/examples/plasma_web/components/NumberInput/NumberInput.config.js +42 -0
- package/styled-components/es/examples/plasma_web/components/NumberInput/NumberInput.js +5 -0
- package/styled-components/es/examples/plasma_web/components/NumberInput/NumberInput.stories.tsx +109 -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/NumberInput/NumberInput.d.ts +42 -0
- package/types/components/NumberInput/NumberInput.d.ts.map +1 -0
- package/types/components/NumberInput/NumberInput.styles.d.ts +2 -0
- package/types/components/NumberInput/NumberInput.styles.d.ts.map +1 -0
- package/types/components/NumberInput/NumberInput.tokens.d.ts +76 -0
- package/types/components/NumberInput/NumberInput.tokens.d.ts.map +1 -0
- package/types/components/NumberInput/NumberInput.types.d.ts +112 -0
- package/types/components/NumberInput/NumberInput.types.d.ts.map +1 -0
- package/types/components/NumberInput/index.d.ts +3 -0
- package/types/components/NumberInput/index.d.ts.map +1 -0
- package/types/components/NumberInput/ui/ActionButton/ActionButton.d.ts +4 -0
- package/types/components/NumberInput/ui/ActionButton/ActionButton.d.ts.map +1 -0
- package/types/components/NumberInput/ui/ActionButton/ActionButton.styles.d.ts +45 -0
- package/types/components/NumberInput/ui/ActionButton/ActionButton.styles.d.ts.map +1 -0
- package/types/components/NumberInput/ui/ActionButton/ActionButton.types.d.ts +7 -0
- package/types/components/NumberInput/ui/ActionButton/ActionButton.types.d.ts.map +1 -0
- package/types/components/NumberInput/ui/Input/Input.d.ts +16 -0
- package/types/components/NumberInput/ui/Input/Input.d.ts.map +1 -0
- package/types/components/NumberInput/ui/Input/Input.styles.d.ts +30 -0
- package/types/components/NumberInput/ui/Input/Input.styles.d.ts.map +1 -0
- package/types/components/NumberInput/ui/Input/Input.types.d.ts +16 -0
- package/types/components/NumberInput/ui/Input/Input.types.d.ts.map +1 -0
- package/types/components/NumberInput/ui/index.d.ts +3 -0
- package/types/components/NumberInput/ui/index.d.ts.map +1 -0
- package/types/components/NumberInput/utils/index.d.ts +2 -0
- package/types/components/NumberInput/utils/index.d.ts.map +1 -0
- package/types/components/NumberInput/variations/_background-type/base.d.ts +2 -0
- package/types/components/NumberInput/variations/_background-type/base.d.ts.map +1 -0
- package/types/components/NumberInput/variations/_clear/base.d.ts +2 -0
- package/types/components/NumberInput/variations/_clear/base.d.ts.map +1 -0
- package/types/components/NumberInput/variations/_disabled/base.d.ts +2 -0
- package/types/components/NumberInput/variations/_disabled/base.d.ts.map +1 -0
- package/types/components/NumberInput/variations/_segmentation/base.d.ts +2 -0
- package/types/components/NumberInput/variations/_segmentation/base.d.ts.map +1 -0
- package/types/components/NumberInput/variations/_shape/base.d.ts +2 -0
- package/types/components/NumberInput/variations/_shape/base.d.ts.map +1 -0
- package/types/components/NumberInput/variations/_size/base.d.ts +2 -0
- package/types/components/NumberInput/variations/_size/base.d.ts.map +1 -0
- package/types/components/NumberInput/variations/_view/base.d.ts +2 -0
- package/types/components/NumberInput/variations/_view/base.d.ts.map +1 -0
- package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts +8 -8
- package/types/components/Select/Select.d.ts +2 -2
- package/types/components/Select/Select.d.ts.map +1 -1
- package/types/components/Select/Select.types.d.ts +1 -2
- 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/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/NumberInput/NumberInput.config.d.ts +41 -0
- package/types/examples/plasma_b2c/components/NumberInput/NumberInput.config.d.ts.map +1 -0
- package/types/examples/plasma_b2c/components/NumberInput/NumberInput.d.ts +84 -0
- package/types/examples/plasma_b2c/components/NumberInput/NumberInput.d.ts.map +1 -0
- package/types/examples/plasma_b2c/components/Select/Select.d.ts +8 -8
- 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/NumberInput/NumberInput.config.d.ts +41 -0
- package/types/examples/plasma_web/components/NumberInput/NumberInput.config.d.ts.map +1 -0
- package/types/examples/plasma_web/components/NumberInput/NumberInput.d.ts +84 -0
- package/types/examples/plasma_web/components/NumberInput/NumberInput.d.ts.map +1 -0
- package/types/examples/plasma_web/components/Select/Select.d.ts +8 -8
- 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/es/components/Combobox/ComboboxNew/utils/getInitialValue.js +0 -14
- package/emotion/es/components/Select/utils/getInitialValue.js +0 -14
- 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/es/components/Combobox/ComboboxNew/utils/getInitialValue.js +0 -14
- package/styled-components/es/components/Select/utils/getInitialValue.js +0 -14
- 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
@@ -0,0 +1,5 @@
|
|
1
|
+
import { numberInputConfig } from '../../../../components/NumberInput';
|
2
|
+
import { component, mergeConfig } from '../../../../engines';
|
3
|
+
import { config } from './NumberInput.config';
|
4
|
+
var mergedConfig = /*#__PURE__*/mergeConfig(numberInputConfig, config);
|
5
|
+
export var NumberInput = /*#__PURE__*/component(mergedConfig);
|
@@ -0,0 +1,109 @@
|
|
1
|
+
import React, { ComponentProps, useState } from 'react';
|
2
|
+
import type { StoryObj, Meta } from '@storybook/react';
|
3
|
+
import { action } from '@storybook/addon-actions';
|
4
|
+
|
5
|
+
import { WithTheme } from '../../../_helpers';
|
6
|
+
|
7
|
+
import { NumberInput } from './NumberInput';
|
8
|
+
|
9
|
+
const onChange = action('onChange');
|
10
|
+
const onDecrement = action('onDecrement');
|
11
|
+
const onIncrement = action('onIncrement');
|
12
|
+
|
13
|
+
const views = ['default', 'secondary', 'accent'];
|
14
|
+
const sizes = ['l', 'm', 's', 'xs'];
|
15
|
+
const shapes = ['cornered', 'pilled'];
|
16
|
+
const inputBackgroundTypes = ['fill', 'clear'];
|
17
|
+
const segmentation = ['default', 'segmented', 'solid'];
|
18
|
+
|
19
|
+
const meta: Meta<typeof NumberInput> = {
|
20
|
+
title: 'plasma_web/NumberInput',
|
21
|
+
component: NumberInput,
|
22
|
+
decorators: [WithTheme],
|
23
|
+
argTypes: {
|
24
|
+
min: {
|
25
|
+
control: {
|
26
|
+
type: 'number',
|
27
|
+
},
|
28
|
+
},
|
29
|
+
max: {
|
30
|
+
control: {
|
31
|
+
type: 'number',
|
32
|
+
},
|
33
|
+
},
|
34
|
+
view: {
|
35
|
+
options: views,
|
36
|
+
control: {
|
37
|
+
type: 'select',
|
38
|
+
},
|
39
|
+
},
|
40
|
+
size: {
|
41
|
+
options: sizes,
|
42
|
+
control: {
|
43
|
+
type: 'inline-radio',
|
44
|
+
},
|
45
|
+
},
|
46
|
+
shape: {
|
47
|
+
options: shapes,
|
48
|
+
control: {
|
49
|
+
type: 'inline-radio',
|
50
|
+
},
|
51
|
+
},
|
52
|
+
inputBackgroundType: {
|
53
|
+
options: inputBackgroundTypes,
|
54
|
+
control: {
|
55
|
+
type: 'inline-radio',
|
56
|
+
},
|
57
|
+
},
|
58
|
+
segmentation: {
|
59
|
+
options: segmentation,
|
60
|
+
control: {
|
61
|
+
type: 'select',
|
62
|
+
},
|
63
|
+
},
|
64
|
+
},
|
65
|
+
};
|
66
|
+
|
67
|
+
export default meta;
|
68
|
+
|
69
|
+
type StoryPropsDefault = ComponentProps<typeof NumberInput>;
|
70
|
+
|
71
|
+
const StoryDefault = (args: StoryPropsDefault) => {
|
72
|
+
const [value, setValue] = useState(5);
|
73
|
+
|
74
|
+
const handleChange = (_: any, newValue: number) => {
|
75
|
+
setValue(newValue);
|
76
|
+
onChange(newValue);
|
77
|
+
};
|
78
|
+
|
79
|
+
return (
|
80
|
+
<NumberInput
|
81
|
+
{...args}
|
82
|
+
value={value}
|
83
|
+
onChange={handleChange}
|
84
|
+
onDecrement={onDecrement}
|
85
|
+
onIncrement={onIncrement}
|
86
|
+
/>
|
87
|
+
);
|
88
|
+
};
|
89
|
+
|
90
|
+
export const Default: StoryObj<StoryPropsDefault> = {
|
91
|
+
args: {
|
92
|
+
view: 'default',
|
93
|
+
size: 'l',
|
94
|
+
shape: 'cornered',
|
95
|
+
inputBackgroundType: 'fill',
|
96
|
+
segmentation: 'default',
|
97
|
+
clear: false,
|
98
|
+
min: 0,
|
99
|
+
max: 9,
|
100
|
+
step: 1,
|
101
|
+
width: 188,
|
102
|
+
isManualInput: false,
|
103
|
+
textBefore: '',
|
104
|
+
textAfter: '',
|
105
|
+
isLoading: false,
|
106
|
+
disabled: false,
|
107
|
+
},
|
108
|
+
render: StoryDefault,
|
109
|
+
};
|
package/emotion/es/index.js
CHANGED
@@ -60,4 +60,5 @@ export * from './components/Autocomplete';
|
|
60
60
|
export * from './components/EmptyState';
|
61
61
|
export * from './components/Editable';
|
62
62
|
export * from './components/Mask';
|
63
|
-
export * from './components/Attach';
|
63
|
+
export * from './components/Attach';
|
64
|
+
export * from './components/NumberInput';
|
@@ -9,7 +9,6 @@ import { IconArrowWrapper, StyledArrow, Ul, StyledEmptyState, base } from './Com
|
|
9
9
|
import { base as base$1 } from './variations/_view/base.js';
|
10
10
|
import { base as base$2 } from './variations/_size/base.js';
|
11
11
|
import { initialItemsTransform } from './utils/initialItemsTransform.js';
|
12
|
-
import { getInitialValue } from './utils/getInitialValue.js';
|
13
12
|
import { filterItems } from './utils/filterItems.js';
|
14
13
|
import { pathReducer } from './reducers/pathReducer.js';
|
15
14
|
import { focusedPathReducer } from './reducers/focusedPathReducer.js';
|
@@ -23,7 +22,7 @@ import { sizeToIconSize } from '../../Select/utils/sizeToIconSize.js';
|
|
23
22
|
import { getItemId } from './utils/getItemId.js';
|
24
23
|
import { Inner } from './ui/Inner/Inner.js';
|
25
24
|
|
26
|
-
var _excluded = ["multiple", "value", "onChange", "isTargetAmount", "
|
25
|
+
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"];
|
27
26
|
var Context = /*#__PURE__*/createContext({});
|
28
27
|
|
29
28
|
/**
|
@@ -36,7 +35,6 @@ var comboboxRoot = function comboboxRoot(Root) {
|
|
36
35
|
outerValue = props.value,
|
37
36
|
outerOnChange = props.onChange,
|
38
37
|
isTargetAmount = props.isTargetAmount,
|
39
|
-
targetAmount = props.targetAmount,
|
40
38
|
items = props.items,
|
41
39
|
_props$placement = props.placement,
|
42
40
|
placement = _props$placement === void 0 ? 'bottom-start' : _props$placement,
|
@@ -64,15 +62,10 @@ var comboboxRoot = function comboboxRoot(Root) {
|
|
64
62
|
alwaysOpened = _props$alwaysOpened === void 0 ? false : _props$alwaysOpened,
|
65
63
|
filter = props.filter,
|
66
64
|
outerCloseAfterSelect = props.closeAfterSelect,
|
67
|
-
renderValue = props.renderValue,
|
68
65
|
rest = _objectWithoutProperties(props, _excluded);
|
69
|
-
var transformedItems = useMemo(function () {
|
70
|
-
return initialItemsTransform(items || []);
|
71
|
-
}, [items]);
|
72
|
-
|
73
66
|
// Создаем структуры для быстрой работы с деревом
|
74
67
|
var _useMemo = useMemo(function () {
|
75
|
-
return getTreeMaps(
|
68
|
+
return getTreeMaps(items);
|
76
69
|
}, [items]),
|
77
70
|
_useMemo2 = _slicedToArray(_useMemo, 3),
|
78
71
|
valueToCheckedMap = _useMemo2[0],
|
@@ -86,11 +79,14 @@ var comboboxRoot = function comboboxRoot(Root) {
|
|
86
79
|
_useState4 = _slicedToArray(_useState3, 2),
|
87
80
|
internalValue = _useState4[0],
|
88
81
|
setInternalValue = _useState4[1];
|
89
|
-
var value = outerValue
|
82
|
+
var value = outerValue || internalValue;
|
90
83
|
var inputRef = useRef(null);
|
91
84
|
var floatingPopoverRef = useRef(null);
|
92
85
|
var inputForkRef = useForkRef(inputRef, ref);
|
93
86
|
var treeId = safeUseId();
|
87
|
+
var transformedItems = useMemo(function () {
|
88
|
+
return initialItemsTransform(items || []);
|
89
|
+
}, [items]);
|
94
90
|
var filteredItems = filterItems(transformedItems, textValue, (_valueToItemMap$get2 = valueToItemMap.get(value)) === null || _valueToItemMap$get2 === void 0 ? void 0 : _valueToItemMap$get2.label, filter);
|
95
91
|
var _useMemo3 = useMemo(function () {
|
96
92
|
return getPathMap(filteredItems);
|
@@ -257,7 +253,16 @@ var comboboxRoot = function comboboxRoot(Root) {
|
|
257
253
|
if (e) {
|
258
254
|
e.stopPropagation();
|
259
255
|
}
|
260
|
-
var
|
256
|
+
var checkedCopy = new Map(checked);
|
257
|
+
var isCurrentChecked = checkedCopy.get(item.value);
|
258
|
+
checkedCopy.forEach(function (_, key) {
|
259
|
+
checkedCopy.set(key, false);
|
260
|
+
});
|
261
|
+
if (!isCurrentChecked) {
|
262
|
+
checkedCopy.set(item.value, 'done');
|
263
|
+
updateSingleAncestors(item, checkedCopy, 'dot');
|
264
|
+
}
|
265
|
+
setTextValue(isCurrentChecked ? '' : item.label);
|
261
266
|
if (!alwaysOpened && closeAfterSelect) {
|
262
267
|
dispatchPath({
|
263
268
|
type: 'reset'
|
@@ -271,18 +276,14 @@ var comboboxRoot = function comboboxRoot(Root) {
|
|
271
276
|
}
|
272
277
|
};
|
273
278
|
var getChips = function getChips() {
|
274
|
-
if (multiple
|
279
|
+
if (multiple) {
|
275
280
|
if (value.length === 0) return [];
|
276
281
|
if (isTargetAmount) {
|
277
|
-
return ["\u0412\u044B\u0431\u0440\u0430\u043D\u043E ".concat(
|
282
|
+
return ["\u0412\u044B\u0431\u0440\u0430\u043D\u043E ".concat(value.length)];
|
278
283
|
}
|
279
|
-
|
280
|
-
return
|
281
|
-
};
|
282
|
-
var valueToItemMapper = function valueToItemMapper(stringValue) {
|
283
|
-
return valueToItemMap.get(stringValue).label;
|
284
|
-
};
|
285
|
-
return value.map(renderValueMapper || valueToItemMapper);
|
284
|
+
return value.map(function (value) {
|
285
|
+
return valueToItemMap.get(value).label;
|
286
|
+
});
|
286
287
|
}
|
287
288
|
return [];
|
288
289
|
};
|
@@ -310,7 +311,6 @@ var comboboxRoot = function comboboxRoot(Root) {
|
|
310
311
|
// В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.
|
311
312
|
// Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.
|
312
313
|
useLayoutEffect(function () {
|
313
|
-
var _valueToItemMap$get4;
|
314
314
|
var checkedCopy = new Map(checked);
|
315
315
|
checkedCopy.forEach(function (_, key) {
|
316
316
|
checkedCopy.set(key, false);
|
@@ -328,12 +328,7 @@ var comboboxRoot = function comboboxRoot(Root) {
|
|
328
328
|
}
|
329
329
|
}
|
330
330
|
setChecked(checkedCopy);
|
331
|
-
|
332
|
-
|
333
|
-
// В deps мы кладем именно outerValue и internalValue, а не просто value.
|
334
|
-
// Т.к. вначале нужно отфильтровать и провалидировать outerValue и результат положить в переменную.
|
335
|
-
// А переменную, содержащую сложные типы данных, нельзя помещать в deps.
|
336
|
-
}, [outerValue, internalValue, items]);
|
331
|
+
}, [value]);
|
337
332
|
return /*#__PURE__*/React.createElement(Root, {
|
338
333
|
size: size,
|
339
334
|
view: view,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Combobox.js","sources":["../../../../src/components/Combobox/ComboboxNew/Combobox.tsx"],"sourcesContent":["import React, { forwardRef, useState, useReducer, useMemo, createContext, useLayoutEffect, useRef } from 'react';\nimport type { ChangeEvent } from 'react';\nimport { safeUseId, useForkRef } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../../engines';\nimport { isEmpty } from '../../../utils';\nimport { useOutsideClick } from '../../../hooks';\nimport { sizeToIconSize } from '../../Select/utils';\n\nimport { classes } from './Combobox.tokens';\nimport { FloatingPopover } from './FloatingPopover';\nimport { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';\nimport {\n initialItemsTransform,\n updateAncestors,\n updateDescendants,\n updateSingleAncestors,\n filterItems,\n getItemId,\n getInitialValue,\n} from './utils';\nimport { Inner, StyledTextField } from './ui';\nimport { pathReducer, focusedPathReducer } from './reducers';\nimport { getPathMap, getTreeMaps } from './hooks/getPathMaps';\nimport { Ul, base, StyledArrow, IconArrowWrapper, StyledEmptyState } from './Combobox.styles';\nimport type { ItemContext, ComboboxProps } from './Combobox.types';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport type { ItemOptionTransformed } from './ui/Inner/ui/Item/Item.types';\n\nexport const Context = createContext<ItemContext>({} as ItemContext);\n\n/**\n * Поле ввода с выпадающим списком и возможностью фильтрации и выбора элементов.\n */\nexport const comboboxRoot = (Root: RootProps<HTMLInputElement, Omit<ComboboxProps, 'items'>>) =>\n forwardRef<HTMLInputElement, ComboboxProps>((props, ref) => {\n const {\n multiple,\n value: outerValue,\n onChange: outerOnChange,\n isTargetAmount,\n targetAmount,\n items,\n placement = 'bottom-start',\n label,\n placeholder,\n helperText,\n contentLeft,\n textBefore,\n textAfter,\n variant = 'normal',\n listOverflow,\n listHeight,\n listWidth,\n portal,\n renderItem,\n view,\n size,\n labelPlacement,\n readOnly = false,\n disabled = false,\n alwaysOpened = false,\n filter,\n closeAfterSelect: outerCloseAfterSelect,\n renderValue,\n ...rest\n } = props;\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n // Создаем структуры для быстрой работы с деревом\n const [valueToCheckedMap, valueToItemMap, labelToItemMap] = useMemo(() => getTreeMaps(transformedItems), [\n items,\n ]);\n\n const [textValue, setTextValue] = useState(valueToItemMap.get(outerValue as string)?.label || '');\n const [internalValue, setInternalValue] = useState<string | string[]>(multiple ? [] : '');\n\n const value =\n outerValue !== null && outerValue !== undefined\n ? getInitialValue(outerValue, valueToItemMap)\n : internalValue;\n\n const inputRef = useRef<HTMLInputElement>(null);\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n const inputForkRef = useForkRef(inputRef, ref);\n const treeId = safeUseId();\n\n const filteredItems = filterItems(\n transformedItems,\n textValue,\n valueToItemMap.get(value as string)?.label as string,\n filter,\n );\n\n const [pathMap, focusedToValueMap] = useMemo(() => getPathMap(filteredItems), [filteredItems, textValue]);\n\n // Состояния дерева элементов\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const isCurrentListOpen = alwaysOpened || Boolean(path[0]);\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value || '';\n const withArrowInverse = isCurrentListOpen ? classes.arrowInverse : undefined;\n const closeAfterSelect = outerCloseAfterSelect ?? !multiple;\n\n // Логика работы при клике за пределами выпадающего списка\n const targetRef = useOutsideClick<HTMLUListElement>(() => {\n if (!isCurrentListOpen) {\n return;\n }\n\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n\n // Проверяем, отличается ли значение в инпуте от выбранного value после закрытия дропдауна.\n // Если изменилось, то возвращаем label выбранного айтема.\n // Если нет выбранного элемента, то стираем значение инпута.\n if (textValue !== value) {\n if (isEmpty(value)) {\n setTextValue('');\n } else {\n setTextValue(valueToItemMap.get(value as string)?.label || '');\n }\n }\n }, floatingPopoverRef);\n\n const onChange = (newValue: string | Array<string>) => {\n if (outerOnChange) {\n outerOnChange(newValue as any);\n }\n\n setInternalValue(newValue);\n };\n\n const handleClickArrow = () => {\n if (disabled || readOnly) {\n return;\n }\n\n if (isCurrentListOpen) {\n dispatchPath({ type: 'reset' });\n } else {\n dispatchPath({ type: 'opened_first_level' });\n }\n\n dispatchFocusedPath({ type: 'reset' });\n };\n\n // Обработчик изменения значения в инпуте\n const handleTextValueChange = (e: ChangeEvent<HTMLInputElement>) => {\n setTextValue(e.target.value);\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'reset' });\n };\n\n // Обработчик чипов\n const handleChipsChange = (chipLabels: any[]) => {\n onChange(chipLabels.map((chipLabel) => labelToItemMap.get(chipLabel)!.value));\n };\n\n // Обработчик открытия/закрытия выпадающего списка\n const handleListToggle = (opened: boolean) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n }\n };\n\n // Обработчик выбора чекбоксов (только при multiple)\n const handleCheckboxChange = (item: ItemOptionTransformed) => {\n if (!multiple) {\n return;\n }\n\n const checkedCopy = new Map(checked);\n\n if (!checkedCopy.get(item.value)) {\n checkedCopy.set(item.value, true);\n updateDescendants(item, checkedCopy, true);\n } else {\n checkedCopy.set(item.value, false);\n updateDescendants(item, checkedCopy, false);\n }\n\n updateAncestors(item, checkedCopy);\n\n const newValues: Array<string> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value);\n }\n });\n\n if (!alwaysOpened && closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(newValues);\n }\n\n // После выбора/снятия чекбокса скроллим к инпуту\n setTimeout(() => {\n if (inputRef.current) {\n inputRef.current.scrollIntoView({\n behavior: 'smooth',\n inline: 'start',\n });\n }\n }, 1);\n };\n\n // Обработчик клика по айтему выпадающего списка\n const handleItemClick = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (multiple) {\n handleCheckboxChange(item);\n return;\n }\n\n if (e) {\n e.stopPropagation();\n }\n\n const isCurrentChecked = checked.get(item.value);\n\n if (!alwaysOpened && closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value);\n }\n };\n\n const getChips = (): string[] => {\n if (multiple && Array.isArray(value)) {\n if (value.length === 0) return [];\n\n if (isTargetAmount) {\n return [`Выбрано ${targetAmount || value.length}`];\n }\n\n const renderValueMapper =\n renderValue && ((stringValue: string) => renderValue(valueToItemMap.get(stringValue)!));\n const valueToItemMapper = (stringValue: string) => valueToItemMap.get(stringValue)!.label;\n\n return value.map(renderValueMapper || valueToItemMapper);\n }\n\n return [];\n };\n\n const handlePressDown = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (multiple) {\n handleCheckboxChange(item);\n }\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleListToggle,\n handlePressDown,\n multiselect: multiple,\n setTextValue,\n });\n\n // В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.\n // Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.\n useLayoutEffect(() => {\n const checkedCopy = new Map(checked);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value)) {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n });\n } else {\n checkedCopy.set(value, 'done');\n updateSingleAncestors(valueToItemMap.get(value)!, checkedCopy, 'dot');\n }\n }\n\n setChecked(checkedCopy);\n\n setTextValue(valueToItemMap.get(outerValue as string)?.label || '');\n\n // В deps мы кладем именно outerValue и internalValue, а не просто value.\n // Т.к. вначале нужно отфильтровать и провалидировать outerValue и результат положить в переменную.\n // А переменную, содержащую сложные типы данных, нельзя помещать в deps.\n }, [outerValue, internalValue, items]);\n\n return (\n <Root size={size} view={view} labelPlacement={labelPlacement} disabled={disabled} readOnly={readOnly}>\n <div>\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiple,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n valueToItemMap,\n treeId,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={(opened: boolean) => opened && handleListToggle(true)}\n placement={placement}\n portal={portal}\n target={(referenceRef) => (\n <StyledTextField\n ref={inputForkRef}\n inputWrapperRef={referenceRef}\n value={textValue}\n onChange={handleTextValueChange}\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n label={label}\n placeholder={placeholder}\n contentLeft={contentLeft}\n contentRight={\n <IconArrowWrapper disabled={disabled} onClick={handleClickArrow}>\n <StyledArrow\n color=\"inherit\"\n size={sizeToIconSize(size)}\n className={withArrowInverse}\n />\n </IconArrowWrapper>\n }\n textBefore={textBefore}\n textAfter={textAfter}\n onKeyDown={onKeyDown}\n leftHelper={helperText}\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-controls={`${treeId}_tree_level_1`}\n aria-expanded={isCurrentListOpen}\n aria-activedescendant={\n activeDescendantItemValue ? getItemId(treeId, activeDescendantItemValue) : ''\n }\n {...(multiple\n ? {\n enumerationType: 'chip',\n chips: getChips(),\n onChangeChips: handleChipsChange,\n }\n : { enumerationType: 'plain' })}\n {...rest}\n onEnterDisabled // Пропс для отключения обработчика Enter внутри Textfield\n />\n )}\n >\n <Root\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n >\n <Ul\n role=\"tree\"\n id={`${treeId}_tree_level_1`}\n aria-multiselectable={Boolean(multiple)}\n listHeight={listHeight}\n listOverflow={listOverflow}\n listWidth={listWidth}\n ref={targetRef}\n >\n {isEmpty(filteredItems) ? (\n <StyledEmptyState\n className={classes.emptyStateWrapper}\n size={size}\n description=\"Ничего не найдено\"\n />\n ) : (\n filteredItems.map((item, index) => (\n <Inner\n key={`${index}/0`}\n item={item}\n currentLevel={0}\n path={path}\n dispatchPath={dispatchPath}\n index={index}\n listWidth={listWidth}\n />\n ))\n )}\n </Ul>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n </div>\n </Root>\n );\n });\n\nexport const comboboxConfig = {\n name: 'Select',\n tag: 'div',\n layout: comboboxRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n readOnly: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n labelPlacement: 'outer',\n },\n};\n"],"names":["Context","createContext","comboboxRoot","Root","forwardRef","props","ref","_valueToItemMap$get","_valueToItemMap$get2","_getItemByFocused","multiple","outerValue","value","outerOnChange","onChange","isTargetAmount","targetAmount","items","_props$placement","placement","label","placeholder","helperText","contentLeft","textBefore","textAfter","_props$variant","variant","listOverflow","listHeight","listWidth","portal","renderItem","view","size","labelPlacement","_props$readOnly","readOnly","_props$disabled","disabled","_props$alwaysOpened","alwaysOpened","filter","outerCloseAfterSelect","closeAfterSelect","renderValue","rest","_objectWithoutProperties","_excluded","transformedItems","useMemo","initialItemsTransform","_useMemo","getTreeMaps","_useMemo2","_slicedToArray","valueToCheckedMap","valueToItemMap","labelToItemMap","_useState","useState","get","_useState2","textValue","setTextValue","_useState3","_useState4","internalValue","setInternalValue","undefined","getInitialValue","inputRef","useRef","floatingPopoverRef","inputForkRef","useForkRef","treeId","safeUseId","filteredItems","filterItems","_useMemo3","getPathMap","_useMemo4","pathMap","focusedToValueMap","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useState5","_useState6","checked","setChecked","isCurrentListOpen","Boolean","activeDescendantItemValue","getItemByFocused","withArrowInverse","classes","arrowInverse","targetRef","useOutsideClick","type","isEmpty","_valueToItemMap$get3","newValue","handleClickArrow","handleTextValueChange","e","target","handleChipsChange","chipLabels","map","chipLabel","handleListToggle","opened","handleCheckboxChange","item","checkedCopy","Map","set","updateDescendants","updateAncestors","newValues","forEach","key","push","setTimeout","current","scrollIntoView","behavior","inline","handleItemClick","stopPropagation","isCurrentChecked","getChips","Array","isArray","length","concat","renderValueMapper","stringValue","valueToItemMapper","handlePressDown","_useKeyNavigation","useKeyNavigation","multiselect","onKeyDown","useLayoutEffect","_valueToItemMap$get4","_","val","updateSingleAncestors","React","createElement","Provider","FloatingPopover","onToggle","referenceRef","StyledTextField","_extends","inputWrapperRef","contentRight","IconArrowWrapper","onClick","StyledArrow","color","sizeToIconSize","className","leftHelper","role","getItemId","enumerationType","chips","onChangeChips","onEnterDisabled","Ul","id","StyledEmptyState","emptyStateWrapper","description","index","Inner","currentLevel","comboboxConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Combobox.js","sources":["../../../../src/components/Combobox/ComboboxNew/Combobox.tsx"],"sourcesContent":["import React, { forwardRef, useState, useReducer, useMemo, createContext, useLayoutEffect, useRef } from 'react';\nimport type { ChangeEvent } from 'react';\nimport { safeUseId, useForkRef } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../../engines';\nimport { isEmpty } from '../../../utils';\nimport { useOutsideClick } from '../../../hooks';\nimport { sizeToIconSize } from '../../Select/utils';\n\nimport { classes } from './Combobox.tokens';\nimport { FloatingPopover } from './FloatingPopover';\nimport { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';\nimport {\n initialItemsTransform,\n updateAncestors,\n updateDescendants,\n updateSingleAncestors,\n filterItems,\n getItemId,\n} from './utils';\nimport { Inner, StyledTextField } from './ui';\nimport { pathReducer, focusedPathReducer } from './reducers';\nimport { getPathMap, getTreeMaps } from './hooks/getPathMaps';\nimport { Ul, base, StyledArrow, IconArrowWrapper, StyledEmptyState } from './Combobox.styles';\nimport type { ItemContext, ComboboxProps } from './Combobox.types';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport type { ItemOptionTransformed } from './ui/Inner/ui/Item/Item.types';\n\nexport const Context = createContext<ItemContext>({} as ItemContext);\n\n/**\n * Поле ввода с выпадающим списком и возможностью фильтрации и выбора элементов.\n */\nexport const comboboxRoot = (Root: RootProps<HTMLInputElement, Omit<ComboboxProps, 'items'>>) =>\n forwardRef<HTMLInputElement, ComboboxProps>((props, ref) => {\n const {\n multiple,\n value: outerValue,\n onChange: outerOnChange,\n isTargetAmount,\n items,\n placement = 'bottom-start',\n label,\n placeholder,\n helperText,\n contentLeft,\n textBefore,\n textAfter,\n variant = 'normal',\n listOverflow,\n listHeight,\n listWidth,\n portal,\n renderItem,\n view,\n size,\n labelPlacement,\n readOnly = false,\n disabled = false,\n alwaysOpened = false,\n filter,\n closeAfterSelect: outerCloseAfterSelect,\n ...rest\n } = props;\n // Создаем структуры для быстрой работы с деревом\n const [valueToCheckedMap, valueToItemMap, labelToItemMap] = useMemo(() => getTreeMaps(items), [items]);\n\n const [textValue, setTextValue] = useState(valueToItemMap.get(outerValue as string)?.label || '');\n const [internalValue, setInternalValue] = useState<string | string[]>(multiple ? [] : '');\n\n const value = outerValue || internalValue;\n\n const inputRef = useRef<HTMLInputElement>(null);\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n const inputForkRef = useForkRef(inputRef, ref);\n const treeId = safeUseId();\n\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n const filteredItems = filterItems(\n transformedItems,\n textValue,\n valueToItemMap.get(value as string)?.label as string,\n filter,\n );\n\n const [pathMap, focusedToValueMap] = useMemo(() => getPathMap(filteredItems), [filteredItems, textValue]);\n\n // Состояния дерева элементов\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const isCurrentListOpen = alwaysOpened || Boolean(path[0]);\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value || '';\n const withArrowInverse = isCurrentListOpen ? classes.arrowInverse : undefined;\n const closeAfterSelect = outerCloseAfterSelect ?? !multiple;\n\n // Логика работы при клике за пределами выпадающего списка\n const targetRef = useOutsideClick<HTMLUListElement>(() => {\n if (!isCurrentListOpen) {\n return;\n }\n\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n\n // Проверяем, отличается ли значение в инпуте от выбранного value после закрытия дропдауна.\n // Если изменилось, то возвращаем label выбранного айтема.\n // Если нет выбранного элемента, то стираем значение инпута.\n if (textValue !== value) {\n if (isEmpty(value)) {\n setTextValue('');\n } else {\n setTextValue(valueToItemMap.get(value as string)?.label || '');\n }\n }\n }, floatingPopoverRef);\n\n const onChange = (newValue: string | Array<string>) => {\n if (outerOnChange) {\n outerOnChange(newValue as any);\n }\n\n setInternalValue(newValue);\n };\n\n const handleClickArrow = () => {\n if (disabled || readOnly) {\n return;\n }\n\n if (isCurrentListOpen) {\n dispatchPath({ type: 'reset' });\n } else {\n dispatchPath({ type: 'opened_first_level' });\n }\n\n dispatchFocusedPath({ type: 'reset' });\n };\n\n // Обработчик изменения значения в инпуте\n const handleTextValueChange = (e: ChangeEvent<HTMLInputElement>) => {\n setTextValue(e.target.value);\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'reset' });\n };\n\n // Обработчик чипов\n const handleChipsChange = (chipLabels: any[]) => {\n onChange(chipLabels.map((chipLabel) => labelToItemMap.get(chipLabel)!.value));\n };\n\n // Обработчик открытия/закрытия выпадающего списка\n const handleListToggle = (opened: boolean) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n }\n };\n\n // Обработчик выбора чекбоксов (только при multiple)\n const handleCheckboxChange = (item: ItemOptionTransformed) => {\n if (!multiple) {\n return;\n }\n\n const checkedCopy = new Map(checked);\n\n if (!checkedCopy.get(item.value)) {\n checkedCopy.set(item.value, true);\n updateDescendants(item, checkedCopy, true);\n } else {\n checkedCopy.set(item.value, false);\n updateDescendants(item, checkedCopy, false);\n }\n\n updateAncestors(item, checkedCopy);\n\n const newValues: Array<string> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value);\n }\n });\n\n if (!alwaysOpened && closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(newValues);\n }\n\n // После выбора/снятия чекбокса скроллим к инпуту\n setTimeout(() => {\n if (inputRef.current) {\n inputRef.current.scrollIntoView({\n behavior: 'smooth',\n inline: 'start',\n });\n }\n }, 1);\n };\n\n // Обработчик клика по айтему выпадающего списка\n const handleItemClick = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (multiple) {\n handleCheckboxChange(item);\n return;\n }\n\n if (e) {\n e.stopPropagation();\n }\n\n const checkedCopy = new Map(checked);\n\n const isCurrentChecked = checkedCopy.get(item.value);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isCurrentChecked) {\n checkedCopy.set(item.value, 'done');\n updateSingleAncestors(item, checkedCopy, 'dot');\n }\n\n setTextValue(isCurrentChecked ? '' : item.label);\n\n if (!alwaysOpened && closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value);\n }\n };\n\n const getChips = (): string[] => {\n if (multiple) {\n if (value.length === 0) return [];\n\n if (isTargetAmount) {\n return [`Выбрано ${value.length}`];\n }\n\n return (value as []).map((value) => valueToItemMap.get(value)!.label);\n }\n\n return [];\n };\n\n const handlePressDown = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (multiple) {\n handleCheckboxChange(item);\n }\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleListToggle,\n handlePressDown,\n multiselect: multiple,\n setTextValue,\n });\n\n // В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.\n // Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.\n useLayoutEffect(() => {\n const checkedCopy = new Map(checked);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value)) {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n });\n } else {\n checkedCopy.set(value, 'done');\n updateSingleAncestors(valueToItemMap.get(value)!, checkedCopy, 'dot');\n }\n }\n\n setChecked(checkedCopy);\n }, [value]);\n\n return (\n <Root size={size} view={view} labelPlacement={labelPlacement} disabled={disabled} readOnly={readOnly}>\n <div>\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiple,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n valueToItemMap,\n treeId,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={(opened: boolean) => opened && handleListToggle(true)}\n placement={placement}\n portal={portal}\n target={(referenceRef) => (\n <StyledTextField\n ref={inputForkRef}\n inputWrapperRef={referenceRef}\n value={textValue}\n onChange={handleTextValueChange}\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n label={label}\n placeholder={placeholder}\n contentLeft={contentLeft}\n contentRight={\n <IconArrowWrapper disabled={disabled} onClick={handleClickArrow}>\n <StyledArrow\n color=\"inherit\"\n size={sizeToIconSize(size)}\n className={withArrowInverse}\n />\n </IconArrowWrapper>\n }\n textBefore={textBefore}\n textAfter={textAfter}\n onKeyDown={onKeyDown}\n leftHelper={helperText}\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-controls={`${treeId}_tree_level_1`}\n aria-expanded={isCurrentListOpen}\n aria-activedescendant={\n activeDescendantItemValue ? getItemId(treeId, activeDescendantItemValue) : ''\n }\n {...(multiple\n ? {\n enumerationType: 'chip',\n chips: getChips(),\n onChangeChips: handleChipsChange,\n }\n : { enumerationType: 'plain' })}\n {...rest}\n onEnterDisabled // Пропс для отключения обработчика Enter внутри Textfield\n />\n )}\n >\n <Root\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n >\n <Ul\n role=\"tree\"\n id={`${treeId}_tree_level_1`}\n aria-multiselectable={Boolean(multiple)}\n listHeight={listHeight}\n listOverflow={listOverflow}\n listWidth={listWidth}\n ref={targetRef}\n >\n {isEmpty(filteredItems) ? (\n <StyledEmptyState\n className={classes.emptyStateWrapper}\n size={size}\n description=\"Ничего не найдено\"\n />\n ) : (\n filteredItems.map((item, index) => (\n <Inner\n key={`${index}/0`}\n item={item}\n currentLevel={0}\n path={path}\n dispatchPath={dispatchPath}\n index={index}\n listWidth={listWidth}\n />\n ))\n )}\n </Ul>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n </div>\n </Root>\n );\n });\n\nexport const comboboxConfig = {\n name: 'Select',\n tag: 'div',\n layout: comboboxRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n readOnly: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n labelPlacement: 'outer',\n },\n};\n"],"names":["Context","createContext","comboboxRoot","Root","forwardRef","props","ref","_valueToItemMap$get","_valueToItemMap$get2","_getItemByFocused","multiple","outerValue","value","outerOnChange","onChange","isTargetAmount","items","_props$placement","placement","label","placeholder","helperText","contentLeft","textBefore","textAfter","_props$variant","variant","listOverflow","listHeight","listWidth","portal","renderItem","view","size","labelPlacement","_props$readOnly","readOnly","_props$disabled","disabled","_props$alwaysOpened","alwaysOpened","filter","outerCloseAfterSelect","closeAfterSelect","rest","_objectWithoutProperties","_excluded","_useMemo","useMemo","getTreeMaps","_useMemo2","_slicedToArray","valueToCheckedMap","valueToItemMap","labelToItemMap","_useState","useState","get","_useState2","textValue","setTextValue","_useState3","_useState4","internalValue","setInternalValue","inputRef","useRef","floatingPopoverRef","inputForkRef","useForkRef","treeId","safeUseId","transformedItems","initialItemsTransform","filteredItems","filterItems","_useMemo3","getPathMap","_useMemo4","pathMap","focusedToValueMap","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useState5","_useState6","checked","setChecked","isCurrentListOpen","Boolean","activeDescendantItemValue","getItemByFocused","withArrowInverse","classes","arrowInverse","undefined","targetRef","useOutsideClick","type","isEmpty","_valueToItemMap$get3","newValue","handleClickArrow","handleTextValueChange","e","target","handleChipsChange","chipLabels","map","chipLabel","handleListToggle","opened","handleCheckboxChange","item","checkedCopy","Map","set","updateDescendants","updateAncestors","newValues","forEach","key","push","setTimeout","current","scrollIntoView","behavior","inline","handleItemClick","stopPropagation","isCurrentChecked","_","updateSingleAncestors","getChips","length","concat","handlePressDown","_useKeyNavigation","useKeyNavigation","multiselect","onKeyDown","useLayoutEffect","Array","isArray","val","React","createElement","Provider","FloatingPopover","onToggle","referenceRef","StyledTextField","_extends","inputWrapperRef","contentRight","IconArrowWrapper","onClick","StyledArrow","color","sizeToIconSize","className","leftHelper","role","getItemId","enumerationType","chips","onChangeChips","onEnterDisabled","Ul","id","StyledEmptyState","emptyStateWrapper","description","index","Inner","currentLevel","comboboxConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;IA6BaA,OAAO,gBAAGC,aAAa,CAAc,EAAiB,EAAC;;AAEpE;AACA;AACA;IACaC,YAAY,GAAG,SAAfA,YAAYA,CAAIC,IAA+D,EAAA;AAAA,EAAA,oBACxFC,UAAU,CAAkC,UAACC,KAAK,EAAEC,GAAG,EAAK;AAAA,IAAA,IAAAC,mBAAA,EAAAC,oBAAA,EAAAC,iBAAA,CAAA;AACxD,IAAA,IACIC,QAAQ,GA2BRL,KAAK,CA3BLK,QAAQ;MACDC,UAAU,GA0BjBN,KAAK,CA1BLO,KAAK;MACKC,aAAa,GAyBvBR,KAAK,CAzBLS,QAAQ;MACRC,cAAc,GAwBdV,KAAK,CAxBLU,cAAc;MACdC,KAAK,GAuBLX,KAAK,CAvBLW,KAAK;MAAAC,gBAAA,GAuBLZ,KAAK,CAtBLa,SAAS;AAATA,MAAAA,SAAS,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,cAAc,GAAAA,gBAAA;MAC1BE,KAAK,GAqBLd,KAAK,CArBLc,KAAK;MACLC,WAAW,GAoBXf,KAAK,CApBLe,WAAW;MACXC,UAAU,GAmBVhB,KAAK,CAnBLgB,UAAU;MACVC,WAAW,GAkBXjB,KAAK,CAlBLiB,WAAW;MACXC,UAAU,GAiBVlB,KAAK,CAjBLkB,UAAU;MACVC,SAAS,GAgBTnB,KAAK,CAhBLmB,SAAS;MAAAC,cAAA,GAgBTpB,KAAK,CAfLqB,OAAO;AAAPA,MAAAA,OAAO,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,cAAA;MAClBE,YAAY,GAcZtB,KAAK,CAdLsB,YAAY;MACZC,UAAU,GAaVvB,KAAK,CAbLuB,UAAU;MACVC,SAAS,GAYTxB,KAAK,CAZLwB,SAAS;MACTC,MAAM,GAWNzB,KAAK,CAXLyB,MAAM;MACNC,UAAU,GAUV1B,KAAK,CAVL0B,UAAU;MACVC,IAAI,GASJ3B,KAAK,CATL2B,IAAI;MACJC,IAAI,GAQJ5B,KAAK,CARL4B,IAAI;MACJC,cAAc,GAOd7B,KAAK,CAPL6B,cAAc;MAAAC,eAAA,GAOd9B,KAAK,CANL+B,QAAQ;AAARA,MAAAA,QAAQ,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA;MAAAE,eAAA,GAMhBhC,KAAK,CALLiC,QAAQ;AAARA,MAAAA,QAAQ,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA;MAAAE,mBAAA,GAKhBlC,KAAK,CAJLmC,YAAY;AAAZA,MAAAA,YAAY,GAAAD,mBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,mBAAA;MACpBE,MAAM,GAGNpC,KAAK,CAHLoC,MAAM;MACYC,qBAAqB,GAEvCrC,KAAK,CAFLsC,gBAAgB;AACbC,MAAAA,IAAI,GAAAC,wBAAA,CACPxC,KAAK,EAAAyC,SAAA,CAAA,CAAA;AACT;IACA,IAAAC,QAAA,GAA4DC,OAAO,CAAC,YAAA;QAAA,OAAMC,WAAW,CAACjC,KAAK,CAAC,CAAA;OAAE,EAAA,CAACA,KAAK,CAAC,CAAC;MAAAkC,SAAA,GAAAC,cAAA,CAAAJ,QAAA,EAAA,CAAA,CAAA;AAA/FK,MAAAA,iBAAiB,GAAAF,SAAA,CAAA,CAAA,CAAA;AAAEG,MAAAA,cAAc,GAAAH,SAAA,CAAA,CAAA,CAAA;AAAEI,MAAAA,cAAc,GAAAJ,SAAA,CAAA,CAAA,CAAA,CAAA;IAExD,IAAAK,SAAA,GAAkCC,QAAQ,CAAC,EAAAjD,mBAAA,GAAA8C,cAAc,CAACI,GAAG,CAAC9C,UAAoB,CAAC,cAAAJ,mBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAxCA,mBAAA,CAA0CY,KAAK,KAAI,EAAE,CAAC;MAAAuC,UAAA,GAAAP,cAAA,CAAAI,SAAA,EAAA,CAAA,CAAA;AAA1FI,MAAAA,SAAS,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,YAAY,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;IAC9B,IAAAG,UAAA,GAA0CL,QAAQ,CAAoB9C,QAAQ,GAAG,EAAE,GAAG,EAAE,CAAC;MAAAoD,UAAA,GAAAX,cAAA,CAAAU,UAAA,EAAA,CAAA,CAAA;AAAlFE,MAAAA,aAAa,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,gBAAgB,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AAEtC,IAAA,IAAMlD,KAAK,GAAGD,UAAU,IAAIoD,aAAa,CAAA;AAEzC,IAAA,IAAME,QAAQ,GAAGC,MAAM,CAAmB,IAAI,CAAC,CAAA;AAC/C,IAAA,IAAMC,kBAAkB,GAAGD,MAAM,CAAiB,IAAI,CAAC,CAAA;AACvD,IAAA,IAAME,YAAY,GAAGC,UAAU,CAACJ,QAAQ,EAAE3D,GAAG,CAAC,CAAA;AAC9C,IAAA,IAAMgE,MAAM,GAAGC,SAAS,EAAE,CAAA;IAE1B,IAAMC,gBAAgB,GAAGxB,OAAO,CAAC,YAAA;AAAA,MAAA,OAAMyB,qBAAqB,CAACzD,KAAK,IAAI,EAAE,CAAC,CAAA;KAAE,EAAA,CAACA,KAAK,CAAC,CAAC,CAAA;IAEnF,IAAM0D,aAAa,GAAGC,WAAW,CAC7BH,gBAAgB,EAChBb,SAAS,EAAA,CAAAnD,oBAAA,GACT6C,cAAc,CAACI,GAAG,CAAC7C,KAAe,CAAC,MAAA,IAAA,IAAAJ,oBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAnCA,oBAAA,CAAqCW,KAAK,EAC1CsB,MACJ,CAAC,CAAA;IAED,IAAAmC,SAAA,GAAqC5B,OAAO,CAAC,YAAA;QAAA,OAAM6B,UAAU,CAACH,aAAa,CAAC,CAAA;AAAA,OAAA,EAAE,CAACA,aAAa,EAAEf,SAAS,CAAC,CAAC;MAAAmB,SAAA,GAAA3B,cAAA,CAAAyB,SAAA,EAAA,CAAA,CAAA;AAAlGG,MAAAA,OAAO,GAAAD,SAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,iBAAiB,GAAAF,SAAA,CAAA,CAAA,CAAA,CAAA;;AAEjC;AACA,IAAA,IAAAG,WAAA,GAA6BC,UAAU,CAACC,WAAW,EAAE,EAAE,CAAC;MAAAC,YAAA,GAAAjC,cAAA,CAAA8B,WAAA,EAAA,CAAA,CAAA;AAAjDI,MAAAA,IAAI,GAAAD,YAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,YAAY,GAAAF,YAAA,CAAA,CAAA,CAAA,CAAA;AACzB,IAAA,IAAAG,YAAA,GAA2CL,UAAU,CAACM,kBAAkB,EAAE,EAAE,CAAC;MAAAC,YAAA,GAAAtC,cAAA,CAAAoC,YAAA,EAAA,CAAA,CAAA;AAAtEG,MAAAA,WAAW,GAAAD,YAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,mBAAmB,GAAAF,YAAA,CAAA,CAAA,CAAA,CAAA;AACvC,IAAA,IAAAG,UAAA,GAA8BpC,QAAQ,CAACJ,iBAAiB,CAAC;MAAAyC,UAAA,GAAA1C,cAAA,CAAAyC,UAAA,EAAA,CAAA,CAAA;AAAlDE,MAAAA,OAAO,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,UAAU,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;IAE1B,IAAMG,iBAAiB,GAAGxD,YAAY,IAAIyD,OAAO,CAACZ,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;AAC1D,IAAA,IAAMa,yBAAyB,GAAG,CAAA,CAAAzF,iBAAA,GAAA0F,gBAAgB,CAACT,WAAW,EAAEV,iBAAiB,CAAC,cAAAvE,iBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAhDA,iBAAA,CAAkDG,KAAK,KAAI,EAAE,CAAA;IAC/F,IAAMwF,gBAAgB,GAAGJ,iBAAiB,GAAGK,OAAO,CAACC,YAAY,GAAGC,SAAS,CAAA;IAC7E,IAAM5D,gBAAgB,GAAGD,qBAAqB,KAAA,IAAA,IAArBA,qBAAqB,KAArBA,KAAAA,CAAAA,GAAAA,qBAAqB,GAAI,CAAChC,QAAQ,CAAA;;AAE3D;AACA,IAAA,IAAM8F,SAAS,GAAGC,eAAe,CAAmB,YAAM;MACtD,IAAI,CAACT,iBAAiB,EAAE;AACpB,QAAA,OAAA;AACJ,OAAA;AAEAV,MAAAA,YAAY,CAAC;AAAEoB,QAAAA,IAAI,EAAE,OAAA;AAAQ,OAAC,CAAC,CAAA;AAC/Bf,MAAAA,mBAAmB,CAAC;AAAEe,QAAAA,IAAI,EAAE,OAAA;AAAQ,OAAC,CAAC,CAAA;;AAEtC;AACA;AACA;MACA,IAAI/C,SAAS,KAAK/C,KAAK,EAAE;AACrB,QAAA,IAAI+F,OAAO,CAAC/F,KAAK,CAAC,EAAE;UAChBgD,YAAY,CAAC,EAAE,CAAC,CAAA;AACpB,SAAC,MAAM;AAAA,UAAA,IAAAgD,oBAAA,CAAA;AACHhD,UAAAA,YAAY,CAAC,CAAAgD,CAAAA,oBAAA,GAAAvD,cAAc,CAACI,GAAG,CAAC7C,KAAe,CAAC,MAAA,IAAA,IAAAgG,oBAAA,KAAnCA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,oBAAA,CAAqCzF,KAAK,KAAI,EAAE,CAAC,CAAA;AAClE,SAAA;AACJ,OAAA;KACH,EAAEgD,kBAAkB,CAAC,CAAA;AAEtB,IAAA,IAAMrD,QAAQ,GAAG,SAAXA,QAAQA,CAAI+F,QAAgC,EAAK;AACnD,MAAA,IAAIhG,aAAa,EAAE;QACfA,aAAa,CAACgG,QAAe,CAAC,CAAA;AAClC,OAAA;MAEA7C,gBAAgB,CAAC6C,QAAQ,CAAC,CAAA;KAC7B,CAAA;AAED,IAAA,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,GAAS;MAC3B,IAAIxE,QAAQ,IAAIF,QAAQ,EAAE;AACtB,QAAA,OAAA;AACJ,OAAA;AAEA,MAAA,IAAI4D,iBAAiB,EAAE;AACnBV,QAAAA,YAAY,CAAC;AAAEoB,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;AACnC,OAAC,MAAM;AACHpB,QAAAA,YAAY,CAAC;AAAEoB,UAAAA,IAAI,EAAE,oBAAA;AAAqB,SAAC,CAAC,CAAA;AAChD,OAAA;AAEAf,MAAAA,mBAAmB,CAAC;AAAEe,QAAAA,IAAI,EAAE,OAAA;AAAQ,OAAC,CAAC,CAAA;KACzC,CAAA;;AAED;AACA,IAAA,IAAMK,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,CAAgC,EAAK;AAChEpD,MAAAA,YAAY,CAACoD,CAAC,CAACC,MAAM,CAACrG,KAAK,CAAC,CAAA;AAC5B0E,MAAAA,YAAY,CAAC;AAAEoB,QAAAA,IAAI,EAAE,oBAAA;AAAqB,OAAC,CAAC,CAAA;AAC5Cf,MAAAA,mBAAmB,CAAC;AAAEe,QAAAA,IAAI,EAAE,OAAA;AAAQ,OAAC,CAAC,CAAA;KACzC,CAAA;;AAED;AACA,IAAA,IAAMQ,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,UAAiB,EAAK;AAC7CrG,MAAAA,QAAQ,CAACqG,UAAU,CAACC,GAAG,CAAC,UAACC,SAAS,EAAA;AAAA,QAAA,OAAK/D,cAAc,CAACG,GAAG,CAAC4D,SAAS,CAAC,CAAEzG,KAAK,CAAA;AAAA,OAAA,CAAC,CAAC,CAAA;KAChF,CAAA;;AAED;AACA,IAAA,IAAM0G,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIC,MAAe,EAAK;MAC1C,IAAIjF,QAAQ,IAAIF,QAAQ,EAAE;AACtB,QAAA,OAAA;AACJ,OAAA;AAEA,MAAA,IAAImF,MAAM,EAAE;AACRjC,QAAAA,YAAY,CAAC;AAAEoB,UAAAA,IAAI,EAAE,oBAAA;AAAqB,SAAC,CAAC,CAAA;AAChD,OAAC,MAAM;AACHf,QAAAA,mBAAmB,CAAC;AAAEe,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;AACtCpB,QAAAA,YAAY,CAAC;AAAEoB,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;AACnC,OAAA;KACH,CAAA;;AAED;AACA,IAAA,IAAMc,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAIC,IAA2B,EAAK;MAC1D,IAAI,CAAC/G,QAAQ,EAAE;AACX,QAAA,OAAA;AACJ,OAAA;AAEA,MAAA,IAAMgH,WAAW,GAAG,IAAIC,GAAG,CAAC7B,OAAO,CAAC,CAAA;MAEpC,IAAI,CAAC4B,WAAW,CAACjE,GAAG,CAACgE,IAAI,CAAC7G,KAAK,CAAC,EAAE;QAC9B8G,WAAW,CAACE,GAAG,CAACH,IAAI,CAAC7G,KAAK,EAAE,IAAI,CAAC,CAAA;AACjCiH,QAAAA,iBAAiB,CAACJ,IAAI,EAAEC,WAAW,EAAE,IAAI,CAAC,CAAA;AAC9C,OAAC,MAAM;QACHA,WAAW,CAACE,GAAG,CAACH,IAAI,CAAC7G,KAAK,EAAE,KAAK,CAAC,CAAA;AAClCiH,QAAAA,iBAAiB,CAACJ,IAAI,EAAEC,WAAW,EAAE,KAAK,CAAC,CAAA;AAC/C,OAAA;AAEAI,MAAAA,eAAe,CAACL,IAAI,EAAEC,WAAW,CAAC,CAAA;MAElC,IAAMK,SAAwB,GAAG,EAAE,CAAA;AAEnC1E,MAAAA,cAAc,CAAC2E,OAAO,CAAC,UAACP,IAAI,EAAEQ,GAAG,EAAK;AAClC,QAAA,IAAIP,WAAW,CAACjE,GAAG,CAACwE,GAAG,CAAC,EAAE;AACtBF,UAAAA,SAAS,CAACG,IAAI,CAACT,IAAI,CAAC7G,KAAK,CAAC,CAAA;AAC9B,SAAA;AACJ,OAAC,CAAC,CAAA;AAEF,MAAA,IAAI,CAAC4B,YAAY,IAAIG,gBAAgB,EAAE;AACnC2C,QAAAA,YAAY,CAAC;AAAEoB,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;AAC/Bf,QAAAA,mBAAmB,CAAC;AAAEe,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;AAC1C,OAAA;AAEA,MAAA,IAAI5F,QAAQ,EAAE;QACVA,QAAQ,CAACiH,SAAS,CAAC,CAAA;AACvB,OAAA;;AAEA;AACAI,MAAAA,UAAU,CAAC,YAAM;QACb,IAAIlE,QAAQ,CAACmE,OAAO,EAAE;AAClBnE,UAAAA,QAAQ,CAACmE,OAAO,CAACC,cAAc,CAAC;AAC5BC,YAAAA,QAAQ,EAAE,QAAQ;AAClBC,YAAAA,MAAM,EAAE,OAAA;AACZ,WAAC,CAAC,CAAA;AACN,SAAA;OACH,EAAE,CAAC,CAAC,CAAA;KACR,CAAA;;AAED;IACA,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAIf,IAA2B,EAAET,CAAiC,EAAK;MACxF,IAAI,CAACL,OAAO,CAACc,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAJA,IAAI,CAAEzG,KAAK,CAAC,EAAE;AACvB,QAAA,OAAA;AACJ,OAAA;AAEA,MAAA,IAAIN,QAAQ,EAAE;QACV8G,oBAAoB,CAACC,IAAI,CAAC,CAAA;AAC1B,QAAA,OAAA;AACJ,OAAA;AAEA,MAAA,IAAIT,CAAC,EAAE;QACHA,CAAC,CAACyB,eAAe,EAAE,CAAA;AACvB,OAAA;AAEA,MAAA,IAAMf,WAAW,GAAG,IAAIC,GAAG,CAAC7B,OAAO,CAAC,CAAA;MAEpC,IAAM4C,gBAAgB,GAAGhB,WAAW,CAACjE,GAAG,CAACgE,IAAI,CAAC7G,KAAK,CAAC,CAAA;AAEpD8G,MAAAA,WAAW,CAACM,OAAO,CAAC,UAACW,CAAC,EAAEV,GAAG,EAAK;AAC5BP,QAAAA,WAAW,CAACE,GAAG,CAACK,GAAG,EAAE,KAAK,CAAC,CAAA;AAC/B,OAAC,CAAC,CAAA;MAEF,IAAI,CAACS,gBAAgB,EAAE;QACnBhB,WAAW,CAACE,GAAG,CAACH,IAAI,CAAC7G,KAAK,EAAE,MAAM,CAAC,CAAA;AACnCgI,QAAAA,qBAAqB,CAACnB,IAAI,EAAEC,WAAW,EAAE,KAAK,CAAC,CAAA;AACnD,OAAA;MAEA9D,YAAY,CAAC8E,gBAAgB,GAAG,EAAE,GAAGjB,IAAI,CAACtG,KAAK,CAAC,CAAA;AAEhD,MAAA,IAAI,CAACqB,YAAY,IAAIG,gBAAgB,EAAE;AACnC2C,QAAAA,YAAY,CAAC;AAAEoB,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;AAC/Bf,QAAAA,mBAAmB,CAAC;AAAEe,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;AAC1C,OAAA;AAEA,MAAA,IAAI5F,QAAQ,EAAE;QACVA,QAAQ,CAAC4H,gBAAgB,GAAG,EAAE,GAAGjB,IAAI,CAAC7G,KAAK,CAAC,CAAA;AAChD,OAAA;KACH,CAAA;AAED,IAAA,IAAMiI,QAAQ,GAAG,SAAXA,QAAQA,GAAmB;AAC7B,MAAA,IAAInI,QAAQ,EAAE;AACV,QAAA,IAAIE,KAAK,CAACkI,MAAM,KAAK,CAAC,EAAE,OAAO,EAAE,CAAA;AAEjC,QAAA,IAAI/H,cAAc,EAAE;AAChB,UAAA,OAAO,+CAAAgI,MAAA,CAAYnI,KAAK,CAACkI,MAAM,CAAG,CAAA,CAAA;AACtC,SAAA;AAEA,QAAA,OAAQlI,KAAK,CAAQwG,GAAG,CAAC,UAACxG,KAAK,EAAA;AAAA,UAAA,OAAKyC,cAAc,CAACI,GAAG,CAAC7C,KAAK,CAAC,CAAEO,KAAK,CAAA;SAAC,CAAA,CAAA;AACzE,OAAA;AAEA,MAAA,OAAO,EAAE,CAAA;KACZ,CAAA;IAED,IAAM6H,eAAe,GAAG,SAAlBA,eAAeA,CAAIvB,IAA2B,EAAET,CAAiC,EAAK;AACxF,MAAA,IAAIL,OAAO,CAACc,IAAI,CAACzG,KAAK,CAAC,EAAE;AACrBwH,QAAAA,eAAe,CAACf,IAAI,EAAET,CAAC,CAAC,CAAA;OAC3B,MAAM,IAAItG,QAAQ,EAAE;QACjB8G,oBAAoB,CAACC,IAAI,CAAC,CAAA;AAC9B,OAAA;KACH,CAAA;IAED,IAAAwB,iBAAA,GAAsBC,gBAAgB,CAAC;AACnCxD,QAAAA,WAAW,EAAXA,WAAW;AACXC,QAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBN,QAAAA,IAAI,EAAJA,IAAI;AACJC,QAAAA,YAAY,EAAZA,YAAY;AACZP,QAAAA,OAAO,EAAPA,OAAO;AACPC,QAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBsC,QAAAA,gBAAgB,EAAhBA,gBAAgB;AAChB0B,QAAAA,eAAe,EAAfA,eAAe;AACfG,QAAAA,WAAW,EAAEzI,QAAQ;AACrBkD,QAAAA,YAAY,EAAZA,YAAAA;AACJ,OAAC,CAAC;MAXMwF,SAAS,GAAAH,iBAAA,CAATG,SAAS,CAAA;;AAajB;AACA;AACAC,IAAAA,eAAe,CAAC,YAAM;AAClB,MAAA,IAAM3B,WAAW,GAAG,IAAIC,GAAG,CAAC7B,OAAO,CAAC,CAAA;AAEpC4B,MAAAA,WAAW,CAACM,OAAO,CAAC,UAACW,CAAC,EAAEV,GAAG,EAAK;AAC5BP,QAAAA,WAAW,CAACE,GAAG,CAACK,GAAG,EAAE,KAAK,CAAC,CAAA;AAC/B,OAAC,CAAC,CAAA;AAEF,MAAA,IAAI,CAACtB,OAAO,CAAC/F,KAAK,CAAC,EAAE;AACjB,QAAA,IAAI0I,KAAK,CAACC,OAAO,CAAC3I,KAAK,CAAC,EAAE;AACtBA,UAAAA,KAAK,CAACoH,OAAO,CAAC,UAACwB,GAAG,EAAK;AACnB9B,YAAAA,WAAW,CAACE,GAAG,CAAC4B,GAAG,EAAE,IAAI,CAAC,CAAA;YAC1B3B,iBAAiB,CAACxE,cAAc,CAACI,GAAG,CAAC+F,GAAG,CAAC,EAAG9B,WAAW,EAAE,IAAI,CAAC,CAAA;YAC9DI,eAAe,CAACzE,cAAc,CAACI,GAAG,CAAC+F,GAAG,CAAC,EAAG9B,WAAW,CAAC,CAAA;AAC1D,WAAC,CAAC,CAAA;AACN,SAAC,MAAM;AACHA,UAAAA,WAAW,CAACE,GAAG,CAAChH,KAAK,EAAE,MAAM,CAAC,CAAA;UAC9BgI,qBAAqB,CAACvF,cAAc,CAACI,GAAG,CAAC7C,KAAK,CAAC,EAAG8G,WAAW,EAAE,KAAK,CAAC,CAAA;AACzE,SAAA;AACJ,OAAA;MAEA3B,UAAU,CAAC2B,WAAW,CAAC,CAAA;AAC3B,KAAC,EAAE,CAAC9G,KAAK,CAAC,CAAC,CAAA;AAEX,IAAA,oBACI6I,KAAA,CAAAC,aAAA,CAACvJ,IAAI,EAAA;AAAC8B,MAAAA,IAAI,EAAEA,IAAK;AAACD,MAAAA,IAAI,EAAEA,IAAK;AAACE,MAAAA,cAAc,EAAEA,cAAe;AAACI,MAAAA,QAAQ,EAAEA,QAAS;AAACF,MAAAA,QAAQ,EAAEA,QAAAA;KACxFqH,eAAAA,KAAA,CAAAC,aAAA,CACID,KAAAA,EAAAA,IAAAA,eAAAA,KAAA,CAAAC,aAAA,CAAC1J,OAAO,CAAC2J,QAAQ,EAAA;AACb/I,MAAAA,KAAK,EAAE;AACH8E,QAAAA,WAAW,EAAXA,WAAW;AACXI,QAAAA,OAAO,EAAPA,OAAO;AACPpF,QAAAA,QAAQ,EAARA,QAAQ;AACRuB,QAAAA,IAAI,EAAJA,IAAI;AACJuF,QAAAA,oBAAoB,EAApBA,oBAAoB;AACpBgB,QAAAA,eAAe,EAAfA,eAAe;AACf9G,QAAAA,OAAO,EAAPA,OAAO;AACPK,QAAAA,UAAU,EAAVA,UAAU;AACVsB,QAAAA,cAAc,EAAdA,cAAc;AACdiB,QAAAA,MAAM,EAANA,MAAAA;AACJ,OAAA;AAAE,KAAA,eAEFmF,KAAA,CAAAC,aAAA,CAACE,eAAe,EAAA;AACZtJ,MAAAA,GAAG,EAAE6D,kBAAmB;AACxBoD,MAAAA,MAAM,EAAEvB,iBAAkB;MAC1B6D,QAAQ,EAAE,SAAAA,QAAAA,CAACtC,MAAe,EAAA;AAAA,QAAA,OAAKA,MAAM,IAAID,gBAAgB,CAAC,IAAI,CAAC,CAAA;OAAC;AAChEpG,MAAAA,SAAS,EAAEA,SAAU;AACrBY,MAAAA,MAAM,EAAEA,MAAO;MACfmF,MAAM,EAAE,SAAAA,MAAAA,CAAC6C,YAAY,EAAA;AAAA,QAAA,oBACjBL,KAAA,CAAAC,aAAA,CAACK,eAAe,EAAAC,QAAA,CAAA;AACZ1J,UAAAA,GAAG,EAAE8D,YAAa;AAClB6F,UAAAA,eAAe,EAAEH,YAAa;AAC9BlJ,UAAAA,KAAK,EAAE+C,SAAU;AACjB7C,UAAAA,QAAQ,EAAEiG,qBAAsB;AAChC9E,UAAAA,IAAI,EAAEA,IAAK;AACXD,UAAAA,IAAI,EAAEA,IAAK;AACXE,UAAAA,cAAc,EAAEA,cAAe;AAC/BI,UAAAA,QAAQ,EAAEA,QAAS;AACnBF,UAAAA,QAAQ,EAAEA,QAAS;AACnBjB,UAAAA,KAAK,EAAEA,KAAM;AACbC,UAAAA,WAAW,EAAEA,WAAY;AACzBE,UAAAA,WAAW,EAAEA,WAAY;AACzB4I,UAAAA,YAAY,eACRT,KAAA,CAAAC,aAAA,CAACS,gBAAgB,EAAA;AAAC7H,YAAAA,QAAQ,EAAEA,QAAS;AAAC8H,YAAAA,OAAO,EAAEtD,gBAAAA;AAAiB,WAAA,eAC5D2C,KAAA,CAAAC,aAAA,CAACW,WAAW,EAAA;AACRC,YAAAA,KAAK,EAAC,SAAS;AACfrI,YAAAA,IAAI,EAAEsI,cAAc,CAACtI,IAAI,CAAE;AAC3BuI,YAAAA,SAAS,EAAEpE,gBAAAA;AAAiB,WAC/B,CACa,CACrB;AACD7E,UAAAA,UAAU,EAAEA,UAAW;AACvBC,UAAAA,SAAS,EAAEA,SAAU;AACrB4H,UAAAA,SAAS,EAAEA,SAAU;AACrBqB,UAAAA,UAAU,EAAEpJ,UAAW;AACvBqJ,UAAAA,IAAI,EAAC,UAAU;AACf,UAAA,mBAAA,EAAkB,MAAM;UACxB,eAAA3B,EAAAA,EAAAA,CAAAA,MAAA,CAAkBzE,MAAM,EAAgB,eAAA,CAAA;AACxC,UAAA,eAAA,EAAe0B,iBAAkB;UACjC,uBACIE,EAAAA,yBAAyB,GAAGyE,SAAS,CAACrG,MAAM,EAAE4B,yBAAyB,CAAC,GAAG,EAAA;AAC9E,SAAA,EACIxF,QAAQ,GACP;AACIkK,UAAAA,eAAe,EAAE,MAAM;UACvBC,KAAK,EAAEhC,QAAQ,EAAE;AACjBiC,UAAAA,aAAa,EAAE5D,iBAAAA;AACnB,SAAC,GACD;AAAE0D,UAAAA,eAAe,EAAE,OAAA;AAAQ,SAAC,EAC9BhI,IAAI,EAAA;AACRmI,UAAAA,eAAe,EAAC,IAAA;AAAA,SAAA,CACnB,CAAC,CAAA;AAAA,OAAA;AACJ,KAAA,eAEFtB,KAAA,CAAAC,aAAA,CAACvJ,IAAI,EAAA;AACD8B,MAAAA,IAAI,EAAEA,IAAK;AACXD,MAAAA,IAAI,EAAEA,IAAK;AACXE,MAAAA,cAAc,EAAEA,cAAe;AAC/BI,MAAAA,QAAQ,EAAEA,QAAS;AACnBF,MAAAA,QAAQ,EAAEA,QAAAA;AAAS,KAAA,eAEnBqH,KAAA,CAAAC,aAAA,CAACsB,EAAE,EAAA;AACCN,MAAAA,IAAI,EAAC,MAAM;AACXO,MAAAA,EAAE,EAAAlC,EAAAA,CAAAA,MAAA,CAAKzE,MAAM,EAAgB,eAAA,CAAA;MAC7B,sBAAsB2B,EAAAA,OAAO,CAACvF,QAAQ,CAAE;AACxCkB,MAAAA,UAAU,EAAEA,UAAW;AACvBD,MAAAA,YAAY,EAAEA,YAAa;AAC3BE,MAAAA,SAAS,EAAEA,SAAU;AACrBvB,MAAAA,GAAG,EAAEkG,SAAAA;KAEJG,EAAAA,OAAO,CAACjC,aAAa,CAAC,gBACnB+E,KAAA,CAAAC,aAAA,CAACwB,gBAAgB,EAAA;MACbV,SAAS,EAAEnE,OAAO,CAAC8E,iBAAkB;AACrClJ,MAAAA,IAAI,EAAEA,IAAK;AACXmJ,MAAAA,WAAW,EAAC,8FAAA;KACf,CAAC,GAEF1G,aAAa,CAAC0C,GAAG,CAAC,UAACK,IAAI,EAAE4D,KAAK,EAAA;AAAA,MAAA,oBAC1B5B,KAAA,CAAAC,aAAA,CAAC4B,KAAK,EAAA;AACFrD,QAAAA,GAAG,EAAAc,EAAAA,CAAAA,MAAA,CAAKsC,KAAK,EAAK,IAAA,CAAA;AAClB5D,QAAAA,IAAI,EAAEA,IAAK;AACX8D,QAAAA,YAAY,EAAE,CAAE;AAChBlG,QAAAA,IAAI,EAAEA,IAAK;AACXC,QAAAA,YAAY,EAAEA,YAAa;AAC3B+F,QAAAA,KAAK,EAAEA,KAAM;AACbxJ,QAAAA,SAAS,EAAEA,SAAAA;AAAU,OACxB,CAAC,CAAA;AAAA,KACL,CAEL,CACF,CACO,CACH,CACjB,CACH,CAAC,CAAA;AAEf,GAAC,CAAC,CAAA;AAAA,EAAA;AAEC,IAAM2J,cAAc,GAAG;AAC1BC,EAAAA,IAAI,EAAE,QAAQ;AACdC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAEzL,YAAY;AACpB0L,EAAAA,IAAI,EAAJA,IAAI;AACJC,EAAAA,UAAU,EAAE;AACR7J,IAAAA,IAAI,EAAE;AACF8J,MAAAA,GAAG,EAAEC,MAAAA;KACR;AACD9J,IAAAA,IAAI,EAAE;AACF6J,MAAAA,GAAG,EAAEE,MAAAA;KACR;AACD5J,IAAAA,QAAQ,EAAE;AACN0J,MAAAA,GAAG,EAAEE,MAAAA;AACT,KAAA;GACH;AACDC,EAAAA,QAAQ,EAAE;AACNjK,IAAAA,IAAI,EAAE,SAAS;AACfC,IAAAA,IAAI,EAAE,GAAG;AACTC,IAAAA,cAAc,EAAE,OAAA;AACpB,GAAA;AACJ;;;;"}
|
@@ -1,17 +1,13 @@
|
|
1
|
-
import { toConsumableArray as _toConsumableArray, objectSpread2 as _objectSpread2 } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
|
2
|
-
|
3
1
|
// Проходимся по массиву items и добавляем в каждый item ключ parent, который ссылается на item родителя.
|
4
2
|
// Дает возможность прохода к корневому элементу (снизу вверх).
|
5
|
-
// На выходе получаем глубокую копию исходного массива items.
|
6
3
|
var initialItemsTransform = function initialItemsTransform(items, parent) {
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
itemCopy.items = initialItemsTransform(itemCopy.items, itemCopy);
|
4
|
+
items.forEach(function (item) {
|
5
|
+
item.parent = parent;
|
6
|
+
if (item.items) {
|
7
|
+
item.items = initialItemsTransform(item.items, item);
|
12
8
|
}
|
13
|
-
return itemCopy;
|
14
9
|
});
|
10
|
+
return items;
|
15
11
|
};
|
16
12
|
|
17
13
|
export { initialItemsTransform };
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"initialItemsTransform.js","sources":["../../../../../src/components/Combobox/ComboboxNew/utils/initialItemsTransform.ts"],"sourcesContent":["import { ItemOptionTransformed } from '../ui/Inner/ui/Item/Item.types';\n\n// Проходимся по массиву items и добавляем в каждый item ключ parent, который ссылается на item родителя.\n// Дает возможность прохода к корневому элементу (снизу вверх).\
|
1
|
+
{"version":3,"file":"initialItemsTransform.js","sources":["../../../../../src/components/Combobox/ComboboxNew/utils/initialItemsTransform.ts"],"sourcesContent":["import { ItemOptionTransformed } from '../ui/Inner/ui/Item/Item.types';\n\n// Проходимся по массиву items и добавляем в каждый item ключ parent, который ссылается на item родителя.\n// Дает возможность прохода к корневому элементу (снизу вверх).\nexport const initialItemsTransform = (\n items: Array<ItemOptionTransformed>,\n parent?: ItemOptionTransformed,\n): Array<ItemOptionTransformed> => {\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;AACO,IAAMA,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAC9BC,KAAmC,EACnCC,MAA8B,EACC;AAC/BD,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,54 @@
|
|
1
|
+
.IconRoot_7pl7ig_svvlqhf__32c458a1{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;width:var(--svvlqhf-0);height:var(--svvlqhf-0);-webkit-flex:0 0 var(--svvlqhf-0);-ms-flex:0 0 var(--svvlqhf-0);flex:0 0 var(--svvlqhf-0);}
|
2
|
+
|
3
|
+
.Button_styles_1sopr3d_bzw1898__8219590b{min-width:4ch;-webkit-flex-shrink:2;-ms-flex-negative:2;flex-shrink:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.Button_styles_1sopr3d_bzw1898__8219590b.Button_styles_1sopr3d_buttonContentRelaxed__8219590b{text-align:start;-webkit-box-flex:2;-webkit-flex-grow:2;-ms-flex-positive:2;flex-grow:2;}
|
4
|
+
.Button_styles_1sopr3d_bdfuqwe__8219590b{color:var(--plasma-button-value-color);margin:var(--plasma-button-value-margin);min-width:4ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
|
5
|
+
.Button_styles_1sopr3d_l9ypozh__8219590b{opacity:var(--l9ypozh-0);display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:inherit;-webkit-box-align:inherit;-ms-flex-align:inherit;align-items:inherit;-webkit-box-pack:var(--l9ypozh-1);-webkit-justify-content:var(--l9ypozh-1);-ms-flex-pack:var(--l9ypozh-1);justify-content:var(--l9ypozh-1);height:100%;width:100%;}
|
6
|
+
.Button_styles_1sopr3d_l4dfhbg__8219590b{position:absolute;}
|
7
|
+
.Button_styles_1sopr3d_srdlazt__8219590b{--plasma-spinner-size:var(--plasma-button-spinner-size);--plasma-spinner-color:var(--plasma-button-spinner-color);}
|
8
|
+
.Button_styles_1sopr3d_s7rggv0__8219590b{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:var(--plasma-button-left-content-margin);-webkit-align-self:var(--plasma-button-left-content-align-self);-ms-flex-item-align:var(--plasma-button-left-content-align);align-self:var(--plasma-button-left-content-align-self);}
|
9
|
+
.Button_styles_1sopr3d_s1rjh7ra__8219590b{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:var(--plasma-button-right-content-margin);-webkit-align-self:var(--plasma-button-right-content-align-self);-ms-flex-item-align:var(--plasma-button-right-content-align);align-self:var(--plasma-button-right-content-align-self);}
|
10
|
+
.Button_styles_1sopr3d_b9ga1dj__8219590b{position:relative;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;box-sizing:border-box;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);--plasma_private-btn-br:var(--plasma_computed-btn-br);border-radius:var(--plasma_private-btn-br);}a.Button_styles_1sopr3d_b9ga1dj__8219590b{-webkit-text-decoration:none;text-decoration:none;}.Button_styles_1sopr3d_b9ga1dj__8219590b.Button_styles_1sopr3d_b9ga1dj__8219590b.Button_styles_1sopr3d_buttonSquare__8219590b{width:var(--plasma-button-height);padding:0;}
|
11
|
+
|
12
|
+
.base_1x0spnh_b1ty39ru__fb659d61{color:var(--plasma-button-color);background-color:var(--plasma-button-background-color);}.base_1x0spnh_b1ty39ru__fb659d61.base_1x0spnh_buttonLoading__fb659d61{background-color:var(--plasma-button-loading-background-color);}.base_1x0spnh_b1ty39ru__fb659d61:hover{color:var(--plasma-button-color-hover,var(--plasma-button-color));background-color:var(--plasma-button-background-color-hover,var(--plasma-button-background-color));scale:var(--plasma-button-scale-hover);}.base_1x0spnh_b1ty39ru__fb659d61:active{color:var(--plasma-button-color-active,var(--plasma-button-color));background-color:var(--plasma-button-background-color-active,var(--plasma-button-background-color));scale:var(---plasma-button-scale-active);}
|
13
|
+
|
14
|
+
.base_1alzrso_be0ha5g__cdc67255{height:var(--plasma-button-height);padding:0 var(--plasma-button-padding,calc(var(--plasma-button-height) * 1.618 / 4));font-family:var(--plasma-button-font-family);font-size:var(--plasma-button-font-size);font-style:var(--plasma-button-font-style);font-weight:var(--plasma-button-font-weight);-webkit-letter-spacing:var(--plasma-button-letter-spacing);-moz-letter-spacing:var(--plasma-button-letter-spacing);-ms-letter-spacing:var(--plasma-button-letter-spacing);letter-spacing:var(--plasma-button-letter-spacing);line-height:var(--plasma-button-line-height);--plasma_private-btn-outline-size:var(--plasma-button-outline-size,0.0625rem);}
|
15
|
+
|
16
|
+
.base_1t3ywu_b169l30m__aba40ddd[disabled]{opacity:var(--plasma-button-disabled-opacity);cursor:not-allowed;}.base_1t3ywu_b169l30m__aba40ddd[disabled]:hover,.base_1t3ywu_b169l30m__aba40ddd[disabled]:active{scale:none;color:var(--plasma-button-color);background-color:var(--plasma-button-background-color);}
|
17
|
+
|
18
|
+
.base_1kq737e_b187cmzt__d829f64a{position:relative;}.base_1kq737e_b187cmzt__d829f64a:focus{outline:none;}.base_1kq737e_b187cmzt__d829f64a::before{content:'';position:absolute;top:-0.125rem;left:-0.125rem;right:-0.125rem;bottom:-0.125rem;z-index:1;display:block;box-sizing:content-box;border:var(--plasma_private-btn-outline-size) solid transparent;border-radius:calc(0.125rem + var(--plasma_private-btn-br));-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.base_1kq737e_b187cmzt__d829f64a.base_1kq737e_focusVisible__d829f64a:focus::before,.base_1kq737e_b187cmzt__d829f64a[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 var(--plasma_private-btn-outline-size) var(--plasma-button-focus-color);}
|
19
|
+
|
20
|
+
.base_hy8dc_bdz31nb__bd4ad37e.base_hy8dc_buttonStretchingFixed__bd4ad37e{width:var(--plasma-button-width);}.base_hy8dc_bdz31nb__bd4ad37e.base_hy8dc_buttonStretchingFilled__bd4ad37e{width:100%;}.base_hy8dc_bdz31nb__bd4ad37e.base_hy8dc_buttonStretchingAuto__bd4ad37e{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;}
|
21
|
+
|
22
|
+
.IconButton_styles_sttslf_b1ua728l__193d7826{position:relative;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;box-sizing:border-box;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);--plasma_private-btn-br:var(--plasma_computed-btn-br);border-radius:var(--plasma_private-btn-br);color:var(--plasma-button-color);background-color:var(--plasma-button-background-color);height:var(--plasma-button-height);width:var(--plasma-button-width);padding:0 var(--plasma-button-padding,calc(var(--plasma-button-height) * 1.618 / 4));font-family:var(--plasma-button-font-family);font-size:var(--plasma-button-font-size);font-style:var(--plasma-button-font-style);font-weight:var(--plasma-button-font-weight);-webkit-letter-spacing:var(--plasma-button-letter-spacing);-moz-letter-spacing:var(--plasma-button-letter-spacing);-ms-letter-spacing:var(--plasma-button-letter-spacing);letter-spacing:var(--plasma-button-letter-spacing);line-height:var(--plasma-button-line-height);--plasma_private-btn-outline-size:var(--plasma-button-outline-size,0.0625rem);position:relative;--plasma-button-padding:0;--plasma-button-color:var(--plasma-icon-button-color);--plasma-button-background-color:var(--plasma-icon-button-background-color);--plasma-button-color-hover:var(--plasma-icon-button-color-hover);--plasma-button-background-color-hover:var(--plasma-icon-button-background-color-hover);--plasma-button-color-active:var(--plasma-icon-button-color-active);--plasma-button-background-color-active:var(--plasma-icon-button-background-color-active);--plasma-button-loading-background-color:var(--plasma-icon-button-loading-background-color);--plasma-button-font-family:var(--plasma-icon-button-font-family);--plasma-button-font-size:var(--plasma-icon-button-font-size);--plasma-button-font-style:var(--plasma-icon-button-font-style);--plasma-button-font-weight:var(--plasma-icon-button-font-weight);--plasma-button-letter-spacing:var(--plasma-icon-button-letter-spacing);--plasma-button-line-height:var(--plasma-icon-button-line-height);--plasma-button-width:var(--plasma-icon-button-width);--plasma-button-height:var(--plasma-icon-button-height);--plasma-button-radius:var(--plasma-icon-button-radius);--plasma-button-disabled-opacity:var(--plasma-icon-button-disabled-opacity);--plasma-button-focus-color:var(--plasma-icon-button-focus-color);--plasma-button-spinner-size:var(--plasma-icon-button-spinner-size);--plasma-button-spinner-color:var(--plasma-icon-button-spinner-color);}a.IconButton_styles_sttslf_b1ua728l__193d7826{-webkit-text-decoration:none;text-decoration:none;}.IconButton_styles_sttslf_b1ua728l__193d7826.IconButton_styles_sttslf_b1ua728l__193d7826.IconButton_styles_sttslf_buttonSquare__193d7826{width:var(--plasma-button-height);padding:0;}.IconButton_styles_sttslf_b1ua728l__193d7826:hover{color:var(--plasma-button-color-hover,var(--plasma-button-color));background-color:var(--plasma-button-background-color-hover,var(--plasma-button-background-color));scale:var(--plasma-button-scale-hover);}.IconButton_styles_sttslf_b1ua728l__193d7826:active{color:var(--plasma-button-color-active,var(--plasma-button-color));background-color:var(--plasma-button-background-color-active,var(--plasma-button-background-color));scale:var(---plasma-button-scale-active);}.IconButton_styles_sttslf_b1ua728l__193d7826:focus{outline:none;}.IconButton_styles_sttslf_b1ua728l__193d7826::before{content:'';position:absolute;top:-0.125rem;left:-0.125rem;right:-0.125rem;bottom:-0.125rem;z-index:1;display:block;box-sizing:content-box;border:var(--plasma_private-btn-outline-size) solid transparent;border-radius:calc(0.125rem + var(--plasma_private-btn-br));-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.IconButton_styles_sttslf_b1ua728l__193d7826.IconButton_styles_sttslf_focusVisible__193d7826:focus::before,.IconButton_styles_sttslf_b1ua728l__193d7826[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 var(--plasma_private-btn-outline-size) var(--plasma-button-focus-color);}.IconButton_styles_sttslf_b1ua728l__193d7826[disabled]{opacity:var(--plasma-button-disabled-opacity);cursor:not-allowed;}.IconButton_styles_sttslf_b1ua728l__193d7826[disabled]:hover,.IconButton_styles_sttslf_b1ua728l__193d7826[disabled]:active{scale:none;color:var(--plasma-button-color);background-color:var(--plasma-button-background-color);}.IconButton_styles_sttslf_b1ua728l__193d7826.IconButton_styles_sttslf_buttonStretchingFixed__193d7826{width:var(--plasma-button-width);}.IconButton_styles_sttslf_b1ua728l__193d7826.IconButton_styles_sttslf_buttonStretchingFilled__193d7826{width:100%;}.IconButton_styles_sttslf_b1ua728l__193d7826.IconButton_styles_sttslf_buttonStretchingAuto__193d7826{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;}
|
23
|
+
|
24
|
+
.base_1gusher_b1chvyq8__76b641f5{color:var(--plasma-spinner-color);}
|
25
|
+
|
26
|
+
.base_ova69f_bw56nfh__55225c7f{width:var(--plasma-spinner-size);height:var(--plasma-spinner-size);}
|
27
|
+
|
28
|
+
.Spinner_styles_13q7ndk_b1hp2dsz__af962114{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;box-sizing:border-box;}
|
29
|
+
.Spinner_styles_13q7ndk_s122r4cn__af962114{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:var(--s122r4cn-0);height:var(--s122r4cn-1);-webkit-animation:Spinner_styles_13q7ndk_rotateS122r4cn__af962114 1s linear infinite;animation:Spinner_styles_13q7ndk_rotateS122r4cn__af962114 1s linear infinite;}@-webkit-keyframes Spinner_styles_13q7ndk_rotateS122r4cn__af962114{from{-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);}to{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);}}@keyframes Spinner_styles_13q7ndk_rotateS122r4cn__af962114{from{-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);}to{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);}}
|
30
|
+
|
31
|
+
.Input_styles_jszc0c_i1s8bsh6__6eb57599{overflow-x:auto;overflow-y:hidden;-webkit-flex:1;-ms-flex:1;flex:1;cursor:var(--i1s8bsh6-0);-webkit-scrollbar-width:none;-moz-scrollbar-width:none;-ms-scrollbar-width:none;scrollbar-width:none;overscroll-behavior:contain;}.Input_styles_jszc0c_i1s8bsh6__6eb57599::-webkit-scrollbar{display:none;}
|
32
|
+
.Input_styles_jszc0c_t6wb9c__6eb57599{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-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin:0 auto;box-sizing:border-box;}
|
33
|
+
|
34
|
+
|
35
|
+
|
36
|
+
.Input_styles_jszc0c_d1n4jo6t__6eb57599{position:relative;}
|
37
|
+
.Input_styles_jszc0c_i1tgbhg7__6eb57599{box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:0;background-color:transparent;outline:none;width:var(--i1tgbhg7-0);box-sizing:border-box;cursor:var(--i1tgbhg7-1);pointer-events:var(--i1tgbhg7-2);-webkit-transition:width 0.1s;transition:width 0.1s;}.Input_styles_jszc0c_i1tgbhg7__6eb57599.Input_styles_jszc0c_i1tgbhg7__6eb57599.Input_styles_jszc0c_errorAnimation__6eb57599{color:var(--plasma-number-input_error-color);-webkit-animation:Input_styles_jszc0c_shakingErrorI1tgbhg7__6eb57599 0.5s forwards;animation:Input_styles_jszc0c_shakingErrorI1tgbhg7__6eb57599 0.5s forwards;}@-webkit-keyframes Input_styles_jszc0c_shakingErrorI1tgbhg7__6eb57599{0%{opacity:1;}12.5%{-webkit-transform:translateX(0.188rem);-ms-transform:translateX(0.188rem);transform:translateX(0.188rem);}25%{-webkit-transform:translateX(-0.188rem);-ms-transform:translateX(-0.188rem);transform:translateX(-0.188rem);}37.5%{-webkit-transform:translateX(0.188rem);-ms-transform:translateX(0.188rem);transform:translateX(0.188rem);}50%{opacity:1;-webkit-transform:translateX(-0.188rem);-ms-transform:translateX(-0.188rem);transform:translateX(-0.188rem);}62.5%{-webkit-transform:translateX(0.188rem);-ms-transform:translateX(0.188rem);transform:translateX(0.188rem);}75%{-webkit-transform:translateX(-0.188rem);-ms-transform:translateX(-0.188rem);transform:translateX(-0.188rem);}87.5%{-webkit-transform:translateX(0.188rem);-ms-transform:translateX(0.188rem);transform:translateX(0.188rem);}100%{opacity:0;-webkit-transform:translateX(-0.188rem);-ms-transform:translateX(-0.188rem);transform:translateX(-0.188rem);}}@keyframes Input_styles_jszc0c_shakingErrorI1tgbhg7__6eb57599{0%{opacity:1;}12.5%{-webkit-transform:translateX(0.188rem);-ms-transform:translateX(0.188rem);transform:translateX(0.188rem);}25%{-webkit-transform:translateX(-0.188rem);-ms-transform:translateX(-0.188rem);transform:translateX(-0.188rem);}37.5%{-webkit-transform:translateX(0.188rem);-ms-transform:translateX(0.188rem);transform:translateX(0.188rem);}50%{opacity:1;-webkit-transform:translateX(-0.188rem);-ms-transform:translateX(-0.188rem);transform:translateX(-0.188rem);}62.5%{-webkit-transform:translateX(0.188rem);-ms-transform:translateX(0.188rem);transform:translateX(0.188rem);}75%{-webkit-transform:translateX(-0.188rem);-ms-transform:translateX(-0.188rem);transform:translateX(-0.188rem);}87.5%{-webkit-transform:translateX(0.188rem);-ms-transform:translateX(0.188rem);transform:translateX(0.188rem);}100%{opacity:0;-webkit-transform:translateX(-0.188rem);-ms-transform:translateX(-0.188rem);transform:translateX(-0.188rem);}}
|
38
|
+
.Input_styles_jszc0c_i1il5xze__6eb57599{position:absolute;z-index:-999;visibility:hidden;top:0;left:0;opacity:0;height:0;white-space:pre;}
|
39
|
+
|
40
|
+
.NumberInput_styles_jeawjl_bwds6g__9a871afb{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;}
|
41
|
+
|
42
|
+
.base_cghr9q_bhi37xj__10de7ad9 .base_cghr9q_sj0ab1b__10de7ad9{--plasma-icon-button-color:var(--plasma-number-input_icon-button_color);--plasma-icon-button-background-color:var(--plasma-number-input_icon-button_background-color);--plasma-icon-button-color-hover:var(--plasma-number-input_icon-button_color-hover);--plasma-icon-button-background-color-hover:var(--plasma-number-input_icon-button_background-color-hover);--plasma-icon-button-color-active:var(--plasma-number-input_icon-button_color-active);--plasma-icon-button-background-color-active:var(--plasma-number-input_icon-button_background-color-active);}.base_cghr9q_bhi37xj__10de7ad9 .base_cghr9q_sj0ab1b__10de7ad9.base_cghr9q_actionButtonDecrementDisabled__10de7ad9,.base_cghr9q_bhi37xj__10de7ad9 .base_cghr9q_sj0ab1b__10de7ad9.base_cghr9q_actionButtonIncrementDisabled__10de7ad9{opacity:var(--plasma-number-input_action-button_disabled-opacity);cursor:not-allowed;}.base_cghr9q_bhi37xj__10de7ad9 .base_cghr9q_sj0ab1b__10de7ad9.base_cghr9q_actionButtonDecrementDisabled__10de7ad9:hover,.base_cghr9q_bhi37xj__10de7ad9 .base_cghr9q_sj0ab1b__10de7ad9.base_cghr9q_actionButtonIncrementDisabled__10de7ad9:hover,.base_cghr9q_bhi37xj__10de7ad9 .base_cghr9q_sj0ab1b__10de7ad9.base_cghr9q_actionButtonDecrementDisabled__10de7ad9:active,.base_cghr9q_bhi37xj__10de7ad9 .base_cghr9q_sj0ab1b__10de7ad9.base_cghr9q_actionButtonIncrementDisabled__10de7ad9:active{scale:none;color:var(--plasma-number-input_icon-button_color);background-color:var(--plasma-number-input_icon-button_background-color);}.base_cghr9q_bhi37xj__10de7ad9.base_cghr9q_bhi37xj__10de7ad9 .base_cghr9q_i1s8bsh6__10de7ad9:focus-within{background-color:var(--plasma-number-input_background-color-focus);box-shadow:inset 0 0 0 var(--plasma-number-input_input-wrapper_border-width) var(--plasma-number-input_border-color-focus);}.base_cghr9q_bhi37xj__10de7ad9 .base_cghr9q_s1ft73sv__10de7ad9{--plasma-spinner-color:var(--plasma-number-input_loader-spinner_color);}.base_cghr9q_bhi37xj__10de7ad9 .base_cghr9q_i1tgbhg7__10de7ad9{color:var(--plasma-number-input_color);caret-color:var(--plasma-number-input_caret_color);}.base_cghr9q_bhi37xj__10de7ad9 .base_cghr9q_az36kha__10de7ad9{color:var(--plasma-number-input_additional-text_color);}
|
43
|
+
|
44
|
+
.base_1pju5qf_b13wjeky__eb7ed667{width:var(--plasma_private-number-input_width);min-width:var(--plasma-number-input_min-width);}.base_1pju5qf_b13wjeky__eb7ed667 .base_1pju5qf_sj0ab1b__eb7ed667{--plasma-icon-button-height:var(--plasma-number-input_icon-button_height);--plasma-icon-button-width:var(--plasma-number-input_icon-button_width);--plasma-icon-button-padding:var(--plasma-number-input_icon-button_padding);--plasma-icon-button-font-family:var(--plasma-number-input_icon-button_font-family);--plasma-icon-button-font-size:var(--plasma-number-input_icon-button_font-size);--plasma-icon-button-font-style:var(--plasma-number-input_icon-button_font-style);--plasma-icon-button-font-weight:var(--plasma-number-input_icon-button_font-weight);--plasma-icon-button-letter-spacing:var(--plasma-number-input_icon-button_letter-spacing);--plasma-icon-button-line-height:var(--plasma-number-input_icon-button_line-height);}.base_1pju5qf_b13wjeky__eb7ed667 .base_1pju5qf_i1s8bsh6__eb7ed667{margin:var(--plasma-number-input_input-wrapper_margin);border-radius:var(--plasma-number-input_input-wrapper_border-radius);}.base_1pju5qf_b13wjeky__eb7ed667 .base_1pju5qf_t6wb9c__eb7ed667{height:var(--plasma-number-input_text-wrapper_height);padding:var(--plasma-number-input_text-wrapper_padding);}.base_1pju5qf_b13wjeky__eb7ed667 .base_1pju5qf_d1n4jo6t__eb7ed667,.base_1pju5qf_b13wjeky__eb7ed667 .base_1pju5qf_i1tgbhg7__eb7ed667,.base_1pju5qf_b13wjeky__eb7ed667 .base_1pju5qf_az36kha__eb7ed667{font-family:var(--plasma-number-input_font-family);font-size:var(--plasma-number-input_font-size);font-style:var(--plasma-number-input_font-style);font-weight:var(--plasma-number-input_font-weight);-webkit-letter-spacing:var(--plasma-number-input_letter-spacing);-moz-letter-spacing:var(--plasma-number-input_letter-spacing);-ms-letter-spacing:var(--plasma-number-input_letter-spacing);letter-spacing:var(--plasma-number-input_letter-spacing);line-height:var(--plasma-number-input_line-height);}.base_1pju5qf_b13wjeky__eb7ed667 .base_1pju5qf_az36kha__eb7ed667.base_1pju5qf_textBefore__eb7ed667{margin-right:var(--plasma-number-input_text-before_margin-right);}.base_1pju5qf_b13wjeky__eb7ed667 .base_1pju5qf_az36kha__eb7ed667.base_1pju5qf_textAfter__eb7ed667{margin-left:var(--plasma-number-input_text-after_margin-left);}.base_1pju5qf_b13wjeky__eb7ed667 .base_1pju5qf_s1ft73sv__eb7ed667{--plasma-spinner-size:var(--plasma-number-input_loader-spinner_size);}
|
45
|
+
|
46
|
+
.base_k05biw_b1l31q8y__7da7a6d0 .base_k05biw_sj0ab1b__7da7a6d0{--plasma-icon-button-radius:var(--plasma-number-input_icon-button_radius);}
|
47
|
+
|
48
|
+
.base_1jmdljr_b15uqx38__1838da29 .base_1jmdljr_i1s8bsh6__1838da29{background-color:var(--plasma-number-input_background-color);box-shadow:inset 0 0 0 var(--plasma-number-input_input-wrapper_border-width) var(--plasma-number-input_border-color);}.base_1jmdljr_b15uqx38__1838da29 .base_1jmdljr_i1s8bsh6__1838da29:hover{background-color:var(--plasma-number-input_background-color-hover);box-shadow:inset 0 0 0 var(--plasma-number-input_input-wrapper_border-width) var(--plasma-number-input_border-color-hover);}
|
49
|
+
|
50
|
+
.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627{--plasma_private-segemntation-border-radius:var(--plasma-number-input_icon-button_radius);}.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_segmentedView__1f8a3627,.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_solidView__1f8a3627{--plasma_private-segemntation-border-radius:var(--plasma-number-input_icon-button_segmentation_radius,var(--plasma-number-input_icon-button_radius));}.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_actionButtonDecrement__1f8a3627{border-radius:var(--plasma-number-input_icon-button_radius) var(--plasma_private-segemntation-border-radius) var(--plasma_private-segemntation-border-radius) var(--plasma-number-input_icon-button_radius);}.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_actionButtonIncrement__1f8a3627{border-radius:var(--plasma_private-segemntation-border-radius) var(--plasma-number-input_icon-button_radius) var(--plasma-number-input_icon-button_radius) var(--plasma_private-segemntation-border-radius);}.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_solidView__1f8a3627{background:transparent;}.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_solidView__1f8a3627:hover{background-color:var(--plasma-number-input_icon-button_background-color-hover);}.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_solidView__1f8a3627:active{background-color:var(--plasma-number-input_icon-button_background-color-active);}.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_solidView__1f8a3627.base_nl8ve_actionButtonDecrementDisabled__1f8a3627:hover,.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_solidView__1f8a3627.base_nl8ve_actionButtonIncrementDisabled__1f8a3627:hover,.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_solidView__1f8a3627.base_nl8ve_actionButtonDecrementDisabled__1f8a3627:active,.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_solidView__1f8a3627.base_nl8ve_actionButtonIncrementDisabled__1f8a3627:active{background-color:transparent;}.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_solidView__1f8a3627.base_nl8ve_actionButtonDecrementDisabled__1f8a3627,.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_solidView__1f8a3627.base_nl8ve_actionButtonIncrementDisabled__1f8a3627{opacity:1;}.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_solidView__1f8a3627.base_nl8ve_actionButtonDecrementDisabled__1f8a3627 svg,.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_solidView__1f8a3627.base_nl8ve_actionButtonIncrementDisabled__1f8a3627 svg{opacity:var(--plasma-number-input_action-button_disabled-opacity);}.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_solidView__1f8a3627.base_nl8ve_actionButtonDecrementDisabled__1f8a3627:hover svg,.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_solidView__1f8a3627.base_nl8ve_actionButtonIncrementDisabled__1f8a3627:hover svg,.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_solidView__1f8a3627.base_nl8ve_actionButtonDecrementDisabled__1f8a3627:active svg,.base_nl8ve_bpps6rw__1f8a3627 .base_nl8ve_sj0ab1b__1f8a3627.base_nl8ve_solidView__1f8a3627.base_nl8ve_actionButtonIncrementDisabled__1f8a3627:active svg{opacity:var(--plasma-number-input_action-button_disabled-opacity);}.base_nl8ve_bpps6rw__1f8a3627.base_nl8ve_solidView__1f8a3627{background:var(--plasma-number-input_background-color-solid);border-radius:var(--plasma-number-input_icon-button_radius);}.base_nl8ve_bpps6rw__1f8a3627.base_nl8ve_solidView__1f8a3627 .base_nl8ve_i1s8bsh6__1f8a3627{position:relative;color:var(--plasma-number-input_color-solid);}.base_nl8ve_bpps6rw__1f8a3627.base_nl8ve_solidView__1f8a3627 .base_nl8ve_i1s8bsh6__1f8a3627:focus-within{background-color:var(--plasma-number-input_background-color-solid-focus);box-shadow:inset 0 0 0 var(--plasma-number-input_input-wrapper_border-width) var(--plasma-number-input_border-color-solid-focus);}.base_nl8ve_bpps6rw__1f8a3627.base_nl8ve_solidView__1f8a3627 .base_nl8ve_s1ft73sv__1f8a3627{--plasma-spinner-color:var(--plasma-number-input_loader-spinner_color-solid);}.base_nl8ve_bpps6rw__1f8a3627.base_nl8ve_solidView__1f8a3627 .base_nl8ve_i1tgbhg7__1f8a3627{caret-color:var(--plasma-number-input_caret_color-solid,var(--plasma-number-input_caret_color));}.base_nl8ve_bpps6rw__1f8a3627.base_nl8ve_solidView__1f8a3627 .base_nl8ve_i1tgbhg7__1f8a3627:not(.base_nl8ve_errorAnimation__1f8a3627){color:var(--plasma-number-input_color-solid);}.base_nl8ve_bpps6rw__1f8a3627.base_nl8ve_solidView__1f8a3627 .base_nl8ve_az36kha__1f8a3627{color:var(--plasma-number-input_additional-text_color-solid);}
|
51
|
+
|
52
|
+
.base_3l8dqb_b750ywr__50c564e0.base_3l8dqb_clearView__50c564e0{background:transparent;}.base_3l8dqb_b750ywr__50c564e0.base_3l8dqb_clearView__50c564e0 .base_3l8dqb_sj0ab1b__50c564e0{--plasma-icon-button-color:var(--plasma-number-input_icon-button_color-clear);--plasma-icon-button-background-color:transparent;--plasma-icon-button-color-hover:var(--plasma-number-input_icon-button_color-clear);--plasma-icon-button-background-color-hover:transparent;--plasma-icon-button-color-active:var(--plasma-number-input_icon-button_color-clear);--plasma-icon-button-background-color-active:transparent;}.base_3l8dqb_b750ywr__50c564e0.base_3l8dqb_clearView__50c564e0 .base_3l8dqb_sj0ab1b__50c564e0:hover,.base_3l8dqb_b750ywr__50c564e0.base_3l8dqb_clearView__50c564e0 .base_3l8dqb_sj0ab1b__50c564e0:active{color:var(--plasma-number-input_icon-button_color-clear);background-color:transparent;}.base_3l8dqb_b750ywr__50c564e0.base_3l8dqb_clearView__50c564e0 .base_3l8dqb_sj0ab1b__50c564e0.base_3l8dqb_actionButtonDecrementDisabled__50c564e0:hover,.base_3l8dqb_b750ywr__50c564e0.base_3l8dqb_clearView__50c564e0 .base_3l8dqb_sj0ab1b__50c564e0.base_3l8dqb_actionButtonIncrementDisabled__50c564e0:hover,.base_3l8dqb_b750ywr__50c564e0.base_3l8dqb_clearView__50c564e0 .base_3l8dqb_sj0ab1b__50c564e0.base_3l8dqb_actionButtonDecrementDisabled__50c564e0:active,.base_3l8dqb_b750ywr__50c564e0.base_3l8dqb_clearView__50c564e0 .base_3l8dqb_sj0ab1b__50c564e0.base_3l8dqb_actionButtonIncrementDisabled__50c564e0:active{color:var(--plasma-number-input_icon-button_color-clear);background-color:transparent;}.base_3l8dqb_b750ywr__50c564e0.base_3l8dqb_clearView__50c564e0.base_3l8dqb_b750ywr__50c564e0.base_3l8dqb_clearView__50c564e0 .base_3l8dqb_i1s8bsh6__50c564e0{background-color:transparent;box-shadow:transparent;}.base_3l8dqb_b750ywr__50c564e0.base_3l8dqb_clearView__50c564e0.base_3l8dqb_b750ywr__50c564e0.base_3l8dqb_clearView__50c564e0 .base_3l8dqb_i1s8bsh6__50c564e0:focus-within{background-color:var(--plasma-number-input_background-color-focus);box-shadow:inset 0 0 0 var(--plasma-number-input_input-wrapper_border-width) var(--plasma-number-input_border-color-focus);}.base_3l8dqb_b750ywr__50c564e0.base_3l8dqb_clearView__50c564e0 .base_3l8dqb_i1tgbhg7__50c564e0{caret-color:var(--plasma-number-input_caret_color);}.base_3l8dqb_b750ywr__50c564e0.base_3l8dqb_clearView__50c564e0 .base_3l8dqb_i1tgbhg7__50c564e0:not(.base_3l8dqb_errorAnimation__50c564e0){color:var(--plasma-number-input_color-clear);}.base_3l8dqb_b750ywr__50c564e0.base_3l8dqb_clearView__50c564e0 .base_3l8dqb_az36kha__50c564e0{color:var(--plasma-number-input_additional-text_color-clear);}
|
53
|
+
|
54
|
+
.base_1sl0mh8_bmqk5v5__e93ebd2b.base_1sl0mh8_bmqk5v5__e93ebd2b.base_1sl0mh8_numberInputDisabled__e93ebd2b{pointer-events:none;opacity:var(--plasma-number-input_disabled-opacity);cursor:not-allowed;}
|