@cloud-ru/uikit-product-fields-predefined 2.4.8-preview-5e39e65e.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (187) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/README.md +12 -326
  3. package/dist/cjs/components/index.d.ts +0 -2
  4. package/dist/cjs/components/index.js +0 -2
  5. package/dist/esm/components/index.d.ts +0 -2
  6. package/dist/esm/components/index.js +0 -2
  7. package/dist/tsconfig.cjs.tsbuildinfo +1 -1
  8. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  9. package/package.json +3 -9
  10. package/src/components/index.ts +0 -2
  11. package/dist/cjs/components/FieldAi/FieldAi.d.ts +0 -24
  12. package/dist/cjs/components/FieldAi/FieldAi.js +0 -92
  13. package/dist/cjs/components/FieldAi/components/AlertButton/AlertButton.d.ts +0 -5
  14. package/dist/cjs/components/FieldAi/components/AlertButton/AlertButton.js +0 -12
  15. package/dist/cjs/components/FieldAi/components/AlertButton/index.d.ts +0 -1
  16. package/dist/cjs/components/FieldAi/components/AlertButton/index.js +0 -17
  17. package/dist/cjs/components/FieldAi/components/AlertButton/styles.module.css +0 -17
  18. package/dist/cjs/components/FieldAi/components/CheckItem/CheckItem.d.ts +0 -9
  19. package/dist/cjs/components/FieldAi/components/CheckItem/CheckItem.js +0 -28
  20. package/dist/cjs/components/FieldAi/components/CheckItem/index.d.ts +0 -1
  21. package/dist/cjs/components/FieldAi/components/CheckItem/index.js +0 -17
  22. package/dist/cjs/components/FieldAi/components/CheckItem/styles.module.css +0 -36
  23. package/dist/cjs/components/FieldAi/components/MobileFieldAi/MobileFieldAi.d.ts +0 -5
  24. package/dist/cjs/components/FieldAi/components/MobileFieldAi/MobileFieldAi.js +0 -31
  25. package/dist/cjs/components/FieldAi/components/MobileFieldAi/index.d.ts +0 -1
  26. package/dist/cjs/components/FieldAi/components/MobileFieldAi/index.js +0 -17
  27. package/dist/cjs/components/FieldAi/components/MobileFieldAi/styles.module.css +0 -78
  28. package/dist/cjs/components/FieldAi/components/PasswordValidation/PasswordValidation.d.ts +0 -7
  29. package/dist/cjs/components/FieldAi/components/PasswordValidation/PasswordValidation.js +0 -23
  30. package/dist/cjs/components/FieldAi/components/PasswordValidation/index.d.ts +0 -1
  31. package/dist/cjs/components/FieldAi/components/PasswordValidation/index.js +0 -17
  32. package/dist/cjs/components/FieldAi/components/PasswordValidation/styles.module.css +0 -36
  33. package/dist/cjs/components/FieldAi/components/TextArea/TextArea.d.ts +0 -39
  34. package/dist/cjs/components/FieldAi/components/TextArea/TextArea.js +0 -33
  35. package/dist/cjs/components/FieldAi/components/TextArea/index.d.ts +0 -1
  36. package/dist/cjs/components/FieldAi/components/TextArea/index.js +0 -17
  37. package/dist/cjs/components/FieldAi/components/TextArea/styles.module.css +0 -32
  38. package/dist/cjs/components/FieldAi/components/WithPasswordValidation/WithPasswordValidation.d.ts +0 -10
  39. package/dist/cjs/components/FieldAi/components/WithPasswordValidation/WithPasswordValidation.js +0 -23
  40. package/dist/cjs/components/FieldAi/components/WithPasswordValidation/index.d.ts +0 -1
  41. package/dist/cjs/components/FieldAi/components/WithPasswordValidation/index.js +0 -17
  42. package/dist/cjs/components/FieldAi/components/WithPasswordValidation/styles.module.css +0 -6
  43. package/dist/cjs/components/FieldAi/index.d.ts +0 -1
  44. package/dist/cjs/components/FieldAi/index.js +0 -17
  45. package/dist/cjs/components/FieldAi/styles.module.css +0 -61
  46. package/dist/cjs/components/FieldAi/utils.d.ts +0 -10
  47. package/dist/cjs/components/FieldAi/utils.js +0 -19
  48. package/dist/cjs/components/FieldCode/FieldCode.d.ts +0 -33
  49. package/dist/cjs/components/FieldCode/FieldCode.js +0 -48
  50. package/dist/cjs/components/FieldCode/components/Cell/Cell.d.ts +0 -5
  51. package/dist/cjs/components/FieldCode/components/Cell/Cell.js +0 -27
  52. package/dist/cjs/components/FieldCode/components/Cell/index.d.ts +0 -1
  53. package/dist/cjs/components/FieldCode/components/Cell/index.js +0 -17
  54. package/dist/cjs/components/FieldCode/components/Cell/styles.module.css +0 -3
  55. package/dist/cjs/components/FieldCode/components/ResendCode/ResendCode.d.ts +0 -8
  56. package/dist/cjs/components/FieldCode/components/ResendCode/ResendCode.js +0 -28
  57. package/dist/cjs/components/FieldCode/components/ResendCode/index.d.ts +0 -1
  58. package/dist/cjs/components/FieldCode/components/ResendCode/index.js +0 -17
  59. package/dist/cjs/components/FieldCode/components/ResendCode/utils.d.ts +0 -1
  60. package/dist/cjs/components/FieldCode/components/ResendCode/utils.js +0 -8
  61. package/dist/cjs/components/FieldCode/components/index.d.ts +0 -2
  62. package/dist/cjs/components/FieldCode/components/index.js +0 -18
  63. package/dist/cjs/components/FieldCode/constants.d.ts +0 -14
  64. package/dist/cjs/components/FieldCode/constants.js +0 -10
  65. package/dist/cjs/components/FieldCode/hooks/index.d.ts +0 -4
  66. package/dist/cjs/components/FieldCode/hooks/index.js +0 -20
  67. package/dist/cjs/components/FieldCode/hooks/useCodeInput.d.ts +0 -22
  68. package/dist/cjs/components/FieldCode/hooks/useCodeInput.js +0 -98
  69. package/dist/cjs/components/FieldCode/hooks/useFieldCodeValidate.d.ts +0 -8
  70. package/dist/cjs/components/FieldCode/hooks/useFieldCodeValidate.js +0 -24
  71. package/dist/cjs/components/FieldCode/hooks/useFieldHelpers.d.ts +0 -13
  72. package/dist/cjs/components/FieldCode/hooks/useFieldHelpers.js +0 -34
  73. package/dist/cjs/components/FieldCode/hooks/useFocusCell.d.ts +0 -5
  74. package/dist/cjs/components/FieldCode/hooks/useFocusCell.js +0 -22
  75. package/dist/cjs/components/FieldCode/index.d.ts +0 -2
  76. package/dist/cjs/components/FieldCode/index.js +0 -20
  77. package/dist/cjs/components/FieldCode/styles.module.css +0 -30
  78. package/dist/cjs/components/FieldCode/utils.d.ts +0 -6
  79. package/dist/cjs/components/FieldCode/utils.js +0 -21
  80. package/dist/esm/components/FieldAi/FieldAi.d.ts +0 -24
  81. package/dist/esm/components/FieldAi/FieldAi.js +0 -86
  82. package/dist/esm/components/FieldAi/components/AlertButton/AlertButton.d.ts +0 -5
  83. package/dist/esm/components/FieldAi/components/AlertButton/AlertButton.js +0 -6
  84. package/dist/esm/components/FieldAi/components/AlertButton/index.d.ts +0 -1
  85. package/dist/esm/components/FieldAi/components/AlertButton/index.js +0 -1
  86. package/dist/esm/components/FieldAi/components/AlertButton/styles.module.css +0 -17
  87. package/dist/esm/components/FieldAi/components/CheckItem/CheckItem.d.ts +0 -9
  88. package/dist/esm/components/FieldAi/components/CheckItem/CheckItem.js +0 -22
  89. package/dist/esm/components/FieldAi/components/CheckItem/index.d.ts +0 -1
  90. package/dist/esm/components/FieldAi/components/CheckItem/index.js +0 -1
  91. package/dist/esm/components/FieldAi/components/CheckItem/styles.module.css +0 -36
  92. package/dist/esm/components/FieldAi/components/MobileFieldAi/MobileFieldAi.d.ts +0 -5
  93. package/dist/esm/components/FieldAi/components/MobileFieldAi/MobileFieldAi.js +0 -25
  94. package/dist/esm/components/FieldAi/components/MobileFieldAi/index.d.ts +0 -1
  95. package/dist/esm/components/FieldAi/components/MobileFieldAi/index.js +0 -1
  96. package/dist/esm/components/FieldAi/components/MobileFieldAi/styles.module.css +0 -78
  97. package/dist/esm/components/FieldAi/components/PasswordValidation/PasswordValidation.d.ts +0 -7
  98. package/dist/esm/components/FieldAi/components/PasswordValidation/PasswordValidation.js +0 -17
  99. package/dist/esm/components/FieldAi/components/PasswordValidation/index.d.ts +0 -1
  100. package/dist/esm/components/FieldAi/components/PasswordValidation/index.js +0 -1
  101. package/dist/esm/components/FieldAi/components/PasswordValidation/styles.module.css +0 -36
  102. package/dist/esm/components/FieldAi/components/TextArea/TextArea.d.ts +0 -39
  103. package/dist/esm/components/FieldAi/components/TextArea/TextArea.js +0 -27
  104. package/dist/esm/components/FieldAi/components/TextArea/index.d.ts +0 -1
  105. package/dist/esm/components/FieldAi/components/TextArea/index.js +0 -1
  106. package/dist/esm/components/FieldAi/components/TextArea/styles.module.css +0 -32
  107. package/dist/esm/components/FieldAi/components/WithPasswordValidation/WithPasswordValidation.d.ts +0 -10
  108. package/dist/esm/components/FieldAi/components/WithPasswordValidation/WithPasswordValidation.js +0 -17
  109. package/dist/esm/components/FieldAi/components/WithPasswordValidation/index.d.ts +0 -1
  110. package/dist/esm/components/FieldAi/components/WithPasswordValidation/index.js +0 -1
  111. package/dist/esm/components/FieldAi/components/WithPasswordValidation/styles.module.css +0 -6
  112. package/dist/esm/components/FieldAi/index.d.ts +0 -1
  113. package/dist/esm/components/FieldAi/index.js +0 -1
  114. package/dist/esm/components/FieldAi/styles.module.css +0 -61
  115. package/dist/esm/components/FieldAi/utils.d.ts +0 -10
  116. package/dist/esm/components/FieldAi/utils.js +0 -15
  117. package/dist/esm/components/FieldCode/FieldCode.d.ts +0 -33
  118. package/dist/esm/components/FieldCode/FieldCode.js +0 -41
  119. package/dist/esm/components/FieldCode/components/Cell/Cell.d.ts +0 -5
  120. package/dist/esm/components/FieldCode/components/Cell/Cell.js +0 -21
  121. package/dist/esm/components/FieldCode/components/Cell/index.d.ts +0 -1
  122. package/dist/esm/components/FieldCode/components/Cell/index.js +0 -1
  123. package/dist/esm/components/FieldCode/components/Cell/styles.module.css +0 -3
  124. package/dist/esm/components/FieldCode/components/ResendCode/ResendCode.d.ts +0 -8
  125. package/dist/esm/components/FieldCode/components/ResendCode/ResendCode.js +0 -25
  126. package/dist/esm/components/FieldCode/components/ResendCode/index.d.ts +0 -1
  127. package/dist/esm/components/FieldCode/components/ResendCode/index.js +0 -1
  128. package/dist/esm/components/FieldCode/components/ResendCode/utils.d.ts +0 -1
  129. package/dist/esm/components/FieldCode/components/ResendCode/utils.js +0 -5
  130. package/dist/esm/components/FieldCode/components/index.d.ts +0 -2
  131. package/dist/esm/components/FieldCode/components/index.js +0 -2
  132. package/dist/esm/components/FieldCode/constants.d.ts +0 -14
  133. package/dist/esm/components/FieldCode/constants.js +0 -7
  134. package/dist/esm/components/FieldCode/hooks/index.d.ts +0 -4
  135. package/dist/esm/components/FieldCode/hooks/index.js +0 -4
  136. package/dist/esm/components/FieldCode/hooks/useCodeInput.d.ts +0 -22
  137. package/dist/esm/components/FieldCode/hooks/useCodeInput.js +0 -95
  138. package/dist/esm/components/FieldCode/hooks/useFieldCodeValidate.d.ts +0 -8
  139. package/dist/esm/components/FieldCode/hooks/useFieldCodeValidate.js +0 -21
  140. package/dist/esm/components/FieldCode/hooks/useFieldHelpers.d.ts +0 -13
  141. package/dist/esm/components/FieldCode/hooks/useFieldHelpers.js +0 -31
  142. package/dist/esm/components/FieldCode/hooks/useFocusCell.d.ts +0 -5
  143. package/dist/esm/components/FieldCode/hooks/useFocusCell.js +0 -19
  144. package/dist/esm/components/FieldCode/index.d.ts +0 -2
  145. package/dist/esm/components/FieldCode/index.js +0 -2
  146. package/dist/esm/components/FieldCode/styles.module.css +0 -30
  147. package/dist/esm/components/FieldCode/utils.d.ts +0 -6
  148. package/dist/esm/components/FieldCode/utils.js +0 -13
  149. package/src/components/FieldAi/FieldAi.tsx +0 -201
  150. package/src/components/FieldAi/components/AlertButton/AlertButton.tsx +0 -16
  151. package/src/components/FieldAi/components/AlertButton/index.ts +0 -1
  152. package/src/components/FieldAi/components/AlertButton/styles.module.scss +0 -20
  153. package/src/components/FieldAi/components/CheckItem/CheckItem.tsx +0 -45
  154. package/src/components/FieldAi/components/CheckItem/index.ts +0 -1
  155. package/src/components/FieldAi/components/CheckItem/styles.module.scss +0 -44
  156. package/src/components/FieldAi/components/MobileFieldAi/MobileFieldAi.tsx +0 -57
  157. package/src/components/FieldAi/components/MobileFieldAi/index.ts +0 -1
  158. package/src/components/FieldAi/components/MobileFieldAi/styles.module.scss +0 -90
  159. package/src/components/FieldAi/components/PasswordValidation/PasswordValidation.tsx +0 -85
  160. package/src/components/FieldAi/components/PasswordValidation/index.ts +0 -1
  161. package/src/components/FieldAi/components/PasswordValidation/styles.module.scss +0 -34
  162. package/src/components/FieldAi/components/TextArea/TextArea.tsx +0 -113
  163. package/src/components/FieldAi/components/TextArea/index.ts +0 -1
  164. package/src/components/FieldAi/components/TextArea/styles.module.scss +0 -35
  165. package/src/components/FieldAi/components/WithPasswordValidation/WithPasswordValidation.tsx +0 -63
  166. package/src/components/FieldAi/components/WithPasswordValidation/index.ts +0 -1
  167. package/src/components/FieldAi/components/WithPasswordValidation/styles.module.scss +0 -8
  168. package/src/components/FieldAi/index.ts +0 -1
  169. package/src/components/FieldAi/styles.module.scss +0 -85
  170. package/src/components/FieldAi/utils.ts +0 -27
  171. package/src/components/FieldCode/FieldCode.tsx +0 -125
  172. package/src/components/FieldCode/components/Cell/Cell.tsx +0 -32
  173. package/src/components/FieldCode/components/Cell/index.ts +0 -1
  174. package/src/components/FieldCode/components/Cell/styles.module.scss +0 -5
  175. package/src/components/FieldCode/components/ResendCode/ResendCode.tsx +0 -33
  176. package/src/components/FieldCode/components/ResendCode/index.ts +0 -1
  177. package/src/components/FieldCode/components/ResendCode/utils.ts +0 -5
  178. package/src/components/FieldCode/components/index.ts +0 -2
  179. package/src/components/FieldCode/constants.ts +0 -20
  180. package/src/components/FieldCode/hooks/index.ts +0 -4
  181. package/src/components/FieldCode/hooks/useCodeInput.ts +0 -147
  182. package/src/components/FieldCode/hooks/useFieldCodeValidate.ts +0 -35
  183. package/src/components/FieldCode/hooks/useFieldHelpers.ts +0 -52
  184. package/src/components/FieldCode/hooks/useFocusCell.ts +0 -29
  185. package/src/components/FieldCode/index.ts +0 -2
  186. package/src/components/FieldCode/styles.module.scss +0 -40
  187. package/src/components/FieldCode/utils.ts +0 -23
