@salutejs/plasma-new-hope 0.144.0-canary.1418.10833167538.0 → 0.144.0-canary.1430.10832391195.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (260) hide show
  1. package/cjs/components/Editable/Editable.css +8 -0
  2. package/cjs/components/Editable/Editable.js +156 -0
  3. package/cjs/components/Editable/Editable.js.map +1 -0
  4. package/cjs/components/Editable/Editable.styles.js +38 -0
  5. package/cjs/components/Editable/Editable.styles.js.map +1 -0
  6. package/cjs/components/Editable/Editable.styles_somxw2.css +4 -0
  7. package/cjs/components/Editable/Editable.tokens.js +21 -0
  8. package/cjs/components/Editable/Editable.tokens.js.map +1 -0
  9. package/cjs/components/Editable/utils/clearSelection.js +23 -0
  10. package/cjs/components/Editable/utils/clearSelection.js.map +1 -0
  11. package/cjs/components/Editable/utils/selectText.js +30 -0
  12. package/cjs/components/Editable/utils/selectText.js.map +1 -0
  13. package/cjs/components/Editable/variations/_size/base.js +9 -0
  14. package/cjs/components/Editable/variations/_size/base.js.map +1 -0
  15. package/cjs/components/Editable/variations/_size/base_54y6eh.css +1 -0
  16. package/cjs/components/Editable/variations/_view/base.js +9 -0
  17. package/cjs/components/Editable/variations/_view/base.js.map +1 -0
  18. package/cjs/components/Editable/variations/_view/base_11fpjfv.css +1 -0
  19. package/cjs/components/Grid/Grid.js +1 -1
  20. package/cjs/components/Grid/Grid.js.map +1 -1
  21. package/cjs/index.css +9 -0
  22. package/cjs/index.js +7 -0
  23. package/cjs/index.js.map +1 -1
  24. package/cjs/utils/constants.js +20 -0
  25. package/cjs/utils/constants.js.map +1 -0
  26. package/cjs/utils/index.js.map +1 -1
  27. package/emotion/cjs/components/Editable/Editable.js +161 -0
  28. package/emotion/cjs/components/Editable/Editable.styles.js +26 -0
  29. package/emotion/cjs/components/Editable/Editable.tokens.js +19 -0
  30. package/emotion/cjs/components/Editable/index.js +25 -0
  31. package/emotion/cjs/components/Editable/utils/clearSelection.js +19 -0
  32. package/emotion/cjs/components/Editable/utils/index.js +19 -0
  33. package/emotion/cjs/components/Editable/utils/selectText.js +26 -0
  34. package/emotion/cjs/components/Editable/variations/_size/base.js +10 -0
  35. package/emotion/cjs/components/Editable/variations/_size/tokens.json +1 -0
  36. package/emotion/cjs/components/Editable/variations/_view/base.js +10 -0
  37. package/emotion/cjs/components/Editable/variations/_view/tokens.json +5 -0
  38. package/emotion/cjs/components/Grid/Grid.js +1 -1
  39. package/emotion/cjs/examples/plasma_b2c/components/Editable/Editable.config.js +22 -0
  40. package/emotion/cjs/examples/plasma_b2c/components/Editable/Editable.js +22 -0
  41. package/emotion/cjs/examples/plasma_b2c/components/Editable/Editable.stories.tsx +81 -0
  42. package/emotion/cjs/examples/plasma_web/components/Editable/Editable.config.js +22 -0
  43. package/emotion/cjs/examples/plasma_web/components/Editable/Editable.js +22 -0
  44. package/emotion/cjs/examples/plasma_web/components/Editable/Editable.stories.tsx +81 -0
  45. package/emotion/cjs/index.js +11 -0
  46. package/emotion/cjs/utils/constants.js +19 -0
  47. package/emotion/cjs/utils/index.js +8 -2
  48. package/emotion/es/components/Editable/Editable.js +152 -0
  49. package/emotion/es/components/Editable/Editable.styles.js +19 -0
  50. package/emotion/es/components/Editable/Editable.tokens.js +13 -0
  51. package/emotion/es/components/Editable/index.js +2 -0
  52. package/emotion/es/components/Editable/utils/clearSelection.js +13 -0
  53. package/emotion/es/components/Editable/utils/index.js +2 -0
  54. package/emotion/es/components/Editable/utils/selectText.js +20 -0
  55. package/emotion/es/components/Editable/variations/_size/base.js +4 -0
  56. package/emotion/es/components/Editable/variations/_size/tokens.json +1 -0
  57. package/emotion/es/components/Editable/variations/_view/base.js +4 -0
  58. package/emotion/es/components/Editable/variations/_view/tokens.json +5 -0
  59. package/emotion/es/components/Grid/Grid.js +1 -1
  60. package/emotion/es/examples/plasma_b2c/components/Editable/Editable.config.js +16 -0
  61. package/emotion/es/examples/plasma_b2c/components/Editable/Editable.js +16 -0
  62. package/emotion/es/examples/plasma_b2c/components/Editable/Editable.stories.tsx +81 -0
  63. package/emotion/es/examples/plasma_web/components/Editable/Editable.config.js +16 -0
  64. package/emotion/es/examples/plasma_web/components/Editable/Editable.js +16 -0
  65. package/emotion/es/examples/plasma_web/components/Editable/Editable.stories.tsx +81 -0
  66. package/emotion/es/index.js +2 -1
  67. package/emotion/es/utils/constants.js +13 -0
  68. package/emotion/es/utils/index.js +2 -0
  69. package/es/components/Editable/Editable.css +8 -0
  70. package/es/components/Editable/Editable.js +151 -0
  71. package/es/components/Editable/Editable.js.map +1 -0
  72. package/es/components/Editable/Editable.styles.js +31 -0
  73. package/es/components/Editable/Editable.styles.js.map +1 -0
  74. package/es/components/Editable/Editable.styles_somxw2.css +4 -0
  75. package/es/components/Editable/Editable.tokens.js +16 -0
  76. package/es/components/Editable/Editable.tokens.js.map +1 -0
  77. package/es/components/Editable/utils/clearSelection.js +19 -0
  78. package/es/components/Editable/utils/clearSelection.js.map +1 -0
  79. package/es/components/Editable/utils/selectText.js +26 -0
  80. package/es/components/Editable/utils/selectText.js.map +1 -0
  81. package/es/components/Editable/variations/_size/base.js +5 -0
  82. package/es/components/Editable/variations/_size/base.js.map +1 -0
  83. package/es/components/Editable/variations/_size/base_54y6eh.css +1 -0
  84. package/es/components/Editable/variations/_view/base.js +5 -0
  85. package/es/components/Editable/variations/_view/base.js.map +1 -0
  86. package/es/components/Editable/variations/_view/base_11fpjfv.css +1 -0
  87. package/es/components/Grid/Grid.js +1 -1
  88. package/es/components/Grid/Grid.js.map +1 -1
  89. package/es/index.css +9 -0
  90. package/es/index.js +4 -0
  91. package/es/index.js.map +1 -1
  92. package/es/utils/constants.js +16 -0
  93. package/es/utils/constants.js.map +1 -0
  94. package/es/utils/index.js.map +1 -1
  95. package/package.json +2 -2
  96. package/styled-components/cjs/components/Editable/Editable.js +161 -0
  97. package/styled-components/cjs/components/Editable/Editable.styles.js +26 -0
  98. package/styled-components/cjs/components/Editable/Editable.tokens.js +19 -0
  99. package/styled-components/cjs/components/Editable/index.js +25 -0
  100. package/styled-components/cjs/components/Editable/utils/clearSelection.js +19 -0
  101. package/styled-components/cjs/components/Editable/utils/index.js +19 -0
  102. package/styled-components/cjs/components/Editable/utils/selectText.js +26 -0
  103. package/styled-components/cjs/components/Editable/variations/_size/base.js +10 -0
  104. package/styled-components/cjs/components/Editable/variations/_size/tokens.json +1 -0
  105. package/styled-components/cjs/components/Editable/variations/_view/base.js +10 -0
  106. package/styled-components/cjs/components/Editable/variations/_view/tokens.json +5 -0
  107. package/styled-components/cjs/components/Grid/Grid.js +1 -1
  108. package/styled-components/cjs/examples/plasma_b2c/components/Editable/Editable.config.js +22 -0
  109. package/styled-components/cjs/examples/plasma_b2c/components/Editable/Editable.js +22 -0
  110. package/styled-components/cjs/examples/plasma_b2c/components/Editable/Editable.stories.tsx +81 -0
  111. package/styled-components/cjs/examples/plasma_web/components/Editable/Editable.config.js +22 -0
  112. package/styled-components/cjs/examples/plasma_web/components/Editable/Editable.js +22 -0
  113. package/styled-components/cjs/examples/plasma_web/components/Editable/Editable.stories.tsx +81 -0
  114. package/styled-components/cjs/index.js +11 -0
  115. package/styled-components/cjs/utils/constants.js +19 -0
  116. package/styled-components/cjs/utils/index.js +8 -2
  117. package/styled-components/es/components/Editable/Editable.js +152 -0
  118. package/styled-components/es/components/Editable/Editable.styles.js +18 -0
  119. package/styled-components/es/components/Editable/Editable.tokens.js +13 -0
  120. package/styled-components/es/components/Editable/index.js +2 -0
  121. package/styled-components/es/components/Editable/utils/clearSelection.js +13 -0
  122. package/styled-components/es/components/Editable/utils/index.js +2 -0
  123. package/styled-components/es/components/Editable/utils/selectText.js +20 -0
  124. package/styled-components/es/components/Editable/variations/_size/base.js +4 -0
  125. package/styled-components/es/components/Editable/variations/_size/tokens.json +1 -0
  126. package/styled-components/es/components/Editable/variations/_view/base.js +4 -0
  127. package/styled-components/es/components/Editable/variations/_view/tokens.json +5 -0
  128. package/styled-components/es/components/Grid/Grid.js +1 -1
  129. package/styled-components/es/examples/plasma_b2c/components/Editable/Editable.config.js +16 -0
  130. package/styled-components/es/examples/plasma_b2c/components/Editable/Editable.js +16 -0
  131. package/styled-components/es/examples/plasma_b2c/components/Editable/Editable.stories.tsx +81 -0
  132. package/styled-components/es/examples/plasma_web/components/Editable/Editable.config.js +16 -0
  133. package/styled-components/es/examples/plasma_web/components/Editable/Editable.js +16 -0
  134. package/styled-components/es/examples/plasma_web/components/Editable/Editable.stories.tsx +81 -0
  135. package/styled-components/es/index.js +2 -1
  136. package/styled-components/es/utils/constants.js +13 -0
  137. package/styled-components/es/utils/index.js +2 -0
  138. package/types/components/Editable/Editable.d.ts +23 -0
  139. package/types/components/Editable/Editable.d.ts.map +1 -0
  140. package/types/components/Editable/Editable.styles.d.ts +8 -0
  141. package/types/components/Editable/Editable.styles.d.ts.map +1 -0
  142. package/types/components/Editable/Editable.tokens.d.ts +14 -0
  143. package/types/components/Editable/Editable.tokens.d.ts.map +1 -0
  144. package/types/components/Editable/Editable.types.d.ts +39 -0
  145. package/types/components/Editable/Editable.types.d.ts.map +1 -0
  146. package/types/components/Editable/index.d.ts +3 -0
  147. package/types/components/Editable/index.d.ts.map +1 -0
  148. package/types/components/Editable/utils/clearSelection.d.ts +2 -0
  149. package/types/components/Editable/utils/clearSelection.d.ts.map +1 -0
  150. package/types/components/Editable/utils/index.d.ts +3 -0
  151. package/types/components/Editable/utils/index.d.ts.map +1 -0
  152. package/types/components/Editable/utils/selectText.d.ts +2 -0
  153. package/types/components/Editable/utils/selectText.d.ts.map +1 -0
  154. package/types/components/Editable/variations/_size/base.d.ts +2 -0
  155. package/types/components/Editable/variations/_size/base.d.ts.map +1 -0
  156. package/types/components/Editable/variations/_view/base.d.ts +2 -0
  157. package/types/components/Editable/variations/_view/base.d.ts.map +1 -0
  158. package/types/components/Pagination/utils/index.d.ts +1 -1
  159. package/types/examples/plasma_b2c/components/Editable/Editable.config.d.ts +15 -0
  160. package/types/examples/plasma_b2c/components/Editable/Editable.config.d.ts.map +1 -0
  161. package/types/examples/plasma_b2c/components/Editable/Editable.d.ts +57 -0
  162. package/types/examples/plasma_b2c/components/Editable/Editable.d.ts.map +1 -0
  163. package/types/examples/plasma_web/components/Editable/Editable.config.d.ts +15 -0
  164. package/types/examples/plasma_web/components/Editable/Editable.config.d.ts.map +1 -0
  165. package/types/examples/plasma_web/components/Editable/Editable.d.ts +57 -0
  166. package/types/examples/plasma_web/components/Editable/Editable.d.ts.map +1 -0
  167. package/types/index.d.ts +1 -0
  168. package/types/index.d.ts.map +1 -1
  169. package/types/utils/constants.d.ts +14 -0
  170. package/types/utils/constants.d.ts.map +1 -0
  171. package/types/utils/index.d.ts +1 -0
  172. package/types/utils/index.d.ts.map +1 -1
  173. package/emotion/cjs/components/Mask/Mask.js +0 -207
  174. package/emotion/cjs/components/Mask/index.js +0 -12
  175. package/emotion/cjs/components/Mask/utils/constants.js +0 -31
  176. package/emotion/cjs/components/Mask/utils/createMask.js +0 -50
  177. package/emotion/cjs/components/Mask/utils/mask.js +0 -248
  178. package/emotion/cjs/components/Mask/utils/parseMask.js +0 -36
  179. package/emotion/cjs/components/Mask/utils/processInput.js +0 -52
  180. package/emotion/cjs/components/Mask/utils/processMask.js +0 -99
  181. package/emotion/cjs/components/Mask/utils/selection.js +0 -48
  182. package/emotion/cjs/components/Mask/utils/types/mask.types.js +0 -5
  183. package/emotion/cjs/components/Mask/utils/types/selectRange.types.js +0 -5
  184. package/emotion/cjs/examples/plasma_b2c/components/Mask/Mask.js +0 -9
  185. package/emotion/cjs/examples/plasma_b2c/components/Mask/Mask.stories.tsx +0 -131
  186. package/emotion/es/components/Mask/Mask.js +0 -199
  187. package/emotion/es/components/Mask/index.js +0 -1
  188. package/emotion/es/components/Mask/utils/constants.js +0 -25
  189. package/emotion/es/components/Mask/utils/createMask.js +0 -44
  190. package/emotion/es/components/Mask/utils/mask.js +0 -242
  191. package/emotion/es/components/Mask/utils/parseMask.js +0 -30
  192. package/emotion/es/components/Mask/utils/processInput.js +0 -46
  193. package/emotion/es/components/Mask/utils/processMask.js +0 -93
  194. package/emotion/es/components/Mask/utils/selection.js +0 -42
  195. package/emotion/es/components/Mask/utils/types/mask.types.js +0 -1
  196. package/emotion/es/components/Mask/utils/types/selectRange.types.js +0 -1
  197. package/emotion/es/examples/plasma_b2c/components/Mask/Mask.js +0 -3
  198. package/emotion/es/examples/plasma_b2c/components/Mask/Mask.stories.tsx +0 -131
  199. package/styled-components/cjs/components/Mask/Mask.js +0 -207
  200. package/styled-components/cjs/components/Mask/Mask.types.js +0 -5
  201. package/styled-components/cjs/components/Mask/index.js +0 -12
  202. package/styled-components/cjs/components/Mask/utils/constants.js +0 -31
  203. package/styled-components/cjs/components/Mask/utils/createMask.js +0 -50
  204. package/styled-components/cjs/components/Mask/utils/mask.js +0 -248
  205. package/styled-components/cjs/components/Mask/utils/parseMask.js +0 -36
  206. package/styled-components/cjs/components/Mask/utils/processInput.js +0 -52
  207. package/styled-components/cjs/components/Mask/utils/processMask.js +0 -99
  208. package/styled-components/cjs/components/Mask/utils/selection.js +0 -48
  209. package/styled-components/cjs/components/Mask/utils/types/input.types.js +0 -5
  210. package/styled-components/cjs/components/Mask/utils/types/mask.types.js +0 -5
  211. package/styled-components/cjs/components/Mask/utils/types/selectRange.types.js +0 -5
  212. package/styled-components/cjs/examples/plasma_b2c/components/Mask/Mask.js +0 -9
  213. package/styled-components/cjs/examples/plasma_b2c/components/Mask/Mask.stories.tsx +0 -131
  214. package/styled-components/es/components/Mask/Mask.js +0 -199
  215. package/styled-components/es/components/Mask/Mask.types.js +0 -1
  216. package/styled-components/es/components/Mask/index.js +0 -1
  217. package/styled-components/es/components/Mask/utils/constants.js +0 -25
  218. package/styled-components/es/components/Mask/utils/createMask.js +0 -44
  219. package/styled-components/es/components/Mask/utils/mask.js +0 -242
  220. package/styled-components/es/components/Mask/utils/parseMask.js +0 -30
  221. package/styled-components/es/components/Mask/utils/processInput.js +0 -46
  222. package/styled-components/es/components/Mask/utils/processMask.js +0 -93
  223. package/styled-components/es/components/Mask/utils/selection.js +0 -42
  224. package/styled-components/es/components/Mask/utils/types/input.types.js +0 -1
  225. package/styled-components/es/components/Mask/utils/types/mask.types.js +0 -1
  226. package/styled-components/es/components/Mask/utils/types/selectRange.types.js +0 -1
  227. package/styled-components/es/examples/plasma_b2c/components/Mask/Mask.js +0 -3
  228. package/styled-components/es/examples/plasma_b2c/components/Mask/Mask.stories.tsx +0 -131
  229. package/types/components/Mask/Mask.d.ts +0 -5
  230. package/types/components/Mask/Mask.d.ts.map +0 -1
  231. package/types/components/Mask/Mask.types.d.ts +0 -49
  232. package/types/components/Mask/Mask.types.d.ts.map +0 -1
  233. package/types/components/Mask/index.d.ts +0 -2
  234. package/types/components/Mask/index.d.ts.map +0 -1
  235. package/types/components/Mask/utils/constants.d.ts +0 -15
  236. package/types/components/Mask/utils/constants.d.ts.map +0 -1
  237. package/types/components/Mask/utils/createMask.d.ts +0 -19
  238. package/types/components/Mask/utils/createMask.d.ts.map +0 -1
  239. package/types/components/Mask/utils/mask.d.ts +0 -44
  240. package/types/components/Mask/utils/mask.d.ts.map +0 -1
  241. package/types/components/Mask/utils/parseMask.d.ts +0 -3
  242. package/types/components/Mask/utils/parseMask.d.ts.map +0 -1
  243. package/types/components/Mask/utils/processInput.d.ts +0 -15
  244. package/types/components/Mask/utils/processInput.d.ts.map +0 -1
  245. package/types/components/Mask/utils/processMask.d.ts +0 -9
  246. package/types/components/Mask/utils/processMask.d.ts.map +0 -1
  247. package/types/components/Mask/utils/selection.d.ts +0 -11
  248. package/types/components/Mask/utils/selection.d.ts.map +0 -1
  249. package/types/components/Mask/utils/types/input.types.d.ts +0 -26
  250. package/types/components/Mask/utils/types/input.types.d.ts.map +0 -1
  251. package/types/components/Mask/utils/types/mask.types.d.ts +0 -9
  252. package/types/components/Mask/utils/types/mask.types.d.ts.map +0 -1
  253. package/types/components/Mask/utils/types/selectRange.types.d.ts +0 -5
  254. package/types/components/Mask/utils/types/selectRange.types.d.ts.map +0 -1
  255. package/types/examples/plasma_b2c/components/Mask/Mask.d.ts +0 -191
  256. package/types/examples/plasma_b2c/components/Mask/Mask.d.ts.map +0 -1
  257. /package/emotion/cjs/components/{Mask/Mask.types.js → Editable/Editable.types.js} +0 -0
  258. /package/emotion/es/components/{Mask/Mask.types.js → Editable/Editable.types.js} +0 -0
  259. /package/{emotion/cjs/components/Mask/utils/types/input.types.js → styled-components/cjs/components/Editable/Editable.types.js} +0 -0
  260. /package/{emotion/es/components/Mask/utils/types/input.types.js → styled-components/es/components/Editable/Editable.types.js} +0 -0
