@redneckz/wildless-cms-uni-blocks 0.14.697 → 0.14.698

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 (145) hide show
  1. package/bundle/bundle.umd.js +21 -11
  2. package/bundle/bundle.umd.min.js +1 -1
  3. package/bundle/ui-kit/Input/getValidStyle.d.ts +1 -0
  4. package/bundle/utils/safeJsonParse.d.ts +1 -0
  5. package/dist/components/ApplicationLeadForm/useInitApplicationLead.js +2 -1
  6. package/dist/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
  7. package/dist/components/CreditCardForm/CreditCardForm.js +1 -2
  8. package/dist/components/CreditCardForm/CreditCardForm.js.map +1 -1
  9. package/dist/components/CreditForm/CreditForm.js +1 -2
  10. package/dist/components/CreditForm/CreditForm.js.map +1 -1
  11. package/dist/hooks/useLocalStorage.js +2 -1
  12. package/dist/hooks/useLocalStorage.js.map +1 -1
  13. package/dist/ui-kit/ConsentBkiDialog/ConsentBkiDialog.js +1 -1
  14. package/dist/ui-kit/ConsentBkiDialog/ConsentBkiDialog.js.map +1 -1
  15. package/dist/ui-kit/EsiaLoginDialog/EsiaLoginDialog.js +1 -1
  16. package/dist/ui-kit/EsiaLoginDialog/EsiaLoginDialog.js.map +1 -1
  17. package/dist/ui-kit/FormField/Fields/CreditCalcField.js +1 -1
  18. package/dist/ui-kit/FormField/Fields/CreditCalcField.js.map +1 -1
  19. package/dist/ui-kit/Input/Input.js +2 -3
  20. package/dist/ui-kit/Input/Input.js.map +1 -1
  21. package/dist/ui-kit/Input/getValidStyle.d.ts +1 -0
  22. package/dist/ui-kit/Input/getValidStyle.js +6 -0
  23. package/dist/ui-kit/Input/getValidStyle.js.map +1 -0
  24. package/dist/ui-kit/VerifyPhoneDialog/InputCode.js +2 -1
  25. package/dist/ui-kit/VerifyPhoneDialog/InputCode.js.map +1 -1
  26. package/dist/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.js +1 -1
  27. package/dist/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.js.map +1 -1
  28. package/dist/utils/safeJsonParse.d.ts +1 -0
  29. package/dist/utils/safeJsonParse.js +12 -0
  30. package/dist/utils/safeJsonParse.js.map +1 -0
  31. package/lib/common.css +1 -1
  32. package/lib/components/ApplicationLeadForm/ApplicationLeadForm.fixture.mobile.d.ts +1 -0
  33. package/lib/components/ApplicationLeadForm/useInitApplicationLead.js +2 -1
  34. package/lib/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
  35. package/lib/components/CreditCardForm/CreditCardForm.fixture.mobile.d.ts +5 -0
  36. package/lib/components/CreditCardForm/CreditCardForm.js +1 -2
  37. package/lib/components/CreditCardForm/CreditCardForm.js.map +1 -1
  38. package/lib/components/CreditForm/CreditForm.fixture.mobile.d.ts +5 -0
  39. package/lib/components/CreditForm/CreditForm.js +1 -2
  40. package/lib/components/CreditForm/CreditForm.js.map +1 -1
  41. package/lib/hooks/useLocalStorage.js +2 -1
  42. package/lib/hooks/useLocalStorage.js.map +1 -1
  43. package/lib/ui-kit/ConsentBkiDialog/ConsentBkiDialog.js +1 -1
  44. package/lib/ui-kit/ConsentBkiDialog/ConsentBkiDialog.js.map +1 -1
  45. package/lib/ui-kit/EsiaLoginDialog/EsiaLoginDialog.js +1 -1
  46. package/lib/ui-kit/EsiaLoginDialog/EsiaLoginDialog.js.map +1 -1
  47. package/lib/ui-kit/FormField/Fields/CreditCalcField.js +1 -1
  48. package/lib/ui-kit/FormField/Fields/CreditCalcField.js.map +1 -1
  49. package/lib/ui-kit/Input/Input.js +1 -2
  50. package/lib/ui-kit/Input/Input.js.map +1 -1
  51. package/lib/ui-kit/Input/getValidStyle.d.ts +1 -0
  52. package/lib/ui-kit/Input/getValidStyle.js +3 -0
  53. package/lib/ui-kit/Input/getValidStyle.js.map +1 -0
  54. package/lib/ui-kit/VerifyPhoneDialog/InputCode.js +2 -1
  55. package/lib/ui-kit/VerifyPhoneDialog/InputCode.js.map +1 -1
  56. package/lib/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.js +1 -1
  57. package/lib/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.js.map +1 -1
  58. package/lib/utils/safeJsonParse.d.ts +1 -0
  59. package/lib/utils/safeJsonParse.js +9 -0
  60. package/lib/utils/safeJsonParse.js.map +1 -0
  61. package/mobile/bundle/bundle.umd.js +21 -11
  62. package/mobile/bundle/bundle.umd.min.js +1 -1
  63. package/mobile/bundle/ui-kit/Input/getValidStyle.d.ts +1 -0
  64. package/mobile/bundle/utils/safeJsonParse.d.ts +1 -0
  65. package/mobile/dist/components/ApplicationLeadForm/useInitApplicationLead.js +2 -1
  66. package/mobile/dist/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
  67. package/mobile/dist/components/CreditCardForm/CreditCardForm.js +1 -2
  68. package/mobile/dist/components/CreditCardForm/CreditCardForm.js.map +1 -1
  69. package/mobile/dist/components/CreditForm/CreditForm.js +1 -2
  70. package/mobile/dist/components/CreditForm/CreditForm.js.map +1 -1
  71. package/mobile/dist/hooks/useLocalStorage.js +2 -1
  72. package/mobile/dist/hooks/useLocalStorage.js.map +1 -1
  73. package/mobile/dist/ui-kit/ConsentBkiDialog/ConsentBkiDialog.js +1 -1
  74. package/mobile/dist/ui-kit/ConsentBkiDialog/ConsentBkiDialog.js.map +1 -1
  75. package/mobile/dist/ui-kit/EsiaLoginDialog/EsiaLoginDialog.js +1 -1
  76. package/mobile/dist/ui-kit/EsiaLoginDialog/EsiaLoginDialog.js.map +1 -1
  77. package/mobile/dist/ui-kit/FormField/Fields/CreditCalcField.js +1 -1
  78. package/mobile/dist/ui-kit/FormField/Fields/CreditCalcField.js.map +1 -1
  79. package/mobile/dist/ui-kit/Input/Input.js +2 -3
  80. package/mobile/dist/ui-kit/Input/Input.js.map +1 -1
  81. package/mobile/dist/ui-kit/Input/getValidStyle.d.ts +1 -0
  82. package/mobile/dist/ui-kit/Input/getValidStyle.js +6 -0
  83. package/mobile/dist/ui-kit/Input/getValidStyle.js.map +1 -0
  84. package/mobile/dist/ui-kit/VerifyPhoneDialog/InputCode.js +2 -1
  85. package/mobile/dist/ui-kit/VerifyPhoneDialog/InputCode.js.map +1 -1
  86. package/mobile/dist/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.js +1 -1
  87. package/mobile/dist/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.js.map +1 -1
  88. package/mobile/dist/utils/safeJsonParse.d.ts +1 -0
  89. package/mobile/dist/utils/safeJsonParse.js +12 -0
  90. package/mobile/dist/utils/safeJsonParse.js.map +1 -0
  91. package/mobile/lib/common.css +1 -1
  92. package/mobile/lib/components/ApplicationLeadForm/useInitApplicationLead.js +2 -1
  93. package/mobile/lib/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
  94. package/mobile/lib/components/CreditCardForm/CreditCardForm.js +1 -2
  95. package/mobile/lib/components/CreditCardForm/CreditCardForm.js.map +1 -1
  96. package/mobile/lib/components/CreditForm/CreditForm.js +1 -2
  97. package/mobile/lib/components/CreditForm/CreditForm.js.map +1 -1
  98. package/mobile/lib/hooks/useLocalStorage.js +2 -1
  99. package/mobile/lib/hooks/useLocalStorage.js.map +1 -1
  100. package/mobile/lib/ui-kit/ConsentBkiDialog/ConsentBkiDialog.js +1 -1
  101. package/mobile/lib/ui-kit/ConsentBkiDialog/ConsentBkiDialog.js.map +1 -1
  102. package/mobile/lib/ui-kit/EsiaLoginDialog/EsiaLoginDialog.js +1 -1
  103. package/mobile/lib/ui-kit/EsiaLoginDialog/EsiaLoginDialog.js.map +1 -1
  104. package/mobile/lib/ui-kit/FormField/Fields/CreditCalcField.js +1 -1
  105. package/mobile/lib/ui-kit/FormField/Fields/CreditCalcField.js.map +1 -1
  106. package/mobile/lib/ui-kit/Input/Input.js +1 -2
  107. package/mobile/lib/ui-kit/Input/Input.js.map +1 -1
  108. package/mobile/lib/ui-kit/Input/getValidStyle.d.ts +1 -0
  109. package/mobile/lib/ui-kit/Input/getValidStyle.js +3 -0
  110. package/mobile/lib/ui-kit/Input/getValidStyle.js.map +1 -0
  111. package/mobile/lib/ui-kit/VerifyPhoneDialog/InputCode.js +2 -1
  112. package/mobile/lib/ui-kit/VerifyPhoneDialog/InputCode.js.map +1 -1
  113. package/mobile/lib/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.js +1 -1
  114. package/mobile/lib/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.js.map +1 -1
  115. package/mobile/lib/utils/safeJsonParse.d.ts +1 -0
  116. package/mobile/lib/utils/safeJsonParse.js +9 -0
  117. package/mobile/lib/utils/safeJsonParse.js.map +1 -0
  118. package/mobile/src/components/ApplicationLeadForm/useInitApplicationLead.ts +4 -1
  119. package/mobile/src/components/CreditCardForm/CreditCardForm.tsx +1 -2
  120. package/mobile/src/components/CreditForm/CreditForm.tsx +1 -2
  121. package/mobile/src/hooks/useLocalStorage.ts +2 -1
  122. package/mobile/src/ui-kit/ConsentBkiDialog/ConsentBkiDialog.tsx +1 -1
  123. package/mobile/src/ui-kit/EsiaLoginDialog/EsiaLoginDialog.tsx +2 -2
  124. package/mobile/src/ui-kit/FormField/Fields/CreditCalcField.tsx +1 -0
  125. package/mobile/src/ui-kit/Input/Input.tsx +1 -3
  126. package/mobile/src/ui-kit/Input/getValidStyle.tsx +3 -0
  127. package/mobile/src/ui-kit/VerifyPhoneDialog/InputCode.tsx +4 -3
  128. package/mobile/src/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.tsx +1 -1
  129. package/mobile/src/utils/safeJsonParse.ts +7 -0
  130. package/package.json +1 -1
  131. package/src/components/ApplicationLeadForm/ApplicationLeadForm.fixture.mobile.tsx +15 -23
  132. package/src/components/ApplicationLeadForm/useInitApplicationLead.ts +4 -1
  133. package/src/components/CreditCardForm/CreditCardForm.fixture.mobile.tsx +25 -0
  134. package/src/components/CreditCardForm/CreditCardForm.tsx +1 -2
  135. package/src/components/CreditForm/CreditForm.fixture.mobile.tsx +30 -0
  136. package/src/components/CreditForm/CreditForm.tsx +1 -2
  137. package/src/hooks/useLocalStorage.ts +2 -1
  138. package/src/ui-kit/ConsentBkiDialog/ConsentBkiDialog.tsx +1 -1
  139. package/src/ui-kit/EsiaLoginDialog/EsiaLoginDialog.tsx +2 -2
  140. package/src/ui-kit/FormField/Fields/CreditCalcField.tsx +1 -0
  141. package/src/ui-kit/Input/Input.tsx +1 -3
  142. package/src/ui-kit/Input/getValidStyle.tsx +3 -0
  143. package/src/ui-kit/VerifyPhoneDialog/InputCode.tsx +4 -3
  144. package/src/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.tsx +1 -1
  145. package/src/utils/safeJsonParse.ts +7 -0
