@salutejs/plasma-new-hope 0.187.0-canary.1539.11742294440.0 → 0.187.0-dev.0
Sign up to get free protection for your applications and to get access to all the features.
- package/cjs/components/NumberInput/NumberInput.css +52 -0
- package/cjs/components/NumberInput/NumberInput.js +205 -0
- package/cjs/components/NumberInput/NumberInput.js.map +1 -0
- package/cjs/components/NumberInput/NumberInput.styles.js +9 -0
- package/cjs/components/NumberInput/NumberInput.styles.js.map +1 -0
- package/cjs/components/NumberInput/NumberInput.styles_jeawjl.css +1 -0
- package/cjs/components/NumberInput/NumberInput.tokens.js +102 -0
- package/cjs/components/NumberInput/NumberInput.tokens.js.map +1 -0
- package/cjs/components/NumberInput/ui/ActionButton/ActionButton.js +19 -0
- package/cjs/components/NumberInput/ui/ActionButton/ActionButton.js.map +1 -0
- package/cjs/components/NumberInput/ui/ActionButton/ActionButton.styles.js +22 -0
- package/cjs/components/NumberInput/ui/ActionButton/ActionButton.styles.js.map +1 -0
- package/cjs/components/NumberInput/ui/ActionButton/ActionButton.styles_x642ct.css +1 -0
- package/cjs/components/NumberInput/ui/Input/Input.css +15 -0
- package/cjs/components/NumberInput/ui/Input/Input.js +205 -0
- package/cjs/components/NumberInput/ui/Input/Input.js.map +1 -0
- package/cjs/components/NumberInput/ui/Input/Input.styles.js +96 -0
- package/cjs/components/NumberInput/ui/Input/Input.styles.js.map +1 -0
- package/cjs/components/NumberInput/ui/Input/Input.styles_fhgb95.css +8 -0
- package/cjs/components/NumberInput/utils/index.js +12 -0
- package/cjs/components/NumberInput/utils/index.js.map +1 -0
- package/cjs/components/{Switch/_toggleSize → NumberInput/variations/_background-type}/base.js +2 -2
- package/cjs/components/NumberInput/variations/_background-type/base.js.map +1 -0
- package/cjs/components/NumberInput/variations/_background-type/base_dx9knv.css +1 -0
- package/cjs/components/NumberInput/variations/_disabled/base.js +9 -0
- package/cjs/components/NumberInput/variations/_disabled/base.js.map +1 -0
- package/cjs/components/NumberInput/variations/_disabled/base_1sl0mh8.css +1 -0
- package/cjs/components/NumberInput/variations/_segmentation/base.js +9 -0
- package/cjs/components/NumberInput/variations/_segmentation/base.js.map +1 -0
- package/cjs/components/NumberInput/variations/_segmentation/base_14s5rot.css +1 -0
- package/cjs/components/NumberInput/variations/_shape/base.js +9 -0
- package/cjs/components/NumberInput/variations/_shape/base.js.map +1 -0
- package/cjs/components/NumberInput/variations/_shape/base_k05biw.css +1 -0
- package/cjs/components/NumberInput/variations/_size/base.js +9 -0
- package/cjs/components/NumberInput/variations/_size/base.js.map +1 -0
- package/cjs/components/NumberInput/variations/_size/base_yqdmk4.css +1 -0
- package/cjs/components/NumberInput/variations/_view/base.js +9 -0
- package/cjs/components/NumberInput/variations/_view/base.js.map +1 -0
- package/cjs/components/NumberInput/variations/_view/base_tnfbb5.css +1 -0
- package/cjs/components/Switch/Switch.css +7 -11
- package/cjs/components/Switch/Switch.js +7 -16
- package/cjs/components/Switch/Switch.js.map +1 -1
- package/cjs/components/Switch/Switch.styles.js +4 -16
- package/cjs/components/Switch/Switch.styles.js.map +1 -1
- package/cjs/components/Switch/Switch.styles_1kk0qzz.css +4 -0
- package/cjs/components/Switch/Switch.tokens.js +0 -11
- package/cjs/components/Switch/Switch.tokens.js.map +1 -1
- package/cjs/components/Switch/_focused/base.js +1 -1
- package/{es/components/Switch/_focused/base_sz3n0x.css → cjs/components/Switch/_focused/base_j4murk.css} +1 -1
- package/cjs/components/Switch/_size/base.js +1 -1
- package/cjs/components/Switch/_size/base.js.map +1 -1
- package/cjs/components/Switch/_size/base_1rjzpi4.css +1 -0
- package/cjs/components/Switch/_view/base.js +1 -1
- package/cjs/components/Switch/_view/base.js.map +1 -1
- package/cjs/components/Switch/_view/base_1mtyz12.css +1 -0
- package/cjs/index.css +30 -11
- package/cjs/index.js +6 -0
- package/cjs/index.js.map +1 -1
- package/emotion/cjs/components/NumberInput/NumberInput.js +214 -0
- package/emotion/cjs/components/NumberInput/NumberInput.styles.js +17 -0
- package/emotion/cjs/components/NumberInput/NumberInput.template-doc.mdx +214 -0
- package/emotion/cjs/components/NumberInput/NumberInput.tokens.js +99 -0
- package/emotion/cjs/components/NumberInput/NumberInput.types.js +5 -0
- package/emotion/cjs/components/NumberInput/index.js +31 -0
- package/emotion/cjs/components/NumberInput/ui/ActionButton/ActionButton.js +18 -0
- package/emotion/cjs/components/NumberInput/ui/ActionButton/ActionButton.styles.js +16 -0
- package/emotion/cjs/components/NumberInput/ui/ActionButton/ActionButton.types.js +5 -0
- package/emotion/cjs/components/NumberInput/ui/Input/Input.js +213 -0
- package/emotion/cjs/components/NumberInput/ui/Input/Input.styles.js +81 -0
- package/emotion/cjs/components/NumberInput/ui/Input/Input.types.js +5 -0
- package/emotion/cjs/components/NumberInput/ui/index.js +19 -0
- package/emotion/cjs/components/NumberInput/utils/index.js +9 -0
- package/emotion/cjs/components/NumberInput/variations/_background-type/base.js +10 -0
- package/emotion/cjs/components/NumberInput/variations/_background-type/tokens.json +6 -0
- package/emotion/cjs/components/NumberInput/variations/_disabled/base.js +9 -0
- package/emotion/cjs/components/NumberInput/variations/_disabled/tokens.json +4 -0
- package/emotion/cjs/components/NumberInput/variations/_segmentation/base.js +12 -0
- package/emotion/cjs/components/NumberInput/variations/_segmentation/tokens.json +1 -0
- package/emotion/cjs/components/NumberInput/variations/_shape/base.js +11 -0
- package/emotion/cjs/components/NumberInput/variations/_shape/tokens.json +1 -0
- package/emotion/cjs/components/NumberInput/variations/_size/base.js +13 -0
- package/emotion/cjs/components/NumberInput/variations/_size/tokens.json +22 -0
- package/emotion/cjs/components/NumberInput/variations/_view/base.js +13 -0
- package/emotion/cjs/components/NumberInput/variations/_view/tokens.json +14 -0
- package/emotion/cjs/components/Switch/Switch.js +8 -17
- package/emotion/cjs/components/Switch/Switch.styles.js +5 -21
- package/emotion/cjs/components/Switch/Switch.template-doc.mdx +1 -37
- package/emotion/cjs/components/Switch/Switch.tokens.js +0 -11
- package/emotion/cjs/components/Switch/_size/base.js +1 -1
- package/emotion/cjs/components/Switch/_view/base.js +1 -1
- package/emotion/cjs/examples/plasma_b2c/components/NumberInput/NumberInput.config.js +46 -0
- package/emotion/cjs/examples/plasma_b2c/components/NumberInput/NumberInput.js +11 -0
- package/emotion/cjs/examples/plasma_b2c/components/NumberInput/NumberInput.stories.tsx +108 -0
- package/emotion/cjs/examples/plasma_b2c/components/Switch/Switch.config.js +4 -11
- package/emotion/cjs/examples/plasma_b2c/components/Switch/Switch.stories.tsx +1 -7
- package/emotion/cjs/examples/plasma_web/components/NumberInput/NumberInput.config.js +46 -0
- package/emotion/cjs/examples/plasma_web/components/NumberInput/NumberInput.js +11 -0
- package/emotion/cjs/examples/plasma_web/components/NumberInput/NumberInput.stories.tsx +108 -0
- package/emotion/cjs/examples/plasma_web/components/Switch/Switch.config.js +4 -11
- package/emotion/cjs/examples/plasma_web/components/Switch/Switch.stories.tsx +1 -14
- package/emotion/cjs/index.js +11 -0
- package/emotion/es/components/NumberInput/NumberInput.js +206 -0
- package/emotion/es/components/NumberInput/NumberInput.styles.js +11 -0
- package/emotion/es/components/NumberInput/NumberInput.template-doc.mdx +214 -0
- package/emotion/es/components/NumberInput/NumberInput.tokens.js +93 -0
- package/emotion/es/components/NumberInput/NumberInput.types.js +1 -0
- package/emotion/es/components/NumberInput/index.js +2 -0
- package/emotion/es/components/NumberInput/ui/ActionButton/ActionButton.js +11 -0
- package/emotion/es/components/NumberInput/ui/ActionButton/ActionButton.styles.js +9 -0
- package/emotion/es/components/NumberInput/ui/ActionButton/ActionButton.types.js +1 -0
- package/emotion/es/components/NumberInput/ui/Input/Input.js +204 -0
- package/emotion/es/components/NumberInput/ui/Input/Input.styles.js +74 -0
- package/emotion/es/components/NumberInput/ui/Input/Input.types.js +1 -0
- package/emotion/es/components/NumberInput/ui/index.js +2 -0
- package/emotion/es/components/NumberInput/utils/index.js +3 -0
- package/emotion/es/components/NumberInput/variations/_background-type/base.js +4 -0
- package/emotion/es/components/NumberInput/variations/_background-type/tokens.json +6 -0
- package/emotion/es/components/NumberInput/variations/_disabled/base.js +3 -0
- package/emotion/es/components/NumberInput/variations/_disabled/tokens.json +4 -0
- package/emotion/es/components/NumberInput/variations/_segmentation/base.js +6 -0
- package/emotion/es/components/NumberInput/variations/_segmentation/tokens.json +1 -0
- package/emotion/es/components/NumberInput/variations/_shape/base.js +5 -0
- package/emotion/es/components/NumberInput/variations/_shape/tokens.json +1 -0
- package/emotion/es/components/NumberInput/variations/_size/base.js +7 -0
- package/emotion/es/components/NumberInput/variations/_size/tokens.json +22 -0
- package/emotion/es/components/NumberInput/variations/_view/base.js +7 -0
- package/emotion/es/components/NumberInput/variations/_view/tokens.json +14 -0
- package/emotion/es/components/Switch/Switch.js +4 -13
- package/emotion/es/components/Switch/Switch.styles.js +4 -20
- package/emotion/es/components/Switch/Switch.template-doc.mdx +1 -37
- package/emotion/es/components/Switch/Switch.tokens.js +0 -11
- package/emotion/es/components/Switch/_size/base.js +2 -2
- package/emotion/es/components/Switch/_view/base.js +2 -2
- package/emotion/es/examples/plasma_b2c/components/NumberInput/NumberInput.config.js +40 -0
- package/emotion/es/examples/plasma_b2c/components/NumberInput/NumberInput.js +5 -0
- package/emotion/es/examples/plasma_b2c/components/NumberInput/NumberInput.stories.tsx +108 -0
- package/emotion/es/examples/plasma_b2c/components/Switch/Switch.config.js +4 -11
- package/emotion/es/examples/plasma_b2c/components/Switch/Switch.stories.tsx +1 -7
- package/emotion/es/examples/plasma_web/components/NumberInput/NumberInput.config.js +40 -0
- package/emotion/es/examples/plasma_web/components/NumberInput/NumberInput.js +5 -0
- package/emotion/es/examples/plasma_web/components/NumberInput/NumberInput.stories.tsx +108 -0
- package/emotion/es/examples/plasma_web/components/Switch/Switch.config.js +4 -11
- package/emotion/es/examples/plasma_web/components/Switch/Switch.stories.tsx +1 -14
- package/emotion/es/index.js +2 -1
- package/es/components/NumberInput/NumberInput.css +52 -0
- package/es/components/NumberInput/NumberInput.js +200 -0
- package/es/components/NumberInput/NumberInput.js.map +1 -0
- package/es/components/NumberInput/NumberInput.styles.js +5 -0
- package/es/components/NumberInput/NumberInput.styles.js.map +1 -0
- package/es/components/NumberInput/NumberInput.styles_jeawjl.css +1 -0
- package/es/components/NumberInput/NumberInput.tokens.js +96 -0
- package/es/components/NumberInput/NumberInput.tokens.js.map +1 -0
- package/es/components/NumberInput/ui/ActionButton/ActionButton.js +15 -0
- package/es/components/NumberInput/ui/ActionButton/ActionButton.js.map +1 -0
- package/es/components/NumberInput/ui/ActionButton/ActionButton.styles.js +18 -0
- package/es/components/NumberInput/ui/ActionButton/ActionButton.styles.js.map +1 -0
- package/es/components/NumberInput/ui/ActionButton/ActionButton.styles_x642ct.css +1 -0
- package/es/components/NumberInput/ui/Input/Input.css +15 -0
- package/es/components/NumberInput/ui/Input/Input.js +201 -0
- package/es/components/NumberInput/ui/Input/Input.js.map +1 -0
- package/es/components/NumberInput/ui/Input/Input.styles.js +85 -0
- package/es/components/NumberInput/ui/Input/Input.styles.js.map +1 -0
- package/es/components/NumberInput/ui/Input/Input.styles_fhgb95.css +8 -0
- package/es/components/NumberInput/utils/index.js +6 -0
- package/es/components/NumberInput/utils/index.js.map +1 -0
- package/es/components/{Switch/_toggleSize → NumberInput/variations/_background-type}/base.js +2 -2
- package/es/components/NumberInput/variations/_background-type/base.js.map +1 -0
- package/es/components/NumberInput/variations/_background-type/base_dx9knv.css +1 -0
- package/es/components/NumberInput/variations/_disabled/base.js +5 -0
- package/es/components/NumberInput/variations/_disabled/base.js.map +1 -0
- package/es/components/NumberInput/variations/_disabled/base_1sl0mh8.css +1 -0
- package/es/components/NumberInput/variations/_segmentation/base.js +5 -0
- package/es/components/NumberInput/variations/_segmentation/base.js.map +1 -0
- package/es/components/NumberInput/variations/_segmentation/base_14s5rot.css +1 -0
- package/es/components/NumberInput/variations/_shape/base.js +5 -0
- package/es/components/NumberInput/variations/_shape/base.js.map +1 -0
- package/es/components/NumberInput/variations/_shape/base_k05biw.css +1 -0
- package/es/components/NumberInput/variations/_size/base.js +5 -0
- package/es/components/NumberInput/variations/_size/base.js.map +1 -0
- package/es/components/NumberInput/variations/_size/base_yqdmk4.css +1 -0
- package/es/components/NumberInput/variations/_view/base.js +5 -0
- package/es/components/NumberInput/variations/_view/base.js.map +1 -0
- package/es/components/NumberInput/variations/_view/base_tnfbb5.css +1 -0
- package/es/components/Switch/Switch.css +7 -11
- package/es/components/Switch/Switch.js +8 -17
- package/es/components/Switch/Switch.js.map +1 -1
- package/es/components/Switch/Switch.styles.js +5 -15
- package/es/components/Switch/Switch.styles.js.map +1 -1
- package/es/components/Switch/Switch.styles_1kk0qzz.css +4 -0
- package/es/components/Switch/Switch.tokens.js +0 -11
- package/es/components/Switch/Switch.tokens.js.map +1 -1
- package/es/components/Switch/_focused/base.js +1 -1
- package/{cjs/components/Switch/_focused/base_sz3n0x.css → es/components/Switch/_focused/base_j4murk.css} +1 -1
- package/es/components/Switch/_size/base.js +1 -1
- package/es/components/Switch/_size/base.js.map +1 -1
- package/es/components/Switch/_size/base_1rjzpi4.css +1 -0
- package/es/components/Switch/_view/base.js +1 -1
- package/es/components/Switch/_view/base.js.map +1 -1
- package/es/components/Switch/_view/base_1mtyz12.css +1 -0
- package/es/index.css +30 -11
- package/es/index.js +2 -0
- package/es/index.js.map +1 -1
- package/package.json +2 -2
- package/styled-components/cjs/components/NumberInput/NumberInput.js +214 -0
- package/styled-components/cjs/components/NumberInput/NumberInput.styles.js +8 -0
- package/styled-components/cjs/components/NumberInput/NumberInput.template-doc.mdx +214 -0
- package/styled-components/cjs/components/NumberInput/NumberInput.tokens.js +99 -0
- package/styled-components/cjs/components/NumberInput/NumberInput.types.js +5 -0
- package/styled-components/cjs/components/NumberInput/index.js +31 -0
- package/styled-components/cjs/components/NumberInput/ui/ActionButton/ActionButton.js +18 -0
- package/styled-components/cjs/components/NumberInput/ui/ActionButton/ActionButton.styles.js +15 -0
- package/styled-components/cjs/components/NumberInput/ui/ActionButton/ActionButton.types.js +5 -0
- package/styled-components/cjs/components/NumberInput/ui/Input/Input.js +213 -0
- package/styled-components/cjs/components/NumberInput/ui/Input/Input.styles.js +48 -0
- package/styled-components/cjs/components/NumberInput/ui/Input/Input.types.js +5 -0
- package/styled-components/cjs/components/NumberInput/ui/index.js +19 -0
- package/styled-components/cjs/components/NumberInput/utils/index.js +9 -0
- package/styled-components/cjs/components/NumberInput/variations/_background-type/base.js +10 -0
- package/styled-components/cjs/components/NumberInput/variations/_background-type/tokens.json +6 -0
- package/styled-components/cjs/components/NumberInput/variations/_disabled/base.js +9 -0
- package/styled-components/cjs/components/NumberInput/variations/_disabled/tokens.json +4 -0
- package/styled-components/cjs/components/NumberInput/variations/_segmentation/base.js +12 -0
- package/styled-components/cjs/components/NumberInput/variations/_segmentation/tokens.json +1 -0
- package/styled-components/cjs/components/NumberInput/variations/_shape/base.js +11 -0
- package/styled-components/cjs/components/NumberInput/variations/_shape/tokens.json +1 -0
- package/styled-components/cjs/components/NumberInput/variations/_size/base.js +13 -0
- package/styled-components/cjs/components/NumberInput/variations/_size/tokens.json +22 -0
- package/styled-components/cjs/components/NumberInput/variations/_view/base.js +13 -0
- package/styled-components/cjs/components/NumberInput/variations/_view/tokens.json +14 -0
- package/styled-components/cjs/components/Switch/Switch.js +8 -17
- package/styled-components/cjs/components/Switch/Switch.styles.js +5 -11
- package/styled-components/cjs/components/Switch/Switch.template-doc.mdx +1 -37
- package/styled-components/cjs/components/Switch/Switch.tokens.js +0 -11
- package/styled-components/cjs/components/Switch/_size/base.js +1 -1
- package/styled-components/cjs/components/Switch/_view/base.js +1 -1
- package/styled-components/cjs/examples/plasma_b2c/components/NumberInput/NumberInput.config.js +46 -0
- package/styled-components/cjs/examples/plasma_b2c/components/NumberInput/NumberInput.js +11 -0
- package/styled-components/cjs/examples/plasma_b2c/components/NumberInput/NumberInput.stories.tsx +108 -0
- package/styled-components/cjs/examples/plasma_b2c/components/Switch/Switch.config.js +2 -9
- package/styled-components/cjs/examples/plasma_b2c/components/Switch/Switch.stories.tsx +1 -7
- package/styled-components/cjs/examples/plasma_web/components/NumberInput/NumberInput.config.js +46 -0
- package/styled-components/cjs/examples/plasma_web/components/NumberInput/NumberInput.js +11 -0
- package/styled-components/cjs/examples/plasma_web/components/NumberInput/NumberInput.stories.tsx +108 -0
- package/styled-components/cjs/examples/plasma_web/components/Switch/Switch.config.js +2 -9
- package/styled-components/cjs/examples/plasma_web/components/Switch/Switch.stories.tsx +1 -14
- package/styled-components/cjs/index.js +11 -0
- package/styled-components/es/components/NumberInput/NumberInput.js +206 -0
- package/styled-components/es/components/NumberInput/NumberInput.styles.js +2 -0
- package/styled-components/es/components/NumberInput/NumberInput.template-doc.mdx +214 -0
- package/styled-components/es/components/NumberInput/NumberInput.tokens.js +93 -0
- package/styled-components/es/components/NumberInput/NumberInput.types.js +1 -0
- package/styled-components/es/components/NumberInput/index.js +2 -0
- package/styled-components/es/components/NumberInput/ui/ActionButton/ActionButton.js +11 -0
- package/styled-components/es/components/NumberInput/ui/ActionButton/ActionButton.styles.js +8 -0
- package/styled-components/es/components/NumberInput/ui/ActionButton/ActionButton.types.js +1 -0
- package/styled-components/es/components/NumberInput/ui/Input/Input.js +204 -0
- package/styled-components/es/components/NumberInput/ui/Input/Input.styles.js +41 -0
- package/styled-components/es/components/NumberInput/ui/Input/Input.types.js +1 -0
- package/styled-components/es/components/NumberInput/ui/index.js +2 -0
- package/styled-components/es/components/NumberInput/utils/index.js +3 -0
- package/styled-components/es/components/NumberInput/variations/_background-type/base.js +4 -0
- package/styled-components/es/components/NumberInput/variations/_background-type/tokens.json +6 -0
- package/styled-components/es/components/NumberInput/variations/_disabled/base.js +3 -0
- package/styled-components/es/components/NumberInput/variations/_disabled/tokens.json +4 -0
- package/styled-components/es/components/NumberInput/variations/_segmentation/base.js +6 -0
- package/styled-components/es/components/NumberInput/variations/_segmentation/tokens.json +1 -0
- package/styled-components/es/components/NumberInput/variations/_shape/base.js +5 -0
- package/styled-components/es/components/NumberInput/variations/_shape/tokens.json +1 -0
- package/styled-components/es/components/NumberInput/variations/_size/base.js +7 -0
- package/styled-components/es/components/NumberInput/variations/_size/tokens.json +22 -0
- package/styled-components/es/components/NumberInput/variations/_view/base.js +7 -0
- package/styled-components/es/components/NumberInput/variations/_view/tokens.json +14 -0
- package/styled-components/es/components/Switch/Switch.js +4 -13
- package/styled-components/es/components/Switch/Switch.styles.js +4 -10
- package/styled-components/es/components/Switch/Switch.template-doc.mdx +1 -37
- package/styled-components/es/components/Switch/Switch.tokens.js +0 -11
- package/styled-components/es/components/Switch/_size/base.js +2 -2
- package/styled-components/es/components/Switch/_view/base.js +2 -2
- package/styled-components/es/examples/plasma_b2c/components/NumberInput/NumberInput.config.js +40 -0
- package/styled-components/es/examples/plasma_b2c/components/NumberInput/NumberInput.js +5 -0
- package/styled-components/es/examples/plasma_b2c/components/NumberInput/NumberInput.stories.tsx +108 -0
- package/styled-components/es/examples/plasma_b2c/components/Switch/Switch.config.js +2 -9
- package/styled-components/es/examples/plasma_b2c/components/Switch/Switch.stories.tsx +1 -7
- package/styled-components/es/examples/plasma_web/components/NumberInput/NumberInput.config.js +40 -0
- package/styled-components/es/examples/plasma_web/components/NumberInput/NumberInput.js +5 -0
- package/styled-components/es/examples/plasma_web/components/NumberInput/NumberInput.stories.tsx +108 -0
- package/styled-components/es/examples/plasma_web/components/Switch/Switch.config.js +2 -9
- package/styled-components/es/examples/plasma_web/components/Switch/Switch.stories.tsx +1 -14
- package/styled-components/es/index.js +2 -1
- package/types/components/NumberInput/NumberInput.d.ts +38 -0
- package/types/components/NumberInput/NumberInput.d.ts.map +1 -0
- package/types/components/NumberInput/NumberInput.styles.d.ts +2 -0
- package/types/components/NumberInput/NumberInput.styles.d.ts.map +1 -0
- package/types/components/NumberInput/NumberInput.tokens.d.ts +88 -0
- package/types/components/NumberInput/NumberInput.tokens.d.ts.map +1 -0
- package/types/components/NumberInput/NumberInput.types.d.ts +112 -0
- package/types/components/NumberInput/NumberInput.types.d.ts.map +1 -0
- package/types/components/NumberInput/index.d.ts +3 -0
- package/types/components/NumberInput/index.d.ts.map +1 -0
- package/types/components/NumberInput/ui/ActionButton/ActionButton.d.ts +4 -0
- package/types/components/NumberInput/ui/ActionButton/ActionButton.d.ts.map +1 -0
- package/types/components/NumberInput/ui/ActionButton/ActionButton.styles.d.ts +45 -0
- package/types/components/NumberInput/ui/ActionButton/ActionButton.styles.d.ts.map +1 -0
- package/types/components/NumberInput/ui/ActionButton/ActionButton.types.d.ts +7 -0
- package/types/components/NumberInput/ui/ActionButton/ActionButton.types.d.ts.map +1 -0
- package/types/components/NumberInput/ui/Input/Input.d.ts +19 -0
- package/types/components/NumberInput/ui/Input/Input.d.ts.map +1 -0
- package/types/components/NumberInput/ui/Input/Input.styles.d.ts +30 -0
- package/types/components/NumberInput/ui/Input/Input.styles.d.ts.map +1 -0
- package/types/components/NumberInput/ui/Input/Input.types.d.ts +19 -0
- package/types/components/NumberInput/ui/Input/Input.types.d.ts.map +1 -0
- package/types/components/NumberInput/ui/index.d.ts +3 -0
- package/types/components/NumberInput/ui/index.d.ts.map +1 -0
- package/types/components/NumberInput/utils/index.d.ts +4 -0
- package/types/components/NumberInput/utils/index.d.ts.map +1 -0
- package/types/components/NumberInput/variations/_background-type/base.d.ts.map +1 -0
- package/types/components/NumberInput/variations/_disabled/base.d.ts +2 -0
- package/types/components/NumberInput/variations/_disabled/base.d.ts.map +1 -0
- package/types/components/NumberInput/variations/_segmentation/base.d.ts +2 -0
- package/types/components/NumberInput/variations/_segmentation/base.d.ts.map +1 -0
- package/types/components/NumberInput/variations/_shape/base.d.ts +2 -0
- package/types/components/NumberInput/variations/_shape/base.d.ts.map +1 -0
- package/types/components/NumberInput/variations/_size/base.d.ts +2 -0
- package/types/components/NumberInput/variations/_size/base.d.ts.map +1 -0
- package/types/components/NumberInput/variations/_view/base.d.ts +2 -0
- package/types/components/NumberInput/variations/_view/base.d.ts.map +1 -0
- package/types/components/Switch/Switch.d.ts +0 -3
- package/types/components/Switch/Switch.d.ts.map +1 -1
- package/types/components/Switch/Switch.styles.d.ts +0 -2
- package/types/components/Switch/Switch.styles.d.ts.map +1 -1
- package/types/components/Switch/Switch.tokens.d.ts +0 -9
- package/types/components/Switch/Switch.tokens.d.ts.map +1 -1
- package/types/components/Switch/Switch.types.d.ts +2 -10
- package/types/components/Switch/Switch.types.d.ts.map +1 -1
- package/types/components/Switch/_size/base.d.ts.map +1 -1
- package/types/components/Switch/_view/base.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/NumberInput/NumberInput.config.d.ts +39 -0
- package/types/examples/plasma_b2c/components/NumberInput/NumberInput.config.d.ts.map +1 -0
- package/types/examples/plasma_b2c/components/NumberInput/NumberInput.d.ts +82 -0
- package/types/examples/plasma_b2c/components/NumberInput/NumberInput.d.ts.map +1 -0
- package/types/examples/plasma_b2c/components/Switch/Switch.config.d.ts +0 -7
- package/types/examples/plasma_b2c/components/Switch/Switch.config.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Switch/Switch.d.ts +0 -6
- package/types/examples/plasma_b2c/components/Switch/Switch.d.ts.map +1 -1
- package/types/examples/plasma_web/components/NumberInput/NumberInput.config.d.ts +39 -0
- package/types/examples/plasma_web/components/NumberInput/NumberInput.config.d.ts.map +1 -0
- package/types/examples/plasma_web/components/NumberInput/NumberInput.d.ts +82 -0
- package/types/examples/plasma_web/components/NumberInput/NumberInput.d.ts.map +1 -0
- package/types/examples/plasma_web/components/Switch/Switch.config.d.ts +0 -7
- package/types/examples/plasma_web/components/Switch/Switch.config.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Switch/Switch.d.ts +0 -6
- package/types/examples/plasma_web/components/Switch/Switch.d.ts.map +1 -1
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -1
- package/cjs/components/Switch/Switch.styles_bei7bh.css +0 -6
- package/cjs/components/Switch/_size/base_1tcl212.css +0 -1
- package/cjs/components/Switch/_toggleSize/base.js.map +0 -1
- package/cjs/components/Switch/_toggleSize/base_6i0904.css +0 -1
- package/cjs/components/Switch/_view/base_yxkf3s.css +0 -1
- package/emotion/cjs/components/Switch/_toggleSize/base.js +0 -10
- package/emotion/es/components/Switch/_toggleSize/base.js +0 -4
- package/es/components/Switch/Switch.styles_bei7bh.css +0 -6
- package/es/components/Switch/_size/base_1tcl212.css +0 -1
- package/es/components/Switch/_toggleSize/base.js.map +0 -1
- package/es/components/Switch/_toggleSize/base_6i0904.css +0 -1
- package/es/components/Switch/_view/base_yxkf3s.css +0 -1
- package/styled-components/cjs/components/Switch/_toggleSize/base.js +0 -10
- package/styled-components/es/components/Switch/_toggleSize/base.js +0 -4
- package/types/components/Switch/_toggleSize/base.d.ts.map +0 -1
- /package/types/components/{Switch/_toggleSize → NumberInput/variations/_background-type}/base.d.ts +0 -0
@@ -0,0 +1,214 @@
|
|
1
|
+
---
|
2
|
+
id: numberInput
|
3
|
+
title: NumberInput
|
4
|
+
---
|
5
|
+
|
6
|
+
import { PropsTable, Description } from '@site/src/components';
|
7
|
+
|
8
|
+
# NumberInput
|
9
|
+
Числовое поле. Поддерживает как ручной ввод, так и увеличение/уменьшение значения,
|
10
|
+
посредством нажатия соответствующих кнопок.
|
11
|
+
|
12
|
+
## NumberInput
|
13
|
+
<Description name="NumberInput" />
|
14
|
+
<PropsTable name="NumberInput" />
|
15
|
+
|
16
|
+
## Примеры
|
17
|
+
|
18
|
+
### Вид числового поля
|
19
|
+
Вид числового поля задается с помощью свойства `view`:
|
20
|
+
|
21
|
+
```tsx live
|
22
|
+
import React from 'react';
|
23
|
+
import { NumberInput } from '@salutejs/{{ package }}';
|
24
|
+
|
25
|
+
export function App() {
|
26
|
+
return (
|
27
|
+
<div>
|
28
|
+
<NumberInput value={5} width={188} view="default" />
|
29
|
+
<NumberInput value={5} width={188} view="secondary" />
|
30
|
+
<NumberInput value={5} width={188} view="accent" />
|
31
|
+
<NumberInput value={5} width={188} view="clear" />
|
32
|
+
</div>
|
33
|
+
);
|
34
|
+
}
|
35
|
+
```
|
36
|
+
|
37
|
+
### Модификация вида числового поля
|
38
|
+
Числовое поле может иметь различные отступы внутри, влияющие на форму. Задается с помощью свойства `segmentation`:
|
39
|
+
|
40
|
+
```tsx live
|
41
|
+
import React from 'react';
|
42
|
+
import { NumberInput } from '@salutejs/{{ package }}';
|
43
|
+
|
44
|
+
export function App() {
|
45
|
+
return (
|
46
|
+
<div>
|
47
|
+
<NumberInput value={5} width={188} view="default" segmentation="default" />
|
48
|
+
<NumberInput value={5} width={188} view="default" segmentation="segmented" />
|
49
|
+
<NumberInput value={5} width={188} view="default" segmentation="solid" />
|
50
|
+
</div>
|
51
|
+
);
|
52
|
+
}
|
53
|
+
```
|
54
|
+
|
55
|
+
### Граница числового поля
|
56
|
+
Граница числового поля задается с помощью свойства `shape`:
|
57
|
+
|
58
|
+
```tsx live
|
59
|
+
import React from 'react';
|
60
|
+
import { NumberInput } from '@salutejs/{{ package }}';
|
61
|
+
|
62
|
+
export function App() {
|
63
|
+
return (
|
64
|
+
<div>
|
65
|
+
<NumberInput value={5} width={188} view="default" segmentation="default" shape="cornered" />
|
66
|
+
<NumberInput value={5} width={188} view="default" segmentation="solid" shape="cornered" />
|
67
|
+
<NumberInput value={5} width={188} view="default" segmentation="default" shape="pilled" />
|
68
|
+
<NumberInput value={5} width={188} view="default" segmentation="solid" shape="pilled" />
|
69
|
+
</div>
|
70
|
+
);
|
71
|
+
}
|
72
|
+
```
|
73
|
+
|
74
|
+
### Размер числового поля
|
75
|
+
Размер числового поля задается с помощью свойства `size`:
|
76
|
+
|
77
|
+
```tsx live
|
78
|
+
import React from 'react';
|
79
|
+
import { NumberInput } from '@salutejs/{{ package }}';
|
80
|
+
|
81
|
+
export function App() {
|
82
|
+
return (
|
83
|
+
<div>
|
84
|
+
<NumberInput value={5} width={188} size="l" />
|
85
|
+
<NumberInput value={5} width={188} size="m" />
|
86
|
+
<NumberInput value={5} width={188} size="s" />
|
87
|
+
<NumberInput value={5} width={188} size="xs" />
|
88
|
+
</div>
|
89
|
+
);
|
90
|
+
}
|
91
|
+
```
|
92
|
+
|
93
|
+
### Состояние загрузки числового поля
|
94
|
+
Состояние загрузки числового поля определяется свойством `isLoading`:
|
95
|
+
|
96
|
+
```tsx live
|
97
|
+
import React from 'react';
|
98
|
+
import { NumberInput } from '@salutejs/{{ package }}';
|
99
|
+
|
100
|
+
export function App() {
|
101
|
+
return (
|
102
|
+
<div>
|
103
|
+
<NumberInput value={5} size="l" width={188} isLoading />
|
104
|
+
</div>
|
105
|
+
);
|
106
|
+
}
|
107
|
+
```
|
108
|
+
|
109
|
+
### Ручной ввод
|
110
|
+
Режим ручного ввода включается свойством `isManualInput`:
|
111
|
+
|
112
|
+
```tsx live
|
113
|
+
import React from 'react';
|
114
|
+
import { NumberInput } from '@salutejs/{{ package }}';
|
115
|
+
|
116
|
+
export function App() {
|
117
|
+
return (
|
118
|
+
<div>
|
119
|
+
<NumberInput value={5} size="l" width={188} isManualInput />
|
120
|
+
</div>
|
121
|
+
);
|
122
|
+
}
|
123
|
+
```
|
124
|
+
|
125
|
+
### Кастомные иконки для кнопок
|
126
|
+
Можно установить собственную иконку для кнопки используя
|
127
|
+
свойства `decrementIcon` и `incrementIcon` соответственно:
|
128
|
+
|
129
|
+
```tsx live
|
130
|
+
import React from 'react';
|
131
|
+
import { NumberInput } from '@salutejs/{{ package }}';
|
132
|
+
import { IconVolumeLevel1Fill, IconVolumeLevel2Fill } from '@salutejs/plasma-icons';
|
133
|
+
|
134
|
+
export function App() {
|
135
|
+
return (
|
136
|
+
<div>
|
137
|
+
<NumberInput
|
138
|
+
value={5}
|
139
|
+
size="l"
|
140
|
+
incrementIcon={<IconVolumeLevel2Fill color="inherit"/>}
|
141
|
+
decrementIcon={<IconVolumeLevel1Fill color="inherit"/>}
|
142
|
+
width={188}
|
143
|
+
/>
|
144
|
+
</div>
|
145
|
+
);
|
146
|
+
}
|
147
|
+
```
|
148
|
+
|
149
|
+
### Кастомные кнопки увеличения/уменьшения значения
|
150
|
+
Можно установить собственные кнопки используя свойства `customDecrementButton` и `customIncrementButton`.
|
151
|
+
В таком случае нужно определить функции по уменьшению/увелечению значения в поле.
|
152
|
+
|
153
|
+
```tsx live
|
154
|
+
import React, {useState} from 'react';
|
155
|
+
import { NumberInput, IconButton } from '@salutejs/{{ package }}';
|
156
|
+
import { IconVolumeLevel1Fill, IconVolumeLevel2Fill } from '@salutejs/plasma-icons';
|
157
|
+
|
158
|
+
export function App() {
|
159
|
+
const [currentValue, setCurrentValue] = useState(0);
|
160
|
+
|
161
|
+
const min = 0;
|
162
|
+
const max = 10;
|
163
|
+
const step = 2
|
164
|
+
|
165
|
+
const handleIncrement = () => {
|
166
|
+
const diffValue = Number(currentValue) + step;
|
167
|
+
const resValue = currentValue >= max ? max : diffValue;
|
168
|
+
|
169
|
+
setCurrentValue(resValue);
|
170
|
+
};
|
171
|
+
|
172
|
+
const handleDecrement = () => {
|
173
|
+
const diffValue = Number(currentValue) - step;
|
174
|
+
const resValue = currentValue <= min ? min : diffValue;
|
175
|
+
|
176
|
+
setCurrentValue(resValue);
|
177
|
+
};
|
178
|
+
|
179
|
+
const CustomIncrementButton = () => (
|
180
|
+
<IconButton
|
181
|
+
view={currentValue !== max ? "accent" : "critical"}
|
182
|
+
size="l"
|
183
|
+
disabled={currentValue === max}
|
184
|
+
onClick={handleIncrement}
|
185
|
+
>
|
186
|
+
<IconVolumeLevel2Fill color="inherit"/>
|
187
|
+
</IconButton>
|
188
|
+
)
|
189
|
+
|
190
|
+
const CustomDecrementButton = () => (
|
191
|
+
<IconButton
|
192
|
+
view={currentValue !== min ? "accent" : "critical"}
|
193
|
+
size="l"
|
194
|
+
disabled={currentValue === min}
|
195
|
+
onClick={handleDecrement}
|
196
|
+
>
|
197
|
+
<IconVolumeLevel1Fill color="inherit"/>
|
198
|
+
</IconButton>
|
199
|
+
)
|
200
|
+
|
201
|
+
return (
|
202
|
+
<div>
|
203
|
+
<NumberInput
|
204
|
+
value={currentValue}
|
205
|
+
step={step}
|
206
|
+
size="l"
|
207
|
+
customIncrementButton={<CustomIncrementButton />}
|
208
|
+
customDecrementButton={<CustomDecrementButton />}
|
209
|
+
width={188}
|
210
|
+
/>
|
211
|
+
</div>
|
212
|
+
);
|
213
|
+
}
|
214
|
+
```
|
@@ -0,0 +1,93 @@
|
|
1
|
+
export var classes = {
|
2
|
+
actionButtonDecrement: 'action-button-decrement',
|
3
|
+
actionButtonDecrementDisabled: 'action-button-decrement-disabled',
|
4
|
+
actionButtonIncrement: 'action-button-increment',
|
5
|
+
actionButtonIncrementDisabled: 'action-button-increment-disabled',
|
6
|
+
textBefore: 'text-before',
|
7
|
+
textAfter: 'text-after',
|
8
|
+
solidView: 'solid-view',
|
9
|
+
segmentedView: 'segmented-view',
|
10
|
+
clearView: 'clear-view',
|
11
|
+
errorAnimation: 'error-animation',
|
12
|
+
disabled: 'number-input-disabled',
|
13
|
+
loading: 'number-input-loading',
|
14
|
+
focused: 'number-input-focused',
|
15
|
+
manualInput: 'manual-input-number-input'
|
16
|
+
};
|
17
|
+
export var privateTokens = {
|
18
|
+
inputWidth: '--plasma_private-number-input_width',
|
19
|
+
segmentationBorderRadius: '--plasma_private-segmentation-border-radius',
|
20
|
+
segmentationInputBorderRadius: '--plasma_private-segmentation_input_border-radius',
|
21
|
+
topBoxShadow: '--plasma_private-number-input_top-box-shadow',
|
22
|
+
bottomBoxShadow: '--plasma_private-number-input_bottom-box-shadow',
|
23
|
+
leftBoxShadow: '--plasma_private-number-input_left-box-shadow',
|
24
|
+
rightBoxShadow: '--plasma_private-number-input_right-box-shadow'
|
25
|
+
};
|
26
|
+
export var tokens = {
|
27
|
+
// Root size tokens
|
28
|
+
rootMinWidth: '--plasma-number-input_min-width',
|
29
|
+
disabledOpacity: '--plasma-number-input_disabled-opacity',
|
30
|
+
rootBorderWidth: '--plasma-number-input_input-border-width',
|
31
|
+
wrapperBorderColor: '--plasma-number-input_wrapper_border-color',
|
32
|
+
wrapperBorderColorFocus: '--plasma-number-input_wrapper_border-color_focus',
|
33
|
+
// Action button view tokens
|
34
|
+
iconButtonColor: '--plasma-number-input_icon-button_color',
|
35
|
+
iconButtonBackgroundColor: '--plasma-number-input_icon-button_background-color',
|
36
|
+
iconButtonColorHover: '--plasma-number-input_icon-button_color-hover',
|
37
|
+
iconButtonColorSolidHover: '--plasma-number-input_icon-button_color_solid-hover',
|
38
|
+
iconButtonBackgroundColorHover: '--plasma-number-input_icon-button_background-color-hover',
|
39
|
+
iconButtonColorActive: '--plasma-number-input_icon-button_color-active',
|
40
|
+
iconButtonColorSolidActive: '--plasma-number-input_icon-button_color_solid-active',
|
41
|
+
iconButtonBackgroundColorActive: '--plasma-number-input_icon-button_background-color-active',
|
42
|
+
actionButtonDisabledOpacity: '--plasma-number-input_action-button_disabled-opacity',
|
43
|
+
// Action button size tokens
|
44
|
+
iconButtonHeight: '--plasma-number-input_icon-button_height',
|
45
|
+
iconButtonWidth: '--plasma-number-input_icon-button_width',
|
46
|
+
iconButtonPadding: '--plasma-number-input_icon-button_padding',
|
47
|
+
iconButtonRadius: '--plasma-number-input_icon-button_radius',
|
48
|
+
iconButtonSegmentationRadius: '--plasma-number-input_icon-button_segmentation_radius',
|
49
|
+
iconButtonFontFamily: '--plasma-number-input_icon-button_font-family',
|
50
|
+
iconButtonFontSize: '--plasma-number-input_icon-button_font-size',
|
51
|
+
iconButtonFontStyle: '--plasma-number-input_icon-button_font-style',
|
52
|
+
iconButtonFontWeight: '--plasma-number-input_icon-button_font-weight',
|
53
|
+
iconButtonLetterSpacing: '--plasma-number-input_icon-button_letter-spacing',
|
54
|
+
iconButtonLineHeight: '--plasma-number-input_icon-button_line-height',
|
55
|
+
// Input size tokens
|
56
|
+
inputWrapperBorderWidth: '--plasma-number-input_input-wrapper_border-width',
|
57
|
+
inputWrapperMargin: '--plasma-number-input_input-wrapper_margin',
|
58
|
+
inputWrapperBorderRadius: '--plasma-number-input_input-wrapper_border-radius',
|
59
|
+
textWrapperHeight: '--plasma-number-input_text-wrapper_height',
|
60
|
+
textWrapperPadding: '--plasma-number-input_text-wrapper_padding',
|
61
|
+
fontFamily: '--plasma-number-input_font-family',
|
62
|
+
fontStyle: '--plasma-number-input_font-style',
|
63
|
+
fontSize: '--plasma-number-input_font-size',
|
64
|
+
fontWeight: '--plasma-number-input_font-weight',
|
65
|
+
letterSpacing: '--plasma-number-input_letter-spacing',
|
66
|
+
lineHeight: '--plasma-number-input_line-height',
|
67
|
+
textBeforeMarginRight: '--plasma-number-input_text-before_margin-right',
|
68
|
+
textAfterMarginLeft: '--plasma-number-input_text-after_margin-left',
|
69
|
+
// Input view tokens
|
70
|
+
caretColor: '--plasma-number-input_caret_color',
|
71
|
+
caretColorSolid: '--plasma-number-input_caret_color-solid',
|
72
|
+
color: '--plasma-number-input_color',
|
73
|
+
colorSolid: '--plasma-number-input_color-solid',
|
74
|
+
backgroundColor: '--plasma-number-input_background-color',
|
75
|
+
backgroundColorHover: '--plasma-number-input_background-color-hover',
|
76
|
+
backgroundColorFocus: '--plasma-number-input_background-color-focus',
|
77
|
+
backgroundColorSolidFocus: '--plasma-number-input_background-color-solid-focus',
|
78
|
+
backgroundColorSolid: '--plasma-number-input_background-color-solid',
|
79
|
+
borderColor: '--plasma-number-input_border-color',
|
80
|
+
borderColorHover: '--plasma-number-input_border-color-hover',
|
81
|
+
borderColorFocus: '--plasma-number-input_border-color-focus',
|
82
|
+
borderColorSolidFocus: '--plasma-number-input_border-color-solid-focus',
|
83
|
+
borderColorSolid: '--plasma-number-input_border-color-solid',
|
84
|
+
additionalTextColor: '--plasma-number-input_additional-text_color',
|
85
|
+
additionalTextColorSolid: '--plasma-number-input_additional-text_color-solid',
|
86
|
+
errorColor: '--plasma-number-input_error-color',
|
87
|
+
backgroundErrorColor: '--plasma-number-input_background_error-color',
|
88
|
+
borderErrorColor: '--plasma-number-input_border_error-color',
|
89
|
+
// Loader tokens
|
90
|
+
loaderSpinnerSize: '--plasma-number-input_loader-spinner_size',
|
91
|
+
loaderSpinnerColor: '--plasma-number-input_loader-spinner_color',
|
92
|
+
loaderSpinnerColorSolid: '--plasma-number-input_loader-spinner_color-solid'
|
93
|
+
};
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1,11 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { StyledIconButton } from './ActionButton.styles';
|
3
|
+
export var ActionButton = function ActionButton(_ref) {
|
4
|
+
var icon = _ref.icon,
|
5
|
+
className = _ref.className,
|
6
|
+
onClick = _ref.onClick;
|
7
|
+
return /*#__PURE__*/React.createElement(StyledIconButton, {
|
8
|
+
className: className,
|
9
|
+
onClick: onClick
|
10
|
+
}, icon);
|
11
|
+
};
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import _styled from "@emotion/styled/base";
|
2
|
+
import { iconButtonConfig } from '../../../IconButton';
|
3
|
+
import { component, mergeConfig } from '../../../../engines';
|
4
|
+
var mergedIconButtonConfig = /*#__PURE__*/mergeConfig(iconButtonConfig);
|
5
|
+
var IconButton = /*#__PURE__*/component(mergedIconButtonConfig);
|
6
|
+
export var StyledIconButton = /*#__PURE__*/_styled(IconButton, {
|
7
|
+
target: "e1l688ca0",
|
8
|
+
label: "plasma-new-hope__StyledIconButton"
|
9
|
+
})(process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvTnVtYmVySW5wdXQvdWkvQWN0aW9uQnV0dG9uL0FjdGlvbkJ1dHRvbi5zdHlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBUWtEIiwiZmlsZSI6Ii4uLy4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvTnVtYmVySW5wdXQvdWkvQWN0aW9uQnV0dG9uL0FjdGlvbkJ1dHRvbi5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5cbmltcG9ydCB7IGljb25CdXR0b25Db25maWcgfSBmcm9tICcuLi8uLi8uLi9JY29uQnV0dG9uJztcbmltcG9ydCB7IGNvbXBvbmVudCwgbWVyZ2VDb25maWcgfSBmcm9tICcuLi8uLi8uLi8uLi9lbmdpbmVzJztcblxuY29uc3QgbWVyZ2VkSWNvbkJ1dHRvbkNvbmZpZyA9IG1lcmdlQ29uZmlnKGljb25CdXR0b25Db25maWcpO1xuY29uc3QgSWNvbkJ1dHRvbiA9IGNvbXBvbmVudChtZXJnZWRJY29uQnV0dG9uQ29uZmlnKTtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZEljb25CdXR0b24gPSBzdHlsZWQoSWNvbkJ1dHRvbilgYDtcbiJdfQ== */");
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1,204 @@
|
|
1
|
+
var _StyledSpinner;
|
2
|
+
var _excluded = ["value", "min", "max", "isLoading", "loader", "disabled", "segmentation", "textBefore", "textAfter", "isManualInput", "isInputFocused", "setIsInputFocused", "setIsAnimationRun", "setInnerValue", "onChange", "onBlur", "onKeyDown"];
|
3
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
4
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
5
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
6
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
7
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
8
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
9
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
10
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
11
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
12
|
+
import React, { forwardRef, useEffect, useRef, useState } from 'react';
|
13
|
+
import { useForkRef } from '@salutejs/plasma-core';
|
14
|
+
import { classes } from '../../NumberInput.tokens';
|
15
|
+
import { cx, isNumber } from '../../../../utils';
|
16
|
+
import { useDidMountEffect } from '../../../../hooks';
|
17
|
+
import { defaultCharacterWidth, excludingNumberSchema, numberSchema } from '../../utils';
|
18
|
+
import { keyCodes } from '../../../../utils/constants';
|
19
|
+
import { AdditionalText, Input, InputWrapper, DynamicInput, InputWidthHelper, TextWrapper, StyledSpinner, Loader } from './Input.styles';
|
20
|
+
export var NumberInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
21
|
+
var value = _ref.value,
|
22
|
+
min = _ref.min,
|
23
|
+
max = _ref.max,
|
24
|
+
isLoading = _ref.isLoading,
|
25
|
+
loader = _ref.loader,
|
26
|
+
disabled = _ref.disabled,
|
27
|
+
segmentation = _ref.segmentation,
|
28
|
+
textBefore = _ref.textBefore,
|
29
|
+
textAfter = _ref.textAfter,
|
30
|
+
isManualInput = _ref.isManualInput,
|
31
|
+
isInputFocused = _ref.isInputFocused,
|
32
|
+
setIsInputFocused = _ref.setIsInputFocused,
|
33
|
+
setIsAnimationRun = _ref.setIsAnimationRun,
|
34
|
+
setInnerValue = _ref.setInnerValue,
|
35
|
+
onChange = _ref.onChange,
|
36
|
+
onBlur = _ref.onBlur,
|
37
|
+
onKeyDown = _ref.onKeyDown,
|
38
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
39
|
+
var _useState = useState(value ? "".concat(String(value).length, "ch") : defaultCharacterWidth),
|
40
|
+
_useState2 = _slicedToArray(_useState, 2),
|
41
|
+
dynamicWidth = _useState2[0],
|
42
|
+
setDynamicWidth = _useState2[1];
|
43
|
+
var _useState3 = useState(Number(value)),
|
44
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
45
|
+
lastValidValue = _useState4[0],
|
46
|
+
setLastValidValue = _useState4[1];
|
47
|
+
var _useState5 = useState(undefined),
|
48
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
49
|
+
errorClass = _useState6[0],
|
50
|
+
setErrorClass = _useState6[1];
|
51
|
+
var _useState7 = useState(),
|
52
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
53
|
+
errorValue = _useState8[0],
|
54
|
+
setErrorValue = _useState8[1];
|
55
|
+
var inputHelperRef = useRef(null);
|
56
|
+
var wrapperRef = useRef(null);
|
57
|
+
var textWrapperRef = useRef(null);
|
58
|
+
var inputRef = useRef(null);
|
59
|
+
var inputForkRef = useForkRef(inputRef, ref);
|
60
|
+
var solidViewClass = segmentation === 'solid' ? classes.solidView : undefined;
|
61
|
+
var manualInputClass = isManualInput ? classes.manualInput : undefined;
|
62
|
+
var getInputWidth = function getInputWidth() {
|
63
|
+
var _inputHelperRef$curre;
|
64
|
+
var firstRender = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
65
|
+
if (!firstRender && (_inputHelperRef$curre = inputHelperRef.current) !== null && _inputHelperRef$curre !== void 0 && _inputHelperRef$curre.clientWidth) {
|
66
|
+
var _inputHelperRef$curre2;
|
67
|
+
return "".concat((_inputHelperRef$curre2 = inputHelperRef.current) === null || _inputHelperRef$curre2 === void 0 ? void 0 : _inputHelperRef$curre2.clientWidth, "px");
|
68
|
+
}
|
69
|
+
if (value) {
|
70
|
+
return "".concat(String(value).length, "ch");
|
71
|
+
}
|
72
|
+
return defaultCharacterWidth;
|
73
|
+
};
|
74
|
+
var setValues = function setValues(event, newValue) {
|
75
|
+
setLastValidValue(newValue);
|
76
|
+
setInnerValue(newValue);
|
77
|
+
if (onChange) {
|
78
|
+
onChange(event, newValue);
|
79
|
+
}
|
80
|
+
};
|
81
|
+
var validateValue = function validateValue(newValue) {
|
82
|
+
if (!newValue || !isNumber(newValue)) {
|
83
|
+
setValues(null, lastValidValue);
|
84
|
+
setIsAnimationRun(false);
|
85
|
+
return;
|
86
|
+
}
|
87
|
+
if (String(newValue).endsWith('.')) {
|
88
|
+
setValues(null, Number(newValue));
|
89
|
+
setIsAnimationRun(false);
|
90
|
+
return;
|
91
|
+
}
|
92
|
+
var resValue = Number(newValue);
|
93
|
+
if (max !== undefined && resValue > max) {
|
94
|
+
setErrorClass(classes.errorAnimation);
|
95
|
+
setErrorValue(max);
|
96
|
+
setIsAnimationRun(true);
|
97
|
+
return;
|
98
|
+
}
|
99
|
+
if (min !== undefined && resValue < min) {
|
100
|
+
setErrorClass(classes.errorAnimation);
|
101
|
+
setErrorValue(min);
|
102
|
+
setIsAnimationRun(true);
|
103
|
+
}
|
104
|
+
setIsAnimationRun(false);
|
105
|
+
};
|
106
|
+
var handleManualInputChange = function handleManualInputChange(event) {
|
107
|
+
var _textWrapperRef$curre, _wrapperRef$current;
|
108
|
+
if (!isManualInput || disabled) {
|
109
|
+
return;
|
110
|
+
}
|
111
|
+
setIsAnimationRun(true);
|
112
|
+
var newValue = event.target.value;
|
113
|
+
if (!newValue) {
|
114
|
+
setInnerValue('');
|
115
|
+
if (onChange) {
|
116
|
+
onChange(event, '');
|
117
|
+
}
|
118
|
+
return;
|
119
|
+
}
|
120
|
+
var cleanValue = newValue.replace(excludingNumberSchema, '');
|
121
|
+
if (cleanValue.endsWith('.') || cleanValue === '-') {
|
122
|
+
setInnerValue(cleanValue);
|
123
|
+
if (onChange) {
|
124
|
+
onChange(event, cleanValue);
|
125
|
+
}
|
126
|
+
return;
|
127
|
+
}
|
128
|
+
var isValid = numberSchema.test(cleanValue);
|
129
|
+
if (!isValid) {
|
130
|
+
setValues(event, lastValidValue);
|
131
|
+
return;
|
132
|
+
}
|
133
|
+
if (textWrapperRef !== null && textWrapperRef !== void 0 && textWrapperRef.current && wrapperRef !== null && wrapperRef !== void 0 && wrapperRef.current && (textWrapperRef === null || textWrapperRef === void 0 || (_textWrapperRef$curre = textWrapperRef.current) === null || _textWrapperRef$curre === void 0 ? void 0 : _textWrapperRef$curre.clientWidth) > (wrapperRef === null || wrapperRef === void 0 || (_wrapperRef$current = wrapperRef.current) === null || _wrapperRef$current === void 0 ? void 0 : _wrapperRef$current.clientWidth)) {
|
134
|
+
wrapperRef.current.scrollLeft = textWrapperRef.current.offsetWidth - textWrapperRef.current.offsetLeft || 0;
|
135
|
+
}
|
136
|
+
setValues(event, Number(cleanValue));
|
137
|
+
};
|
138
|
+
var handleClickInputWrapper = function handleClickInputWrapper() {
|
139
|
+
if (!isManualInput || !inputRef.current) {
|
140
|
+
return;
|
141
|
+
}
|
142
|
+
if (!isInputFocused) {
|
143
|
+
inputRef.current.select();
|
144
|
+
}
|
145
|
+
setIsInputFocused(true);
|
146
|
+
};
|
147
|
+
var handleBlur = function handleBlur(event) {
|
148
|
+
validateValue(value);
|
149
|
+
setIsInputFocused(false);
|
150
|
+
if (onBlur) {
|
151
|
+
onBlur(event);
|
152
|
+
}
|
153
|
+
};
|
154
|
+
var handleKeyDown = function handleKeyDown(event) {
|
155
|
+
if (!isManualInput || disabled) {
|
156
|
+
return;
|
157
|
+
}
|
158
|
+
if (event.keyCode === keyCodes.Enter) {
|
159
|
+
event.preventDefault();
|
160
|
+
validateValue(value);
|
161
|
+
if (onKeyDown) {
|
162
|
+
onKeyDown(event);
|
163
|
+
}
|
164
|
+
}
|
165
|
+
};
|
166
|
+
var handleEndErrorAnimation = function handleEndErrorAnimation(correctValue) {
|
167
|
+
setIsAnimationRun(false);
|
168
|
+
setIsInputFocused(false);
|
169
|
+
setErrorClass(undefined);
|
170
|
+
setValues(null, correctValue);
|
171
|
+
};
|
172
|
+
useEffect(function () {
|
173
|
+
setDynamicWidth(getInputWidth());
|
174
|
+
}, []);
|
175
|
+
useDidMountEffect(function () {
|
176
|
+
setDynamicWidth(getInputWidth(false));
|
177
|
+
}, [value]);
|
178
|
+
return /*#__PURE__*/React.createElement(InputWrapper, {
|
179
|
+
ref: wrapperRef,
|
180
|
+
className: cx(solidViewClass, errorClass, manualInputClass),
|
181
|
+
isManualInput: Boolean(isManualInput),
|
182
|
+
onClick: handleClickInputWrapper
|
183
|
+
}, /*#__PURE__*/React.createElement(TextWrapper, {
|
184
|
+
ref: textWrapperRef
|
185
|
+
}, !isLoading && textBefore && /*#__PURE__*/React.createElement(AdditionalText, {
|
186
|
+
className: classes.textBefore
|
187
|
+
}, textBefore), isLoading ? /*#__PURE__*/React.createElement(Loader, null, loader || _StyledSpinner || (_StyledSpinner = /*#__PURE__*/React.createElement(StyledSpinner, null))) : /*#__PURE__*/React.createElement(DynamicInput, null, /*#__PURE__*/React.createElement(Input, _extends({
|
188
|
+
ref: inputForkRef,
|
189
|
+
dynamicWidth: dynamicWidth,
|
190
|
+
value: value,
|
191
|
+
isManualInput: Boolean(isManualInput),
|
192
|
+
tabIndex: disabled || !isManualInput ? -1 : 0,
|
193
|
+
onChange: handleManualInputChange,
|
194
|
+
onBlur: handleBlur,
|
195
|
+
onKeyDown: handleKeyDown,
|
196
|
+
onAnimationEnd: function onAnimationEnd() {
|
197
|
+
return handleEndErrorAnimation(Number(errorValue));
|
198
|
+
}
|
199
|
+
}, rest)), /*#__PURE__*/React.createElement(InputWidthHelper, {
|
200
|
+
ref: inputHelperRef
|
201
|
+
}, value)), !isLoading && textAfter && /*#__PURE__*/React.createElement(AdditionalText, {
|
202
|
+
className: classes.textAfter
|
203
|
+
}, textAfter)));
|
204
|
+
});
|