@salutejs/plasma-new-hope 0.110.0-canary.1307.10056755335.0 → 0.110.0-dev.0
Sign up to get free protection for your applications and to get access to all the features.
- package/cjs/components/Autocomplete/Autocomplete.css +60 -0
- package/cjs/components/Autocomplete/Autocomplete.js +189 -0
- package/cjs/components/Autocomplete/Autocomplete.js.map +1 -0
- package/cjs/components/Autocomplete/Autocomplete.styles.js +78 -0
- package/cjs/components/Autocomplete/Autocomplete.styles.js.map +1 -0
- package/cjs/components/Autocomplete/Autocomplete.styles_4wbmok.css +5 -0
- package/cjs/components/Autocomplete/Autocomplete.tokens.js +93 -0
- package/cjs/components/Autocomplete/Autocomplete.tokens.js.map +1 -0
- package/cjs/components/Autocomplete/hooks/useKeyboardNavigation.js +112 -0
- package/cjs/components/Autocomplete/hooks/useKeyboardNavigation.js.map +1 -0
- package/cjs/components/Autocomplete/reducers/focusedReducer.js +47 -0
- package/cjs/components/Autocomplete/reducers/focusedReducer.js.map +1 -0
- package/cjs/components/Autocomplete/ui/SuggestionItem/SuggestionItem.css +2 -0
- package/cjs/components/Autocomplete/ui/SuggestionItem/SuggestionItem.js +41 -0
- package/cjs/components/Autocomplete/ui/SuggestionItem/SuggestionItem.js.map +1 -0
- package/cjs/components/Autocomplete/ui/SuggestionItem/SuggestionItem.styles.js +21 -0
- package/cjs/components/Autocomplete/ui/SuggestionItem/SuggestionItem.styles.js.map +1 -0
- package/cjs/components/Autocomplete/ui/SuggestionItem/SuggestionItem.styles_lpdinw.css +2 -0
- package/cjs/components/Autocomplete/ui/TextField/TextField.styles.js +23 -0
- package/cjs/components/Autocomplete/ui/TextField/TextField.styles.js.map +1 -0
- package/cjs/components/Autocomplete/ui/TextField/TextField.styles_sx1sq7.css +1 -0
- package/cjs/components/EmptyState/EmptyState.css +30 -0
- package/cjs/components/EmptyState/EmptyState.js +39 -0
- package/cjs/components/EmptyState/EmptyState.js.map +1 -0
- package/cjs/components/EmptyState/EmptyState.styles.js +41 -0
- package/cjs/components/EmptyState/EmptyState.styles.js.map +1 -0
- package/cjs/components/EmptyState/EmptyState.styles_1o24i5h.css +4 -0
- package/cjs/components/EmptyState/EmptyState.tokens.js +21 -0
- package/cjs/components/EmptyState/EmptyState.tokens.js.map +1 -0
- package/cjs/components/TextField/TextField.js +2 -2
- package/cjs/components/TextField/TextField.js.map +1 -1
- package/cjs/hooks/useOutsideClick.js +26 -0
- package/cjs/hooks/useOutsideClick.js.map +1 -0
- package/cjs/index.css +16 -0
- package/cjs/index.js +12 -0
- package/cjs/index.js.map +1 -1
- package/emotion/cjs/components/Autocomplete/Autocomplete.js +193 -0
- package/emotion/cjs/components/Autocomplete/Autocomplete.styles.js +43 -0
- package/emotion/cjs/components/Autocomplete/Autocomplete.tokens.js +91 -0
- package/emotion/cjs/components/Autocomplete/Autocomplete.types.js +5 -0
- package/emotion/cjs/components/Autocomplete/hooks/useKeyboardNavigation.js +114 -0
- package/emotion/cjs/components/Autocomplete/index.js +25 -0
- package/emotion/cjs/components/Autocomplete/reducers/focusedReducer.js +46 -0
- package/emotion/cjs/components/Autocomplete/ui/SuggestionItem/SuggestionItem.js +42 -0
- package/emotion/cjs/components/Autocomplete/ui/SuggestionItem/SuggestionItem.styles.js +25 -0
- package/emotion/cjs/components/Autocomplete/ui/SuggestionItem/SuggestionItem.type.js +5 -0
- package/emotion/cjs/components/Autocomplete/ui/TextField/TextField.js +12 -0
- package/emotion/cjs/components/Autocomplete/ui/TextField/TextField.styles.js +17 -0
- package/emotion/cjs/components/Autocomplete/ui/index.js +27 -0
- package/emotion/cjs/components/EmptyState/EmptyState.js +39 -0
- package/emotion/cjs/components/EmptyState/EmptyState.styles.js +29 -0
- package/emotion/cjs/components/EmptyState/EmptyState.tokens.js +20 -0
- package/emotion/cjs/components/EmptyState/EmptyState.types.js +5 -0
- package/emotion/cjs/components/EmptyState/index.js +25 -0
- package/emotion/cjs/components/TextField/TextField.js +3 -3
- package/emotion/cjs/examples/plasma_b2c/components/Autocomplete/Autocomplete.config.js +39 -0
- package/emotion/cjs/examples/plasma_b2c/components/Autocomplete/Autocomplete.js +11 -0
- package/emotion/cjs/examples/plasma_b2c/components/Autocomplete/Autocomplete.stories.tsx +134 -0
- package/emotion/cjs/examples/plasma_b2c/components/Dropdown/Dropdown.config.js +5 -5
- package/emotion/cjs/examples/plasma_b2c/components/EmptyState/EmptyState.config.js +21 -0
- package/emotion/cjs/examples/plasma_b2c/components/EmptyState/EmptyState.js +11 -0
- package/emotion/cjs/examples/plasma_b2c/components/EmptyState/EmptyState.stories.tsx +44 -0
- package/emotion/cjs/examples/plasma_b2c/components/Overlay/Overlay.stories.tsx +1 -1
- package/emotion/cjs/examples/plasma_web/components/Autocomplete/Autocomplete.config.js +39 -0
- package/emotion/cjs/examples/plasma_web/components/Autocomplete/Autocomplete.js +11 -0
- package/emotion/cjs/examples/plasma_web/components/Autocomplete/Autocomplete.stories.tsx +134 -0
- package/emotion/cjs/examples/plasma_web/components/Dropdown/Dropdown.config.js +5 -5
- package/emotion/cjs/examples/plasma_web/components/EmptyState/EmptyState.config.js +21 -0
- package/emotion/cjs/examples/plasma_web/components/EmptyState/EmptyState.js +11 -0
- package/emotion/cjs/examples/plasma_web/components/EmptyState/EmptyState.stories.tsx +44 -0
- package/emotion/cjs/examples/plasma_web/components/Overlay/Overlay.stories.tsx +1 -1
- package/emotion/cjs/examples/sds_engineer/components/Overlay/Overlay.stories.tsx +1 -1
- package/emotion/cjs/hooks/index.js +7 -0
- package/emotion/cjs/hooks/useOutsideClick.js +24 -0
- package/emotion/cjs/index.js +22 -0
- package/emotion/es/components/Autocomplete/Autocomplete.js +185 -0
- package/emotion/es/components/Autocomplete/Autocomplete.styles.js +36 -0
- package/emotion/es/components/Autocomplete/Autocomplete.tokens.js +85 -0
- package/emotion/es/components/Autocomplete/Autocomplete.types.js +1 -0
- package/emotion/es/components/Autocomplete/hooks/useKeyboardNavigation.js +108 -0
- package/emotion/es/components/Autocomplete/index.js +2 -0
- package/emotion/es/components/Autocomplete/reducers/focusedReducer.js +40 -0
- package/emotion/es/components/Autocomplete/ui/SuggestionItem/SuggestionItem.js +33 -0
- package/emotion/es/components/Autocomplete/ui/SuggestionItem/SuggestionItem.styles.js +18 -0
- package/emotion/es/components/Autocomplete/ui/SuggestionItem/SuggestionItem.type.js +1 -0
- package/emotion/es/components/Autocomplete/ui/TextField/TextField.js +1 -0
- package/emotion/es/components/Autocomplete/ui/TextField/TextField.styles.js +10 -0
- package/emotion/es/components/Autocomplete/ui/index.js +2 -0
- package/emotion/es/components/EmptyState/EmptyState.js +31 -0
- package/emotion/es/components/EmptyState/EmptyState.styles.js +22 -0
- package/emotion/es/components/EmptyState/EmptyState.tokens.js +14 -0
- package/emotion/es/components/EmptyState/EmptyState.types.js +1 -0
- package/emotion/es/components/EmptyState/index.js +2 -0
- package/emotion/es/components/TextField/TextField.js +3 -3
- package/emotion/es/examples/plasma_b2c/components/Autocomplete/Autocomplete.config.js +33 -0
- package/emotion/es/examples/plasma_b2c/components/Autocomplete/Autocomplete.js +5 -0
- package/emotion/es/examples/plasma_b2c/components/Autocomplete/Autocomplete.stories.tsx +134 -0
- package/emotion/es/examples/plasma_b2c/components/Dropdown/Dropdown.config.js +5 -5
- package/emotion/es/examples/plasma_b2c/components/EmptyState/EmptyState.config.js +15 -0
- package/emotion/es/examples/plasma_b2c/components/EmptyState/EmptyState.js +5 -0
- package/emotion/es/examples/plasma_b2c/components/EmptyState/EmptyState.stories.tsx +44 -0
- package/emotion/es/examples/plasma_b2c/components/Overlay/Overlay.stories.tsx +1 -1
- package/emotion/es/examples/plasma_web/components/Autocomplete/Autocomplete.config.js +33 -0
- package/emotion/es/examples/plasma_web/components/Autocomplete/Autocomplete.js +5 -0
- package/emotion/es/examples/plasma_web/components/Autocomplete/Autocomplete.stories.tsx +134 -0
- package/emotion/es/examples/plasma_web/components/Dropdown/Dropdown.config.js +5 -5
- package/emotion/es/examples/plasma_web/components/EmptyState/EmptyState.config.js +15 -0
- package/emotion/es/examples/plasma_web/components/EmptyState/EmptyState.js +5 -0
- package/emotion/es/examples/plasma_web/components/EmptyState/EmptyState.stories.tsx +44 -0
- package/emotion/es/examples/plasma_web/components/Overlay/Overlay.stories.tsx +1 -1
- package/emotion/es/examples/sds_engineer/components/Overlay/Overlay.stories.tsx +1 -1
- package/emotion/es/hooks/index.js +1 -0
- package/emotion/es/hooks/useOutsideClick.js +18 -0
- package/emotion/es/index.js +3 -1
- package/es/components/Autocomplete/Autocomplete.css +60 -0
- package/es/components/Autocomplete/Autocomplete.js +184 -0
- package/es/components/Autocomplete/Autocomplete.js.map +1 -0
- package/es/components/Autocomplete/Autocomplete.styles.js +70 -0
- package/es/components/Autocomplete/Autocomplete.styles.js.map +1 -0
- package/es/components/Autocomplete/Autocomplete.styles_4wbmok.css +5 -0
- package/es/components/Autocomplete/Autocomplete.tokens.js +88 -0
- package/es/components/Autocomplete/Autocomplete.tokens.js.map +1 -0
- package/es/components/Autocomplete/hooks/useKeyboardNavigation.js +107 -0
- package/es/components/Autocomplete/hooks/useKeyboardNavigation.js.map +1 -0
- package/es/components/Autocomplete/reducers/focusedReducer.js +43 -0
- package/es/components/Autocomplete/reducers/focusedReducer.js.map +1 -0
- package/es/components/Autocomplete/ui/SuggestionItem/SuggestionItem.css +2 -0
- package/es/components/Autocomplete/ui/SuggestionItem/SuggestionItem.js +37 -0
- package/es/components/Autocomplete/ui/SuggestionItem/SuggestionItem.js.map +1 -0
- package/es/components/Autocomplete/ui/SuggestionItem/SuggestionItem.styles.js +16 -0
- package/es/components/Autocomplete/ui/SuggestionItem/SuggestionItem.styles.js.map +1 -0
- package/es/components/Autocomplete/ui/SuggestionItem/SuggestionItem.styles_lpdinw.css +2 -0
- package/es/components/Autocomplete/ui/TextField/TextField.styles.js +19 -0
- package/es/components/Autocomplete/ui/TextField/TextField.styles.js.map +1 -0
- package/es/components/Autocomplete/ui/TextField/TextField.styles_sx1sq7.css +1 -0
- package/es/components/EmptyState/EmptyState.css +30 -0
- package/es/components/EmptyState/EmptyState.js +34 -0
- package/es/components/EmptyState/EmptyState.js.map +1 -0
- package/es/components/EmptyState/EmptyState.styles.js +34 -0
- package/es/components/EmptyState/EmptyState.styles.js.map +1 -0
- package/es/components/EmptyState/EmptyState.styles_1o24i5h.css +4 -0
- package/es/components/EmptyState/EmptyState.tokens.js +17 -0
- package/es/components/EmptyState/EmptyState.tokens.js.map +1 -0
- package/es/components/TextField/TextField.js +2 -2
- package/es/components/TextField/TextField.js.map +1 -1
- package/es/hooks/useOutsideClick.js +22 -0
- package/es/hooks/useOutsideClick.js.map +1 -0
- package/es/index.css +16 -0
- package/es/index.js +5 -0
- package/es/index.js.map +1 -1
- package/package.json +2 -2
- package/styled-components/cjs/components/Autocomplete/Autocomplete.js +193 -0
- package/styled-components/cjs/components/Autocomplete/Autocomplete.styles.js +40 -0
- package/styled-components/cjs/components/Autocomplete/Autocomplete.tokens.js +91 -0
- package/styled-components/cjs/components/Autocomplete/Autocomplete.types.js +5 -0
- package/styled-components/cjs/components/Autocomplete/hooks/useKeyboardNavigation.js +114 -0
- package/styled-components/cjs/components/Autocomplete/index.js +25 -0
- package/styled-components/cjs/components/Autocomplete/reducers/focusedReducer.js +46 -0
- package/styled-components/cjs/components/Autocomplete/ui/SuggestionItem/SuggestionItem.js +42 -0
- package/styled-components/cjs/components/Autocomplete/ui/SuggestionItem/SuggestionItem.styles.js +23 -0
- package/styled-components/cjs/components/Autocomplete/ui/SuggestionItem/SuggestionItem.type.js +5 -0
- package/styled-components/cjs/components/Autocomplete/ui/TextField/TextField.js +12 -0
- package/styled-components/cjs/components/Autocomplete/ui/TextField/TextField.styles.js +16 -0
- package/styled-components/cjs/components/Autocomplete/ui/index.js +27 -0
- package/styled-components/cjs/components/EmptyState/EmptyState.js +39 -0
- package/styled-components/cjs/components/EmptyState/EmptyState.styles.js +25 -0
- package/styled-components/cjs/components/EmptyState/EmptyState.tokens.js +20 -0
- package/styled-components/cjs/components/EmptyState/EmptyState.types.js +5 -0
- package/styled-components/cjs/components/EmptyState/index.js +25 -0
- package/styled-components/cjs/components/TextField/TextField.js +2 -2
- package/styled-components/cjs/examples/plasma_b2c/components/Autocomplete/Autocomplete.config.js +39 -0
- package/styled-components/cjs/examples/plasma_b2c/components/Autocomplete/Autocomplete.js +11 -0
- package/styled-components/cjs/examples/plasma_b2c/components/Autocomplete/Autocomplete.stories.tsx +134 -0
- package/styled-components/cjs/examples/plasma_b2c/components/Dropdown/Dropdown.config.js +1 -1
- package/styled-components/cjs/examples/plasma_b2c/components/EmptyState/EmptyState.config.js +21 -0
- package/styled-components/cjs/examples/plasma_b2c/components/EmptyState/EmptyState.js +11 -0
- package/styled-components/cjs/examples/plasma_b2c/components/EmptyState/EmptyState.stories.tsx +44 -0
- package/styled-components/cjs/examples/plasma_web/components/Autocomplete/Autocomplete.config.js +39 -0
- package/styled-components/cjs/examples/plasma_web/components/Autocomplete/Autocomplete.js +11 -0
- package/styled-components/cjs/examples/plasma_web/components/Autocomplete/Autocomplete.stories.tsx +134 -0
- package/styled-components/cjs/examples/plasma_web/components/Dropdown/Dropdown.config.js +1 -1
- package/styled-components/cjs/examples/plasma_web/components/EmptyState/EmptyState.config.js +21 -0
- package/styled-components/cjs/examples/plasma_web/components/EmptyState/EmptyState.js +11 -0
- package/styled-components/cjs/examples/plasma_web/components/EmptyState/EmptyState.stories.tsx +44 -0
- package/styled-components/cjs/hooks/index.js +7 -0
- package/styled-components/cjs/hooks/useOutsideClick.js +24 -0
- package/styled-components/cjs/index.js +22 -0
- package/styled-components/es/components/Autocomplete/Autocomplete.js +185 -0
- package/styled-components/es/components/Autocomplete/Autocomplete.styles.js +32 -0
- package/styled-components/es/components/Autocomplete/Autocomplete.tokens.js +85 -0
- package/styled-components/es/components/Autocomplete/Autocomplete.types.js +1 -0
- package/styled-components/es/components/Autocomplete/hooks/useKeyboardNavigation.js +108 -0
- package/styled-components/es/components/Autocomplete/index.js +2 -0
- package/styled-components/es/components/Autocomplete/reducers/focusedReducer.js +40 -0
- package/styled-components/es/components/Autocomplete/ui/SuggestionItem/SuggestionItem.js +33 -0
- package/styled-components/es/components/Autocomplete/ui/SuggestionItem/SuggestionItem.styles.js +16 -0
- package/styled-components/es/components/Autocomplete/ui/SuggestionItem/SuggestionItem.type.js +1 -0
- package/styled-components/es/components/Autocomplete/ui/TextField/TextField.js +1 -0
- package/styled-components/es/components/Autocomplete/ui/TextField/TextField.styles.js +9 -0
- package/styled-components/es/components/Autocomplete/ui/index.js +2 -0
- package/styled-components/es/components/EmptyState/EmptyState.js +31 -0
- package/styled-components/es/components/EmptyState/EmptyState.styles.js +18 -0
- package/styled-components/es/components/EmptyState/EmptyState.tokens.js +14 -0
- package/styled-components/es/components/EmptyState/EmptyState.types.js +1 -0
- package/styled-components/es/components/EmptyState/index.js +2 -0
- package/styled-components/es/components/TextField/TextField.js +2 -2
- package/styled-components/es/examples/plasma_b2c/components/Autocomplete/Autocomplete.config.js +33 -0
- package/styled-components/es/examples/plasma_b2c/components/Autocomplete/Autocomplete.js +5 -0
- package/styled-components/es/examples/plasma_b2c/components/Autocomplete/Autocomplete.stories.tsx +134 -0
- package/styled-components/es/examples/plasma_b2c/components/Dropdown/Dropdown.config.js +1 -1
- package/styled-components/es/examples/plasma_b2c/components/EmptyState/EmptyState.config.js +15 -0
- package/styled-components/es/examples/plasma_b2c/components/EmptyState/EmptyState.js +5 -0
- package/styled-components/es/examples/plasma_b2c/components/EmptyState/EmptyState.stories.tsx +44 -0
- package/styled-components/es/examples/plasma_web/components/Autocomplete/Autocomplete.config.js +33 -0
- package/styled-components/es/examples/plasma_web/components/Autocomplete/Autocomplete.js +5 -0
- package/styled-components/es/examples/plasma_web/components/Autocomplete/Autocomplete.stories.tsx +134 -0
- package/styled-components/es/examples/plasma_web/components/Dropdown/Dropdown.config.js +1 -1
- package/styled-components/es/examples/plasma_web/components/EmptyState/EmptyState.config.js +15 -0
- package/styled-components/es/examples/plasma_web/components/EmptyState/EmptyState.js +5 -0
- package/styled-components/es/examples/plasma_web/components/EmptyState/EmptyState.stories.tsx +44 -0
- package/styled-components/es/hooks/index.js +1 -0
- package/styled-components/es/hooks/useOutsideClick.js +18 -0
- package/styled-components/es/index.js +3 -1
- package/types/components/Autocomplete/Autocomplete.d.ts +24 -0
- package/types/components/Autocomplete/Autocomplete.d.ts.map +1 -0
- package/types/components/Autocomplete/Autocomplete.styles.d.ts +19 -0
- package/types/components/Autocomplete/Autocomplete.styles.d.ts.map +1 -0
- package/types/components/Autocomplete/Autocomplete.tokens.d.ts +84 -0
- package/types/components/Autocomplete/Autocomplete.tokens.d.ts.map +1 -0
- package/types/components/Autocomplete/Autocomplete.types.d.ts +84 -0
- package/types/components/Autocomplete/Autocomplete.types.d.ts.map +1 -0
- package/types/components/Autocomplete/hooks/useKeyboardNavigation.d.ts +31 -0
- package/types/components/Autocomplete/hooks/useKeyboardNavigation.d.ts.map +1 -0
- package/types/components/Autocomplete/index.d.ts +3 -0
- package/types/components/Autocomplete/index.d.ts.map +1 -0
- package/types/components/Autocomplete/reducers/focusedReducer.d.ts +17 -0
- package/types/components/Autocomplete/reducers/focusedReducer.d.ts.map +1 -0
- package/types/components/Autocomplete/ui/SuggestionItem/SuggestionItem.d.ts +4 -0
- package/types/components/Autocomplete/ui/SuggestionItem/SuggestionItem.d.ts.map +1 -0
- package/types/components/Autocomplete/ui/SuggestionItem/SuggestionItem.styles.d.ts +4 -0
- package/types/components/Autocomplete/ui/SuggestionItem/SuggestionItem.styles.d.ts.map +1 -0
- package/types/components/Autocomplete/ui/SuggestionItem/SuggestionItem.type.d.ts +8 -0
- package/types/components/Autocomplete/ui/SuggestionItem/SuggestionItem.type.d.ts.map +1 -0
- package/types/components/Autocomplete/ui/TextField/TextField.d.ts +2 -0
- package/types/components/Autocomplete/ui/TextField/TextField.d.ts.map +1 -0
- package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts +41 -0
- package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts.map +1 -0
- package/types/components/Autocomplete/ui/index.d.ts +3 -0
- package/types/components/Autocomplete/ui/index.d.ts.map +1 -0
- package/types/components/EmptyState/EmptyState.d.ts +18 -0
- package/types/components/EmptyState/EmptyState.d.ts.map +1 -0
- package/types/components/EmptyState/EmptyState.styles.d.ts +48 -0
- package/types/components/EmptyState/EmptyState.styles.d.ts.map +1 -0
- package/types/components/EmptyState/EmptyState.tokens.d.ts +15 -0
- package/types/components/EmptyState/EmptyState.tokens.d.ts.map +1 -0
- package/types/components/EmptyState/EmptyState.types.d.ts +8 -0
- package/types/components/EmptyState/EmptyState.types.d.ts.map +1 -0
- package/types/components/EmptyState/index.d.ts +3 -0
- package/types/components/EmptyState/index.d.ts.map +1 -0
- package/types/examples/plasma_b2c/components/Autocomplete/Autocomplete.config.d.ts +32 -0
- package/types/examples/plasma_b2c/components/Autocomplete/Autocomplete.config.d.ts.map +1 -0
- package/types/examples/plasma_b2c/components/Autocomplete/Autocomplete.d.ts +26 -0
- package/types/examples/plasma_b2c/components/Autocomplete/Autocomplete.d.ts.map +1 -0
- package/types/examples/plasma_b2c/components/EmptyState/EmptyState.config.d.ts +14 -0
- package/types/examples/plasma_b2c/components/EmptyState/EmptyState.config.d.ts.map +1 -0
- package/types/examples/plasma_b2c/components/EmptyState/EmptyState.d.ts +25 -0
- package/types/examples/plasma_b2c/components/EmptyState/EmptyState.d.ts.map +1 -0
- package/types/examples/plasma_web/components/Autocomplete/Autocomplete.config.d.ts +32 -0
- package/types/examples/plasma_web/components/Autocomplete/Autocomplete.config.d.ts.map +1 -0
- package/types/examples/plasma_web/components/Autocomplete/Autocomplete.d.ts +26 -0
- package/types/examples/plasma_web/components/Autocomplete/Autocomplete.d.ts.map +1 -0
- package/types/examples/plasma_web/components/EmptyState/EmptyState.config.d.ts +14 -0
- package/types/examples/plasma_web/components/EmptyState/EmptyState.config.d.ts.map +1 -0
- package/types/examples/plasma_web/components/EmptyState/EmptyState.d.ts +25 -0
- package/types/examples/plasma_web/components/EmptyState/EmptyState.d.ts.map +1 -0
- package/types/hooks/index.d.ts +1 -0
- package/types/hooks/index.d.ts.map +1 -1
- package/types/hooks/useOutsideClick.d.ts +3 -0
- package/types/hooks/useOutsideClick.d.ts.map +1 -0
- package/types/index.d.ts +2 -0
- package/types/index.d.ts.map +1 -1
@@ -0,0 +1,107 @@
|
|
1
|
+
var keys = {
|
2
|
+
Enter: 'Enter',
|
3
|
+
Space: 'Space',
|
4
|
+
Tab: 'Tab',
|
5
|
+
Escape: 'Escape',
|
6
|
+
ArrowLeft: 'ArrowLeft',
|
7
|
+
ArrowRight: 'ArrowRight',
|
8
|
+
ArrowUp: 'ArrowUp',
|
9
|
+
ArrowDown: 'ArrowDown',
|
10
|
+
Home: 'Home',
|
11
|
+
End: 'End',
|
12
|
+
PageUp: 'PageUp',
|
13
|
+
PageDown: 'PageDown'
|
14
|
+
};
|
15
|
+
var useKeyNavigation = function useKeyNavigation(_ref) {
|
16
|
+
var isOpen = _ref.isOpen,
|
17
|
+
setIsOpen = _ref.setIsOpen,
|
18
|
+
focused = _ref.focused,
|
19
|
+
dispatchFocused = _ref.dispatchFocused,
|
20
|
+
finalResults = _ref.finalResults,
|
21
|
+
handleItemClick = _ref.handleItemClick;
|
22
|
+
var onKeyDown = function onKeyDown(event) {
|
23
|
+
switch (event.code) {
|
24
|
+
case keys.ArrowDown:
|
25
|
+
{
|
26
|
+
if (!isOpen) {
|
27
|
+
setIsOpen(true);
|
28
|
+
dispatchFocused({
|
29
|
+
type: 'setFirstItem'
|
30
|
+
});
|
31
|
+
break;
|
32
|
+
}
|
33
|
+
dispatchFocused({
|
34
|
+
type: 'setNextItem',
|
35
|
+
listLength: finalResults.length
|
36
|
+
});
|
37
|
+
break;
|
38
|
+
}
|
39
|
+
case keys.ArrowUp:
|
40
|
+
{
|
41
|
+
if (!isOpen) {
|
42
|
+
setIsOpen(true);
|
43
|
+
dispatchFocused({
|
44
|
+
type: 'setLastItem',
|
45
|
+
listLength: finalResults.length
|
46
|
+
});
|
47
|
+
break;
|
48
|
+
}
|
49
|
+
dispatchFocused({
|
50
|
+
type: 'setPrevItem',
|
51
|
+
listLength: finalResults.length
|
52
|
+
});
|
53
|
+
break;
|
54
|
+
}
|
55
|
+
case keys.Home:
|
56
|
+
{
|
57
|
+
if (!isOpen) {
|
58
|
+
return;
|
59
|
+
}
|
60
|
+
dispatchFocused({
|
61
|
+
type: 'setFirstItem'
|
62
|
+
});
|
63
|
+
break;
|
64
|
+
}
|
65
|
+
case keys.End:
|
66
|
+
{
|
67
|
+
if (!isOpen) {
|
68
|
+
return;
|
69
|
+
}
|
70
|
+
dispatchFocused({
|
71
|
+
type: 'setLastItem',
|
72
|
+
listLength: finalResults.length
|
73
|
+
});
|
74
|
+
break;
|
75
|
+
}
|
76
|
+
case keys.Enter:
|
77
|
+
{
|
78
|
+
if (!isOpen || focused === null) {
|
79
|
+
return;
|
80
|
+
}
|
81
|
+
dispatchFocused({
|
82
|
+
type: 'reset'
|
83
|
+
});
|
84
|
+
handleItemClick(finalResults[focused]);
|
85
|
+
break;
|
86
|
+
}
|
87
|
+
case keys.Tab:
|
88
|
+
case keys.Escape:
|
89
|
+
{
|
90
|
+
if (!isOpen) {
|
91
|
+
return;
|
92
|
+
}
|
93
|
+
setIsOpen(false);
|
94
|
+
dispatchFocused({
|
95
|
+
type: 'reset'
|
96
|
+
});
|
97
|
+
break;
|
98
|
+
}
|
99
|
+
}
|
100
|
+
};
|
101
|
+
return {
|
102
|
+
onKeyDown: onKeyDown
|
103
|
+
};
|
104
|
+
};
|
105
|
+
|
106
|
+
export { keys, useKeyNavigation };
|
107
|
+
//# sourceMappingURL=useKeyboardNavigation.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"useKeyboardNavigation.js","sources":["../../../../src/components/Autocomplete/hooks/useKeyboardNavigation.ts"],"sourcesContent":["import { KeyboardEvent } from 'react';\nimport type { Dispatch } from 'react';\n\nimport { SuggestionItemType } from '../Autocomplete.types';\nimport type { FocusedPathAction } from '../reducers/focusedReducer';\n\nexport const keys = {\n Enter: 'Enter',\n Space: 'Space',\n Tab: 'Tab',\n Escape: 'Escape',\n ArrowLeft: 'ArrowLeft',\n ArrowRight: 'ArrowRight',\n ArrowUp: 'ArrowUp',\n ArrowDown: 'ArrowDown',\n Home: 'Home',\n End: 'End',\n PageUp: 'PageUp',\n PageDown: 'PageDown',\n};\n\ninterface ReturnedProps {\n onKeyDown: (event: React.KeyboardEvent<HTMLElement>) => void;\n}\n\ninterface Props {\n isOpen: boolean;\n setIsOpen: (e: boolean) => void;\n focused: number | null;\n dispatchFocused: Dispatch<FocusedPathAction>;\n finalResults: SuggestionItemType[];\n handleItemClick: (e: SuggestionItemType) => void;\n}\n\nexport const useKeyNavigation = ({\n isOpen,\n setIsOpen,\n focused,\n dispatchFocused,\n finalResults,\n handleItemClick,\n}: Props): ReturnedProps => {\n const onKeyDown = (event: KeyboardEvent<HTMLElement>) => {\n switch (event.code) {\n case keys.ArrowDown: {\n if (!isOpen) {\n setIsOpen(true);\n dispatchFocused({ type: 'setFirstItem' });\n break;\n }\n\n dispatchFocused({ type: 'setNextItem', listLength: finalResults.length });\n\n break;\n }\n\n case keys.ArrowUp: {\n if (!isOpen) {\n setIsOpen(true);\n dispatchFocused({ type: 'setLastItem', listLength: finalResults.length });\n break;\n }\n\n dispatchFocused({ type: 'setPrevItem', listLength: finalResults.length });\n\n break;\n }\n\n case keys.Home: {\n if (!isOpen) {\n return;\n }\n\n dispatchFocused({ type: 'setFirstItem' });\n\n break;\n }\n\n case keys.End: {\n if (!isOpen) {\n return;\n }\n\n dispatchFocused({ type: 'setLastItem', listLength: finalResults.length });\n\n break;\n }\n\n case keys.Enter: {\n if (!isOpen || focused === null) {\n return;\n }\n\n dispatchFocused({ type: 'reset' });\n handleItemClick(finalResults[focused]);\n\n break;\n }\n\n case keys.Tab:\n case keys.Escape: {\n if (!isOpen) {\n return;\n }\n\n setIsOpen(false);\n dispatchFocused({ type: 'reset' });\n\n break;\n }\n\n default: {\n break;\n }\n }\n };\n\n return { onKeyDown };\n};\n"],"names":["keys","Enter","Space","Tab","Escape","ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End","PageUp","PageDown","useKeyNavigation","_ref","isOpen","setIsOpen","focused","dispatchFocused","finalResults","handleItemClick","onKeyDown","event","code","type","listLength","length"],"mappings":"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"}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
function focusedReducer(state, action) {
|
2
|
+
switch (action.type) {
|
3
|
+
case 'reset':
|
4
|
+
{
|
5
|
+
return null;
|
6
|
+
}
|
7
|
+
case 'setNextItem':
|
8
|
+
{
|
9
|
+
if (state === action.listLength - 1) {
|
10
|
+
return state;
|
11
|
+
}
|
12
|
+
if (state === null) {
|
13
|
+
return 0;
|
14
|
+
}
|
15
|
+
return state + 1;
|
16
|
+
}
|
17
|
+
case 'setPrevItem':
|
18
|
+
{
|
19
|
+
if (state === 0) {
|
20
|
+
return state;
|
21
|
+
}
|
22
|
+
if (state === null) {
|
23
|
+
return action.listLength - 1;
|
24
|
+
}
|
25
|
+
return state - 1;
|
26
|
+
}
|
27
|
+
case 'setFirstItem':
|
28
|
+
{
|
29
|
+
return 0;
|
30
|
+
}
|
31
|
+
case 'setLastItem':
|
32
|
+
{
|
33
|
+
return action.listLength - 1;
|
34
|
+
}
|
35
|
+
default:
|
36
|
+
{
|
37
|
+
return state;
|
38
|
+
}
|
39
|
+
}
|
40
|
+
}
|
41
|
+
|
42
|
+
export { focusedReducer };
|
43
|
+
//# sourceMappingURL=focusedReducer.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"focusedReducer.js","sources":["../../../../src/components/Autocomplete/reducers/focusedReducer.ts"],"sourcesContent":["export type FocusedState = number | null;\n\nexport type FocusedPathAction =\n | { type: 'reset' }\n | { type: 'setNextItem'; listLength: number }\n | { type: 'setPrevItem'; listLength: number }\n | { type: 'setFirstItem' }\n | { type: 'setLastItem'; listLength: number };\n\nexport function focusedReducer(state: FocusedState, action: FocusedPathAction): FocusedState {\n switch (action.type) {\n case 'reset': {\n return null;\n }\n\n case 'setNextItem': {\n if (state === action.listLength - 1) {\n return state;\n }\n\n if (state === null) {\n return 0;\n }\n\n return state + 1;\n }\n\n case 'setPrevItem': {\n if (state === 0) {\n return state;\n }\n\n if (state === null) {\n return action.listLength - 1;\n }\n\n return state - 1;\n }\n\n case 'setFirstItem': {\n return 0;\n }\n\n case 'setLastItem': {\n return action.listLength - 1;\n }\n\n default: {\n return state;\n }\n }\n}\n"],"names":["focusedReducer","state","action","type","listLength"],"mappings":"AASO,SAASA,cAAcA,CAACC,KAAmB,EAAEC,MAAyB,EAAgB;EACzF,QAAQA,MAAM,CAACC,IAAI;AACf,IAAA,KAAK,OAAO;AAAE,MAAA;AACV,QAAA,OAAO,IAAI,CAAA;AACf,OAAA;AAEA,IAAA,KAAK,aAAa;AAAE,MAAA;AAChB,QAAA,IAAIF,KAAK,KAAKC,MAAM,CAACE,UAAU,GAAG,CAAC,EAAE;AACjC,UAAA,OAAOH,KAAK,CAAA;AAChB,SAAA;QAEA,IAAIA,KAAK,KAAK,IAAI,EAAE;AAChB,UAAA,OAAO,CAAC,CAAA;AACZ,SAAA;QAEA,OAAOA,KAAK,GAAG,CAAC,CAAA;AACpB,OAAA;AAEA,IAAA,KAAK,aAAa;AAAE,MAAA;QAChB,IAAIA,KAAK,KAAK,CAAC,EAAE;AACb,UAAA,OAAOA,KAAK,CAAA;AAChB,SAAA;QAEA,IAAIA,KAAK,KAAK,IAAI,EAAE;AAChB,UAAA,OAAOC,MAAM,CAACE,UAAU,GAAG,CAAC,CAAA;AAChC,SAAA;QAEA,OAAOH,KAAK,GAAG,CAAC,CAAA;AACpB,OAAA;AAEA,IAAA,KAAK,cAAc;AAAE,MAAA;AACjB,QAAA,OAAO,CAAC,CAAA;AACZ,OAAA;AAEA,IAAA,KAAK,aAAa;AAAE,MAAA;AAChB,QAAA,OAAOC,MAAM,CAACE,UAAU,GAAG,CAAC,CAAA;AAChC,OAAA;AAEA,IAAA;AAAS,MAAA;AACL,QAAA,OAAOH,KAAK,CAAA;AAChB,OAAA;AACJ,GAAA;AACJ;;;;"}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
.SuggestionItem_styles_lpdinw_s1siyv9w__5ad0f45d{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-flex:1;-ms-flex:1;flex:1;}
|
2
|
+
.SuggestionItem_styles_lpdinw_wykobsk__5ad0f45d{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0;box-sizing:content-box;padding:var(--plasma-autocomplete-item-padding);font-family:var(--plasma-autocomplete-item-font-family);font-size:var(--plasma-autocomplete-item-font-size);font-style:var(--plasma-autocomplete-item-font-style);font-weight:var(--plasma-autocomplete-item-font-weight);-webkit-letter-spacing:var(--plasma-autocomplete-item-font-letter-spacing);-moz-letter-spacing:var(--plasma-autocomplete-item-font-letter-spacing);-ms-letter-spacing:var(--plasma-autocomplete-item-font-letter-spacing);letter-spacing:var(--plasma-autocomplete-item-font-letter-spacing);line-height:var(--plasma-autocomplete-item-font-line-height);background:var(--plasma-autocomplete-item-background);color:var(--plasma-autocomplete-item-color);border-radius:var(--plasma-autocomplete-item-border-radius);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;}.SuggestionItem_styles_lpdinw_wykobsk__5ad0f45d:hover{cursor:pointer;background:var(--plasma-autocomplete-item-background-hover);}.SuggestionItem_styles_lpdinw_wykobsk__5ad0f45d:focus{outline:none;}.SuggestionItem_styles_lpdinw_wykobsk__5ad0f45d::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:var(--plasma-autocomplete-item-border-radius);-webkit-transition:none;transition:none;pointer-events:none;}.SuggestionItem_styles_lpdinw_wykobsk__5ad0f45d.SuggestionItem_styles_lpdinw_suggestionItemIsFocused__5ad0f45d:before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-autocomplete-focus-color);}
|
@@ -0,0 +1,37 @@
|
|
1
|
+
import React, { useRef, useEffect } from 'react';
|
2
|
+
import { classes } from '../../Autocomplete.tokens.js';
|
3
|
+
import { Wrapper, StyledText } from './SuggestionItem.styles.js';
|
4
|
+
|
5
|
+
var SuggestionItem = function SuggestionItem(_ref) {
|
6
|
+
var item = _ref.item,
|
7
|
+
id = _ref.id,
|
8
|
+
onClick = _ref.onClick,
|
9
|
+
focused = _ref.focused;
|
10
|
+
var ref = useRef(null);
|
11
|
+
var focusedClass = focused ? classes.suggestionItemIsFocused : undefined;
|
12
|
+
var handleClick = function handleClick() {
|
13
|
+
if (onClick) {
|
14
|
+
onClick(item);
|
15
|
+
}
|
16
|
+
};
|
17
|
+
useEffect(function () {
|
18
|
+
if (focusedClass && ref !== null && ref !== void 0 && ref.current) {
|
19
|
+
ref.current.scrollIntoView({
|
20
|
+
behavior: 'smooth',
|
21
|
+
block: 'center',
|
22
|
+
inline: 'center'
|
23
|
+
});
|
24
|
+
}
|
25
|
+
}, [focusedClass]);
|
26
|
+
return /*#__PURE__*/React.createElement(Wrapper, {
|
27
|
+
id: id,
|
28
|
+
role: "option",
|
29
|
+
"aria-selected": focused,
|
30
|
+
onClick: handleClick,
|
31
|
+
ref: ref,
|
32
|
+
className: focusedClass
|
33
|
+
}, item.contentLeft, /*#__PURE__*/React.createElement(StyledText, null, item.label), item.contentRight);
|
34
|
+
};
|
35
|
+
|
36
|
+
export { SuggestionItem };
|
37
|
+
//# sourceMappingURL=SuggestionItem.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"SuggestionItem.js","sources":["../../../../../src/components/Autocomplete/ui/SuggestionItem/SuggestionItem.tsx"],"sourcesContent":["import React, { FC, useEffect, useRef } from 'react';\n\nimport { classes } from '../../Autocomplete.tokens';\n\nimport { StyledText, Wrapper } from './SuggestionItem.styles';\nimport type { SuggestionItemProps } from './SuggestionItem.type';\n\nexport const SuggestionItem: FC<SuggestionItemProps> = ({ item, id, onClick, focused }) => {\n const ref = useRef<HTMLLIElement | null>(null);\n\n const focusedClass = focused ? classes.suggestionItemIsFocused : undefined;\n\n const handleClick = () => {\n if (onClick) {\n onClick(item);\n }\n };\n\n useEffect(() => {\n if (focusedClass && ref?.current) {\n ref.current.scrollIntoView({\n behavior: 'smooth',\n block: 'center',\n inline: 'center',\n });\n }\n }, [focusedClass]);\n\n return (\n <Wrapper id={id} role=\"option\" aria-selected={focused} onClick={handleClick} ref={ref} className={focusedClass}>\n {item.contentLeft}\n <StyledText>{item.label}</StyledText>\n {item.contentRight}\n </Wrapper>\n );\n};\n"],"names":["SuggestionItem","_ref","item","id","onClick","focused","ref","useRef","focusedClass","classes","suggestionItemIsFocused","undefined","handleClick","useEffect","current","scrollIntoView","behavior","block","inline","React","createElement","Wrapper","role","className","contentLeft","StyledText","label","contentRight"],"mappings":";;;;IAOaA,cAAuC,GAAG,SAA1CA,cAAuCA,CAAAC,IAAA,EAAuC;AAAA,EAAA,IAAjCC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAEC,EAAE,GAAAF,IAAA,CAAFE,EAAE;IAAEC,OAAO,GAAAH,IAAA,CAAPG,OAAO;IAAEC,OAAO,GAAAJ,IAAA,CAAPI,OAAO,CAAA;AAChF,EAAA,IAAMC,GAAG,GAAGC,MAAM,CAAuB,IAAI,CAAC,CAAA;EAE9C,IAAMC,YAAY,GAAGH,OAAO,GAAGI,OAAO,CAACC,uBAAuB,GAAGC,SAAS,CAAA;AAE1E,EAAA,IAAMC,WAAW,GAAG,SAAdA,WAAWA,GAAS;AACtB,IAAA,IAAIR,OAAO,EAAE;MACTA,OAAO,CAACF,IAAI,CAAC,CAAA;AACjB,KAAA;GACH,CAAA;AAEDW,EAAAA,SAAS,CAAC,YAAM;IACZ,IAAIL,YAAY,IAAIF,GAAG,KAAA,IAAA,IAAHA,GAAG,KAAHA,KAAAA,CAAAA,IAAAA,GAAG,CAAEQ,OAAO,EAAE;AAC9BR,MAAAA,GAAG,CAACQ,OAAO,CAACC,cAAc,CAAC;AACvBC,QAAAA,QAAQ,EAAE,QAAQ;AAClBC,QAAAA,KAAK,EAAE,QAAQ;AACfC,QAAAA,MAAM,EAAE,QAAA;AACZ,OAAC,CAAC,CAAA;AACN,KAAA;AACJ,GAAC,EAAE,CAACV,YAAY,CAAC,CAAC,CAAA;AAElB,EAAA,oBACIW,KAAA,CAAAC,aAAA,CAACC,OAAO,EAAA;AAAClB,IAAAA,EAAE,EAAEA,EAAG;AAACmB,IAAAA,IAAI,EAAC,QAAQ;AAAC,IAAA,eAAA,EAAejB,OAAQ;AAACD,IAAAA,OAAO,EAAEQ,WAAY;AAACN,IAAAA,GAAG,EAAEA,GAAI;AAACiB,IAAAA,SAAS,EAAEf,YAAAA;AAAa,GAAA,EAC1GN,IAAI,CAACsB,WAAW,eACjBL,KAAA,CAAAC,aAAA,CAACK,UAAU,EAAEvB,IAAAA,EAAAA,IAAI,CAACwB,KAAkB,CAAC,EACpCxB,IAAI,CAACyB,YACD,CAAC,CAAA;AAElB;;;;"}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import './SuggestionItem.styles_lpdinw.css';
|
2
|
+
import { styled } from '@linaria/react';
|
3
|
+
|
4
|
+
var StyledText = /*#__PURE__*/styled('div')({
|
5
|
+
name: "StyledText",
|
6
|
+
"class": "s1siyv9w",
|
7
|
+
propsAsIs: false
|
8
|
+
});
|
9
|
+
var Wrapper = /*#__PURE__*/styled('li')({
|
10
|
+
name: "Wrapper",
|
11
|
+
"class": "wykobsk",
|
12
|
+
propsAsIs: false
|
13
|
+
});
|
14
|
+
|
15
|
+
export { StyledText, Wrapper };
|
16
|
+
//# sourceMappingURL=SuggestionItem.styles.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"SuggestionItem.styles.js","sources":["../../../../../src/components/Autocomplete/ui/SuggestionItem/SuggestionItem.styles.ts"],"sourcesContent":["import { styled } from '@linaria/react';\n\nimport { tokens, classes } from '../../Autocomplete.tokens';\nimport { addFocus, applyEllipsis } from '../../../../mixins';\n\nexport const StyledText = styled.div`\n ${applyEllipsis()};\n flex: 1;\n`;\n\nexport const Wrapper = styled.li`\n display: flex;\n align-items: center;\n margin: 0;\n box-sizing: content-box;\n padding: var(${tokens.itemPadding});\n font-family: var(${tokens.itemFontFamily});\n font-size: var(${tokens.itemFontSize});\n font-style: var(${tokens.itemFontStyle});\n font-weight: var(${tokens.itemFontWeight});\n letter-spacing: var(${tokens.itemFontLetterSpacing});\n line-height: var(${tokens.itemFontLineHeight});\n background: var(${tokens.itemBackground});\n color: var(${tokens.itemColor});\n border-radius: var(${tokens.itemBorderRadius});\n user-select: none;\n\n &:hover {\n cursor: pointer;\n background: var(${tokens.itemBackgroundHover});\n }\n\n :focus {\n outline: none;\n }\n\n ${addFocus({\n outlineSize: '0.0625rem',\n outlineOffset: '0',\n outlineColor: `var(${tokens.focusColor})`,\n outlineRadius: `var(${tokens.itemBorderRadius})`,\n hasTransition: false,\n customFocusRules: `\n &.${classes.suggestionItemIsFocused}:before {\n outline: none;\n box-shadow: 0 0 0 0.0625rem var(${tokens.focusColor});\n }\n `,\n })};\n`;\n"],"names":["StyledText","styled","name","class","propsAsIs","Wrapper"],"mappings":";;AAKO,IAAMA,UAAU,gBAAGC,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,YAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAG/B,EAAA;AAEM,IAAMC,OAAO,gBAAGJ,MAAM,CAAA,IAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,SAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAuC5B;;;;"}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
.s1siyv9w{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-flex:1;-ms-flex:1;flex:1;}
|
2
|
+
.wykobsk{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0;box-sizing:content-box;padding:var(--plasma-autocomplete-item-padding);font-family:var(--plasma-autocomplete-item-font-family);font-size:var(--plasma-autocomplete-item-font-size);font-style:var(--plasma-autocomplete-item-font-style);font-weight:var(--plasma-autocomplete-item-font-weight);-webkit-letter-spacing:var(--plasma-autocomplete-item-font-letter-spacing);-moz-letter-spacing:var(--plasma-autocomplete-item-font-letter-spacing);-ms-letter-spacing:var(--plasma-autocomplete-item-font-letter-spacing);letter-spacing:var(--plasma-autocomplete-item-font-letter-spacing);line-height:var(--plasma-autocomplete-item-font-line-height);background:var(--plasma-autocomplete-item-background);color:var(--plasma-autocomplete-item-color);border-radius:var(--plasma-autocomplete-item-border-radius);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;}.wykobsk:hover{cursor:pointer;background:var(--plasma-autocomplete-item-background-hover);}.wykobsk:focus{outline:none;}.wykobsk::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:var(--plasma-autocomplete-item-border-radius);-webkit-transition:none;transition:none;pointer-events:none;}.wykobsk.suggestion-item-is-focused:before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-autocomplete-focus-color);}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
import './TextField.styles_sx1sq7.css';
|
2
|
+
import { styled } from '@linaria/react';
|
3
|
+
import { textFieldConfig } from '../../../TextField/TextField.js';
|
4
|
+
import '@linaria/core';
|
5
|
+
import { component, mergeConfig } from '../../../../engines/common.js';
|
6
|
+
|
7
|
+
var mergedConfig = /*#__PURE__*/mergeConfig(textFieldConfig);
|
8
|
+
var TextField = /*#__PURE__*/component(mergedConfig);
|
9
|
+
var _exp = function _exp() {
|
10
|
+
return TextField;
|
11
|
+
};
|
12
|
+
var StyledTextField = /*#__PURE__*/styled(_exp())({
|
13
|
+
name: "StyledTextField",
|
14
|
+
"class": "sxqyqmu",
|
15
|
+
propsAsIs: true
|
16
|
+
});
|
17
|
+
|
18
|
+
export { StyledTextField };
|
19
|
+
//# sourceMappingURL=TextField.styles.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"TextField.styles.js","sources":["../../../../../src/components/Autocomplete/ui/TextField/TextField.styles.ts"],"sourcesContent":["import { styled } from '@linaria/react';\n\nimport { textFieldConfig, textFieldTokens } from '../../../TextField';\nimport { component, mergeConfig } from '../../../../engines';\nimport { tokens as autocompleteTokens } from '../../Autocomplete.tokens';\n\nconst mergedConfig = mergeConfig(textFieldConfig);\nconst TextField = component(mergedConfig);\n\nexport const StyledTextField = styled(TextField)`\n ${textFieldTokens.color}: var(${autocompleteTokens.textFieldColor});\n ${textFieldTokens.backgroundColor}: var(${autocompleteTokens.textFieldBackgroundColor});\n ${textFieldTokens.backgroundColorHover}: var(${autocompleteTokens.textFieldBackgroundColorHover});\n ${textFieldTokens.backgroundColorFocus}: var(${autocompleteTokens.textFieldBackgroundColorFocus});\n ${textFieldTokens.borderColor}: var(${autocompleteTokens.textFieldBorderColor});\n ${textFieldTokens.borderColorHover}: var(${autocompleteTokens.textFieldBorderColorHover});\n ${textFieldTokens.borderColorFocus}: var(${autocompleteTokens.textFieldBorderColorFocus});\n ${textFieldTokens.colorReadOnly}: var(${autocompleteTokens.textFieldColorReadOnly});\n ${textFieldTokens.backgroundColorReadOnly}: var(${autocompleteTokens.textFieldBackgroundColorReadOnly});\n ${textFieldTokens.borderColorReadOnly}: var(${autocompleteTokens.textFieldBorderColorReadOnly});\n ${textFieldTokens.placeholderColorReadOnly}: var(${autocompleteTokens.textFieldPlaceholderColorReadOnly});\n ${textFieldTokens.caretColor}: var(${autocompleteTokens.textFieldCaretColor});\n ${textFieldTokens.placeholderColor}: var(${autocompleteTokens.textFieldPlaceholderColor});\n ${textFieldTokens.height}: var(${autocompleteTokens.textFieldHeight});\n ${textFieldTokens.borderWidth}: var(${autocompleteTokens.textFieldBorderWidth});\n ${textFieldTokens.borderRadius}: var(${autocompleteTokens.textFieldBorderRadius});\n ${textFieldTokens.padding}: var(${autocompleteTokens.textFieldPadding});\n ${textFieldTokens.leftContentMargin}: var(${autocompleteTokens.textFieldLeftContentMargin});\n ${textFieldTokens.rightContentMargin}: var(${autocompleteTokens.textFieldRightContentMargin});\n ${textFieldTokens.fontFamily}: var(${autocompleteTokens.textFieldFontFamily});\n ${textFieldTokens.fontStyle}: var(${autocompleteTokens.textFieldFontStyle});\n ${textFieldTokens.fontSize}: var(${autocompleteTokens.textFieldFontSize});\n ${textFieldTokens.fontWeight}: var(${autocompleteTokens.textFieldFontWeight});\n ${textFieldTokens.letterSpacing}: var(${autocompleteTokens.textFieldLetterSpacing});\n ${textFieldTokens.lineHeight}: var(${autocompleteTokens.textFieldLineHeight});\n ${textFieldTokens.labelColor}: var(${autocompleteTokens.textFieldLabelColor});\n ${textFieldTokens.labelColorReadOnly}: var(${autocompleteTokens.textFieldLabelColorReadOnly});\n ${textFieldTokens.labelOffset}: var(${autocompleteTokens.textFieldLabelOffset});\n ${textFieldTokens.labelFontFamily}: var(${autocompleteTokens.textFieldLabelFontFamily});\n ${textFieldTokens.labelFontStyle}: var(${autocompleteTokens.textFieldLabelFontStyle});\n ${textFieldTokens.labelFontSize}: var(${autocompleteTokens.textFieldLabelFontSize});\n ${textFieldTokens.labelFontWeight}: var(${autocompleteTokens.textFieldLabelFontWeight});\n ${textFieldTokens.labelLetterSpacing}: var(${autocompleteTokens.textFieldLabelLetterSpacing});\n ${textFieldTokens.labelLineHeight}: var(${autocompleteTokens.textFieldLabelLineHeight});\n ${textFieldTokens.labelInnerFontFamily}: var(${autocompleteTokens.textFieldLabelInnerFontFamily});\n ${textFieldTokens.labelInnerFontStyle}: var(${autocompleteTokens.textFieldLabelInnerFontStyle});\n ${textFieldTokens.labelInnerFontSize}: var(${autocompleteTokens.textFieldLabelInnerFontSize});\n ${textFieldTokens.labelInnerFontWeight}: var(${autocompleteTokens.textFieldLabelInnerFontWeight});\n ${textFieldTokens.labelInnerLetterSpacing}: var(${autocompleteTokens.textFieldLabelInnerLetterSpacing});\n ${textFieldTokens.labelInnerLineHeight}: var(${autocompleteTokens.textFieldLabelInnerLineHeight});\n ${textFieldTokens.labelInnerPadding}: var(${autocompleteTokens.textFieldLabelInnerPadding});\n ${textFieldTokens.contentLabelInnerPadding}: var(${autocompleteTokens.textFieldContentLabelInnerPadding});\n ${textFieldTokens.leftHelperColor}: var(${autocompleteTokens.textFieldLeftHelperColor});\n ${textFieldTokens.leftHelperColorReadOnly}: var(${autocompleteTokens.textFieldLeftHelperColorReadOnly});\n ${textFieldTokens.leftHelperOffset}: var(${autocompleteTokens.textFieldLeftHelperOffset});\n ${textFieldTokens.leftHelperFontFamily}: var(${autocompleteTokens.textFieldLeftHelperFontFamily});\n ${textFieldTokens.leftHelperFontStyle}: var(${autocompleteTokens.textFieldLeftHelperFontStyle});\n ${textFieldTokens.leftHelperFontSize}: var(${autocompleteTokens.textFieldLeftHelperFontSize});\n ${textFieldTokens.leftHelperFontWeight}: var(${autocompleteTokens.textFieldLeftHelperFontWeight});\n ${textFieldTokens.leftHelperLetterSpacing}: var(${autocompleteTokens.textFieldLeftHelperLetterSpacing});\n ${textFieldTokens.leftHelperLineHeight}: var(${autocompleteTokens.textFieldLeftHelperLineHeight});\n ${textFieldTokens.textBeforeColor}: var(${autocompleteTokens.textFieldTextBeforeColor});\n ${textFieldTokens.textAfterColor}: var(${autocompleteTokens.textFieldTextAfterColor});\n ${textFieldTokens.textBeforeMargin}: var(${autocompleteTokens.textFieldTextBeforeMargin});\n ${textFieldTokens.textAfterMargin}: var(${autocompleteTokens.textFieldTextAfterMargin});\n ${textFieldTokens.disabledOpacity}: var(${autocompleteTokens.textFieldDisabledOpacity});\n ${textFieldTokens.focusColor}: var(${autocompleteTokens.textFieldFocusColor});\n`;\n"],"names":["mergedConfig","mergeConfig","textFieldConfig","TextField","component","_exp","StyledTextField","styled","name","class","propsAsIs"],"mappings":";;;;;AAMA,IAAMA,YAAY,gBAAGC,WAAW,CAACC,eAAe,CAAC,CAAA;AACjD,IAAMC,SAAS,gBAAGC,SAAS,CAACJ,YAAY,CAAC,CAAA;AAAC,IAAAK,IAAA,GANxBA,SAMwBA,IAAAA,GAAA;AAAA,EAAA,OAEJF,SAAS,CAAA;AAAA,CAAA,CAAA;AAAxC,IAAMG,eAAe,gBAAGC,MAAM,CAAAF,IAAA,EAAA,CAAA,CAAA;AAAAG,EAAAA,IAAA,EAAA,iBAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,IAAA;AAAA,CA0DpC;;;;"}
|
@@ -0,0 +1 @@
|
|
1
|
+
.sxqyqmu{--plasma-textfield-color:var(--plasma-autocomplete-textfield-color);--plasma-textfield-bg-color:var(--plasma-autocomplete-textfield-background-color);--plasma-textfield-bg-color-hover:var(--plasma-autocomplete-textfield-background-color-hover);--plasma-textfield-bg-color-focus:var(--plasma-autocomplete-textfield-background-color-focus);--plasma-textfield-border-color:var(--plasma-autocomplete-textfield-border-color);--plasma-textfield-border-color-hover:var(--plasma-autocomplete-textfield-border-color-hover);--plasma-textfield-border-color-focus:var(--plasma-autocomplete-textfield-border-color-focus);--plasma-textfield-color-readonly:var(--plasma-autocomplete-textfield-color-readonly);--plasma-textfield-bg-color-readonly:var(--plasma-autocomplete-textfield-bg-color-readonly);--plasma-textfield-border-color-readonly:var(--plasma-autocomplete-textfield-border-color-readonly);--plasma-textfield__placeholder-color-readonly:var(--plasma-autocomplete-textfield__placeholder-color-readonly);--plasma-textfield__caret-color:var(--plasma-autocomplete-textfield-caret-color);--plasma-textfield__placeholder-color:var(--plasma-autocomplete-textfield-placeholder-color);--plasma-textfield-height:var(--plasma-autocomplete-textfield-height);--plasma-textfield-border-width:var(--plasma-autocomplete-textfield-border-width);--plasma-textfield-border-radius:var(--plasma-autocomplete-textfield-border-radius);--plasma-textfield-padding:var(--plasma-autocomplete-textfield-padding);--plasma-textfield__left-content-margin:var(--plasma-autocomplete-textfield__left-content-margin);--plasma-textfield__right-content-margin:var(--plasma-autocomplete-textfield__right-content-margin);--plasma-textfield-font-family:var(--plasma-autocomplete-textfield-font-family);--plasma-textfield-font-style:var(--plasma-autocomplete-textfield-font-style);--plasma-textfield-font-size:var(--plasma-autocomplete-textfield-font-size);--plasma-textfield-font-weight:var(--plasma-autocomplete-textfield-font-weight);--plasma-textfield-letter-spacing:var(--plasma-autocomplete-textfield-letter-spacing);--plasma-textfield-line-height:var(--plasma-autocomplete-textfield-line-height);--plasma-textfield__label-color:var(--plasma-autocomplete-textfield-label-color);--plasma-textfield__label-color-readonly:var(--plasma-autocomplete-textfield__label-color-readonly);--plasma-textfield__label-offset:var(--plasma-autocomplete-textfield__label-offset);--plasma-textfield__label-font-family:var(--plasma-autocomplete-textfield__label-font-family);--plasma-textfield__label-font-style:var(--plasma-autocomplete-textfield__label-font-style);--plasma-textfield__label-font-size:var(--plasma-autocomplete-textfield__label-font-size);--plasma-textfield__label-font-weight:var(--plasma-autocomplete-textfield__label-font-weight);--plasma-textfield__label-letter-spacing:var(--plasma-autocomplete-textfield__label-letter-spacing);--plasma-textfield__label-line-height:var(--plasma-autocomplete-textfield__label-line-height);--plasma-textfield-placement_inner__label-font-family:var(--plasma-autocomplete-textfield-placement_inner__label-font-family);--plasma-textfield-placement_inner__label-font-style:var(--plasma-autocomplete-textfield-placement_inner__label-font-style);--plasma-textfield-placement_inner__label-font-size:var(--plasma-autocomplete-textfield-placement_inner__label-font-size);--plasma-textfield-placement_inner__label-font-weight:var(--plasma-autocomplete-textfield-placement_inner__label-font-weight);--plasma-textfield-placement_inner__label-letter-spacing:var(--plasma-autocomplete-textfield-placement_inner__label-letter-spacing);--plasma-textfield-placement_inner__label-line-height:var(--plasma-autocomplete-textfield-placement_inner__label-line-height);--plasma-textfield-placement_inner__label-padding:var(--plasma-autocomplete-textfield-placement_inner__label-padding);--plasma-textfield-placement_inner__content-padding:var(--plasma-autocomplete-textfield-placement_inner__content-padding);--plasma-textfield__left-helper-color:var(--plasma-autocomplete-textfield__left-helper-color);--plasma-textfield__left-helper-color-readonly:var(--plasma-autocomplete-textfield__left-helper-color-readonly);--plasma-textfield__left-helper-offset:var(--plasma-autocomplete-textfield__left-helper-offset);--plasma-textfield__left-helper-font-family:var(--plasma-autocomplete-textfield__left-helper-font-family);--plasma-textfield__left-helper-font-style:var(--plasma-autocomplete-textfield__left-helper-font-style);--plasma-textfield__left-helper-font-size:var(--plasma-autocomplete-textfield__left-helper-font-size);--plasma-textfield__left-helper-font-weight:var(--plasma-autocomplete-textfield__left-helper-font-weight);--plasma-textfield__left-helper-letter-spacing:var(--plasma-autocomplete-textfield__left-helper-letter-spacing);--plasma-textfield__left-helper-line-height:var(--plasma-autocomplete-textfield__left-helper-line-height);--plasma-textfield__before-text-color:var(--plasma-autocomplete-textfield__before-text-color);--plasma-textfield__after-text-color:var(--plasma-autocomplete-textfield__after-text-color);--plasma-textfield__before-text-margin:var(--plasma-autocomplete-textfield__before-text-margin);--plasma-textfield__after-text-margin:var(--plasma-autocomplete-textfield__after-text-margin);--plasma-textfield-disabled-opacity:var(--plasma-autocomplete-textfield-disabled-opacity);--plasma-textfield-focus-color:var(--plasma-autocomplete-textfield-focus-color);}
|
@@ -0,0 +1,30 @@
|
|
1
|
+
.base_x95x4p_b1ty39ru__349bf40b{color:var(--plasma-button-color);background-color:var(--plasma-button-background-color);}.base_x95x4p_b1ty39ru__349bf40b: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_x95x4p_b1ty39ru__349bf40b: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);}
|
2
|
+
|
3
|
+
.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);}
|
4
|
+
|
5
|
+
.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);}
|
6
|
+
|
7
|
+
.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);}
|
8
|
+
|
9
|
+
.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;}
|
10
|
+
|
11
|
+
.base_1gusher_b1chvyq8__76b641f5{color:var(--plasma-spinner-color);}
|
12
|
+
|
13
|
+
.base_ova69f_bw56nfh__55225c7f{width:var(--plasma-spinner-size);height:var(--plasma-spinner-size);}
|
14
|
+
|
15
|
+
.Spinner_styles_13q7ndk_b1hp2dsz__af962114{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;box-sizing:border-box;}
|
16
|
+
.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);}}
|
17
|
+
|
18
|
+
.Button_styles_1oz1dew_bzw1898__a16b28b2{min-width:4ch;-webkit-flex-shrink:2;-ms-flex-negative:2;flex-shrink:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.Button_styles_1oz1dew_bzw1898__a16b28b2.Button_styles_1oz1dew_buttonContentRelaxed__a16b28b2{text-align:start;-webkit-box-flex:2;-webkit-flex-grow:2;-ms-flex-positive:2;flex-grow:2;}
|
19
|
+
.Button_styles_1oz1dew_bdfuqwe__a16b28b2{color:var(--plasma-button-value-color);margin:var(--plasma-button-value-margin);min-width:4ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
|
20
|
+
.Button_styles_1oz1dew_l9ypozh__a16b28b2{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%;}
|
21
|
+
.Button_styles_1oz1dew_l4dfhbg__a16b28b2{position:absolute;}
|
22
|
+
.Button_styles_1oz1dew_srdlazt__a16b28b2{--plasma-spinner-size:var(--plasma-button-spinner-size);--plasma-spinner-color:var(--plasma-button-spinner-color);}
|
23
|
+
.Button_styles_1oz1dew_s7rggv0__a16b28b2{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:var(--plasma-button-left-content-margin);}
|
24
|
+
.Button_styles_1oz1dew_s1rjh7ra__a16b28b2{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:var(--plasma-button-right-content-margin);}
|
25
|
+
.Button_styles_1oz1dew_b9ga1dj__a16b28b2{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_1oz1dew_b9ga1dj__a16b28b2{-webkit-text-decoration:none;text-decoration:none;}.Button_styles_1oz1dew_b9ga1dj__a16b28b2.Button_styles_1oz1dew_b9ga1dj__a16b28b2.Button_styles_1oz1dew_buttonSquare__a16b28b2{width:var(--plasma-button-height);padding:0;}
|
26
|
+
|
27
|
+
.EmptyState_styles_1o24i5h_spbib9h__0d5131e5{--plasma-button-color:var(--text-primary);--plasma-button-color-active:var(--text-primary-active);--plasma-button-color-hover:var(--text-primary-hover);--plasma-button-background-color:none;--plasma-button-padding:0;--plasma-button-height:var(--plasma-emptystate-button-height);--plasma-button-radius:0;--plasma-button-font-family:var(--plasma-emptystate-font-family);--plasma-button-font-size:var(--plasma-emptystate-font-size);--plasma-button-font-style:var(--plasma-emptystate-font-style);--plasma-button-font-weight:600;--plasma-button-letter-spacing:var(--plasma-emptystate-font-letter-spacing);--plasma-button-line-height:var(--plasma-emptystate-font-line-height);margin:var(--plasma-emptystate-button-margin);}
|
28
|
+
.EmptyState_styles_1o24i5h_w1g2xar0__0d5131e5{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:var(--surface-solid-card);box-shadow:0 4px 14px -4px rgba(8,8,8,0.08),0 1px 4px -1px rgba(0,0,0,0.04);border-radius:var(--plasma-emptystate-border-radius);padding:var(--plasma-emptystate-padding);text-align:center;}
|
29
|
+
.EmptyState_styles_1o24i5h_i21aoej__0d5131e5{margin:var(--plasma-emptystate-icon-margin);line-height:0;}
|
30
|
+
.EmptyState_styles_1o24i5h_d1brs29u__0d5131e5{margin:var(--plasma-emptystate-description-margin);font-family:var(--plasma-emptystate-font-family);font-size:var(--plasma-emptystate-font-size);font-style:var(--plasma-emptystate-font-style);font-weight:var(--plasma-emptystate-font-weight);-webkit-letter-spacing:var(--plasma-emptystate-font-letter-spacing);-moz-letter-spacing:var(--plasma-emptystate-font-letter-spacing);-ms-letter-spacing:var(--plasma-emptystate-font-letter-spacing);letter-spacing:var(--plasma-emptystate-font-letter-spacing);line-height:var(--plasma-emptystate-font-line-height);}
|
@@ -0,0 +1,34 @@
|
|
1
|
+
import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
2
|
+
import React, { forwardRef } from 'react';
|
3
|
+
import { Wrapper, IconWrapper, Description, StyledButton } from './EmptyState.styles.js';
|
4
|
+
|
5
|
+
/**
|
6
|
+
* Компонент для альтернативного показа содержимого выпадающего списка.
|
7
|
+
*/
|
8
|
+
var emptyStateRoot = function emptyStateRoot(Root) {
|
9
|
+
return /*#__PURE__*/forwardRef(function (props, ref) {
|
10
|
+
var icon = props.icon,
|
11
|
+
description = props.description,
|
12
|
+
buttonText = props.buttonText,
|
13
|
+
buttonAction = props.buttonAction;
|
14
|
+
return /*#__PURE__*/React.createElement(Root, _extends({}, props, {
|
15
|
+
ref: ref
|
16
|
+
}), /*#__PURE__*/React.createElement(Wrapper, null, icon && /*#__PURE__*/React.createElement(IconWrapper, null, icon), /*#__PURE__*/React.createElement(Description, null, description), buttonText && /*#__PURE__*/React.createElement(StyledButton, {
|
17
|
+
stretching: "filled",
|
18
|
+
onClick: buttonAction
|
19
|
+
}, buttonText)));
|
20
|
+
});
|
21
|
+
};
|
22
|
+
var emptyStateConfig = {
|
23
|
+
name: 'EmptyState',
|
24
|
+
tag: 'div',
|
25
|
+
layout: emptyStateRoot,
|
26
|
+
base: '',
|
27
|
+
defaults: {
|
28
|
+
size: 'l'
|
29
|
+
},
|
30
|
+
variations: {}
|
31
|
+
};
|
32
|
+
|
33
|
+
export { emptyStateConfig, emptyStateRoot };
|
34
|
+
//# sourceMappingURL=EmptyState.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"EmptyState.js","sources":["../../../src/components/EmptyState/EmptyState.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport { RootProps } from '../../engines';\n\nimport { Props } from './EmptyState.types';\nimport { Wrapper, StyledButton, IconWrapper, Description } from './EmptyState.styles';\n\n/**\n * Компонент для альтернативного показа содержимого выпадающего списка.\n */\nexport const emptyStateRoot = (Root: RootProps<HTMLDivElement, Props>) =>\n forwardRef<HTMLDivElement, Props>((props, ref) => {\n const { icon, description, buttonText, buttonAction } = props;\n\n return (\n <Root {...props} ref={ref}>\n <Wrapper>\n {icon && <IconWrapper>{icon}</IconWrapper>}\n\n <Description>{description}</Description>\n\n {buttonText && (\n <StyledButton stretching=\"filled\" onClick={buttonAction}>\n {buttonText}\n </StyledButton>\n )}\n </Wrapper>\n </Root>\n );\n });\n\nexport const emptyStateConfig = {\n name: 'EmptyState',\n tag: 'div',\n layout: emptyStateRoot,\n base: '',\n defaults: {\n size: 'l',\n },\n variations: {},\n};\n"],"names":["emptyStateRoot","Root","forwardRef","props","ref","icon","description","buttonText","buttonAction","React","createElement","_extends","Wrapper","IconWrapper","Description","StyledButton","stretching","onClick","emptyStateConfig","name","tag","layout","base","defaults","size","variations"],"mappings":";;;;AAOA;AACA;AACA;IACaA,cAAc,GAAG,SAAjBA,cAAcA,CAAIC,IAAsC,EAAA;AAAA,EAAA,oBACjEC,UAAU,CAAwB,UAACC,KAAK,EAAEC,GAAG,EAAK;AAC9C,IAAA,IAAQC,IAAI,GAA4CF,KAAK,CAArDE,IAAI;MAAEC,WAAW,GAA+BH,KAAK,CAA/CG,WAAW;MAAEC,UAAU,GAAmBJ,KAAK,CAAlCI,UAAU;MAAEC,YAAY,GAAKL,KAAK,CAAtBK,YAAY,CAAA;IAEnD,oBACIC,KAAA,CAAAC,aAAA,CAACT,IAAI,EAAAU,QAAA,KAAKR,KAAK,EAAA;AAAEC,MAAAA,GAAG,EAAEA,GAAAA;AAAI,KAAA,CAAA,eACtBK,KAAA,CAAAC,aAAA,CAACE,OAAO,EACHP,IAAAA,EAAAA,IAAI,iBAAII,KAAA,CAAAC,aAAA,CAACG,WAAW,QAAER,IAAkB,CAAC,eAE1CI,KAAA,CAAAC,aAAA,CAACI,WAAW,QAAER,WAAyB,CAAC,EAEvCC,UAAU,iBACPE,KAAA,CAAAC,aAAA,CAACK,YAAY,EAAA;AAACC,MAAAA,UAAU,EAAC,QAAQ;AAACC,MAAAA,OAAO,EAAET,YAAAA;KACtCD,EAAAA,UACS,CAEb,CACP,CAAC,CAAA;AAEf,GAAC,CAAC,CAAA;AAAA,EAAA;AAEC,IAAMW,gBAAgB,GAAG;AAC5BC,EAAAA,IAAI,EAAE,YAAY;AAClBC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAErB,cAAc;AACtBsB,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,QAAQ,EAAE;AACNC,IAAAA,IAAI,EAAE,GAAA;GACT;AACDC,EAAAA,UAAU,EAAE,EAAC;AACjB;;;;"}
|
@@ -0,0 +1,34 @@
|
|
1
|
+
import './EmptyState.styles_1o24i5h.css';
|
2
|
+
import { styled } from '@linaria/react';
|
3
|
+
import { buttonConfig } from '../Button/Button.js';
|
4
|
+
import '@linaria/core';
|
5
|
+
import { component, mergeConfig } from '../../engines/common.js';
|
6
|
+
|
7
|
+
var mergedButtonConfig = /*#__PURE__*/mergeConfig(buttonConfig);
|
8
|
+
var Button = /*#__PURE__*/component(mergedButtonConfig);
|
9
|
+
var _exp = function _exp() {
|
10
|
+
return Button;
|
11
|
+
};
|
12
|
+
var StyledButton = /*#__PURE__*/styled(_exp())({
|
13
|
+
name: "StyledButton",
|
14
|
+
"class": "spbib9h",
|
15
|
+
propsAsIs: true
|
16
|
+
});
|
17
|
+
var Wrapper = /*#__PURE__*/styled('div')({
|
18
|
+
name: "Wrapper",
|
19
|
+
"class": "w1g2xar0",
|
20
|
+
propsAsIs: false
|
21
|
+
});
|
22
|
+
var IconWrapper = /*#__PURE__*/styled('div')({
|
23
|
+
name: "IconWrapper",
|
24
|
+
"class": "i21aoej",
|
25
|
+
propsAsIs: false
|
26
|
+
});
|
27
|
+
var Description = /*#__PURE__*/styled('div')({
|
28
|
+
name: "Description",
|
29
|
+
"class": "d1brs29u",
|
30
|
+
propsAsIs: false
|
31
|
+
});
|
32
|
+
|
33
|
+
export { Description, IconWrapper, StyledButton, Wrapper };
|
34
|
+
//# sourceMappingURL=EmptyState.styles.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"EmptyState.styles.js","sources":["../../../src/components/EmptyState/EmptyState.styles.ts"],"sourcesContent":["import { styled } from '@linaria/react';\n\nimport { buttonConfig, buttonTokens } from '../Button';\nimport { component, mergeConfig } from '../../engines';\n\nimport { tokens } from './EmptyState.tokens';\n\nconst mergedButtonConfig = mergeConfig(buttonConfig);\nconst Button = component(mergedButtonConfig);\n\nexport const StyledButton = styled(Button)`\n ${buttonTokens.buttonColor}: var(--text-primary);\n ${buttonTokens.buttonColorActive}: var(--text-primary-active);\n ${buttonTokens.buttonColorHover}: var(--text-primary-hover);\n ${buttonTokens.buttonBackgroundColor}: none;\n ${buttonTokens.buttonPadding}: 0;\n ${buttonTokens.buttonHeight}: var(${tokens.buttonHeight});\n ${buttonTokens.buttonRadius}: 0;\n ${buttonTokens.buttonFontFamily}: var(${tokens.fontFamily});\n ${buttonTokens.buttonFontSize}: var(${tokens.fontSize});\n ${buttonTokens.buttonFontStyle}: var(${tokens.fontStyle});\n ${buttonTokens.buttonFontWeight}: 600;\n ${buttonTokens.buttonLetterSpacing}: var(${tokens.fontLetterSpacing});\n ${buttonTokens.buttonLineHeight}: var(${tokens.fontLineHeight});\n margin: var(${tokens.buttonMargin});\n`;\n\nexport const Wrapper = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n background: var(--surface-solid-card);\n box-shadow: 0 4px 14px -4px rgba(8, 8, 8, 0.08), 0 1px 4px -1px rgba(0, 0, 0, 0.04);\n border-radius: var(${tokens.borderRadius});\n padding: var(${tokens.padding});\n text-align: center;\n`;\n\nexport const IconWrapper = styled.div`\n margin: var(${tokens.iconMargin});\n line-height: 0;\n`;\n\nexport const Description = styled.div`\n margin: var(${tokens.descriptionMargin});\n font-family: var(${tokens.fontFamily});\n font-size: var(${tokens.fontSize});\n font-style: var(${tokens.fontStyle});\n font-weight: var(${tokens.fontWeight});\n letter-spacing: var(${tokens.fontLetterSpacing});\n line-height: var(${tokens.fontLineHeight});\n`;\n"],"names":["mergedButtonConfig","mergeConfig","buttonConfig","Button","component","_exp","StyledButton","styled","name","class","propsAsIs","Wrapper","IconWrapper","Description"],"mappings":";;;;;AAOA,IAAMA,kBAAkB,gBAAGC,WAAW,CAACC,YAAY,CAAC,CAAA;AACpD,IAAMC,MAAM,gBAAGC,SAAS,CAACJ,kBAAkB,CAAC,CAAA;AAAC,IAAAK,IAAA,GAP3BA,SAO2BA,IAAAA,GAAA;AAAA,EAAA,OAEVF,MAAM,CAAA;AAAA,CAAA,CAAA;AAAlC,IAAMG,YAAY,gBAAGC,MAAM,CAAAF,IAAA,EAAA,CAAA,CAAA;AAAAG,EAAAA,IAAA,EAAA,cAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,IAAA;AAAA,CAejC,EAAA;AAEM,IAAMC,OAAO,gBAAGJ,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,SAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAS5B,EAAA;AAEM,IAAME,WAAW,gBAAGL,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAGhC,EAAA;AAEM,IAAMG,WAAW,gBAAGN,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAQhC;;;;"}
|
@@ -0,0 +1,4 @@
|
|
1
|
+
.spbib9h{--plasma-button-color:var(--text-primary);--plasma-button-color-active:var(--text-primary-active);--plasma-button-color-hover:var(--text-primary-hover);--plasma-button-background-color:none;--plasma-button-padding:0;--plasma-button-height:var(--plasma-emptystate-button-height);--plasma-button-radius:0;--plasma-button-font-family:var(--plasma-emptystate-font-family);--plasma-button-font-size:var(--plasma-emptystate-font-size);--plasma-button-font-style:var(--plasma-emptystate-font-style);--plasma-button-font-weight:600;--plasma-button-letter-spacing:var(--plasma-emptystate-font-letter-spacing);--plasma-button-line-height:var(--plasma-emptystate-font-line-height);margin:var(--plasma-emptystate-button-margin);}
|
2
|
+
.w1g2xar0{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:var(--surface-solid-card);box-shadow:0 4px 14px -4px rgba(8,8,8,0.08),0 1px 4px -1px rgba(0,0,0,0.04);border-radius:var(--plasma-emptystate-border-radius);padding:var(--plasma-emptystate-padding);text-align:center;}
|
3
|
+
.i21aoej{margin:var(--plasma-emptystate-icon-margin);line-height:0;}
|
4
|
+
.d1brs29u{margin:var(--plasma-emptystate-description-margin);font-family:var(--plasma-emptystate-font-family);font-size:var(--plasma-emptystate-font-size);font-style:var(--plasma-emptystate-font-style);font-weight:var(--plasma-emptystate-font-weight);-webkit-letter-spacing:var(--plasma-emptystate-font-letter-spacing);-moz-letter-spacing:var(--plasma-emptystate-font-letter-spacing);-ms-letter-spacing:var(--plasma-emptystate-font-letter-spacing);letter-spacing:var(--plasma-emptystate-font-letter-spacing);line-height:var(--plasma-emptystate-font-line-height);}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
var tokens = {
|
2
|
+
borderRadius: '--plasma-emptystate-border-radius',
|
3
|
+
padding: '--plasma-emptystate-padding',
|
4
|
+
iconMargin: '--plasma-emptystate-icon-margin',
|
5
|
+
descriptionMargin: '--plasma-emptystate-description-margin',
|
6
|
+
buttonMargin: '--plasma-emptystate-button-margin',
|
7
|
+
buttonHeight: '--plasma-emptystate-button-height',
|
8
|
+
fontFamily: '--plasma-emptystate-font-family',
|
9
|
+
fontSize: '--plasma-emptystate-font-size',
|
10
|
+
fontStyle: '--plasma-emptystate-font-style',
|
11
|
+
fontWeight: '--plasma-emptystate-font-weight',
|
12
|
+
fontLetterSpacing: '--plasma-emptystate-font-letter-spacing',
|
13
|
+
fontLineHeight: '--plasma-emptystate-font-line-height'
|
14
|
+
};
|
15
|
+
|
16
|
+
export { tokens };
|
17
|
+
//# sourceMappingURL=EmptyState.tokens.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"EmptyState.tokens.js","sources":["../../../src/components/EmptyState/EmptyState.tokens.ts"],"sourcesContent":["export const tokens = {\n borderRadius: '--plasma-emptystate-border-radius',\n padding: '--plasma-emptystate-padding',\n iconMargin: '--plasma-emptystate-icon-margin',\n descriptionMargin: '--plasma-emptystate-description-margin',\n buttonMargin: '--plasma-emptystate-button-margin',\n buttonHeight: '--plasma-emptystate-button-height',\n fontFamily: '--plasma-emptystate-font-family',\n fontSize: '--plasma-emptystate-font-size',\n fontStyle: '--plasma-emptystate-font-style',\n fontWeight: '--plasma-emptystate-font-weight',\n fontLetterSpacing: '--plasma-emptystate-font-letter-spacing',\n fontLineHeight: '--plasma-emptystate-font-line-height',\n};\n"],"names":["tokens","borderRadius","padding","iconMargin","descriptionMargin","buttonMargin","buttonHeight","fontFamily","fontSize","fontStyle","fontWeight","fontLetterSpacing","fontLineHeight"],"mappings":"AAAO,IAAMA,MAAM,GAAG;AAClBC,EAAAA,YAAY,EAAE,mCAAmC;AACjDC,EAAAA,OAAO,EAAE,6BAA6B;AACtCC,EAAAA,UAAU,EAAE,iCAAiC;AAC7CC,EAAAA,iBAAiB,EAAE,wCAAwC;AAC3DC,EAAAA,YAAY,EAAE,mCAAmC;AACjDC,EAAAA,YAAY,EAAE,mCAAmC;AACjDC,EAAAA,UAAU,EAAE,iCAAiC;AAC7CC,EAAAA,QAAQ,EAAE,+BAA+B;AACzCC,EAAAA,SAAS,EAAE,gCAAgC;AAC3CC,EAAAA,UAAU,EAAE,iCAAiC;AAC7CC,EAAAA,iBAAiB,EAAE,yCAAyC;AAC5DC,EAAAA,cAAc,EAAE,sCAAA;AACpB;;;;"}
|
@@ -176,7 +176,7 @@ var textFieldRoot = function textFieldRoot(Root) {
|
|
176
176
|
},
|
177
177
|
onClick: onChipClick
|
178
178
|
});
|
179
|
-
})), /*#__PURE__*/React.createElement(Input, _extends({
|
179
|
+
})), /*#__PURE__*/React.createElement(Input, _extends({
|
180
180
|
ref: inputForkRef,
|
181
181
|
id: innerId,
|
182
182
|
"aria-labelledby": labelId,
|
@@ -186,7 +186,7 @@ var textFieldRoot = function textFieldRoot(Root) {
|
|
186
186
|
readOnly: !disabled && readOnly,
|
187
187
|
onChange: handleChange,
|
188
188
|
onKeyDown: handleOnKeyDown
|
189
|
-
})), labelInside && /*#__PURE__*/React.createElement(Label, {
|
189
|
+
}, rest)), labelInside && /*#__PURE__*/React.createElement(Label, {
|
190
190
|
id: labelId,
|
191
191
|
htmlFor: innerId
|
192
192
|
}, innerLabelValue), textAfter && /*#__PURE__*/React.createElement(StyledTextAfter, null, textAfter)), contentRight && /*#__PURE__*/React.createElement(StyledContentRight, null, contentRight)), leftHelper && /*#__PURE__*/React.createElement(LeftHelper, {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"TextField.js","sources":["../../../src/components/TextField/TextField.tsx"],"sourcesContent":["import React, { forwardRef, useEffect, useRef, useState } from 'react';\nimport type { ChangeEventHandler, KeyboardEvent, ChangeEvent } from 'react';\nimport { safeUseId, useForkRef } from '@salutejs/plasma-core';\nimport { css } from '@linaria/core';\n\nimport type { RootProps } from '../../engines';\nimport { cx } from '../../utils';\n\nimport type { ChipValues, TextFieldPrimitiveValue, TextFieldProps } from './TextField.types';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as readOnlyCSS } from './variations/_read-only/base';\nimport { base as labelPlacementCSS } from './variations/_label-placement/base';\nimport {\n Input,\n LeftHelper,\n Label,\n InputWrapper,\n InputLabelWrapper,\n StyledContentLeft,\n StyledContentRight,\n StyledChips,\n StyledTextBefore,\n StyledTextAfter,\n} from './TextField.styles';\nimport { classes } from './TextField.tokens';\nimport { TextFieldChip } from './ui';\nimport { useKeyNavigation } from './hooks';\n\nexport const base = css`\n /* NOTE: Webkit не применяет opacity к inline тегам */\n display: block;\n overflow: hidden;\n`;\n\nexport const textFieldRoot = (Root: RootProps<HTMLDivElement, TextFieldProps>) =>\n forwardRef<HTMLInputElement, TextFieldProps>(\n (\n {\n id,\n className,\n style,\n\n // layout\n contentLeft,\n contentRight,\n label,\n labelPlacement,\n textBefore,\n textAfter,\n placeholder,\n leftHelper,\n enumerationType = 'plain',\n\n // variations\n view,\n size,\n readOnly = false,\n disabled = false,\n\n // controlled\n chips: values,\n\n // events\n onChange,\n onChangeChips,\n onSearch,\n onKeyDown,\n\n ...rest\n },\n ref,\n ) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n const inputForkRef = useForkRef(inputRef, ref);\n const chipsRefs = useRef<Array<HTMLButtonElement>>([]);\n\n const controlledRefs = { contentRef, inputRef, chipsRefs };\n\n const [chips, setChips] = useState<Array<ChipValues>>([]);\n\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n const labelId = safeUseId();\n const helperTextId = safeUseId();\n\n const isChipEnumeration = enumerationType === 'chip';\n const hideLabel = (size === 'xs' || isChipEnumeration) && labelPlacement === 'inner';\n const labelInside = size !== 'xs' && labelPlacement === 'inner';\n const innerLabelPlacementValue = hideLabel ? 'outer' : labelPlacement;\n const innerPlaceholderValue = hideLabel ? label : placeholder;\n const innerLabelValue = hideLabel ? undefined : label;\n const hideLabelClass = hideLabel && label ? classes.hideLabel : undefined;\n const labelPlacementClass = classes[`${labelPlacement}LabelPlacement` as keyof typeof classes];\n\n const isChipsVisible = isChipEnumeration && chips?.length;\n const withHasChips = isChipsVisible ? classes.hasChips : undefined;\n const wrapperWithoutLeftContent = !contentLeft && isChipsVisible ? classes.hasEmptyContentLeft : undefined;\n const wrapperWithoutRightContent =\n !contentRight && isChipsVisible ? classes.hasEmptyContentRight : undefined;\n\n const handleChange: ChangeEventHandler<HTMLInputElement> = (event) => {\n if (disabled || readOnly) {\n return;\n }\n\n const { maxLength, value } = event.target;\n\n if (maxLength !== -1 && value.length > maxLength) {\n return;\n }\n\n onChange?.(event);\n };\n\n const updateChips = (newChips: Array<ChipValues>, newValues: Array<TextFieldPrimitiveValue>) => {\n setChips(newChips);\n onChangeChips?.(newValues);\n };\n\n const { handleInputKeydown, handleChipKeyDown, onChipClear, handleContentKeyDown } = useKeyNavigation({\n controlledRefs,\n disabled,\n readOnly,\n chips,\n enumerationType,\n updateChips,\n onSearch,\n onChange,\n });\n\n const onChipClick = (event: React.MouseEvent<HTMLButtonElement>) => event.stopPropagation();\n\n const handleInputFocus = () => {\n if (readOnly || disabled || !inputRef?.current) {\n return;\n }\n\n inputRef.current.scrollTo({\n top: 0,\n left: inputRef.current.offsetLeft,\n behavior: 'smooth',\n });\n\n inputRef.current.focus();\n };\n\n const getRef = (element: HTMLButtonElement | null, index: number) => {\n if (element && chipsRefs?.current) {\n chipsRefs.current[index] = element;\n }\n };\n\n const handleOnKeyDown = (event: ChangeEvent<HTMLInputElement> & KeyboardEvent<HTMLInputElement>) => {\n handleInputKeydown(event);\n onKeyDown && onKeyDown(event);\n };\n\n useEffect(() => {\n if (!isChipEnumeration && !values?.length) {\n return;\n }\n\n const newChips =\n values?.map((value, index) => ({\n id: `${index}_${value}`,\n text: value,\n })) || [];\n\n setChips(newChips);\n }, [isChipEnumeration, values]);\n\n return (\n <Root\n view={view}\n size={size}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n labelPlacement={innerLabelPlacementValue}\n onClick={handleInputFocus}\n className={cx(labelPlacementClass, hideLabelClass, className)}\n style={style}\n >\n {labelInside ||\n (innerLabelValue && (\n <Label id={labelId} htmlFor={id}>\n {innerLabelValue}\n </Label>\n ))}\n <InputWrapper className={cx(withHasChips, wrapperWithoutLeftContent, wrapperWithoutRightContent)}>\n {contentLeft && <StyledContentLeft>{contentLeft}</StyledContentLeft>}\n <InputLabelWrapper\n tabIndex={-1}\n ref={contentRef}\n onKeyDown={handleContentKeyDown}\n className={withHasChips}\n >\n {textBefore && <StyledTextBefore>{textBefore}</StyledTextBefore>}\n {isChipEnumeration && Boolean(chips?.length) && (\n <StyledChips>\n {chips?.map(({ id: chipId, text }, index) => {\n return (\n <TextFieldChip\n id={chipId}\n ref={(element) => getRef(element, index)}\n key={`${chipId}_${index}`}\n disabled={disabled}\n readOnly={readOnly}\n value={text}\n text={text}\n onKeyDown={(event) => handleChipKeyDown(event, chipId, index)}\n onClear={() => onChipClear(chipId, index)}\n onClick={onChipClick}\n />\n );\n })}\n </StyledChips>\n )}\n <Input\n {...rest}\n ref={inputForkRef}\n id={innerId}\n aria-labelledby={labelId}\n aria-describedby={helperTextId}\n placeholder={innerPlaceholderValue}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n onChange={handleChange}\n onKeyDown={handleOnKeyDown}\n />\n {labelInside && (\n <Label id={labelId} htmlFor={innerId}>\n {innerLabelValue}\n </Label>\n )}\n {textAfter && <StyledTextAfter>{textAfter}</StyledTextAfter>}\n </InputLabelWrapper>\n {contentRight && <StyledContentRight>{contentRight}</StyledContentRight>}\n </InputWrapper>\n {leftHelper && <LeftHelper id={helperTextId}>{leftHelper}</LeftHelper>}\n </Root>\n );\n },\n );\n\nexport const textFieldConfig = {\n name: 'TextField',\n tag: 'div',\n layout: textFieldRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n css: readOnlyCSS,\n attrs: true,\n },\n labelPlacement: {\n css: labelPlacementCSS,\n },\n },\n defaults: {\n size: 'm',\n view: 'default',\n },\n};\n"],"names":["base","textFieldRoot","Root","forwardRef","_ref","ref","id","className","style","contentLeft","contentRight","label","labelPlacement","textBefore","textAfter","placeholder","leftHelper","_ref$enumerationType","enumerationType","view","size","_ref$readOnly","readOnly","_ref$disabled","disabled","values","chips","onChange","onChangeChips","onSearch","onKeyDown","rest","contentRef","useRef","inputRef","inputForkRef","useForkRef","chipsRefs","controlledRefs","_useState","useState","_useState2","_slicedToArray","setChips","uniqId","safeUseId","innerId","labelId","helperTextId","isChipEnumeration","hideLabel","labelInside","innerLabelPlacementValue","innerPlaceholderValue","innerLabelValue","undefined","hideLabelClass","classes","labelPlacementClass","concat","isChipsVisible","length","withHasChips","hasChips","wrapperWithoutLeftContent","hasEmptyContentLeft","wrapperWithoutRightContent","hasEmptyContentRight","handleChange","event","_event$target","target","maxLength","value","updateChips","newChips","newValues","_useKeyNavigation","useKeyNavigation","handleInputKeydown","handleChipKeyDown","onChipClear","handleContentKeyDown","onChipClick","stopPropagation","handleInputFocus","current","scrollTo","top","left","offsetLeft","behavior","focus","getRef","element","index","handleOnKeyDown","useEffect","map","text","React","createElement","onClick","cx","Label","htmlFor","InputWrapper","StyledContentLeft","InputLabelWrapper","tabIndex","StyledTextBefore","Boolean","StyledChips","_ref2","chipId","TextFieldChip","key","onClear","Input","_extends","StyledTextAfter","StyledContentRight","LeftHelper","textFieldConfig","name","tag","layout","variations","css","viewCSS","sizeCSS","disabledCSS","attrs","readOnlyCSS","labelPlacementCSS","defaults"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"TextField.js","sources":["../../../src/components/TextField/TextField.tsx"],"sourcesContent":["import React, { forwardRef, useEffect, useRef, useState } from 'react';\nimport type { ChangeEventHandler, KeyboardEvent, ChangeEvent } from 'react';\nimport { safeUseId, useForkRef } from '@salutejs/plasma-core';\nimport { css } from '@linaria/core';\n\nimport type { RootProps } from '../../engines';\nimport { cx } from '../../utils';\n\nimport type { ChipValues, TextFieldPrimitiveValue, TextFieldProps } from './TextField.types';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as readOnlyCSS } from './variations/_read-only/base';\nimport { base as labelPlacementCSS } from './variations/_label-placement/base';\nimport {\n Input,\n LeftHelper,\n Label,\n InputWrapper,\n InputLabelWrapper,\n StyledContentLeft,\n StyledContentRight,\n StyledChips,\n StyledTextBefore,\n StyledTextAfter,\n} from './TextField.styles';\nimport { classes } from './TextField.tokens';\nimport { TextFieldChip } from './ui';\nimport { useKeyNavigation } from './hooks';\n\nexport const base = css`\n /* NOTE: Webkit не применяет opacity к inline тегам */\n display: block;\n overflow: hidden;\n`;\n\nexport const textFieldRoot = (Root: RootProps<HTMLDivElement, TextFieldProps>) =>\n forwardRef<HTMLInputElement, TextFieldProps>(\n (\n {\n id,\n className,\n style,\n\n // layout\n contentLeft,\n contentRight,\n label,\n labelPlacement,\n textBefore,\n textAfter,\n placeholder,\n leftHelper,\n enumerationType = 'plain',\n\n // variations\n view,\n size,\n readOnly = false,\n disabled = false,\n\n // controlled\n chips: values,\n\n // events\n onChange,\n onChangeChips,\n onSearch,\n onKeyDown,\n\n ...rest\n },\n ref,\n ) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n const inputForkRef = useForkRef(inputRef, ref);\n const chipsRefs = useRef<Array<HTMLButtonElement>>([]);\n\n const controlledRefs = { contentRef, inputRef, chipsRefs };\n\n const [chips, setChips] = useState<Array<ChipValues>>([]);\n\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n const labelId = safeUseId();\n const helperTextId = safeUseId();\n\n const isChipEnumeration = enumerationType === 'chip';\n const hideLabel = (size === 'xs' || isChipEnumeration) && labelPlacement === 'inner';\n const labelInside = size !== 'xs' && labelPlacement === 'inner';\n const innerLabelPlacementValue = hideLabel ? 'outer' : labelPlacement;\n const innerPlaceholderValue = hideLabel ? label : placeholder;\n const innerLabelValue = hideLabel ? undefined : label;\n const hideLabelClass = hideLabel && label ? classes.hideLabel : undefined;\n const labelPlacementClass = classes[`${labelPlacement}LabelPlacement` as keyof typeof classes];\n\n const isChipsVisible = isChipEnumeration && chips?.length;\n const withHasChips = isChipsVisible ? classes.hasChips : undefined;\n const wrapperWithoutLeftContent = !contentLeft && isChipsVisible ? classes.hasEmptyContentLeft : undefined;\n const wrapperWithoutRightContent =\n !contentRight && isChipsVisible ? classes.hasEmptyContentRight : undefined;\n\n const handleChange: ChangeEventHandler<HTMLInputElement> = (event) => {\n if (disabled || readOnly) {\n return;\n }\n\n const { maxLength, value } = event.target;\n\n if (maxLength !== -1 && value.length > maxLength) {\n return;\n }\n\n onChange?.(event);\n };\n\n const updateChips = (newChips: Array<ChipValues>, newValues: Array<TextFieldPrimitiveValue>) => {\n setChips(newChips);\n onChangeChips?.(newValues);\n };\n\n const { handleInputKeydown, handleChipKeyDown, onChipClear, handleContentKeyDown } = useKeyNavigation({\n controlledRefs,\n disabled,\n readOnly,\n chips,\n enumerationType,\n updateChips,\n onSearch,\n onChange,\n });\n\n const onChipClick = (event: React.MouseEvent<HTMLButtonElement>) => event.stopPropagation();\n\n const handleInputFocus = () => {\n if (readOnly || disabled || !inputRef?.current) {\n return;\n }\n\n inputRef.current.scrollTo({\n top: 0,\n left: inputRef.current.offsetLeft,\n behavior: 'smooth',\n });\n\n inputRef.current.focus();\n };\n\n const getRef = (element: HTMLButtonElement | null, index: number) => {\n if (element && chipsRefs?.current) {\n chipsRefs.current[index] = element;\n }\n };\n\n const handleOnKeyDown = (event: ChangeEvent<HTMLInputElement> & KeyboardEvent<HTMLInputElement>) => {\n handleInputKeydown(event);\n onKeyDown && onKeyDown(event);\n };\n\n useEffect(() => {\n if (!isChipEnumeration && !values?.length) {\n return;\n }\n\n const newChips =\n values?.map((value, index) => ({\n id: `${index}_${value}`,\n text: value,\n })) || [];\n\n setChips(newChips);\n }, [isChipEnumeration, values]);\n\n return (\n <Root\n view={view}\n size={size}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n labelPlacement={innerLabelPlacementValue}\n onClick={handleInputFocus}\n className={cx(labelPlacementClass, hideLabelClass, className)}\n style={style}\n >\n {labelInside ||\n (innerLabelValue && (\n <Label id={labelId} htmlFor={id}>\n {innerLabelValue}\n </Label>\n ))}\n <InputWrapper className={cx(withHasChips, wrapperWithoutLeftContent, wrapperWithoutRightContent)}>\n {contentLeft && <StyledContentLeft>{contentLeft}</StyledContentLeft>}\n <InputLabelWrapper\n tabIndex={-1}\n ref={contentRef}\n onKeyDown={handleContentKeyDown}\n className={withHasChips}\n >\n {textBefore && <StyledTextBefore>{textBefore}</StyledTextBefore>}\n {isChipEnumeration && Boolean(chips?.length) && (\n <StyledChips>\n {chips?.map(({ id: chipId, text }, index) => {\n return (\n <TextFieldChip\n id={chipId}\n ref={(element) => getRef(element, index)}\n key={`${chipId}_${index}`}\n disabled={disabled}\n readOnly={readOnly}\n value={text}\n text={text}\n onKeyDown={(event) => handleChipKeyDown(event, chipId, index)}\n onClear={() => onChipClear(chipId, index)}\n onClick={onChipClick}\n />\n );\n })}\n </StyledChips>\n )}\n <Input\n ref={inputForkRef}\n id={innerId}\n aria-labelledby={labelId}\n aria-describedby={helperTextId}\n placeholder={innerPlaceholderValue}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n onChange={handleChange}\n onKeyDown={handleOnKeyDown}\n {...rest}\n />\n {labelInside && (\n <Label id={labelId} htmlFor={innerId}>\n {innerLabelValue}\n </Label>\n )}\n {textAfter && <StyledTextAfter>{textAfter}</StyledTextAfter>}\n </InputLabelWrapper>\n {contentRight && <StyledContentRight>{contentRight}</StyledContentRight>}\n </InputWrapper>\n {leftHelper && <LeftHelper id={helperTextId}>{leftHelper}</LeftHelper>}\n </Root>\n );\n },\n );\n\nexport const textFieldConfig = {\n name: 'TextField',\n tag: 'div',\n layout: textFieldRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n css: readOnlyCSS,\n attrs: true,\n },\n labelPlacement: {\n css: labelPlacementCSS,\n },\n },\n defaults: {\n size: 'm',\n view: 'default',\n },\n};\n"],"names":["base","textFieldRoot","Root","forwardRef","_ref","ref","id","className","style","contentLeft","contentRight","label","labelPlacement","textBefore","textAfter","placeholder","leftHelper","_ref$enumerationType","enumerationType","view","size","_ref$readOnly","readOnly","_ref$disabled","disabled","values","chips","onChange","onChangeChips","onSearch","onKeyDown","rest","contentRef","useRef","inputRef","inputForkRef","useForkRef","chipsRefs","controlledRefs","_useState","useState","_useState2","_slicedToArray","setChips","uniqId","safeUseId","innerId","labelId","helperTextId","isChipEnumeration","hideLabel","labelInside","innerLabelPlacementValue","innerPlaceholderValue","innerLabelValue","undefined","hideLabelClass","classes","labelPlacementClass","concat","isChipsVisible","length","withHasChips","hasChips","wrapperWithoutLeftContent","hasEmptyContentLeft","wrapperWithoutRightContent","hasEmptyContentRight","handleChange","event","_event$target","target","maxLength","value","updateChips","newChips","newValues","_useKeyNavigation","useKeyNavigation","handleInputKeydown","handleChipKeyDown","onChipClear","handleContentKeyDown","onChipClick","stopPropagation","handleInputFocus","current","scrollTo","top","left","offsetLeft","behavior","focus","getRef","element","index","handleOnKeyDown","useEffect","map","text","React","createElement","onClick","cx","Label","htmlFor","InputWrapper","StyledContentLeft","InputLabelWrapper","tabIndex","StyledTextBefore","Boolean","StyledChips","_ref2","chipId","TextFieldChip","key","onClear","Input","_extends","StyledTextAfter","StyledContentRight","LeftHelper","textFieldConfig","name","tag","layout","variations","css","viewCSS","sizeCSS","disabledCSS","attrs","readOnlyCSS","labelPlacementCSS","defaults"],"mappings":"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"}
|