@@ -0,0 +1,30 @@
1
+ import '../../setup-fixture';
2
+ import { DialogManager } from '../../ui-kit/DialogManager/DialogManager';
3
+ import { PopupManager } from '../../ui-kit/PopupManager/PopupManager';
4
+ import { CreditForm } from './CreditForm';
5
+
6
+ const MOCK_TOKEN = 'mock-key';
7
+ const MOCK_TASK_ID = '111111';
8
+
9
+ const refreshToken = globalThis.sessionStorage?.getItem('refreshToken');
10
+ const accessToken = globalThis.sessionStorage?.getItem('accessToken');
11
+ const taskId = globalThis.localStorage.getItem('taskId');
12
+
13
+ !refreshToken && globalThis.sessionStorage?.setItem('refreshToken', MOCK_TOKEN);
14
+ !accessToken && globalThis.sessionStorage?.setItem('accessToken', MOCK_TOKEN);
15
+ !taskId && globalThis.localStorage.setItem('taskId', MOCK_TASK_ID);
16
+
17
+ export default {
18
+ default: (
19
+ <div>
20
+ <CreditForm
21
+ className="col-span-12"
22
+ programsSource={{
23
+ $ref: '/wcms-resources/products-credit-calc-data.json',
24
+ }}
25
+ />
26
+ <PopupManager />
27
+ <DialogManager />
28
+ </div>
29
+ ),
30
+ };
@@ -4,7 +4,6 @@ import { type JSONRefObject } from '../../data/JSONRefObject';
4
4
  import { BlockWrapper } from '../../ui-kit/BlockWrapper';
