@salutejs/plasma-new-hope 0.142.2-canary.1431.10830104806.0 → 0.143.0-canary.1421.10814573412.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (206) hide show
  1. package/cjs/components/Autocomplete/Autocomplete.css +15 -16
  2. package/cjs/components/Combobox/ComboboxNew/Combobox.css +15 -16
  3. package/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.css +15 -16
  4. package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.css +15 -16
  5. package/cjs/components/DatePicker/RangeDate/RangeDate.css +15 -16
  6. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +15 -16
  7. package/cjs/components/DatePicker/SingleDate/SingleDate.css +15 -16
  8. package/cjs/components/Grid/Grid.js +1 -1
  9. package/cjs/components/Grid/Grid.js.map +1 -1
  10. package/cjs/components/Range/Range.css +15 -16
  11. package/cjs/components/Slider/Slider.css +21 -21
  12. package/cjs/components/Slider/Slider.js +12 -5
  13. package/cjs/components/Slider/Slider.js.map +1 -1
  14. package/cjs/components/Slider/components/Double/Double.css +15 -16
  15. package/cjs/components/Slider/components/Single/Single.css +6 -5
  16. package/cjs/components/Slider/components/Single/Single.js +34 -7
  17. package/cjs/components/Slider/components/Single/Single.js.map +1 -1
  18. package/cjs/components/Slider/components/Single/Single.styles.js +7 -1
  19. package/cjs/components/Slider/components/Single/Single.styles.js.map +1 -1
  20. package/cjs/components/Slider/components/Single/{Single.styles_1r9f1e0.css → Single.styles_9lxkbx.css} +1 -0
  21. package/cjs/components/TextArea/TextArea.js +3 -2
  22. package/cjs/components/TextArea/TextArea.js.map +1 -1
  23. package/cjs/components/TextField/TextField.js +1 -1
  24. package/cjs/components/TextField/TextField.js.map +1 -1
  25. package/cjs/components/TextField/TextField.styles.js +11 -22
  26. package/cjs/components/TextField/TextField.styles.js.map +1 -1
  27. package/{es/components/TextField/TextField.styles_ht6ibd.css → cjs/components/TextField/TextField.styles_u6pm7v.css} +4 -5
  28. package/cjs/components/TextField/TextField.tokens.js +1 -5
  29. package/cjs/components/TextField/TextField.tokens.js.map +1 -1
  30. package/cjs/components/TextField/variations/_label-placement/base.js +1 -1
  31. package/{es/components/TextField/variations/_label-placement/base_6k17xp.css → cjs/components/TextField/variations/_label-placement/base_1dbnupp.css} +1 -1
  32. package/cjs/components/TextField/variations/_read-only/base.js +1 -1
  33. package/{es/components/TextField/variations/_read-only/base_8onybn.css → cjs/components/TextField/variations/_read-only/base_4tqave.css} +1 -1
  34. package/cjs/components/TextField/variations/_size/base.js +1 -1
  35. package/cjs/components/TextField/variations/_size/{base_1h8l0kj.css → base_uk56yo.css} +1 -1
  36. package/cjs/components/TextField/variations/_view/base.js +1 -1
  37. package/cjs/components/TextField/variations/_view/{base_1ph5cr0.css → base_uszjx8.css} +1 -1
  38. package/cjs/hooks/useForm.js +71 -0
  39. package/cjs/hooks/useForm.js.map +1 -0
  40. package/cjs/index.css +21 -21
  41. package/cjs/index.js +5 -0
  42. package/cjs/index.js.map +1 -1
  43. package/cjs/utils/index.js.map +1 -1
  44. package/cjs/utils/setRefList.js +28 -0
  45. package/cjs/utils/setRefList.js.map +1 -0
  46. package/emotion/cjs/components/Grid/Grid.js +1 -1
  47. package/emotion/cjs/components/Slider/Slider.js +15 -6
  48. package/emotion/cjs/components/Slider/components/Single/Single.js +34 -7
  49. package/emotion/cjs/components/Slider/components/Single/Single.styles.js +26 -13
  50. package/emotion/cjs/components/TextArea/TextArea.js +3 -3
  51. package/emotion/cjs/components/TextField/TextField.js +2 -2
  52. package/emotion/cjs/components/TextField/TextField.styles.js +23 -27
  53. package/emotion/cjs/components/TextField/TextField.template-doc.mdx +2 -2
  54. package/emotion/cjs/components/TextField/TextField.tokens.js +1 -5
  55. package/emotion/cjs/components/TextFieldGroup/TextFieldGroup.template-doc.mdx +1 -1
  56. package/emotion/cjs/examples/plasma_b2c/components/Form/Form.stories.tsx +182 -0
  57. package/emotion/cjs/examples/plasma_b2c/components/TextField/TextField.config.js +12 -12
  58. package/emotion/cjs/examples/plasma_b2c/components/TextField/TextField.stories.tsx +2 -3
  59. package/emotion/cjs/examples/plasma_web/components/TextField/TextField.config.js +12 -12
  60. package/emotion/cjs/examples/plasma_web/components/TextField/TextField.stories.tsx +1 -2
  61. package/emotion/cjs/hooks/index.js +8 -1
  62. package/emotion/cjs/hooks/useForm.js +72 -0
  63. package/emotion/cjs/utils/index.js +15 -0
  64. package/emotion/cjs/utils/setRefList.js +27 -0
  65. package/emotion/es/components/Grid/Grid.js +1 -1
  66. package/emotion/es/components/Slider/Slider.js +15 -5
  67. package/emotion/es/components/Slider/components/Single/Single.js +35 -8
  68. package/emotion/es/components/Slider/components/Single/Single.styles.js +25 -12
  69. package/emotion/es/components/TextArea/TextArea.js +4 -4
  70. package/emotion/es/components/TextField/TextField.js +2 -2
  71. package/emotion/es/components/TextField/TextField.styles.js +23 -27
  72. package/emotion/es/components/TextField/TextField.template-doc.mdx +2 -2
  73. package/emotion/es/components/TextField/TextField.tokens.js +1 -5
  74. package/emotion/es/components/TextFieldGroup/TextFieldGroup.template-doc.mdx +1 -1
  75. package/emotion/es/examples/plasma_b2c/components/Form/Form.stories.tsx +182 -0
  76. package/emotion/es/examples/plasma_b2c/components/TextField/TextField.config.js +12 -12
  77. package/emotion/es/examples/plasma_b2c/components/TextField/TextField.stories.tsx +2 -3
  78. package/emotion/es/examples/plasma_web/components/TextField/TextField.config.js +12 -12
  79. package/emotion/es/examples/plasma_web/components/TextField/TextField.stories.tsx +1 -2
  80. package/emotion/es/hooks/index.js +2 -1
  81. package/emotion/es/hooks/useForm.js +63 -0
  82. package/emotion/es/utils/index.js +1 -0
  83. package/emotion/es/utils/setRefList.js +20 -0
  84. package/es/components/Autocomplete/Autocomplete.css +15 -16
  85. package/es/components/Combobox/ComboboxNew/Combobox.css +15 -16
  86. package/es/components/Combobox/ComboboxNew/ui/Inner/Inner.css +15 -16
  87. package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.css +15 -16
  88. package/es/components/DatePicker/RangeDate/RangeDate.css +15 -16
  89. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +15 -16
  90. package/es/components/DatePicker/SingleDate/SingleDate.css +15 -16
  91. package/es/components/Grid/Grid.js +1 -1
  92. package/es/components/Grid/Grid.js.map +1 -1
  93. package/es/components/Range/Range.css +15 -16
  94. package/es/components/Slider/Slider.css +21 -21
  95. package/es/components/Slider/Slider.js +13 -6
  96. package/es/components/Slider/Slider.js.map +1 -1
  97. package/es/components/Slider/components/Double/Double.css +15 -16
  98. package/es/components/Slider/components/Single/Single.css +6 -5
  99. package/es/components/Slider/components/Single/Single.js +35 -8
  100. package/es/components/Slider/components/Single/Single.js.map +1 -1
  101. package/es/components/Slider/components/Single/Single.styles.js +7 -2
  102. package/es/components/Slider/components/Single/Single.styles.js.map +1 -1
  103. package/es/components/Slider/components/Single/{Single.styles_1r9f1e0.css → Single.styles_9lxkbx.css} +1 -0
  104. package/es/components/TextArea/TextArea.js +3 -2
  105. package/es/components/TextArea/TextArea.js.map +1 -1
  106. package/es/components/TextField/TextField.js +1 -1
  107. package/es/components/TextField/TextField.js.map +1 -1
  108. package/es/components/TextField/TextField.styles.js +11 -22
  109. package/es/components/TextField/TextField.styles.js.map +1 -1
  110. package/{cjs/components/TextField/TextField.styles_ht6ibd.css → es/components/TextField/TextField.styles_u6pm7v.css} +4 -5
  111. package/es/components/TextField/TextField.tokens.js +1 -5
  112. package/es/components/TextField/TextField.tokens.js.map +1 -1
  113. package/es/components/TextField/variations/_label-placement/base.js +1 -1
  114. package/{cjs/components/TextField/variations/_label-placement/base_6k17xp.css → es/components/TextField/variations/_label-placement/base_1dbnupp.css} +1 -1
  115. package/es/components/TextField/variations/_read-only/base.js +1 -1
  116. package/{cjs/components/TextField/variations/_read-only/base_8onybn.css → es/components/TextField/variations/_read-only/base_4tqave.css} +1 -1
  117. package/es/components/TextField/variations/_size/base.js +1 -1
  118. package/es/components/TextField/variations/_size/{base_1h8l0kj.css → base_uk56yo.css} +1 -1
  119. package/es/components/TextField/variations/_view/base.js +1 -1
  120. package/es/components/TextField/variations/_view/{base_1ph5cr0.css → base_uszjx8.css} +1 -1
  121. package/es/hooks/useForm.js +67 -0
  122. package/es/hooks/useForm.js.map +1 -0
  123. package/es/index.css +21 -21
  124. package/es/index.js +2 -0
  125. package/es/index.js.map +1 -1
  126. package/es/utils/index.js.map +1 -1
  127. package/es/utils/setRefList.js +23 -0
  128. package/es/utils/setRefList.js.map +1 -0
  129. package/package.json +3 -2
  130. package/styled-components/cjs/components/Grid/Grid.js +1 -1
  131. package/styled-components/cjs/components/Slider/Slider.js +15 -6
  132. package/styled-components/cjs/components/Slider/components/Single/Single.js +34 -7
  133. package/styled-components/cjs/components/Slider/components/Single/Single.styles.js +5 -2
  134. package/styled-components/cjs/components/TextArea/TextArea.js +2 -2
  135. package/styled-components/cjs/components/TextField/TextField.js +1 -1
  136. package/styled-components/cjs/components/TextField/TextField.styles.js +9 -12
  137. package/styled-components/cjs/components/TextField/TextField.template-doc.mdx +2 -2
  138. package/styled-components/cjs/components/TextField/TextField.tokens.js +1 -5
  139. package/styled-components/cjs/components/TextFieldGroup/TextFieldGroup.template-doc.mdx +1 -1
  140. package/styled-components/cjs/examples/plasma_b2c/components/Form/Form.stories.tsx +182 -0
  141. package/styled-components/cjs/examples/plasma_b2c/components/TextField/TextField.config.js +4 -4
  142. package/styled-components/cjs/examples/plasma_b2c/components/TextField/TextField.stories.tsx +2 -3
  143. package/styled-components/cjs/examples/plasma_web/components/TextField/TextField.config.js +4 -4
  144. package/styled-components/cjs/examples/plasma_web/components/TextField/TextField.stories.tsx +1 -2
  145. package/styled-components/cjs/hooks/index.js +8 -1
  146. package/styled-components/cjs/hooks/useForm.js +72 -0
  147. package/styled-components/cjs/utils/index.js +15 -0
  148. package/styled-components/cjs/utils/setRefList.js +27 -0
  149. package/styled-components/es/components/Grid/Grid.js +1 -1
  150. package/styled-components/es/components/Slider/Slider.js +15 -5
  151. package/styled-components/es/components/Slider/components/Single/Single.js +35 -8
  152. package/styled-components/es/components/Slider/components/Single/Single.styles.js +4 -1
  153. package/styled-components/es/components/TextArea/TextArea.js +3 -3
  154. package/styled-components/es/components/TextField/TextField.js +1 -1
  155. package/styled-components/es/components/TextField/TextField.styles.js +9 -12
  156. package/styled-components/es/components/TextField/TextField.template-doc.mdx +2 -2
  157. package/styled-components/es/components/TextField/TextField.tokens.js +1 -5
  158. package/styled-components/es/components/TextFieldGroup/TextFieldGroup.template-doc.mdx +1 -1
  159. package/styled-components/es/examples/plasma_b2c/components/Form/Form.stories.tsx +182 -0
  160. package/styled-components/es/examples/plasma_b2c/components/TextField/TextField.config.js +4 -4
  161. package/styled-components/es/examples/plasma_b2c/components/TextField/TextField.stories.tsx +2 -3
  162. package/styled-components/es/examples/plasma_web/components/TextField/TextField.config.js +4 -4
  163. package/styled-components/es/examples/plasma_web/components/TextField/TextField.stories.tsx +1 -2
  164. package/styled-components/es/hooks/index.js +2 -1
  165. package/styled-components/es/hooks/useForm.js +63 -0
  166. package/styled-components/es/utils/index.js +1 -0
  167. package/styled-components/es/utils/setRefList.js +20 -0
  168. package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts +4 -4
  169. package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts.map +1 -1
  170. package/types/components/Combobox/ComboboxNew/ui/Target/Target.styles.d.ts +4 -4
  171. package/types/components/Combobox/ComboboxNew/ui/Target/Target.styles.d.ts.map +1 -1
  172. package/types/components/DatePicker/SingleDate/SingleDate.styles.d.ts +4 -4
  173. package/types/components/DatePicker/SingleDate/SingleDate.styles.d.ts.map +1 -1
  174. package/types/components/Range/Range.styles.d.ts +4 -4
  175. package/types/components/Range/Range.styles.d.ts.map +1 -1
  176. package/types/components/Slider/Slider.d.ts.map +1 -1
  177. package/types/components/Slider/components/Double/Double.styles.d.ts +4 -4
  178. package/types/components/Slider/components/Double/Double.styles.d.ts.map +1 -1
  179. package/types/components/Slider/components/Double/Double.types.d.ts +2 -0
  180. package/types/components/Slider/components/Double/Double.types.d.ts.map +1 -1
  181. package/types/components/Slider/components/Single/Single.d.ts.map +1 -1
  182. package/types/components/Slider/components/Single/Single.styles.d.ts +1 -0
  183. package/types/components/Slider/components/Single/Single.styles.d.ts.map +1 -1
  184. package/types/components/Slider/components/Single/Single.types.d.ts +3 -1
  185. package/types/components/Slider/components/Single/Single.types.d.ts.map +1 -1
  186. package/types/components/TextArea/TextArea.d.ts.map +1 -1
  187. package/types/components/TextField/TextField.styles.d.ts +2 -6
  188. package/types/components/TextField/TextField.styles.d.ts.map +1 -1
  189. package/types/components/TextField/TextField.tokens.d.ts +0 -3
  190. package/types/components/TextField/TextField.tokens.d.ts.map +1 -1
  191. package/types/components/TextField/TextField.types.d.ts +1 -2
  192. package/types/components/TextField/TextField.types.d.ts.map +1 -1
  193. package/types/examples/plasma_b2c/components/TextField/TextField.config.d.ts.map +1 -1
  194. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts +4 -4
  195. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts.map +1 -1
  196. package/types/examples/plasma_web/components/TextField/TextField.config.d.ts.map +1 -1
  197. package/types/examples/plasma_web/components/TextField/TextField.d.ts +4 -4
  198. package/types/examples/plasma_web/components/TextField/TextField.d.ts.map +1 -1
  199. package/types/hooks/index.d.ts +1 -0
  200. package/types/hooks/index.d.ts.map +1 -1
  201. package/types/hooks/useForm.d.ts +10 -0
  202. package/types/hooks/useForm.d.ts.map +1 -0
  203. package/types/utils/index.d.ts +1 -0
  204. package/types/utils/index.d.ts.map +1 -1
  205. package/types/utils/setRefList.d.ts +6 -0
  206. package/types/utils/setRefList.d.ts.map +1 -0
