@salutejs/plasma-new-hope 0.145.0-canary.1421.10845314144.0 → 0.145.0-canary.1433.10846476158.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (162) hide show
  1. package/cjs/components/Slider/Slider.css +10 -12
  2. package/cjs/components/Slider/Slider.js +6 -19
  3. package/cjs/components/Slider/Slider.js.map +1 -1
  4. package/cjs/components/Slider/components/Double/Double.css +5 -6
  5. package/cjs/components/Slider/components/Double/Double.js +2 -36
  6. package/cjs/components/Slider/components/Double/Double.js.map +1 -1
  7. package/cjs/components/Slider/components/Double/Double.styles.js +1 -7
  8. package/cjs/components/Slider/components/Double/Double.styles.js.map +1 -1
  9. package/cjs/components/Slider/components/Double/{Double.styles_4053ky.css → Double.styles_1jhda4u.css} +0 -1
  10. package/cjs/components/Slider/components/Single/Single.css +5 -6
  11. package/cjs/components/Slider/components/Single/Single.js +12 -35
  12. package/cjs/components/Slider/components/Single/Single.js.map +1 -1
  13. package/cjs/components/Slider/components/Single/Single.styles.js +1 -7
  14. package/cjs/components/Slider/components/Single/Single.styles.js.map +1 -1
  15. package/{es/components/Slider/components/Single/Single.styles_9lxkbx.css → cjs/components/Slider/components/Single/Single.styles_1r9f1e0.css} +0 -1
  16. package/cjs/components/Slider/utils/index.js +0 -6
  17. package/cjs/components/Slider/utils/index.js.map +1 -1
  18. package/cjs/components/TextArea/TextArea.js +2 -3
  19. package/cjs/components/TextArea/TextArea.js.map +1 -1
  20. package/cjs/components/TextField/TextField.js +5 -3
  21. package/cjs/components/TextField/TextField.js.map +1 -1
  22. package/cjs/index.css +10 -12
  23. package/cjs/index.js +0 -5
  24. package/cjs/index.js.map +1 -1
  25. package/cjs/utils/index.js.map +1 -1
  26. package/emotion/cjs/components/Slider/Slider.js +6 -15
  27. package/emotion/cjs/components/Slider/components/Double/Double.js +2 -36
  28. package/emotion/cjs/components/Slider/components/Double/Double.styles.js +15 -28
  29. package/emotion/cjs/components/Slider/components/Single/Single.js +7 -30
  30. package/emotion/cjs/components/Slider/components/Single/Single.styles.js +13 -26
  31. package/emotion/cjs/components/Slider/components/index.js +0 -11
  32. package/emotion/cjs/components/Slider/utils/index.js +1 -6
  33. package/emotion/cjs/components/TextArea/TextArea.js +3 -3
  34. package/emotion/cjs/components/TextField/TextField.js +6 -4
  35. package/emotion/cjs/hooks/index.js +1 -8
  36. package/emotion/cjs/utils/index.js +0 -15
  37. package/emotion/es/components/Slider/Slider.js +6 -16
  38. package/emotion/es/components/Slider/components/Double/Double.js +4 -38
  39. package/emotion/es/components/Slider/components/Double/Double.styles.js +14 -27
  40. package/emotion/es/components/Slider/components/Single/Single.js +9 -32
  41. package/emotion/es/components/Slider/components/Single/Single.styles.js +12 -25
  42. package/emotion/es/components/Slider/components/index.js +0 -1
  43. package/emotion/es/components/Slider/utils/index.js +0 -5
  44. package/emotion/es/components/TextArea/TextArea.js +4 -4
  45. package/emotion/es/components/TextField/TextField.js +6 -4
  46. package/emotion/es/hooks/index.js +1 -2
  47. package/emotion/es/utils/index.js +0 -1
  48. package/es/components/Slider/Slider.css +10 -12
  49. package/es/components/Slider/Slider.js +7 -20
  50. package/es/components/Slider/Slider.js.map +1 -1
  51. package/es/components/Slider/components/Double/Double.css +5 -6
  52. package/es/components/Slider/components/Double/Double.js +4 -38
  53. package/es/components/Slider/components/Double/Double.js.map +1 -1
  54. package/es/components/Slider/components/Double/Double.styles.js +2 -7
  55. package/es/components/Slider/components/Double/Double.styles.js.map +1 -1
  56. package/es/components/Slider/components/Double/{Double.styles_4053ky.css → Double.styles_1jhda4u.css} +0 -1
  57. package/es/components/Slider/components/Single/Single.css +5 -6
  58. package/es/components/Slider/components/Single/Single.js +9 -32
  59. package/es/components/Slider/components/Single/Single.js.map +1 -1
  60. package/es/components/Slider/components/Single/Single.styles.js +2 -7
  61. package/es/components/Slider/components/Single/Single.styles.js.map +1 -1
  62. package/{cjs/components/Slider/components/Single/Single.styles_9lxkbx.css → es/components/Slider/components/Single/Single.styles_1r9f1e0.css} +0 -1
  63. package/es/components/Slider/utils/index.js +1 -6
  64. package/es/components/Slider/utils/index.js.map +1 -1
  65. package/es/components/TextArea/TextArea.js +2 -3
  66. package/es/components/TextArea/TextArea.js.map +1 -1
  67. package/es/components/TextField/TextField.js +5 -3
  68. package/es/components/TextField/TextField.js.map +1 -1
  69. package/es/index.css +10 -12
  70. package/es/index.js +0 -2
  71. package/es/index.js.map +1 -1
  72. package/es/utils/index.js.map +1 -1
  73. package/package.json +2 -3
  74. package/styled-components/cjs/components/Slider/Slider.js +6 -15
  75. package/styled-components/cjs/components/Slider/components/Double/Double.js +2 -36
  76. package/styled-components/cjs/components/Slider/components/Double/Double.styles.js +2 -5
  77. package/styled-components/cjs/components/Slider/components/Single/Single.js +7 -30
  78. package/styled-components/cjs/components/Slider/components/Single/Single.styles.js +2 -5
  79. package/styled-components/cjs/components/Slider/components/index.js +0 -11
  80. package/styled-components/cjs/components/Slider/utils/index.js +1 -6
  81. package/styled-components/cjs/components/TextArea/TextArea.js +2 -2
  82. package/styled-components/cjs/components/TextField/TextField.js +5 -3
  83. package/styled-components/cjs/hooks/index.js +1 -8
  84. package/styled-components/cjs/utils/index.js +0 -15
  85. package/styled-components/es/components/Slider/Slider.js +6 -16
  86. package/styled-components/es/components/Slider/components/Double/Double.js +4 -38
  87. package/styled-components/es/components/Slider/components/Double/Double.styles.js +1 -4
  88. package/styled-components/es/components/Slider/components/Single/Single.js +9 -32
  89. package/styled-components/es/components/Slider/components/Single/Single.styles.js +1 -4
  90. package/styled-components/es/components/Slider/components/index.js +0 -1
  91. package/styled-components/es/components/Slider/utils/index.js +0 -5
  92. package/styled-components/es/components/TextArea/TextArea.js +3 -3
  93. package/styled-components/es/components/TextField/TextField.js +5 -3
  94. package/styled-components/es/hooks/index.js +1 -2
  95. package/styled-components/es/utils/index.js +0 -1
  96. package/types/components/Slider/Slider.d.ts.map +1 -1
  97. package/types/components/Slider/Slider.types.d.ts +2 -2
  98. package/types/components/Slider/Slider.types.d.ts.map +1 -1
  99. package/types/components/Slider/components/Double/Double.d.ts.map +1 -1
  100. package/types/components/Slider/components/Double/Double.styles.d.ts +0 -1
  101. package/types/components/Slider/components/Double/Double.styles.d.ts.map +1 -1
  102. package/types/components/Slider/components/Double/Double.types.d.ts +0 -2
  103. package/types/components/Slider/components/Double/Double.types.d.ts.map +1 -1
  104. package/types/components/Slider/components/Single/Single.d.ts.map +1 -1
  105. package/types/components/Slider/components/Single/Single.styles.d.ts +0 -1
  106. package/types/components/Slider/components/Single/Single.styles.d.ts.map +1 -1
  107. package/types/components/Slider/components/Single/Single.types.d.ts +1 -3
  108. package/types/components/Slider/components/Single/Single.types.d.ts.map +1 -1
  109. package/types/components/Slider/components/index.d.ts +0 -2
  110. package/types/components/Slider/components/index.d.ts.map +1 -1
  111. package/types/components/Slider/utils/index.d.ts +0 -1
  112. package/types/components/Slider/utils/index.d.ts.map +1 -1
  113. package/types/components/TextArea/TextArea.d.ts.map +1 -1
  114. package/types/components/TextField/TextField.d.ts.map +1 -1
  115. package/types/examples/plasma_b2c/components/Slider/Slider.d.ts +1 -3
  116. package/types/examples/plasma_b2c/components/Slider/Slider.d.ts.map +1 -1
  117. package/types/examples/plasma_web/components/Slider/Slider.d.ts +1 -3
  118. package/types/examples/plasma_web/components/Slider/Slider.d.ts.map +1 -1
  119. package/types/hooks/index.d.ts +0 -1
  120. package/types/hooks/index.d.ts.map +1 -1
  121. package/types/utils/index.d.ts +0 -1
  122. package/types/utils/index.d.ts.map +1 -1
  123. package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +0 -56
  124. package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js.map +0 -1
  125. package/cjs/hooks/useForm.js +0 -96
  126. package/cjs/hooks/useForm.js.map +0 -1
  127. package/cjs/utils/setRefList.js +0 -28
  128. package/cjs/utils/setRefList.js.map +0 -1
  129. package/emotion/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +0 -60
  130. package/emotion/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.types.js +0 -5
  131. package/emotion/cjs/examples/plasma_b2c/components/Form/Form.stories.tsx +0 -191
  132. package/emotion/cjs/hooks/useForm.js +0 -102
  133. package/emotion/cjs/utils/setRefList.js +0 -27
  134. package/emotion/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +0 -51
  135. package/emotion/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.types.js +0 -1
  136. package/emotion/es/examples/plasma_b2c/components/Form/Form.stories.tsx +0 -191
  137. package/emotion/es/hooks/useForm.js +0 -93
  138. package/emotion/es/utils/setRefList.js +0 -20
  139. package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +0 -52
  140. package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js.map +0 -1
  141. package/es/hooks/useForm.js +0 -92
  142. package/es/hooks/useForm.js.map +0 -1
  143. package/es/utils/setRefList.js +0 -23
  144. package/es/utils/setRefList.js.map +0 -1
  145. package/styled-components/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +0 -60
  146. package/styled-components/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.types.js +0 -5
  147. package/styled-components/cjs/examples/plasma_b2c/components/Form/Form.stories.tsx +0 -191
  148. package/styled-components/cjs/hooks/useForm.js +0 -102
  149. package/styled-components/cjs/utils/setRefList.js +0 -27
  150. package/styled-components/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +0 -51
  151. package/styled-components/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.types.js +0 -1
  152. package/styled-components/es/examples/plasma_b2c/components/Form/Form.stories.tsx +0 -191
  153. package/styled-components/es/hooks/useForm.js +0 -93
  154. package/styled-components/es/utils/setRefList.js +0 -20
  155. package/types/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.d.ts +0 -4
  156. package/types/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.d.ts.map +0 -1
  157. package/types/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.types.d.ts +0 -5
  158. package/types/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.types.d.ts.map +0 -1
  159. package/types/hooks/useForm.d.ts +0 -10
  160. package/types/hooks/useForm.d.ts.map +0 -1
  161. package/types/utils/setRefList.d.ts +0 -6
  162. package/types/utils/setRefList.d.ts.map +0 -1