5
5
  import { UniBlock } from '../../UniBlock/UniBlock';
6
6
  import { type UniBlockProps } from '../../UniBlock/UniBlockProps';
7
- import { style } from '../../utils/style';
8
7
  import { type CreditFormContent } from './CreditFormContent';
9
8
  import { CreditFormProgress } from './CreditFormProgress';
10
9
  import { CreditFormStep } from './CreditFormStep';
@@ -54,7 +53,7 @@ export const CreditForm = UniBlock<CreditFormProps>(({ className, programsSource
54
53
  const [isFormFinished, setIsFormFinished] = useState(false);
55
54
 
56
55
  return (
57
- <BlockWrapper className={style('bg-transparent', className)} defaultPadding="p-0" {...rest}>
56
+ <BlockWrapper className={className} {...rest}>
58
57
  <div ref={formContainerRef} className="container grid grid-cols-12">
59
58
  {isStartStep || isFormFinished ? null : (
60
59
  <CreditFormProgress stepsTitles={STEP_TITLES} step={step} totalSteps={STEPS} />
@@ -1,11 +1,12 @@
1
1
  import { useCallback, useState } from '@redneckz/uni-jsx/lib/hooks';
2
+ import { safeJsonParse } from '../utils/safeJsonParse';
2
3
 
3
4
  export function useLocalStorage<T>(
4
5
  key: string,
5
6
  ): [T | null, (value: T | null | ((oldValue: T | null) => T | null)) => void] {
6
7
  const initialValue = globalThis.localStorage?.getItem(key);
7
8
  const [storedValue, setStoredValue] = useState<T | null>(
8
- initialValue ? (JSON.parse(initialValue) as T | null) : null,
9
+ initialValue ? safeJsonParse(initialValue) : null,
9
10
  );
10
11
 
11
12
  const setValue = useCallback(
@@ -51,7 +51,7 @@ export const ConsentBkiDialog = JSX<ConsentBkiDialogProps>(
51
51
 
52
52
  return (
53
53
  <Dialog
54
- className="my-6xl max-w-3xl w-full min-h-fit mx-auto rounded-lg py-0 px-5xl"
54
+ className="my-6xl max-w-3xl w-full min-h-fit mx-auto rounded-lg px-5xl"
55
55
  onClose={onClose}
56
56
  >
57
57
  <div className="flex flex-col gap-xl items-center">
@@ -37,7 +37,7 @@ export const EsiaLoginDialog = JSX<EsiaLoginDialogProps>(({ onClose }) => {
37
37
  return (
38
38
  <Dialog className="my-6xl max-w-lg w-full min-h-fit mx-auto rounded-lg" onClose={handleClose}>
39
39
  <div className="flex flex-col gap-lg items-center rounded-md">
40
- <div className="flex items-center justify-around w-full">
40
+ <div className="flex items-center justify-around w-full px-m">
41
41
  <ul className="list-disc">
42
42
  <li>Вероятность одобрения выше</li>
43
43
  <li>Без справок о доходах и трудоустройстве</li>
@@ -45,7 +45,7 @@ export const EsiaLoginDialog = JSX<EsiaLoginDialogProps>(({ onClose }) => {
45
45
  </ul>
46
46
  <Img image={{ icon: 'GosUslugiIcon', iconVersion: 'normal' }} height="70" />
47
47
  </div>
48
- <div className="flex items-center justify-between w-full m-0">
48
+ <div className="flex flex-wrap gap-lg w-full">
49
49
  <Button type="button" onClick={handleAuth}>
50
50
  Заполнить через Госуслуги
51
51
  </Button>
@@ -15,6 +15,7 @@ export const CreditCalcField = JSX<CustomFieldProps>(({ field, params }) => {
15
15
  return (
16
16
  <CalculatorCredit
17
17
  {...params?.calcData}
18
+ padding="p-0"
18
19
  defaultParams={defaultValueAdapter(
19
20
  field(FIELD_NAME).value as CreditCalculatorUserInputParams,
20
21
  )}
@@ -1,8 +1,8 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import { useCallback, useEffect, useRef } from '@redneckz/uni-jsx/lib/hooks';
3
3
  import { style } from '../../utils/style';
4
+ import { getValidStyle } from './getValidStyle';
4
5
  import { type InputProps } from './InputProps';
5
- import { inputValidStyle } from './inputValidStyle';
6
6
  import { renderLabel } from './renderLabel';
7
7
 
8
8
  export const Input = JSX<InputProps>(
@@ -86,6 +86,4 @@ export const Input = JSX<InputProps>(
86
86
  },
87
87
  );
88
88
 
89
- const getValidStyle = (valid: boolean) => (valid ? inputValidStyle : 'border-error');
90
-
91
89
  const defaultStyle = 'w-full border rounded-md text-primary-text outline-none p-m';
@@ -0,0 +1,3 @@
1
+ import { inputValidStyle } from './inputValidStyle';
2
+
3
+ export const getValidStyle = (valid: boolean) => (valid ? inputValidStyle : 'border-error');
@@ -1,5 +1,6 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import { useCallback, useEffect, useRef, useState } from '@redneckz/uni-jsx/lib/hooks';
3
+ import { getValidStyle } from '../Input/getValidStyle';
3
4
  import { type PreventableEvent } from '../PreventableEvent';
4
5
 
5
6
  type InputCodeProps = {
@@ -82,7 +83,7 @@ export const InputCode = JSX<InputCodeProps>(({ values, setValues, hasError, err
82
83
  const getInputStyle = (index: number, values: string[], hasError = false) => {
83
84
  const isInputEmpty = !values[index];
84
85
 
85
- return `w-20 h-24 text-5xl text-center p-lg m-2 border ${
86
- hasError && isInputEmpty ? 'border-error' : 'border-gray'
87
- } rounded-md caret-transparent outline-none`;
86
+ return `w-16 sm:w-20 h-24 text-5xl text-center p-md m-2 border ${getValidStyle(
87
+ !hasError || !isInputEmpty,
88
+ )} rounded-md caret-transparent outline-none`;
88
89
  };
@@ -75,7 +75,7 @@ export const VerifyPhoneDialog = JSX<VerifyPhoneDialogProps>(
75
75
 
76
76
  return (
77
77
  <Dialog
78
- className="my-6xl max-w-3xl w-full min-h-fit mx-auto rounded-xl px-5xl py-0"
78
+ className="my-6xl max-w-3xl w-full min-h-fit mx-auto rounded-xl p-m"
79
79
  onClose={onClose}
80
80
  >
81
81
  <div className="flex flex-col gap-xl items-center rounded-md">
@@ -0,0 +1,7 @@
1
+ export const safeJsonParse = <T>(data?: string): T | null => {
2
+ try {
3
+ return JSON.parse(String(data));
4
+ } catch (ex) {
5
+ return null;
6
+ }
7
+ };