@@ -0,0 +1,182 @@
1
+ import { useForm, Controller } from 'react-hook-form';
2
+ import React from 'react';
3
+ import type { Meta, StoryObj } from '@storybook/react';
4
+
5
+ import { WithTheme } from '../../../_helpers';
6
+ import { Button } from '../Button/Button';
7
+ import { TextField } from '../TextField/TextField';
8
+ import { TextArea } from '../TextArea/TextArea'; // TextArea.tsx 120 строка, не работает из-за некорректного ref
9
+ import { Checkbox } from '../Checkbox/Checkbox';
10
+ import { Switch } from '../Switch/Switch';
11
+ import { Radiobox } from '../Radiobox/Radiobox';
12
+ import { RadioGroup } from '../../../../components/Radiobox';
13
+ import { Slider } from '../Slider/Slider';
14
+ import { useFormPlasma } from '../../../../hooks';
15
+
16
+ type StoryDropdownProps = {};
17
+
18
+ const langName = 'language';
19
+ const itemsRadiobox = [
20
+ { langName, value: 'c', label: 'C', disabled: false },
21
+ { langName, value: 'cpp', label: 'C++', disabled: false },
22
+ { langName, value: 'assembly', label: 'Assembly', disabled: false },
23
+ ];
24
+
25
+ const DefaultForm = () => {
26
+ const onSubmit = (data) => {
27
+ console.log(data);
28
+ };
29
+
30
+ const { formRef, formData } = useFormPlasma(onSubmit, {
31
+ textfield: 'textfield',
32
+ textarea: 'textarea',
33
+ checkbox: 'checkobox',
34
+ switch: true,
35
+ radiobox: 'c',
36
+ slider: 10,
37
+ });
38
+
39
+ return (
40
+ <form onSubmit={formData} style={{ display: 'flex', flexDirection: 'column', gap: '20px' }} ref={formRef}>
41
+ <TextField name="textfield" placeholder="Textfield" required={false} />
42
+ <TextArea name="textarea" autoResize placeholder="Textarea" />
43
+ <Checkbox name="checkbox" label="Checkbox" />
44
+ <Switch name="switch" label="Switch" labelPosition="after" />
45
+ <RadioGroup aria-labelledby="radiogroup-title-id">
46
+ <div id="radiogroup-title-id" style={{ margin: '1rem 0', fontWeight: '600' }}>
47
+ Выберите язык программирования для изучения.
48
+ </div>
49
+ {itemsRadiobox.map((item) => (
50
+ <Radiobox
51
+ name="radiobox"
52
+ key={item.value}
53
+ value={item.value}
54
+ label={item.label}
55
+ disabled={item.disabled}
56
+ />
57
+ ))}
58
+ </RadioGroup>
59
+ <Slider name="slider" label="Slider" type="single" min={0} max={100} />
60
+ <Button type="submit">Отправить</Button>
61
+ </form>
62
+ );
63
+ };
64
+
65
+ const meta: Meta<StoryDropdownProps> = {
66
+ title: 'plasma_b2c/Form',
67
+ decorators: [WithTheme],
68
+ component: DefaultForm,
69
+ };
70
+
71
+ export default meta;
72
+
73
+ const StoryPlasmaForm = () => {
74
+ return <DefaultForm />;
75
+ };
76
+
77
+ export const Default: StoryObj<StoryDropdownProps> = {
78
+ render: () => <StoryPlasmaForm />,
79
+ };
80
+
81
+ const DefaultUseForm = () => {
82
+ const { register, handleSubmit } = useForm({
83
+ defaultValues: {
84
+ textfield: 'John Doe',
85
+ textarea: 'Default description',
86
+ checkbox: true,
87
+ switch: true,
88
+ radiobox: 'c',
89
+ slider: 10,
90
+ },
91
+ });
92
+ const onSubmit = (data) => {
93
+ console.log(data);
94
+ };
95
+
96
+ return (
97
+ <form onSubmit={handleSubmit(onSubmit)} style={{ display: 'flex', flexDirection: 'column', gap: '20px' }}>
98
+ <TextField {...register('textfield')} placeholder="Textfield" required={false} />
99
+ <TextArea {...register('textarea')} autoResize placeholder="Textarea" />
100
+ <Checkbox {...register('checkbox')} label="Checkbox" />
101
+ <Switch {...register('switch')} label="Switch" labelPosition="after" />
102
+ <RadioGroup aria-labelledby="radiogroup-title-id">
103
+ <div id="radiogroup-title-id" style={{ margin: '1rem 0', fontWeight: '600' }}>
104
+ Выберите язык программирования для изучения.
105
+ </div>
106
+ {itemsRadiobox.map((item) => (
107
+ <Radiobox
108
+ {...register('radiobox')}
109
+ key={item.value}
110
+ value={item.value}
111
+ label={item.label}
112
+ disabled={item.disabled}
113
+ />
114
+ ))}
115
+ </RadioGroup>
116
+ <Button type="submit">Отправить</Button>
117
+ </form>
118
+ );
119
+ };
120
+
121
+ const StoryHookForm = () => {
122
+ return <DefaultUseForm />;
123
+ };
124
+
125
+ export const UseHookForm: StoryObj<StoryDropdownProps> = {
126
+ render: () => <StoryHookForm />,
127
+ };
128
+
129
+ const DefaultUseFormController = () => {
130
+ const { control, handleSubmit } = useForm({
131
+ defaultValues: {
132
+ textfield: 'John Doe',
133
+ textarea: 'Default description',
134
+ checkbox: true,
135
+ switch: true,
136
+ radiobox: 'c',
137
+ slider: 10,
138
+ },
139
+ });
140
+ const onSubmit = (data) => {
141
+ console.log(data);
142
+ };
143
+
144
+ return (
145
+ <form onSubmit={handleSubmit(onSubmit)} style={{ display: 'flex', flexDirection: 'column', gap: '20px' }}>
146
+ <Controller
147
+ name="textfield"
148
+ control={control}
149
+ render={({ field }) => <TextField {...field} label="TextField" />}
150
+ />
151
+ <Controller
152
+ name="textarea"
153
+ control={control}
154
+ render={({ field }) => <TextArea {...field} label="TextArea" />}
155
+ />
156
+ <Controller
157
+ name="checkbox"
158
+ control={control}
159
+ render={({ field }) => <Checkbox {...field} checked={field.value} label="Checkbox" />}
160
+ />
161
+ <Controller
162
+ name="switch"
163
+ control={control}
164
+ render={({ field }) => <Switch {...field} checked={field.value} labelPosition="after" label="Switch" />}
165
+ />
166
+ <Controller
167
+ name="slider"
168
+ control={control}
169
+ render={({ field }) => <Slider {...field} type="single" label="Slider" min={0} max={100} />}
170
+ />
171
+ <Button type="submit">Отправить</Button>
172
+ </form>
173
+ );
174
+ };
175
+
176
+ const StoryHookFormController = () => {
177
+ return <DefaultUseFormController />;
178
+ };
179
+
180
+ export const UseHookFormController: StoryObj<StoryDropdownProps> = {
181
+ render: () => <StoryHookFormController />,
182
+ };