@@ -1,191 +0,0 @@
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
- import { Calendar, CalendarBase, CalendarBaseRange, CalendarDouble, CalendarDoubleRange } from '../Calendar/Calendar';
16
-
17
- type StoryDropdownProps = {};
18
-
19
- const langName = 'language';
20
- const itemsRadiobox = [
21
- { langName, value: 'c', label: 'C', disabled: false },
22
- { langName, value: 'cpp', label: 'C++', disabled: false },
23
- { langName, value: 'assembly', label: 'Assembly', disabled: false },
24
- ];
25
-
26
- const DefaultForm = () => {
27
- const onSubmit = (data) => {
28
- console.log(data);
29
- };
30
-
31
- const { formRef, formData } = useFormPlasma(onSubmit, {
32
- textfield: 'textfield',
33
- textarea: 'textarea',
34
- checkbox: 'checkobox',
35
- switch: true,
36
- radiobox: 'c',
37
- slider: 10,
38
- sliderd: [10, 20],
39
- });
40
-
41
- return (
42
- <form onSubmit={formData} style={{ display: 'flex', flexDirection: 'column', gap: '20px' }} ref={formRef}>
43
- <TextField name="textfield" placeholder="Textfield" required={false} />
44
- <TextArea name="textarea" autoResize placeholder="Textarea" />
45
- <Checkbox name="checkbox" label="Checkbox" />
46
- <Switch name="switch" label="Switch" labelPosition="after" />
47
- <RadioGroup aria-labelledby="radiogroup-title-id">
48
- <div id="radiogroup-title-id" style={{ margin: '1rem 0', fontWeight: '600' }}>
49
- Выберите язык программирования для изучения.
50
- </div>
51
- {itemsRadiobox.map((item) => (
52
- <Radiobox
53
- name="radiobox"
54
- key={item.value}
55
- value={item.value}
56
- label={item.label}
57
- disabled={item.disabled}
58
- />
59
- ))}
60
- </RadioGroup>
61
- <Slider name="slider" label="Slider" type="single" min={0} max={100} />
62
- <Slider name="sliderd" label="Slider" type="double" min={0} max={100} />
63
- <Button type="submit">Отправить</Button>
64
- </form>
65
- );
66
- };
67
-
68
- const meta: Meta<StoryDropdownProps> = {
69
- title: 'plasma_b2c/Form',
70
- decorators: [WithTheme],
71
- component: DefaultForm,
72
- };
73
-
74
- export default meta;
75
-
76
- const StoryPlasmaForm = () => {
77
- return <DefaultForm />;
78
- };
79
-
80
- export const Default: StoryObj<StoryDropdownProps> = {
81
- render: () => <StoryPlasmaForm />,
82
- };
83
-
84
- const DefaultUseForm = () => {
85
- const { register, handleSubmit } = useForm({
86
- defaultValues: {
87
- textfield: 'John Doe',
88
- textarea: 'Default description',
89
- checkbox: true,
90
- switch: true,
91
- radiobox: 'c',
92
- slider: 10,
93
- },
94
- });
95
- const onSubmit = (data) => {
96
- console.log(data);
97
- };
98
-
99
- return (
100
- <form onSubmit={handleSubmit(onSubmit)} style={{ display: 'flex', flexDirection: 'column', gap: '20px' }}>
101
- <TextField {...register('textfield')} placeholder="Textfield" required={false} />
102
- <TextArea {...register('textarea')} autoResize placeholder="Textarea" />
103
- <Checkbox {...register('checkbox')} label="Checkbox" />
104
- <Switch {...register('switch')} label="Switch" labelPosition="after" />
105
- <RadioGroup aria-labelledby="radiogroup-title-id">
106
- <div id="radiogroup-title-id" style={{ margin: '1rem 0', fontWeight: '600' }}>
107
- Выберите язык программирования для изучения.
108
- </div>
109
- {itemsRadiobox.map((item) => (
110
- <Radiobox
111
- {...register('radiobox')}
112
- key={item.value}
113
- value={item.value}
114
- label={item.label}
115
- disabled={item.disabled}
116
- />
117
- ))}
118
- </RadioGroup>
119
- <Button type="submit">Отправить</Button>
120
- </form>
121
- );
122
- };
123
-
124
- const StoryHookForm = () => {
125
- return <DefaultUseForm />;
126
- };
127
-
128
- export const UseHookForm: StoryObj<StoryDropdownProps> = {
129
- render: () => <StoryHookForm />,
130
- };
131
-
132
- const DefaultUseFormController = () => {
133
- const { control, handleSubmit } = useForm({
134
- defaultValues: {
135
- textfield: 'John Doe',
136
- textarea: 'Default description',
137
- checkbox: true,
138
- switch: true,
139
- radiobox: 'c',
140
- slider: 10,
141
- sliderd: [10, 20],
142
- },
143
- });
144
- const onSubmit = (data) => {
145
- console.log(data);
146
- };
147
-
148
- return (
149
- <form onSubmit={handleSubmit(onSubmit)} style={{ display: 'flex', flexDirection: 'column', gap: '20px' }}>
150
- <Controller
151
- name="textfield"
152
- control={control}
153
- render={({ field }) => <TextField {...field} label="TextField" />}
154
- />
155
- <Controller
156
- name="textarea"
157
- control={control}
158
- render={({ field }) => <TextArea {...field} label="TextArea" />}
159
- />
160
- <Controller
161
- name="checkbox"
162
- control={control}
163
- render={({ field }) => <Checkbox {...field} checked={field.value} label="Checkbox" />}
164
- />
165
- <Controller
166
- name="switch"
167
- control={control}
168
- render={({ field }) => <Switch {...field} checked={field.value} labelPosition="after" label="Switch" />}
169
- />
170
- <Controller
171
- name="slider"
172
- control={control}
173
- render={({ field }) => <Slider {...field} type="single" label="Slider" min={0} max={100} />}
174
- />
175
- <Controller
176
- name="sliderd"
177
- control={control}
178
- render={({ field }) => <Slider {...field} type="double" label="Slider" min={0} max={100} />}
179
- />
180
- <Button type="submit">Отправить</Button>
181
- </form>
182
- );
183
- };
184
-
185
- const StoryHookFormController = () => {
186
- return <DefaultUseFormController />;
187
- };
188
-
189
- export const UseHookFormController: StoryObj<StoryDropdownProps> = {
190
- render: () => <StoryHookFormController />,
191
- };
@@ -1,102 +0,0 @@
1
- "use strict";
2
-
3
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.useFormPlasma = void 0;
8
- var _react = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("react"));
9
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
10
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
11
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
12
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
13
- 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); }
14
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
15
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
16
- 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; }
17
- var initData = function initData(ref, defaultValues) {
18
- if (ref.current) {
19
- var form = ref.current;
20
- var items = form.elements;
21
- for (var i = 0; i < items.length; i++) {
22
- var item = items[i];
23
- var _name = item.name,
24
- value = item.value,
25
- type = item.type;
26
- if ((type === 'text' || type === 'textarea') && defaultValues[_name]) {
27
- item.value = String(defaultValues[_name]);
28
- }
29
- if (type === 'checkbox' && defaultValues[_name]) {
30
- item.checked = Boolean(defaultValues[_name]);
31
- }
32
- if (type === 'radio' && defaultValues[_name]) {
33
- item.checked = defaultValues[_name] === value;
34
- }
35
- if (type === 'number' && defaultValues[_name]) {
36
- var sliderType = item.getAttribute('datatype');
37
- if (sliderType === 'slider-single') {
38
- item.setAttribute('defaultValue', String(defaultValues[_name]));
39
- var event = new Event('setInitValue');
40
- item.dispatchEvent(event);
41
- }
42
- if (sliderType === 'slider-double') {
43
- var isMax = item.getAttribute('data-slidertype') === 'max' ? 1 : 0;
44
- var _data = defaultValues[_name];
45
- item.setAttribute('defaultValue', String(_data[isMax]));
46
- var _event = new Event('setInitValue');
47
- item.dispatchEvent(_event);
48
- }
49
- }
50
- }
51
- }
52
- };
53
- var valideParams = function valideParams(name) {
54
- return name && name !== '';
55
- };
56
- var useFormPlasma = exports.useFormPlasma = function useFormPlasma(onSubmit, defaultValues) {
57
- var formRef = /*#__PURE__*/_react["default"].createRef();
58
- (0, _react.useEffect)(function () {
59
- initData(formRef, defaultValues);
60
- });
61
- var formData = function formData(event) {
62
- event.preventDefault();
63
- var result = {};
64
- var form = event.target;
65
- var items = form.elements;
66
- for (var i = 0; i < items.length; i++) {
67
- var item = items[i];
68
- var _name2 = item.name,
69
- value = item.value,
70
- type = item.type;
71
- if ((type === 'text' || type === 'textarea') && valideParams(_name2)) {
72
- result[_name2] = value;
73
- } else if (type === 'checkbox' && valideParams(_name2)) {
74
- result[_name2] = item.checked;
75
- } else if (type === 'radio' && valideParams(_name2)) {
76
- if (item.checked) {
77
- result[_name2] = value;
78
- } else if (!(_name2 in result)) {
79
- result[_name2] = null;
80
- }
81
- } else if (type === 'number' && valideParams(_name2)) {
82
- var sliderType = item.getAttribute('datatype');
83
- if (sliderType === 'slider-single') {
84
- result[_name2] = value;
85
- }
86
- if (sliderType === 'slider-double') {
87
- var isMin = item.getAttribute('data-slidertype') === 'min';
88
- if (isMin) {
89
- result[_name2] = [Number(value)];
90
- } else if (!isMin && Array.isArray(result[_name2])) {
91
- result[_name2] = [].concat(_toConsumableArray(result[_name2]), [Number(value)]);
92
- }
93
- }
94
- }
95
- }
96
- onSubmit(result);
97
- };
98
- return {
99
- formRef: formRef,
100
- formData: formData
101
- };
102
- };
@@ -1,27 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.mergeRefs = mergeRefs;
7
- exports.setRefList = setRefList;
8
- function mergeRefs() {
9
- for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {
10
- refs[_key] = arguments[_key];
11
- }
12
- return function (val) {
13
- setRefList.apply(void 0, [val].concat(refs));
14
- };
15
- }
16
- function setRefList(val) {
17
- for (var _len2 = arguments.length, refs = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
18
- refs[_key2 - 1] = arguments[_key2];
19
- }
20
- refs.forEach(function (ref) {
21
- if (typeof ref === 'function') {
22
- ref(val);
23
- } else if (ref != null) {
24
- ref.current = val;
25
- }
26
- });
27
- }
@@ -1,51 +0,0 @@
1
- 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); }
2
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
3
- 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."); }
4
- 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); }
5
- 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; }
6
- 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; } }
7
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
8
- import React, { useState } from 'react';
9
- import { DoubleSlider } from '../index';
10
- export var DoubleUncontrolled = function DoubleUncontrolled(props) {
11
- var _useState = useState([props.min, props.max]),
12
- _useState2 = _slicedToArray(_useState, 2),
13
- sliderValue = _useState2[0],
14
- setSliderValue = _useState2[1];
15
- var sortValues = function sortValues(values) {
16
- return values.map(function (val) {
17
- if (val < props.min) {
18
- return props.min;
19
- }
20
- if (val > props.max) {
21
- return props.max;
22
- }
23
- return val;
24
- }).sort(function (a, b) {
25
- return a - b;
26
- });
27
- };
28
- var onChangeHandle = function onChangeHandle(values) {
29
- setSliderValue(sortValues(values));
30
- };
31
- var onChangeCommitedHandle = function onChangeCommitedHandle(values) {
32
- setSliderValue(sortValues(values));
33
- };
34
- var onBlurTextField = function onBlurTextField(values) {
35
- setSliderValue(sortValues(values));
36
- };
37
- var onKeyDownTextField = function onKeyDownTextField(values, event) {
38
- if (event.key === 'Enter') {
39
- setSliderValue(sortValues(values));
40
- }
41
- };
42
- return props.value ? /*#__PURE__*/React.createElement(DoubleSlider, _extends({}, props, {
43
- value: props.value
44
- })) : /*#__PURE__*/React.createElement(DoubleSlider, _extends({
45
- value: sliderValue,
46
- onKeyDownTextField: onKeyDownTextField,
47
- onBlurTextField: onBlurTextField,
48
- onChangeCommitted: onChangeCommitedHandle,
49
- onChange: onChangeHandle
50
- }, props));
51
- };
@@ -1,191 +0,0 @@
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
- import { Calendar, CalendarBase, CalendarBaseRange, CalendarDouble, CalendarDoubleRange } from '../Calendar/Calendar';
16
-
17
- type StoryDropdownProps = {};
18
-
19
- const langName = 'language';
20
- const itemsRadiobox = [
21
- { langName, value: 'c', label: 'C', disabled: false },
22
- { langName, value: 'cpp', label: 'C++', disabled: false },
23
- { langName, value: 'assembly', label: 'Assembly', disabled: false },
24
- ];
25
-
26
- const DefaultForm = () => {
27
- const onSubmit = (data) => {
28
- console.log(data);
29
- };
30
-
31
- const { formRef, formData } = useFormPlasma(onSubmit, {
32
- textfield: 'textfield',
33
- textarea: 'textarea',
34
- checkbox: 'checkobox',
35
- switch: true,
36
- radiobox: 'c',
37
- slider: 10,
38
- sliderd: [10, 20],
39
- });
40
-
41
- return (
42
- <form onSubmit={formData} style={{ display: 'flex', flexDirection: 'column', gap: '20px' }} ref={formRef}>
43
- <TextField name="textfield" placeholder="Textfield" required={false} />
44
- <TextArea name="textarea" autoResize placeholder="Textarea" />
45
- <Checkbox name="checkbox" label="Checkbox" />
46
- <Switch name="switch" label="Switch" labelPosition="after" />
47
- <RadioGroup aria-labelledby="radiogroup-title-id">
48
- <div id="radiogroup-title-id" style={{ margin: '1rem 0', fontWeight: '600' }}>
49
- Выберите язык программирования для изучения.
50
- </div>
51
- {itemsRadiobox.map((item) => (
52
- <Radiobox
53
- name="radiobox"
54
- key={item.value}
55
- value={item.value}
56
- label={item.label}
57
- disabled={item.disabled}
58
- />
59
- ))}
60
- </RadioGroup>
61
- <Slider name="slider" label="Slider" type="single" min={0} max={100} />
62
- <Slider name="sliderd" label="Slider" type="double" min={0} max={100} />
63
- <Button type="submit">Отправить</Button>
64
- </form>
65
- );
66
- };
67
-
68
- const meta: Meta<StoryDropdownProps> = {
69
- title: 'plasma_b2c/Form',
70
- decorators: [WithTheme],
71
- component: DefaultForm,
72
- };
73
-
74
- export default meta;
75
-
76
- const StoryPlasmaForm = () => {
77
- return <DefaultForm />;
78
- };
79
-
80
- export const Default: StoryObj<StoryDropdownProps> = {
81
- render: () => <StoryPlasmaForm />,
82
- };
83
-
84
- const DefaultUseForm = () => {
85
- const { register, handleSubmit } = useForm({
86
- defaultValues: {
87
- textfield: 'John Doe',
88
- textarea: 'Default description',
89
- checkbox: true,
90
- switch: true,
91
- radiobox: 'c',
92
- slider: 10,
93
- },
94
- });
95
- const onSubmit = (data) => {
96
- console.log(data);
97
- };
98
-
99
- return (
100
- <form onSubmit={handleSubmit(onSubmit)} style={{ display: 'flex', flexDirection: 'column', gap: '20px' }}>
101
- <TextField {...register('textfield')} placeholder="Textfield" required={false} />
102
- <TextArea {...register('textarea')} autoResize placeholder="Textarea" />
103
- <Checkbox {...register('checkbox')} label="Checkbox" />
104
- <Switch {...register('switch')} label="Switch" labelPosition="after" />
105
- <RadioGroup aria-labelledby="radiogroup-title-id">
106
- <div id="radiogroup-title-id" style={{ margin: '1rem 0', fontWeight: '600' }}>
107
- Выберите язык программирования для изучения.
108
- </div>
109
- {itemsRadiobox.map((item) => (
110
- <Radiobox
111
- {...register('radiobox')}
112
- key={item.value}
113
- value={item.value}
114
- label={item.label}
115
- disabled={item.disabled}
116
- />
117
- ))}
118
- </RadioGroup>
119
- <Button type="submit">Отправить</Button>
120
- </form>
121
- );
122
- };
123
-
124
- const StoryHookForm = () => {
125
- return <DefaultUseForm />;
126
- };
127
-
128
- export const UseHookForm: StoryObj<StoryDropdownProps> = {
129
- render: () => <StoryHookForm />,
130
- };
131
-
132
- const DefaultUseFormController = () => {
133
- const { control, handleSubmit } = useForm({
134
- defaultValues: {
135
- textfield: 'John Doe',
136
- textarea: 'Default description',
137
- checkbox: true,
138
- switch: true,
139
- radiobox: 'c',
140
- slider: 10,
141
- sliderd: [10, 20],
142
- },
143
- });
144
- const onSubmit = (data) => {
145
- console.log(data);
146
- };
147
-
148
- return (
149
- <form onSubmit={handleSubmit(onSubmit)} style={{ display: 'flex', flexDirection: 'column', gap: '20px' }}>
150
- <Controller
151
- name="textfield"
152
- control={control}
153
- render={({ field }) => <TextField {...field} label="TextField" />}
154
- />
155
- <Controller
156
- name="textarea"
157
- control={control}
158
- render={({ field }) => <TextArea {...field} label="TextArea" />}
159
- />
160
- <Controller
161
- name="checkbox"
162
- control={control}
163
- render={({ field }) => <Checkbox {...field} checked={field.value} label="Checkbox" />}
164
- />
165
- <Controller
166
- name="switch"
167
- control={control}
168
- render={({ field }) => <Switch {...field} checked={field.value} labelPosition="after" label="Switch" />}
169
- />
170
- <Controller
171
- name="slider"
172
- control={control}
173
- render={({ field }) => <Slider {...field} type="single" label="Slider" min={0} max={100} />}
174
- />
175
- <Controller
176
- name="sliderd"
177
- control={control}
178
- render={({ field }) => <Slider {...field} type="double" label="Slider" min={0} max={100} />}
179
- />
180
- <Button type="submit">Отправить</Button>
181
- </form>
182
- );
183
- };
184
-
185
- const StoryHookFormController = () => {
186
- return <DefaultUseFormController />;
187
- };
188
-
189
- export const UseHookFormController: StoryObj<StoryDropdownProps> = {
190
- render: () => <StoryHookFormController />,
191
- };
@@ -1,93 +0,0 @@
1
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
2
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
- 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); }
4
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
5
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
6
- 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; }
7
- import React, { useEffect } from 'react';
8
- var initData = function initData(ref, defaultValues) {
9
- if (ref.current) {
10
- var form = ref.current;
11
- var items = form.elements;
12
- for (var i = 0; i < items.length; i++) {
13
- var item = items[i];
14
- var _name = item.name,
15
- value = item.value,
16
- type = item.type;
17
- if ((type === 'text' || type === 'textarea') && defaultValues[_name]) {
18
- item.value = String(defaultValues[_name]);
19
- }
20
- if (type === 'checkbox' && defaultValues[_name]) {
21
- item.checked = Boolean(defaultValues[_name]);
22
- }
23
- if (type === 'radio' && defaultValues[_name]) {
24
- item.checked = defaultValues[_name] === value;
25
- }
26
- if (type === 'number' && defaultValues[_name]) {
27
- var sliderType = item.getAttribute('datatype');
28
- if (sliderType === 'slider-single') {
29
- item.setAttribute('defaultValue', String(defaultValues[_name]));
30
- var event = new Event('setInitValue');
31
- item.dispatchEvent(event);
32
- }
33
- if (sliderType === 'slider-double') {
34
- var isMax = item.getAttribute('data-slidertype') === 'max' ? 1 : 0;
35
- var _data = defaultValues[_name];
36
- item.setAttribute('defaultValue', String(_data[isMax]));
37
- var _event = new Event('setInitValue');
38
- item.dispatchEvent(_event);
39
- }
40
- }
41
- }
42
- }
43
- };
44
- var valideParams = function valideParams(name) {
45
- return name && name !== '';
46
- };
47
- export var useFormPlasma = function useFormPlasma(onSubmit, defaultValues) {
48
- var formRef = /*#__PURE__*/React.createRef();
49
- useEffect(function () {
50
- initData(formRef, defaultValues);
51
- });
52
- var formData = function formData(event) {
53
- event.preventDefault();
54
- var result = {};
55
- var form = event.target;
56
- var items = form.elements;
57
- for (var i = 0; i < items.length; i++) {
58
- var item = items[i];
59
- var _name2 = item.name,
60
- value = item.value,
61
- type = item.type;
62
- if ((type === 'text' || type === 'textarea') && valideParams(_name2)) {
63
- result[_name2] = value;
64
- } else if (type === 'checkbox' && valideParams(_name2)) {
65
- result[_name2] = item.checked;
66
- } else if (type === 'radio' && valideParams(_name2)) {
67
- if (item.checked) {
68
- result[_name2] = value;
69
- } else if (!(_name2 in result)) {
70
- result[_name2] = null;
71
- }
72
- } else if (type === 'number' && valideParams(_name2)) {
73
- var sliderType = item.getAttribute('datatype');
74
- if (sliderType === 'slider-single') {
75
- result[_name2] = value;
76
- }
77
- if (sliderType === 'slider-double') {
78
- var isMin = item.getAttribute('data-slidertype') === 'min';
79
- if (isMin) {
80
- result[_name2] = [Number(value)];
81
- } else if (!isMin && Array.isArray(result[_name2])) {
82
- result[_name2] = [].concat(_toConsumableArray(result[_name2]), [Number(value)]);
83
- }
84
- }
85
- }
86
- }
87
- onSubmit(result);
88
- };
89
- return {
90
- formRef: formRef,
91
- formData: formData
92
- };
93
- };