@@ -1,33 +0,0 @@
1
- "use strict";
2
- var __rest = (this && this.__rest) || function (s, e) {
3
- var t = {};
4
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
- t[p] = s[p];
6
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
- t[p[i]] = s[p[i]];
10
- }
11
- return t;
12
- };
13
- var __importDefault = (this && this.__importDefault) || function (mod) {
14
- return (mod && mod.__esModule) ? mod : { "default": mod };
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.TextArea = void 0;
18
- const jsx_runtime_1 = require("react/jsx-runtime");
19
- const classnames_1 = __importDefault(require("classnames"));
20
- const react_1 = require("react");
21
- const react_textarea_autosize_1 = __importDefault(require("react-textarea-autosize"));
22
- const utils_1 = require("@snack-uikit/utils");
23
- const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
24
- exports.TextArea = (0, react_1.forwardRef)((_a, ref) => {
25
- var { name, value = '', onChange, placeholder, id, className, disabled = false, readonly = false, autoComplete = false, maxLength, onFocus, onBlur, onKeyDown, tabIndex, minRows = 3, spellCheck, inputMode } = _a, rest = __rest(_a, ["name", "value", "onChange", "placeholder", "id", "className", "disabled", "readonly", "autoComplete", "maxLength", "onFocus", "onBlur", "onKeyDown", "tabIndex", "minRows", "spellCheck", "inputMode"]);
26
- // fix of height on the initial render
27
- // see https://github.com/Andarist/react-textarea-autosize/issues/337#issuecomment-1024980737
28
- const [, setIsRerendered] = (0, react_1.useState)(false);
29
- (0, utils_1.useLayoutEffect)(() => setIsRerendered(true), []);
30
- const onChangeHandler = e => onChange === null || onChange === void 0 ? void 0 : onChange(e.target.value, e);
31
- const stopPropagation = e => e.stopPropagation();
32
- return ((0, jsx_runtime_1.jsx)(react_textarea_autosize_1.default, Object.assign({ id: id, name: name, value: value, ref: ref, className: (0, classnames_1.default)(className, styles_module_scss_1.default.textarea), autoComplete: autoComplete ? 'on' : 'off', placeholder: placeholder, disabled: disabled, readOnly: readonly, maxLength: maxLength, onChange: onChangeHandler, onClick: stopPropagation, onFocus: onFocus, onBlur: onBlur, onKeyDown: onKeyDown, tabIndex: tabIndex, minRows: minRows, spellCheck: spellCheck, inputMode: inputMode }, (0, utils_1.extractSupportProps)(rest))));
33
- });
@@ -1 +0,0 @@
1
- export * from './TextArea';
@@ -1,17 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./TextArea"), exports);
@@ -1,32 +0,0 @@
1
- .textarea{
2
- resize:none;
3
- box-sizing:border-box;
4
- width:100%;
5
- max-width:100%;
6
- margin:0;
7
- padding:0;
8
- color:var(--sys-neutral-text-main, #41424e);
9
- background-color:transparent;
10
- border:none;
11
- border-radius:0;
12
- outline:0;
13
- }
14
- .textarea::-moz-placeholder{
15
- color:var(--sys-neutral-text-disabled, #aaaebd);
16
- }
17
- .textarea::placeholder{
18
- color:var(--sys-neutral-text-disabled, #aaaebd);
19
- }
20
- .textarea::-webkit-scrollbar{
21
- width:0;
22
- max-width:0;
23
- }
24
- .textarea:-moz-read-only{
25
- color:var(--sys-neutral-text-support, #6d707f);
26
- }
27
- .textarea:read-only{
28
- color:var(--sys-neutral-text-support, #6d707f);
29
- }
30
- .textarea[disabled]{
31
- color:var(--sys-neutral-text-disabled, #aaaebd);
32
- }
@@ -1,10 +0,0 @@
1
- import { ReactNode } from 'react';
2
- import { WithLayoutType } from '@cloud-ru/uikit-product-utils';
3
- import { ValidationPassword, ValidationPasswordKey } from '../../utils';
4
- export type WithPasswordTooltipProps = WithLayoutType<{
5
- showValidation?: boolean;
6
- children: ReactNode;
7
- passwordValidation: ValidationPassword;
8
- animatedKey?: ValidationPasswordKey | null;
9
- }>;
10
- export declare function WithPasswordValidation({ showValidation, passwordValidation, layoutType, children, animatedKey, }: WithPasswordTooltipProps): string | number | boolean | import("react/jsx-runtime").JSX.Element | Iterable<ReactNode> | null | undefined;
@@ -1,23 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.WithPasswordValidation = WithPasswordValidation;
7
- const jsx_runtime_1 = require("react/jsx-runtime");
8
- const uikit_product_mobile_tooltip_1 = require("@cloud-ru/uikit-product-mobile-tooltip");
9
- const helpers_1 = require("../../../../helpers");
10
- const PasswordValidation_1 = require("../PasswordValidation");
11
- const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
12
- function WithPasswordValidation({ showValidation, passwordValidation, layoutType, children, animatedKey, }) {
13
- if ((0, helpers_1.isTouchDevice)(layoutType)) {
14
- if (showValidation) {
15
- return ((0, jsx_runtime_1.jsxs)("div", { className: styles_module_scss_1.default.validationContainer, children: [(0, jsx_runtime_1.jsx)(PasswordValidation_1.PasswordValidation, { passwordValidation: passwordValidation, layoutType: layoutType, animatedKey: animatedKey }), children] }));
16
- }
17
- return children;
18
- }
19
- if (showValidation) {
20
- return ((0, jsx_runtime_1.jsx)(uikit_product_mobile_tooltip_1.AdaptiveTooltip, { placement: 'left-end', layoutType: layoutType, tip: (0, jsx_runtime_1.jsx)(PasswordValidation_1.PasswordValidation, { passwordValidation: passwordValidation, layoutType: layoutType, animatedKey: animatedKey }), offset: 8, children: children }));
21
- }
22
- return children;
23
- }
@@ -1 +0,0 @@
1
- export * from './WithPasswordValidation';
@@ -1,17 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./WithPasswordValidation"), exports);
@@ -1,6 +0,0 @@
1
- .validationContainer{
2
- display:flex;
3
- flex-direction:column;
4
- gap:8px;
5
- background-color:var(--sys-neutral-background1-level, #fdfdfd);
6
- }
@@ -1 +0,0 @@
1
- export * from './FieldAi';
@@ -1,17 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./FieldAi"), exports);
@@ -1,61 +0,0 @@
1
- .wrapper{
2
- display:flex;
3
- flex-direction:column;
4
- gap:var(--dimension-050m, 4px);
5
- position:relative;
6
- }
7
-
8
- .passwordWrapper{
9
- gap:0;
10
- }
11
-
12
- .alert{
13
- display:flex;
14
- gap:8px;
15
- padding:4px 8px;
16
- border-radius:8px 8px 0 0;
17
- border:1px solid var(--sys-blue-decor-activated, #aac4ea);
18
- background-color:var(--sys-blue-decor-default, #d6e2f4);
19
- box-sizing:border-box;
20
- height:38px;
21
- position:absolute;
22
- left:0;
23
- top:-26px;
24
- width:100%;
25
- color:var(--sys-neutral-text-main, #41424e);
26
- }
27
-
28
- .alertText{
29
- flex:1;
30
- min-width:0;
31
- color:var(--sys-neutral-text-main, #41424e);
32
- }
33
-
34
- .secured textarea{
35
- -webkit-text-security:disc;
36
- text-security:disc;
37
- }
38
-
39
- .mobileSubmitButton{
40
- position:relative !important;
41
- flex-shrink:0 !important;
42
- }
43
- .mobileSubmitButton:after{
44
- content:"";
45
- display:flex;
46
- width:48px;
47
- height:48px;
48
- position:absolute;
49
- top:50%;
50
- left:50%;
51
- transform:translate(-50%, -50%);
52
- }
53
-
54
- .submitButton:not([data-disabled]){
55
- background:radial-gradient(229.88% 112% at 37.5% 77.08%, #26D07C 19.86%, #5FD7C2 50.73%, #7CB5F2 89.88%);
56
- }
57
-
58
- .textarea > :first-child[data-validation=default]:not([data-readonly]):not([data-disable-focus]):focus-within:not([data-disabled]){
59
- border-color:transparent;
60
- background:linear-gradient(var(--sys-neutral-background2-level), var(--sys-neutral-background2-level) 0) padding-box, radial-gradient(57.79% 100% at 50% 0%, #7cb5f2 38%, #5fd7c2 79%, #26d07c 90%) border-box;
61
- }
@@ -1,10 +0,0 @@
1
- export type ValidationPassword = {
2
- onlyLatin: boolean;
3
- minLength: boolean;
4
- hasLetterCases: boolean;
5
- hasNumber: boolean;
6
- hasSymbol: boolean;
7
- noSpaces: boolean;
8
- };
9
- export type ValidationPasswordKey = keyof ValidationPassword;
10
- export declare const getValidationPassword: (password?: string) => ValidationPassword;
@@ -1,19 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getValidationPassword = void 0;
4
- const MIN_PASSWORD_LENGTH = 8;
5
- const NUMBER_REGEX = /[0-9]/;
6
- const CAPITAL_REGEX = /\p{Lu}/u;
7
- const LOWER_REGEX = /\p{Ll}/u;
8
- const SYMBOLS_REGEX = /[\p{P}\p{S}]/u;
9
- const NO_SPACES = /^\S*$/u;
10
- const LATIN_REGEX = /^[a-zA-Z0-9\p{P}\p{S}]+$/u;
11
- const getValidationPassword = (password = '') => ({
12
- onlyLatin: Boolean(password.match(LATIN_REGEX)),
13
- minLength: password.length >= MIN_PASSWORD_LENGTH,
14
- hasLetterCases: Boolean(password.match(CAPITAL_REGEX)) && Boolean(password.match(LOWER_REGEX)),
15
- hasNumber: Boolean(password.match(NUMBER_REGEX)),
16
- hasSymbol: Boolean(password.match(SYMBOLS_REGEX)),
17
- noSpaces: Boolean(password.match(NO_SPACES)),
18
- });
19
- exports.getValidationPassword = getValidationPassword;
@@ -1,33 +0,0 @@
1
- import { FieldDecoratorProps } from '@snack-uikit/fields';
2
- import { type ResendCodeProps } from './components';
3
- import { type FieldCodeFocusEffect } from './constants';
4
- import { UseCodeInputParams } from './hooks';
5
- export type FieldCodeRef = {
6
- /** Перенести фокус на ячейку с индексом `index` */
7
- moveFocus: (index: number) => void;
8
- /** Убрать фокус со всех ячеек кода */
9
- blurFields: () => void;
10
- /** Сбросить значение кода */
11
- resetCode: () => void;
12
- };
13
- /** Собственные пропсы `FieldCode` */
14
- export type FieldCodeOwnProps = {
15
- /** CSS-класс компонента */
16
- className?: string;
17
- /** CSS-класс ячейки кода */
18
- cellClassName?: string;
19
- /** Позиции, после которых нужно вставить пробел (индексы символов, после которых будет пробел) */
20
- spacing?: number[];
21
- /** Подсветить пустые символы кода */
22
- showEmptyChars?: boolean;
23
- /** Компонент отправки нового кода */
24
- resendCode?: ResendCodeProps;
25
- /** Сценарии автофокуса; по умолчанию — первая ячейка при монтировании и после сброса (см. `FieldCodeFocusEffect`) */
26
- focusEffects?: readonly FieldCodeFocusEffect[];
27
- /** Сообщение при неверном коде, если не передан свой `error` */
28
- invalidCode?: string;
29
- };
30
- export type FieldCodeProps = FieldCodeOwnProps & Omit<UseCodeInputParams, 'moveFocus'> & Pick<FieldDecoratorProps, 'size' | 'disabled' | 'label' | 'error' | 'data-test-id'>;
31
- export declare const FieldCode: import("react").ForwardRefExoticComponent<FieldCodeOwnProps & Omit<UseCodeInputParams, "moveFocus"> & Pick<FieldDecoratorProps, "size" | "label" | "error" | "disabled" | "data-test-id"> & import("react").RefAttributes<FieldCodeRef>>;
32
- export type { FieldCodeFocusEffect } from './constants';
33
- export { FIELD_CODE_DEFAULT_FOCUS_EFFECTS } from './constants';
@@ -1,48 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.FIELD_CODE_DEFAULT_FOCUS_EFFECTS = exports.FieldCode = void 0;
7
- const jsx_runtime_1 = require("react/jsx-runtime");
8
- const classnames_1 = __importDefault(require("classnames"));
9
- const react_1 = require("react");
10
- const fields_1 = require("@snack-uikit/fields");
11
- const components_1 = require("./components");
12
- const constants_1 = require("./constants");
13
- const hooks_1 = require("./hooks");
14
- const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
15
- const utils_1 = require("./utils");
16
- exports.FieldCode = (0, react_1.forwardRef)(function FieldCode(props, ref) {
17
- var _a;
18
- const { codeLength, className, cellClassName, value, onChange, spacing, onComplete, size, disabled, label, error, invalidCode, showEmptyChars, resendCode, focusEffects = constants_1.FIELD_CODE_DEFAULT_FOCUS_EFFECTS, 'data-test-id': dataTestId, } = props;
19
- const { inputsRef, moveFocus, blurFields } = (0, hooks_1.useFocusCell)(codeLength);
20
- const { code, cellHandlers, onChangeCode } = (0, hooks_1.useCodeInput)({ value, onChange, codeLength, moveFocus, onComplete });
21
- const { resetCode } = (0, hooks_1.useFieldHelpers)({
22
- onChangeCode,
23
- focusEffects,
24
- moveFocus,
25
- showEmptyChars,
26
- code,
27
- codeLength,
28
- });
29
- (0, react_1.useImperativeHandle)(ref, () => ({
30
- moveFocus,
31
- blurFields,
32
- resetCode,
33
- }), [moveFocus, blurFields, resetCode]);
34
- const resolvedError = error !== null && error !== void 0 ? error : invalidCode;
35
- const resolvedDecoratorProps = {
36
- label,
37
- disabled,
38
- size,
39
- error: resolvedError,
40
- };
41
- return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ className: (0, classnames_1.default)(styles_module_scss_1.default.fieldCode, className) }, (dataTestId ? { 'data-test-id': dataTestId } : undefined), { children: [(0, jsx_runtime_1.jsx)(fields_1.FieldDecorator, Object.assign({}, resolvedDecoratorProps, { children: (0, jsx_runtime_1.jsx)("div", { className: styles_module_scss_1.default.codeContainer, "data-size": size, children: code.map((char, index) => ((0, jsx_runtime_1.jsx)(components_1.Cell, { ref: inputRef => {
42
- if (inputRef) {
43
- inputsRef.current[index] = inputRef;
44
- }
45
- }, className: (0, classnames_1.default)((spacing === null || spacing === void 0 ? void 0 : spacing.includes(index)) && styles_module_scss_1.default.cellSpacing, cellClassName), size: size, value: char, disabled: disabled, autoComplete: index === 0 ? 'one-time-code' : undefined, onKeyDown: e => cellHandlers.onKeyDown(e, index), onPaste: cellHandlers.onPaste, onChange: e => cellHandlers.onChange(e, index), validationState: (0, utils_1.getCellValidationState)(char, showEmptyChars, Boolean(resolvedError)) }, index))) }) })), resendCode ? (0, jsx_runtime_1.jsx)(components_1.ResendCode, Object.assign({}, resendCode, { size: (_a = resendCode.size) !== null && _a !== void 0 ? _a : size })) : null] })));
46
- });
47
- var constants_2 = require("./constants");
48
- Object.defineProperty(exports, "FIELD_CODE_DEFAULT_FOCUS_EFFECTS", { enumerable: true, get: function () { return constants_2.FIELD_CODE_DEFAULT_FOCUS_EFFECTS; } });
@@ -1,5 +0,0 @@
1
- import { FieldTextProps } from '@snack-uikit/fields';
2
- export declare const Cell: import("react").ForwardRefExoticComponent<{
3
- /** CSS-класс ячейки кода */
4
- className?: string;
5
- } & Pick<FieldTextProps, "size" | "onPaste" | "onChange" | "onKeyDown" | "value" | "disabled" | "autoComplete" | "validationState"> & import("react").RefAttributes<HTMLInputElement>>;
@@ -1,27 +0,0 @@
1
- "use strict";
2
- var __rest = (this && this.__rest) || function (s, e) {
3
- var t = {};
4
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
- t[p] = s[p];
6
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
- t[p[i]] = s[p[i]];
10
- }
11
- return t;
12
- };
13
- var __importDefault = (this && this.__importDefault) || function (mod) {
14
- return (mod && mod.__esModule) ? mod : { "default": mod };
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.Cell = void 0;
18
- const jsx_runtime_1 = require("react/jsx-runtime");
19
- const classnames_1 = __importDefault(require("classnames"));
20
- const react_1 = require("react");
21
- const fields_1 = require("@snack-uikit/fields");
22
- const constants_1 = require("../../constants");
23
- const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
24
- exports.Cell = (0, react_1.forwardRef)((props, ref) => {
25
- const { className, size, value } = props, fieldCellProps = __rest(props, ["className", "size", "value"]);
26
- return ((0, jsx_runtime_1.jsx)(fields_1.FieldText, Object.assign({ inputMode: 'numeric', ref: ref, className: (0, classnames_1.default)(styles_module_scss_1.default.cell, className), "data-size": size, showClearButton: false, value: value === constants_1.ZERO_WIDTH_SPACE ? '' : value, size: size }, fieldCellProps)));
27
- });
@@ -1 +0,0 @@
1
- export * from './Cell';
@@ -1,17 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./Cell"), exports);
@@ -1,3 +0,0 @@
1
- .cell input{
2
- text-align:center;
3
- }
@@ -1,8 +0,0 @@
1
- import { ButtonFunctionProps } from '@snack-uikit/button';
2
- export type ResendCodeProps = {
3
- /** Колбек отправки нового кода */
4
- onResend: () => void;
5
- /** Количество секунд до следующего отправления кода */
6
- secondsToNextResend: number;
7
- } & Pick<ButtonFunctionProps, 'size' | 'disabled'>;
8
- export declare function ResendCode(props: ResendCodeProps): import("react/jsx-runtime").JSX.Element;
@@ -1,28 +0,0 @@
1
- "use strict";
2
- var __rest = (this && this.__rest) || function (s, e) {
3
- var t = {};
4
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
- t[p] = s[p];
6
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
- t[p[i]] = s[p[i]];
10
- }
11
- return t;
12
- };
13
- Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.ResendCode = ResendCode;
15
- const jsx_runtime_1 = require("react/jsx-runtime");
16
- const uikit_product_icons_1 = require("@cloud-ru/uikit-product-icons");
17
- const uikit_product_locale_1 = require("@cloud-ru/uikit-product-locale");
18
- const button_1 = require("@snack-uikit/button");
19
- const utils_1 = require("./utils");
20
- function ResendCode(props) {
21
- const { onResend, secondsToNextResend } = props, buttonProps = __rest(props, ["onResend", "secondsToNextResend"]);
22
- const { t } = (0, uikit_product_locale_1.useLocale)('FieldsPredefined');
23
- return ((0, jsx_runtime_1.jsx)(button_1.ButtonFunction, Object.assign({ label: secondsToNextResend > 0
24
- ? t('FieldCode.resendCodeButtons.resendCodeWithVia', {
25
- timer: (0, utils_1.formatSecondsAsMmSs)(secondsToNextResend),
26
- })
27
- : t('FieldCode.resendCodeButtons.resendCode'), onClick: onResend, icon: (0, jsx_runtime_1.jsx)(uikit_product_icons_1.UpdateSVG, {}), iconPosition: 'before' }, buttonProps)));
28
- }
@@ -1 +0,0 @@
1
- export * from './ResendCode';
@@ -1,17 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./ResendCode"), exports);
@@ -1 +0,0 @@
1
- export declare function formatSecondsAsMmSs(totalSeconds: number): string;
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.formatSecondsAsMmSs = formatSecondsAsMmSs;
4
- function formatSecondsAsMmSs(totalSeconds) {
5
- const minutes = Math.floor(totalSeconds / 60);
6
- const seconds = totalSeconds % 60;
7
- return `${String(minutes).padStart(2, '0')}:${String(seconds).padStart(2, '0')}`;
8
- }
@@ -1,2 +0,0 @@
1
- export * from './Cell';
2
- export * from './ResendCode';
@@ -1,18 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./Cell"), exports);
18
- __exportStar(require("./ResendCode"), exports);
@@ -1,14 +0,0 @@
1
- export declare const ZERO_WIDTH_SPACE = "\u200B";
2
- /**
3
- * Когда дергать `moveFocus` у `FieldCode` (массив `focusEffects`, порядок не важен).
4
- * @see {@link FIELD_CODE_DEFAULT_FOCUS_EFFECTS}
5
- */
6
- export type FieldCodeFocusEffect =
7
- /** После монтирования — ячейка `0`. */
8
- 'firstCellOnMount'
9
- /** После `ref.resetCode()` — ячейка `0`. */
10
- | 'firstCellOnReset'
11
- /** При включении `showEmptyChars` — первая пустая (все заполнены — последняя); не на каждый ввод. */
12
- | 'firstCellWhenShowEmptyChars';
13
- /** Дефолтный набор для `focusEffects`. */
14
- export declare const FIELD_CODE_DEFAULT_FOCUS_EFFECTS: readonly FieldCodeFocusEffect[];
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FIELD_CODE_DEFAULT_FOCUS_EFFECTS = exports.ZERO_WIDTH_SPACE = void 0;
4
- exports.ZERO_WIDTH_SPACE = '\u200B';
5
- /** Дефолтный набор для `focusEffects`. */
6
- exports.FIELD_CODE_DEFAULT_FOCUS_EFFECTS = [
7
- 'firstCellOnMount',
8
- 'firstCellOnReset',
9
- 'firstCellWhenShowEmptyChars',
10
- ];
@@ -1,4 +0,0 @@
1
- export * from './useCodeInput';
2
- export * from './useFieldCodeValidate';
3
- export * from './useFocusCell';
4
- export * from './useFieldHelpers';
@@ -1,20 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./useCodeInput"), exports);
18
- __exportStar(require("./useFieldCodeValidate"), exports);
19
- __exportStar(require("./useFocusCell"), exports);
20
- __exportStar(require("./useFieldHelpers"), exports);
@@ -1,22 +0,0 @@
1
- import { ClipboardEvent, KeyboardEvent } from 'react';
2
- export type UseCodeInputParams = {
3
- /** Количество цифр в коде (ожидается целое ≥ 1) */
4
- codeLength: number;
5
- /** Значение кода */
6
- value?: string;
7
- /** Колбек изменения значения */
8
- onChange?: (code: string) => void;
9
- /** Функция фокуса */
10
- moveFocus: (index: number) => void;
11
- /** Колбек достижения ввода всех символов кода */
12
- onComplete?: (code: string) => void;
13
- };
14
- export declare function useCodeInput(params: UseCodeInputParams): {
15
- code: string[];
16
- cellHandlers: {
17
- onKeyDown: (e: KeyboardEvent<HTMLInputElement>, index: number) => void;
18
- onPaste: (e: ClipboardEvent<HTMLInputElement>) => void;
19
- onChange: (code: string, index: number) => void;
20
- };
21
- onChangeCode: (value: any, ...args: any[]) => any | void;
22
- };