@alfalab/core-components-pattern-lock-v1 1.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 (142) hide show
  1. package/@alfalab/core-components-shared/package.json +23 -0
  2. package/Component.responsive.d.ts +10 -0
  3. package/Component.responsive.js +27 -0
  4. package/components/base-pattern-lock/Component.d.ts +6 -0
  5. package/components/base-pattern-lock/Component.js +68 -0
  6. package/components/base-pattern-lock/index.css +45 -0
  7. package/components/base-pattern-lock/index.d.ts +1 -0
  8. package/components/base-pattern-lock/index.js +9 -0
  9. package/consts.d.ts +11 -0
  10. package/consts.js +34 -0
  11. package/cssm/Component.responsive.d.ts +10 -0
  12. package/cssm/Component.responsive.js +27 -0
  13. package/cssm/components/base-pattern-lock/Component.d.ts +6 -0
  14. package/cssm/components/base-pattern-lock/Component.js +67 -0
  15. package/cssm/components/base-pattern-lock/index.d.ts +1 -0
  16. package/cssm/components/base-pattern-lock/index.js +9 -0
  17. package/cssm/components/base-pattern-lock/index.module.css +44 -0
  18. package/cssm/consts.d.ts +11 -0
  19. package/cssm/consts.js +34 -0
  20. package/cssm/desktop/Component.desktop.d.ts +6 -0
  21. package/cssm/desktop/Component.desktop.js +17 -0
  22. package/cssm/desktop/desktop.module.css +27 -0
  23. package/cssm/desktop/index.d.ts +2 -0
  24. package/cssm/desktop/index.js +9 -0
  25. package/cssm/hooks/use-pattern-lock-cleanup.d.ts +6 -0
  26. package/cssm/hooks/use-pattern-lock-cleanup.js +18 -0
  27. package/cssm/index.d.ts +3 -0
  28. package/cssm/index.js +11 -0
  29. package/cssm/mobile/Component.mobile.d.ts +6 -0
  30. package/cssm/mobile/Component.mobile.js +17 -0
  31. package/cssm/mobile/index.d.ts +2 -0
  32. package/cssm/mobile/index.js +9 -0
  33. package/cssm/mobile/mobile.module.css +47 -0
  34. package/cssm/shared/index.d.ts +2 -0
  35. package/cssm/shared/index.js +11 -0
  36. package/cssm/typings.d.ts +91 -0
  37. package/cssm/typings.js +2 -0
  38. package/cssm/utils.d.ts +16 -0
  39. package/cssm/utils.js +96 -0
  40. package/cssm/vars.css +0 -0
  41. package/desktop/Component.desktop.d.ts +6 -0
  42. package/desktop/Component.desktop.js +18 -0
  43. package/desktop/desktop.css +28 -0
  44. package/desktop/index.d.ts +2 -0
  45. package/desktop/index.js +9 -0
  46. package/desktop/package.json +3 -0
  47. package/esm/Component.responsive.d.ts +10 -0
  48. package/esm/Component.responsive.js +19 -0
  49. package/esm/components/base-pattern-lock/Component.d.ts +6 -0
  50. package/esm/components/base-pattern-lock/Component.js +59 -0
  51. package/esm/components/base-pattern-lock/index.css +45 -0
  52. package/esm/components/base-pattern-lock/index.d.ts +1 -0
  53. package/esm/components/base-pattern-lock/index.js +1 -0
  54. package/esm/consts.d.ts +11 -0
  55. package/esm/consts.js +27 -0
  56. package/esm/desktop/Component.desktop.d.ts +6 -0
  57. package/esm/desktop/Component.desktop.js +10 -0
  58. package/esm/desktop/desktop.css +28 -0
  59. package/esm/desktop/index.d.ts +2 -0
  60. package/esm/desktop/index.js +1 -0
  61. package/esm/hooks/use-pattern-lock-cleanup.d.ts +6 -0
  62. package/esm/hooks/use-pattern-lock-cleanup.js +14 -0
  63. package/esm/index.d.ts +3 -0
  64. package/esm/index.js +2 -0
  65. package/esm/mobile/Component.mobile.d.ts +6 -0
  66. package/esm/mobile/Component.mobile.js +10 -0
  67. package/esm/mobile/index.d.ts +2 -0
  68. package/esm/mobile/index.js +1 -0
  69. package/esm/mobile/mobile.css +48 -0
  70. package/esm/shared/index.d.ts +2 -0
  71. package/esm/shared/index.js +2 -0
  72. package/esm/typings.d.ts +91 -0
  73. package/esm/typings.js +1 -0
  74. package/esm/utils.d.ts +16 -0
  75. package/esm/utils.js +88 -0
  76. package/hooks/use-pattern-lock-cleanup.d.ts +6 -0
  77. package/hooks/use-pattern-lock-cleanup.js +18 -0
  78. package/index.d.ts +3 -0
  79. package/index.js +11 -0
  80. package/mobile/Component.mobile.d.ts +6 -0
  81. package/mobile/Component.mobile.js +18 -0
  82. package/mobile/index.d.ts +2 -0
  83. package/mobile/index.js +9 -0
  84. package/mobile/mobile.css +48 -0
  85. package/mobile/package.json +3 -0
  86. package/modern/Component.responsive.d.ts +10 -0
  87. package/modern/Component.responsive.js +17 -0
  88. package/modern/components/base-pattern-lock/Component.d.ts +6 -0
  89. package/modern/components/base-pattern-lock/Component.js +54 -0
  90. package/modern/components/base-pattern-lock/index.css +45 -0
  91. package/modern/components/base-pattern-lock/index.d.ts +1 -0
  92. package/modern/components/base-pattern-lock/index.js +1 -0
  93. package/modern/consts.d.ts +11 -0
  94. package/modern/consts.js +27 -0
  95. package/modern/desktop/Component.desktop.d.ts +6 -0
  96. package/modern/desktop/Component.desktop.js +9 -0
  97. package/modern/desktop/desktop.css +28 -0
  98. package/modern/desktop/index.d.ts +2 -0
  99. package/modern/desktop/index.js +1 -0
  100. package/modern/hooks/use-pattern-lock-cleanup.d.ts +6 -0
  101. package/modern/hooks/use-pattern-lock-cleanup.js +14 -0
  102. package/modern/index.d.ts +3 -0
  103. package/modern/index.js +2 -0
  104. package/modern/mobile/Component.mobile.d.ts +6 -0
  105. package/modern/mobile/Component.mobile.js +9 -0
  106. package/modern/mobile/index.d.ts +2 -0
  107. package/modern/mobile/index.js +1 -0
  108. package/modern/mobile/mobile.css +48 -0
  109. package/modern/shared/index.d.ts +2 -0
  110. package/modern/shared/index.js +2 -0
  111. package/modern/typings.d.ts +91 -0
  112. package/modern/typings.js +1 -0
  113. package/modern/utils.d.ts +16 -0
  114. package/modern/utils.js +98 -0
  115. package/package.json +25 -0
  116. package/shared/index.d.ts +2 -0
  117. package/shared/index.js +11 -0
  118. package/shared/package.json +3 -0
  119. package/src/Component.responsive.tsx +24 -0
  120. package/src/components/base-pattern-lock/Component.tsx +146 -0
  121. package/src/components/base-pattern-lock/index.module.css +34 -0
  122. package/src/components/base-pattern-lock/index.ts +1 -0
  123. package/src/consts.ts +32 -0
  124. package/src/desktop/Component.desktop.tsx +11 -0
  125. package/src/desktop/desktop.module.css +15 -0
  126. package/src/desktop/index.ts +2 -0
  127. package/src/desktop/package.json +3 -0
  128. package/src/hooks/use-pattern-lock-cleanup.tsx +16 -0
  129. package/src/index.ts +3 -0
  130. package/src/mobile/Component.mobile.tsx +11 -0
  131. package/src/mobile/index.ts +2 -0
  132. package/src/mobile/mobile.module.css +32 -0
  133. package/src/mobile/package.json +3 -0
  134. package/src/shared/index.ts +2 -0
  135. package/src/shared/package.json +3 -0
  136. package/src/typings.ts +103 -0
  137. package/src/utils.ts +105 -0
  138. package/src/vars.css +4 -0
  139. package/typings.d.ts +91 -0
  140. package/typings.js +2 -0
  141. package/utils.d.ts +16 -0
  142. package/utils.js +96 -0
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ import React from 'react';
3
+ import { TPatternLockInstance } from 'react-canvas-pattern-lock';
4
+ import { CommonPatternLockProps, PrivatePatternLockProps } from "../../typings";
5
+ declare const BasePatternLock: React.ForwardRefExoticComponent<(CommonPatternLockProps & PrivatePatternLockProps) & React.RefAttributes<TPatternLockInstance>>;
6
+ export { BasePatternLock };
@@ -0,0 +1,59 @@
1
+ import { __rest, __assign } from 'tslib';
2
+ import React, { forwardRef, useState, useEffect } from 'react';
3
+ import { ReactCanvasPatternLock } from 'react-canvas-pattern-lock';
4
+ import cn from 'classnames';
5
+ import { ButtonMobile } from '@alfalab/core-components-button/esm/mobile';
6
+ import { getDataTestId } from '@alfalab/core-components-shared/esm';
7
+ import { THEME_STATE, DEFAULT_EXTRA_BOUNDS, OBSERVE_OPTIONS, OBSERVABLE_TOKENS } from '../../consts.js';
8
+ import { getSizes, getTheme, getColorByToken, getDefaultObserveTarget } from '../../utils.js';
9
+
10
+ var commonStyles = {"component":"pattern-lock-v1__component_t42s9","hidden":"pattern-lock-v1__hidden_t42s9","message":"pattern-lock-v1__message_t42s9","error":"pattern-lock-v1__error_t42s9","forgotBtn":"pattern-lock-v1__forgotBtn_t42s9"};
11
+ require('./index.css')
12
+
13
+ var BasePatternLock = forwardRef(function (_a, ref) {
14
+ var _b, _c;
15
+ var _d = _a.observeTokens, observeTokens = _d === void 0 ? false : _d, _e = _a.observerParams, observerParams = _e === void 0 ? {} : _e, _f = _a.justifyNodes, justifyNodes = _f === void 0 ? 'space-between' : _f, className = _a.className, error = _a.error, dataTestId = _a.dataTestId, _g = _a.forgotCodeBtnText, forgotCodeBtnText = _g === void 0 ? 'Забыли код?' : _g, _h = _a.showForgotCodeBtn, showForgotCodeBtn = _h === void 0 ? false : _h, onForgotBtnClick = _a.onForgotBtnClick, _j = _a.extraBounds, extraBounds = _j === void 0 ? DEFAULT_EXTRA_BOUNDS : _j, message = _a.message, messageClassName = _a.messageClassName, hover = _a.hover, _k = _a.styles, styles = _k === void 0 ? {} : _k, restProps = __rest(_a, ["observeTokens", "observerParams", "justifyNodes", "className", "error", "dataTestId", "forgotCodeBtnText", "showForgotCodeBtn", "onForgotBtnClick", "extraBounds", "message", "messageClassName", "hover", "styles"]);
16
+ var _l = useState(), params = _l[0], setParams = _l[1];
17
+ useEffect(function () {
18
+ var _a = getSizes(), elementSizes = _a.elementSizes, width = _a.width, height = _a.height;
19
+ setParams({
20
+ theme: getTheme(elementSizes),
21
+ width: width,
22
+ height: height,
23
+ });
24
+ }, []);
25
+ useEffect(function () {
26
+ var styleObserver = null;
27
+ if (observeTokens) {
28
+ var _a = observerParams.options, options = _a === void 0 ? OBSERVE_OPTIONS : _a, _b = observerParams.getTarget, getTarget = _b === void 0 ? getDefaultObserveTarget : _b;
29
+ styleObserver = new MutationObserver(function () {
30
+ return setParams(function (prevState) {
31
+ var _a = getSizes(), width = _a.width, height = _a.height, elementSizes = _a.elementSizes;
32
+ if (!prevState) {
33
+ return { theme: getTheme(elementSizes), width: width, height: height };
34
+ }
35
+ var prevBgColor = prevState.theme[THEME_STATE.INITIAL].colors.bg;
36
+ var themeChanged = prevBgColor !== getColorByToken(OBSERVABLE_TOKENS.BG);
37
+ if (themeChanged)
38
+ return __assign(__assign({}, prevState), { theme: getTheme(elementSizes) });
39
+ return prevState;
40
+ });
41
+ });
42
+ styleObserver.observe(getTarget(), options);
43
+ }
44
+ return function () { return styleObserver === null || styleObserver === void 0 ? void 0 : styleObserver.disconnect(); };
45
+ // eslint-disable-next-line react-hooks/exhaustive-deps
46
+ }, [observeTokens]);
47
+ var renderMessage = function () { return (React.createElement("div", { className: cn(commonStyles.message, messageClassName), "data-test-id": getDataTestId(dataTestId, 'message') }, message)); };
48
+ var renderError = function () { return (React.createElement("div", { className: cn(commonStyles.message, commonStyles.error, messageClassName), "data-test-id": getDataTestId(dataTestId, 'error') }, error)); };
49
+ return (React.createElement("div", { className: cn(commonStyles.component, styles.component, className, (_b = {},
50
+ _b[commonStyles.hidden] = !params,
51
+ _b)), "data-test-id": dataTestId },
52
+ error ? renderError() : renderMessage(),
53
+ React.createElement(ReactCanvasPatternLock, __assign({}, restProps, params, { ref: ref, rows: 3, cols: 3, justifyNodes: justifyNodes, extraBounds: extraBounds, hover: hover })),
54
+ showForgotCodeBtn ? (React.createElement(ButtonMobile, { view: 'transparent', className: cn(commonStyles.forgotBtn, styles.forgotBtn), onClick: onForgotBtnClick, dataTestId: getDataTestId(dataTestId, 'forgot-code-btn') }, forgotCodeBtnText)) : (React.createElement("div", { className: cn(commonStyles.forgotBtn, styles.forgotBtn, (_c = {},
55
+ _c[styles.hiddenBtn] = Boolean(styles.hiddenBtn),
56
+ _c)) }))));
57
+ });
58
+
59
+ export { BasePatternLock };
@@ -0,0 +1,45 @@
1
+ /* hash: 1q5sm */
2
+ :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
3
+ } /* deprecated */ :root {
4
+ --color-light-text-negative: #ec2d20;
5
+ --color-light-text-primary: rgba(3, 3, 6, 0.88); /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
6
+ } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
7
+ } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
8
+ } :root {
9
+
10
+ /* Hard */
11
+
12
+ /* Up */
13
+
14
+ /* Hard up */
15
+ } :root {
16
+ } :root {
17
+ --gap-m: 16px;
18
+ --gap-3xl: 40px;
19
+ } :root {
20
+ } :root {
21
+ --size-xs-height: 40px;
22
+ } :root {
23
+ } .pattern-lock-v1__component_t42s9 canvas {
24
+ display: block;
25
+ margin: 0 auto;
26
+ } .pattern-lock-v1__hidden_t42s9 {
27
+ visibility: hidden;
28
+ } .pattern-lock-v1__message_t42s9 {
29
+ font-size: 16px;
30
+ line-height: 24px;
31
+ font-weight: 400;
32
+
33
+ text-align: center;
34
+ padding: 0 var(--gap-m) var(--gap-3xl);
35
+ min-height: 24px;
36
+ overflow: hidden;
37
+ text-overflow: ellipsis;
38
+ white-space: nowrap;
39
+ color: var(--color-light-text-primary);
40
+ } .pattern-lock-v1__error_t42s9 {
41
+ color: var(--color-light-text-negative);
42
+ } .pattern-lock-v1__forgotBtn_t42s9 {
43
+ display: block;
44
+ min-height: var(--size-xs-height);
45
+ }
@@ -0,0 +1 @@
1
+ export * from "./Component";
@@ -0,0 +1 @@
1
+ export { BasePatternLock } from './Component.js';
@@ -0,0 +1,11 @@
1
+ import { ReactPatternLockProps } from 'react-canvas-pattern-lock';
2
+ import { ObservableTokens } from "./typings";
3
+ declare const OBSERVE_OPTIONS: MutationObserverInit;
4
+ declare const DEFAULT_EXTRA_BOUNDS: ReactPatternLockProps['extraBounds'];
5
+ declare const OBSERVABLE_TOKENS: ObservableTokens;
6
+ declare const THEME_STATE: {
7
+ INITIAL: string;
8
+ SUCCESS: string;
9
+ FAILURE: string;
10
+ };
11
+ export { OBSERVE_OPTIONS, DEFAULT_EXTRA_BOUNDS, OBSERVABLE_TOKENS, THEME_STATE };
package/esm/consts.js ADDED
@@ -0,0 +1,27 @@
1
+ var OBSERVE_OPTIONS = {
2
+ childList: true,
3
+ attributes: false,
4
+ characterData: false,
5
+ subtree: true,
6
+ };
7
+ var DEFAULT_EXTRA_BOUNDS = [75, 50, 75, 50];
8
+ var OBSERVABLE_TOKENS = {
9
+ ACCENT_INITIAL: '--color-light-neutral-0-inverted',
10
+ ACCENT_SUCCESS: '--color-light-status-positive',
11
+ ACCENT_FAILURE: '--color-light-status-negative',
12
+ PRIMARY: '--color-light-neutral-500',
13
+ BG: '--color-light-base-bg-primary',
14
+ RING_BG_INITIAL: '--color-light-neutral-translucent-200',
15
+ SELECTED_RING_BG_INITIAL: '--color-light-neutral-translucent-300',
16
+ SELECTED_RING_BG_SUCCESS: '--color-light-status-muted-positive',
17
+ SELECTED_RING_BG_FAILURE: '--color-light-status-muted-negative',
18
+ HOVER_INNER: '--color-light-neutral-500-hover',
19
+ HOVER_OUTER: '--color-light-neutral-translucent-200-hover',
20
+ };
21
+ var THEME_STATE = {
22
+ INITIAL: 'initial',
23
+ SUCCESS: 'success',
24
+ FAILURE: 'failure',
25
+ };
26
+
27
+ export { DEFAULT_EXTRA_BOUNDS, OBSERVABLE_TOKENS, OBSERVE_OPTIONS, THEME_STATE };
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ import React from 'react';
3
+ import { TPatternLockInstance } from 'react-canvas-pattern-lock';
4
+ import { CommonPatternLockProps } from "../typings";
5
+ declare const PatternLockDesktopV1: React.ForwardRefExoticComponent<CommonPatternLockProps & React.RefAttributes<TPatternLockInstance>>;
6
+ export { PatternLockDesktopV1 };
@@ -0,0 +1,10 @@
1
+ import { __assign } from 'tslib';
2
+ import React, { forwardRef } from 'react';
3
+ import { BasePatternLock } from '../components/base-pattern-lock/Component.js';
4
+
5
+ var styles = {"component":"pattern-lock-v1__component_rlobu","forgotBtn":"pattern-lock-v1__forgotBtn_rlobu","hiddenBtn":"pattern-lock-v1__hiddenBtn_rlobu"};
6
+ require('./desktop.css')
7
+
8
+ var PatternLockDesktopV1 = forwardRef(function (restProps, ref) { return React.createElement(BasePatternLock, __assign({}, restProps, { hover: true, ref: ref, styles: styles })); });
9
+
10
+ export { PatternLockDesktopV1 };
@@ -0,0 +1,28 @@
1
+ /* hash: 1fdcn */
2
+ :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
3
+ } /* deprecated */ :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
4
+ } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
5
+ } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
6
+ } :root {
7
+
8
+ /* Hard */
9
+
10
+ /* Up */
11
+
12
+ /* Hard up */
13
+ } :root {
14
+ } :root {
15
+ --gap-xs: 8px;
16
+ --gap-xl: 24px;
17
+ } :root {
18
+ } :root {
19
+ } :root {
20
+ --pattern-lock-v1-desktop-max-width: 240px;
21
+ } .pattern-lock-v1__component_rlobu {
22
+ max-width: var(--pattern-lock-v1-desktop-max-width);
23
+ margin: var(--gap-xs) 0 var(--gap-xl) 0;
24
+ } .pattern-lock-v1__forgotBtn_rlobu {
25
+ margin: var(--gap-xl) auto 0;
26
+ } .pattern-lock-v1__hiddenBtn_rlobu {
27
+ display: none;
28
+ }
@@ -0,0 +1,2 @@
1
+ export { PatternLockDesktopV1 } from "./Component.desktop";
2
+ export type { CommonPatternLockProps as PatternLockDesktopProps } from "../typings";
@@ -0,0 +1 @@
1
+ export { PatternLockDesktopV1 } from './Component.desktop.js';
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ import { TPatternLockInstance } from 'react-canvas-pattern-lock';
3
+ declare const usePatternLockCleanup: (patternLockRef: React.MutableRefObject<TPatternLockInstance | null>) => {
4
+ clear: void;
5
+ };
6
+ export { usePatternLockCleanup };
@@ -0,0 +1,14 @@
1
+ import { useMemo } from 'react';
2
+
3
+ var usePatternLockCleanup = function (patternLockRef) {
4
+ var clear = useMemo(function () {
5
+ if (patternLockRef.current) {
6
+ patternLockRef.current.setInitialState();
7
+ }
8
+ }, [patternLockRef]);
9
+ return {
10
+ clear: clear,
11
+ };
12
+ };
13
+
14
+ export { usePatternLockCleanup };
package/esm/index.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ export type { PatternLockProps } from "./typings";
2
+ export * from "./Component.responsive";
3
+ export { THEME_STATE } from "./consts";
package/esm/index.js ADDED
@@ -0,0 +1,2 @@
1
+ export { PatternLockV1 } from './Component.responsive.js';
2
+ export { THEME_STATE } from './consts.js';
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ import React from 'react';
3
+ import { TPatternLockInstance } from 'react-canvas-pattern-lock';
4
+ import { CommonPatternLockProps } from "../typings";
5
+ declare const PatternLockMobileV1: React.ForwardRefExoticComponent<CommonPatternLockProps & React.RefAttributes<TPatternLockInstance>>;
6
+ export { PatternLockMobileV1 };
@@ -0,0 +1,10 @@
1
+ import { __assign } from 'tslib';
2
+ import React, { forwardRef } from 'react';
3
+ import { BasePatternLock } from '../components/base-pattern-lock/Component.js';
4
+
5
+ var styles = {"component":"pattern-lock-v1__component_g2ksw","forgotBtn":"pattern-lock-v1__forgotBtn_g2ksw"};
6
+ require('./mobile.css')
7
+
8
+ var PatternLockMobileV1 = forwardRef(function (restProps, ref) { return React.createElement(BasePatternLock, __assign({}, restProps, { ref: ref, styles: styles })); });
9
+
10
+ export { PatternLockMobileV1 };
@@ -0,0 +1,2 @@
1
+ export { PatternLockMobileV1 } from "./Component.mobile";
2
+ export type { CommonPatternLockProps as PatternLockMobileProps } from "../typings";
@@ -0,0 +1 @@
1
+ export { PatternLockMobileV1 } from './Component.mobile.js';
@@ -0,0 +1,48 @@
1
+ /* hash: 48niu */
2
+ :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
3
+ } /* deprecated */ :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
4
+ } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
5
+ } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
6
+ } :root {
7
+
8
+ /* Hard */
9
+
10
+ /* Up */
11
+
12
+ /* Hard up */
13
+ } :root {
14
+ } :root {
15
+ --gap-xs: 8px;
16
+ --gap-s: 12px;
17
+ --gap-l: 20px;
18
+ --gap-xl: 24px;
19
+ --gap-2xl: 32px;
20
+ } :root {
21
+ } :root {
22
+ --size-s-height: 48px;
23
+ --size-m-height: 56px;
24
+ } :root {
25
+ --pattern-lock-v1-max-width: 500px;
26
+ } .pattern-lock-v1__component_g2ksw {
27
+ max-width: var(--pattern-lock-v1-max-width);
28
+ margin: var(--gap-xs) 0 var(--gap-xl) 0;
29
+ } .pattern-lock-v1__forgotBtn_g2ksw {
30
+ margin: var(--gap-xl) auto 0;
31
+ } @media screen and (min-width: 360px) {
32
+ .pattern-lock-v1__forgotBtn_g2ksw {
33
+ margin-top: var(--gap-2xl);
34
+ min-height: var(--size-s-height);
35
+ }
36
+
37
+ .pattern-lock-v1__component_g2ksw {
38
+ margin-bottom: var(--gap-s);
39
+ }
40
+ } @media screen and (min-width: 390px) {
41
+ .pattern-lock-v1__forgotBtn_g2ksw {
42
+ min-height: var(--size-m-height);
43
+ }
44
+
45
+ .pattern-lock-v1__component_g2ksw {
46
+ margin-bottom: var(--gap-l);
47
+ }
48
+ }
@@ -0,0 +1,2 @@
1
+ export { getPatternLockTestIds } from "../utils";
2
+ export { usePatternLockCleanup } from "../hooks/use-pattern-lock-cleanup";
@@ -0,0 +1,2 @@
1
+ export { getPatternLockTestIds } from '../utils.js';
2
+ export { usePatternLockCleanup } from '../hooks/use-pattern-lock-cleanup.js';
@@ -0,0 +1,91 @@
1
+ import { MouseEvent, ReactNode } from 'react';
2
+ import { ReactPatternLockProps } from 'react-canvas-pattern-lock';
3
+ type ConditionalProps = {
4
+ /**
5
+ * Показать кнопку "забыли код"
6
+ * @default "Забыли код?"
7
+ */
8
+ showForgotCodeBtn: true;
9
+ /**
10
+ * Текст кнопки "забыли код"
11
+ * @default "Забыли код?"
12
+ */
13
+ forgotCodeBtnText?: string;
14
+ /**
15
+ * Коллбэк, вызываемый при клике на кнопку "Забыли код"
16
+ */
17
+ onForgotBtnClick: (event: MouseEvent<HTMLButtonElement>) => void;
18
+ } | {
19
+ showForgotCodeBtn?: false;
20
+ onForgotBtnClick?: never;
21
+ forgotCodeBtnText?: never;
22
+ };
23
+ type CommonPatternLockProps = {
24
+ /**
25
+ * Дополнительный класс
26
+ */
27
+ className?: string;
28
+ /**
29
+ * Сообщение об ошибке
30
+ */
31
+ error?: ReactNode;
32
+ /**
33
+ * Сообщение над графическим ключом
34
+ */
35
+ message?: ReactNode;
36
+ /**
37
+ * Идентификатор для систем автоматизированного тестирования.
38
+ * Для сообщения используется модификатор -message, ошибки -error,
39
+ * кнопки "забыли код" -forgot-code-btn
40
+ */
41
+ dataTestId?: string;
42
+ /**
43
+ * Следить ли за изменениями значений цветовых токенов
44
+ * @default false
45
+ */
46
+ observeTokens?: boolean;
47
+ /**
48
+ * Параметры MutationObserver для наблюдения за изменениями режима(css custom properties)
49
+ */
50
+ observerParams?: {
51
+ getTarget?: () => Node;
52
+ options?: MutationObserverInit;
53
+ };
54
+ /**
55
+ * Дополнительный класс для message/errorMessage
56
+ */
57
+ messageClassName?: string;
58
+ } & Omit<ReactPatternLockProps, 'theme' | 'width' | 'height' | 'rows' | 'cols' | 'hover'> & ConditionalProps;
59
+ type PrivatePatternLockProps = {
60
+ /**
61
+ * Включает ховер-эффект
62
+ */
63
+ hover?: boolean;
64
+ /**
65
+ * Стили компонента
66
+ */
67
+ styles: {
68
+ [key: string]: string;
69
+ };
70
+ };
71
+ type PatternLockProps = CommonPatternLockProps & {
72
+ /**
73
+ * Контрольная точка, с нее начинается desktop версия
74
+ * @default 1024
75
+ */
76
+ breakpoint?: number;
77
+ };
78
+ type ObservableTokens = {
79
+ ACCENT_INITIAL: string;
80
+ ACCENT_SUCCESS: string;
81
+ ACCENT_FAILURE: string;
82
+ RING_BG_INITIAL: string;
83
+ SELECTED_RING_BG_INITIAL: string;
84
+ SELECTED_RING_BG_SUCCESS: string;
85
+ SELECTED_RING_BG_FAILURE: string;
86
+ PRIMARY: string;
87
+ BG: string;
88
+ HOVER_INNER: string;
89
+ HOVER_OUTER: string;
90
+ };
91
+ export { CommonPatternLockProps, PrivatePatternLockProps, PatternLockProps, ObservableTokens };
package/esm/typings.js ADDED
@@ -0,0 +1 @@
1
+
package/esm/utils.d.ts ADDED
@@ -0,0 +1,16 @@
1
+ import { Theme, ThemeParams } from 'react-canvas-pattern-lock';
2
+ declare function getDefaultObserveTarget(): HTMLHeadElement;
3
+ declare function getColorByToken(token: string): string;
4
+ declare const getSizes: () => {
5
+ elementSizes: ThemeParams['dimens'];
6
+ width: number;
7
+ height: number;
8
+ };
9
+ declare function getTheme(dimens: ThemeParams['dimens']): Theme;
10
+ declare function getPatternLockTestIds(dataTestId: string): {
11
+ patternLock: string;
12
+ forgotCodeBtn: string;
13
+ error: string;
14
+ message: string;
15
+ };
16
+ export { getDefaultObserveTarget, getColorByToken, getSizes, getTheme, getPatternLockTestIds };