@@ -1,42 +0,0 @@
1
- import { CharType } from './constants';
2
- var copyMaskChar = function copyMaskChar(count, maskChar) {
3
- var res = [];
4
- for (var i = 0; i < count; i++) {
5
- res.push({
6
- "char": maskChar,
7
- type: CharType.Mask
8
- });
9
- }
10
- return res;
11
- };
12
- var pasteMaskSymbols = function pasteMaskSymbols(maskString, maskChar, selection) {
13
- if (maskString) {
14
- var res = [];
15
- for (var i = selection.start; i < selection.end; i++) {
16
- res.push({
17
- "char": maskString[i],
18
- type: CharType.Mask
19
- });
20
- }
21
- return res;
22
- }
23
- return copyMaskChar(selection.end - selection.start, maskChar);
24
- };
25
- export var removeSelectedRange = function removeSelectedRange(args) {
26
- var value = args.value,
27
- selection = args.selection,
28
- maskChar = args.maskChar,
29
- maskString = args.maskString;
30
- if (selection.end < selection.start) {
31
- var tmp = selection.end;
32
- selection.end = selection.start;
33
- selection.start = tmp;
34
- }
35
- if (selection.start === selection.end) {
36
- return value;
37
- }
38
- if (value.length > selection.start) {
39
- return value.slice(0, selection.start).concat(pasteMaskSymbols(maskString, maskChar, selection), value.slice(selection.end, value.length));
40
- }
41
- return value;
42
- };
@@ -1 +0,0 @@
1
- export {};
@@ -1,3 +0,0 @@
1
- import { composeMask } from '../../../../components/Mask';
2
- import { TextField } from '../TextField/TextField';
3
- export var Mask = /*#__PURE__*/composeMask(TextField);
@@ -1,131 +0,0 @@
1
- import React from 'react';
2
- import type { ComponentProps } from 'react';
3
- import type { StoryObj, Meta } from '@storybook/react';
4
- import { action } from '@storybook/addon-actions';
5
-
6
- import { WithTheme } from '../../../_helpers';
7
-
8
- import { Mask } from './Mask';
9
-
10
- const onChange = action('onChange');
11
- const onValueChange = action('onValueChange');
12
-
13
- const sizes = ['l', 'm', 's', 'xs'];
14
- const views = ['default', 'positive', 'warning', 'negative'];
15
-
16
- const meta: Meta<typeof Mask> = {
17
- title: 'plasma_b2c/Mask',
18
- component: Mask,
19
- decorators: [WithTheme],
20
- argTypes: {
21
- view: {
22
- options: views,
23
- control: {
24
- type: 'select',
25
- },
26
- },
27
- size: {
28
- options: sizes,
29
- control: {
30
- type: 'inline-radio',
31
- },
32
- },
33
- },
34
- };
35
-
36
- export default meta;
37
-
38
- type StoryPropsDefault = Omit<
39
- ComponentProps<typeof Mask>,
40
- | 'helperBlock'
41
- | 'contentLeft'
42
- | 'htmlSize'
43
- | 'contentRight'
44
- | 'type'
45
- | 'name'
46
- | 'onFocus'
47
- | 'onBlur'
48
- | 'onChange'
49
- | 'value'
50
- | 'checked'
51
- | 'maxLength'
52
- | 'minLength'
53
- | 'required'
54
- | 'enumerationType'
55
- | 'chips'
56
- | 'onChangeChips'
57
- >;
58
-
59
- const StoryDemo = ({ view, ...rest }: StoryPropsDefault) => {
60
- return (
61
- <div style={{ display: 'flex', flexDirection: 'column', gap: '2rem', width: '50%' }}>
62
- <Mask
63
- label="Маска телефона"
64
- mask="+7 (000) 000 - 00 - 00"
65
- maskChar="_"
66
- showPrefix={false}
67
- view={view}
68
- onChange={onChange}
69
- onValueChange={onValueChange}
70
- {...rest}
71
- />
72
-
73
- <Mask
74
- label="Маска телефона: отображается всегда"
75
- mask="+7 (000) 000 - 00 - 00"
76
- maskChar="_"
77
- view={view}
78
- alwaysShowMask
79
- onChange={onChange}
80
- onValueChange={onValueChange}
81
- {...rest}
82
- />
83
-
84
- <Mask
85
- label="Маска даты"
86
- mask="00/00/0000"
87
- maskString="DD/MM/YYYY"
88
- alwaysShowMask
89
- view={view}
90
- onChange={onChange}
91
- onValueChange={onValueChange}
92
- {...rest}
93
- />
94
-
95
- <Mask
96
- label="Маска даты: значения по умолчанию"
97
- // eslint-disable-next-line no-octal-escape
98
- mask="12.\04.0000"
99
- maskChar="_"
100
- alwaysShowMask
101
- view={view}
102
- onChange={onChange}
103
- onValueChange={onValueChange}
104
- {...rest}
105
- />
106
-
107
- <Mask
108
- label="Маска времени"
109
- mask="00:00"
110
- maskChar="_"
111
- alwaysShowMask
112
- view={view}
113
- onChange={onChange}
114
- onValueChange={onValueChange}
115
- {...rest}
116
- />
117
- </div>
118
- );
119
- };
120
-
121
- export const Default: StoryObj<StoryPropsDefault> = {
122
- args: {
123
- size: 'l',
124
- view: 'default',
125
- labelPlacement: 'outer',
126
- placeholder: 'Заполните поле',
127
- disabled: false,
128
- readOnly: false,
129
- },
130
- render: (args) => <StoryDemo {...args} />,
131
- };
@@ -1,207 +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.composeMask = void 0;
8
- var _react = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("react"));
9
- var _plasmaCore = /*#__PURE__*/require("@salutejs/plasma-core");
10
- var _hooks = /*#__PURE__*/require("../../hooks");
11
- var _createMask = /*#__PURE__*/require("./utils/createMask");
12
- var _constants = /*#__PURE__*/require("./utils/constants");
13
- var _excluded = ["mask", "maskChar", "alwaysShowMask", "maskString", "showPrefix", "value", "defaultValue", "showMask", "onChange", "onBlur", "onFocus", "reformat"];
14
- 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); }
15
- 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; }
16
- 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); }
17
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
18
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
19
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
20
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
21
- 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."); }
22
- 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); }
23
- 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; }
24
- 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; } }
25
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
26
- 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; }
27
- 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; }
28
- var composeMask = exports.composeMask = function composeMask(InputComponent) {
29
- return /*#__PURE__*/(0, _react.forwardRef)(function (props, outerRef) {
30
- var maskValue = props.mask,
31
- maskChar = props.maskChar,
32
- alwaysShowMask = props.alwaysShowMask,
33
- maskString = props.maskString,
34
- showPrefix = props.showPrefix,
35
- value = props.value,
36
- defaultValue = props.defaultValue,
37
- showMaskedValue = props.showMask,
38
- onChange = props.onChange,
39
- onBlur = props.onBlur,
40
- onFocus = props.onFocus,
41
- reformat = props.reformat,
42
- rest = _objectWithoutProperties(props, _excluded);
43
- var _useState = (0, _react.useState)(alwaysShowMask || showMaskedValue),
44
- _useState2 = _slicedToArray(_useState, 2),
45
- showMask = _useState2[0],
46
- setShowMask = _useState2[1];
47
- var mask = (0, _react.useMemo)(function () {
48
- return (0, _createMask.createMask)({
49
- value: String(value) || String(defaultValue) || '',
50
- mask: maskValue,
51
- maskChar: maskChar || _createMask.defaults.maskChar,
52
- maskString: maskString,
53
- showPrefix: showPrefix || _createMask.defaults.showPrefix,
54
- reformat: reformat
55
- });
56
- }, []);
57
- var canSetSelection = (0, _react.useRef)(false);
58
- var inputRef = (0, _react.useRef)(null);
59
- var innerRef = (0, _plasmaCore.useForkRef)(inputRef, outerRef);
60
- var getSelection = function getSelection() {
61
- var _inputRef$current, _inputRef$current2;
62
- mask.setSelection = {
63
- start: (inputRef === null || inputRef === void 0 || (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.selectionStart) || 0,
64
- end: (inputRef === null || inputRef === void 0 || (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.selectionEnd) || 0
65
- };
66
- };
67
- var setSelection = function setSelection() {
68
- var _inputRef$current3;
69
- if (!canSetSelection.current) {
70
- return;
71
- }
72
- var selection = mask.getSelection;
73
- inputRef === null || inputRef === void 0 || (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 || _inputRef$current3.setSelectionRange(selection.start, selection.end);
74
- setTimeout(function () {
75
- var _inputRef$current4;
76
- return inputRef === null || inputRef === void 0 || (_inputRef$current4 = inputRef.current) === null || _inputRef$current4 === void 0 ? void 0 : _inputRef$current4.setSelectionRange(selection.start, selection.end);
77
- }, 0);
78
- };
79
- var showValue = function showValue() {
80
- if (!(inputRef !== null && inputRef !== void 0 && inputRef.current)) {
81
- return;
82
- }
83
- if (showMask && (canSetSelection.current || alwaysShowMask)) {
84
- inputRef.current.value = mask.getState.maskedValue;
85
- return;
86
- }
87
- inputRef.current.value = mask.getState.visibleValue;
88
- };
89
- var keyPressPropName = function keyPressPropName() {
90
- if (typeof navigator !== 'undefined' && navigator.userAgent.match(/Android/i)) {
91
- return 'onBeforeInput';
92
- }
93
- return 'onKeyPress';
94
- };
95
- var dispatchEvent = function dispatchEvent(e) {
96
- var _mask$getState = mask.getState,
97
- maskedValue = _mask$getState.maskedValue,
98
- visibleValue = _mask$getState.visibleValue;
99
- if (onChange) {
100
- onChange(e, {
101
- maskedValue: maskedValue,
102
- value: visibleValue
103
- });
104
- }
105
- };
106
- var onPaste = function onPaste(e) {
107
- e.preventDefault();
108
- getSelection();
109
- if (!(e !== null && e !== void 0 && e.clipboardData)) {
110
- return;
111
- }
112
- mask.paste(e.clipboardData.getData('Text'));
113
- setTimeout(setSelection, 0);
114
- dispatchEvent(e);
115
- };
116
- var handleChange = function handleChange(e) {
117
- var currentValue;
118
- if (showMask && (canSetSelection.current || alwaysShowMask)) {
119
- currentValue = mask.getState.maskedValue;
120
- } else {
121
- currentValue = mask.getState.visibleValue;
122
- }
123
- if (e.target.value !== currentValue) {
124
- getSelection();
125
- mask.updateValue(e.target.value);
126
- setTimeout(setSelection, 0);
127
- }
128
- dispatchEvent(e);
129
- };
130
- var onKeyPress = function onKeyPress(e) {
131
- if (e.metaKey || e.altKey || e.ctrlKey || e.key === 'Enter') {
132
- return;
133
- }
134
- e.preventDefault();
135
- getSelection();
136
- mask.input(e.key || String.fromCharCode(e.which));
137
- setSelection();
138
- dispatchEvent(e);
139
- };
140
- var onKeyDown = function onKeyDown(e) {
141
- if (e.keyCode === _constants.KeyboardCode.Backspace) {
142
- e.preventDefault();
143
- getSelection();
144
- mask.removePreviosOrSelected();
145
- setSelection();
146
- dispatchEvent(e);
147
- }
148
- if (e.keyCode === _constants.KeyboardCode.Delete) {
149
- e.preventDefault();
150
- getSelection();
151
- mask.removeNextOrSelected();
152
- setSelection();
153
- dispatchEvent(e);
154
- }
155
- };
156
- var handleFocus = function handleFocus(e) {
157
- canSetSelection.current = true;
158
- onFocus && onFocus(e);
159
- };
160
- var handleBlur = function handleBlur(e) {
161
- canSetSelection.current = false;
162
- onBlur && onBlur(e);
163
- };
164
- var keyPressEvent = _defineProperty({}, keyPressPropName(), onKeyPress);
165
- (0, _hooks.useDidMountEffect)(function () {
166
- setShowMask(alwaysShowMask || showMask);
167
- }, [alwaysShowMask, showMask]);
168
- (0, _hooks.useDidMountEffect)(function () {
169
- reformat && mask.updateReformat(reformat);
170
- }, [reformat]);
171
- (0, _hooks.useDidMountEffect)(function () {
172
- mask.updateMask(String(mask));
173
- }, [mask]);
174
- (0, _hooks.useDidMountEffect)(function () {
175
- mask.updateMaskString(String(maskString));
176
- }, [maskString]);
177
- (0, _hooks.useDidMountEffect)(function () {
178
- mask.updateMaskChar(String(maskChar));
179
- }, [maskChar]);
180
- (0, _hooks.useDidMountEffect)(function () {
181
- mask.updateValue(String(value));
182
- }, [value]);
183
- (0, _react.useEffect)(function () {
184
- showValue();
185
- }, [showValue, mask]);
186
- (0, _react.useEffect)(function () {
187
- var subscriber = function subscriber() {
188
- showValue();
189
- setSelection();
190
- };
191
- mask.subscribe(subscriber);
192
- return function () {
193
- mask.unsubscribe(subscriber);
194
- };
195
- }, [mask, showValue, setSelection]);
196
- return /*#__PURE__*/_react["default"].createElement(InputComponent, _extends({}, rest, {
197
- onChange: handleChange,
198
- onKeyDown: onKeyDown,
199
- onPaste: onPaste,
200
- onFocus: handleFocus,
201
- onBlur: handleBlur
202
- }, keyPressEvent, {
203
- ref: innerRef,
204
- autoComplete: "off"
205
- }));
206
- });
207
- };
@@ -1,5 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
@@ -1,12 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- Object.defineProperty(exports, "composeMask", {
7
- enumerable: true,
8
- get: function get() {
9
- return _Mask.composeMask;
10
- }
11
- });
12
- var _Mask = /*#__PURE__*/require("./Mask");
@@ -1,31 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.escapeChar = exports.defaultFormatChars = exports.KeyboardCode = exports.CharType = void 0;
7
- var CharType = exports.CharType = /*#__PURE__*/function (CharType) {
8
- CharType[CharType["User"] = 1] = "User";
9
- CharType[CharType["Char"] = 2] = "Char";
10
- CharType[CharType["Mask"] = 3] = "Mask";
11
- return CharType;
12
- }({});
13
- var KeyboardCode = exports.KeyboardCode = /*#__PURE__*/function (KeyboardCode) {
14
- KeyboardCode[KeyboardCode["Backspace"] = 8] = "Backspace";
15
- KeyboardCode[KeyboardCode["Delete"] = 46] = "Delete";
16
- return KeyboardCode;
17
- }({});
18
- var escapeChar = exports.escapeChar = '\\';
19
- var defaultFormatChars = exports.defaultFormatChars = [{
20
- str: '0',
21
- regexp: /[0-9]/
22
- }, {
23
- str: '*',
24
- regexp: /./
25
- }, {
26
- str: 'a',
27
- regexp: /[a-zA-Z]/
28
- }, {
29
- str: 'я',
30
- regexp: /[а-яА-ЯёЁ]/
31
- }];
@@ -1,50 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.defaults = exports.createMask = void 0;
7
- var _constants = /*#__PURE__*/require("./constants");
8
- var _mask = /*#__PURE__*/require("./mask");
9
- var _selection = /*#__PURE__*/require("./selection");
10
- var defaults = exports.defaults = {
11
- maskFormat: _constants.defaultFormatChars,
12
- maskChar: '',
13
- showMask: false,
14
- removeSelectedRange: _selection.removeSelectedRange,
15
- showPrefix: false
16
- };
17
- var createMask = exports.createMask = function createMask(params) {
18
- var _params$mask;
19
- var maskString = params.maskString,
20
- _params$showPrefix = params.showPrefix,
21
- showPrefix = _params$showPrefix === void 0 ? defaults.showPrefix : _params$showPrefix,
22
- _params$maskChar = params.maskChar,
23
- maskChar = _params$maskChar === void 0 ? defaults.maskChar : _params$maskChar,
24
- reformat = params.reformat;
25
- var resReformat = reformat;
26
- if (!reformat && !params.mask) {
27
- resReformat = function resReformat(args) {
28
- var str = args.value.map(function (item) {
29
- return item["char"];
30
- }).join('');
31
- return {
32
- value: args.value,
33
- visibleValue: str,
34
- maskedValue: str,
35
- selection: args.selection
36
- };
37
- };
38
- } else if (reformat && params.mask) {
39
- params.mask = undefined;
40
- }
41
- if (maskString && maskString.length !== (params === null || params === void 0 || (_params$mask = params.mask) === null || _params$mask === void 0 ? void 0 : _params$mask.length)) {
42
- throw new Error('maskString должна быть такой же длины, как и mask');
43
- }
44
- if (maskChar.length > 1) {
45
- throw new Error('maskChar должен содержать только 1 символ');
46
- }
47
- var mask = new _mask.Mask(showPrefix, maskChar, maskString, resReformat);
48
- mask.updateMask(params.mask);
49
- return mask;
50
- };