@redneckz/wildless-cms-uni-blocks 0.14.955 → 0.14.956

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 (117) hide show
  1. package/bundle/bundle.umd.js +104 -17
  2. package/bundle/bundle.umd.min.js +1 -1
  3. package/bundle/retail/components/Fields/SelectField.d.ts +2 -0
  4. package/bundle/retail/model/LeadFormState.d.ts +1 -0
  5. package/bundle/retail/model/NameFieldDef.d.ts +1 -1
  6. package/dist/components/DebitForm/DebitFormStatusTracker.js +4 -5
  7. package/dist/components/DebitForm/DebitFormStatusTracker.js.map +1 -1
  8. package/dist/components/DebitForm/DebitFormStepsData.js +67 -1
  9. package/dist/components/DebitForm/DebitFormStepsData.js.map +1 -1
  10. package/dist/components/DebitForm/formStateMap.js +1 -0
  11. package/dist/components/DebitForm/formStateMap.js.map +1 -1
  12. package/dist/components/DebitForm/useDebitFormAPI.js +1 -1
  13. package/dist/components/DebitForm/useDebitFormAPI.js.map +1 -1
  14. package/dist/retail/components/Fields/CardCategoryField.js +6 -1
  15. package/dist/retail/components/Fields/CardCategoryField.js.map +1 -1
  16. package/dist/retail/components/Fields/DeliveryDateFiels.js +8 -1
  17. package/dist/retail/components/Fields/DeliveryDateFiels.js.map +1 -1
  18. package/dist/retail/components/Fields/DeliveryTimeField.js +13 -4
  19. package/dist/retail/components/Fields/DeliveryTimeField.js.map +1 -1
  20. package/dist/retail/components/Fields/RegionRetailField.js +3 -1
  21. package/dist/retail/components/Fields/RegionRetailField.js.map +1 -1
  22. package/dist/retail/components/Fields/SelectField.d.ts +2 -0
  23. package/dist/retail/components/Fields/SelectField.js +2 -2
  24. package/dist/retail/components/Fields/SelectField.js.map +1 -1
  25. package/dist/retail/model/LeadFormState.d.ts +1 -0
  26. package/dist/retail/model/NameFieldDef.d.ts +1 -1
  27. package/lib/components/DebitForm/DebitFormStatusTracker.js +4 -5
  28. package/lib/components/DebitForm/DebitFormStatusTracker.js.map +1 -1
  29. package/lib/components/DebitForm/DebitFormStepsData.js +67 -1
  30. package/lib/components/DebitForm/DebitFormStepsData.js.map +1 -1
  31. package/lib/components/DebitForm/formStateMap.js +1 -0
  32. package/lib/components/DebitForm/formStateMap.js.map +1 -1
  33. package/lib/components/DebitForm/useDebitFormAPI.js +1 -1
  34. package/lib/components/DebitForm/useDebitFormAPI.js.map +1 -1
  35. package/lib/retail/components/Fields/CardCategoryField.js +6 -1
  36. package/lib/retail/components/Fields/CardCategoryField.js.map +1 -1
  37. package/lib/retail/components/Fields/DeliveryDateFiels.js +8 -1
  38. package/lib/retail/components/Fields/DeliveryDateFiels.js.map +1 -1
  39. package/lib/retail/components/Fields/DeliveryTimeField.js +13 -4
  40. package/lib/retail/components/Fields/DeliveryTimeField.js.map +1 -1
  41. package/lib/retail/components/Fields/RegionRetailField.js +3 -1
  42. package/lib/retail/components/Fields/RegionRetailField.js.map +1 -1
  43. package/lib/retail/components/Fields/SelectField.d.ts +2 -0
  44. package/lib/retail/components/Fields/SelectField.js +2 -2
  45. package/lib/retail/components/Fields/SelectField.js.map +1 -1
  46. package/lib/retail/model/LeadFormState.d.ts +1 -0
  47. package/lib/retail/model/NameFieldDef.d.ts +1 -1
  48. package/mobile/bundle/bundle.umd.js +104 -17
  49. package/mobile/bundle/bundle.umd.min.js +1 -1
  50. package/mobile/bundle/retail/components/Fields/SelectField.d.ts +2 -0
  51. package/mobile/bundle/retail/model/LeadFormState.d.ts +1 -0
  52. package/mobile/bundle/retail/model/NameFieldDef.d.ts +1 -1
  53. package/mobile/dist/components/DebitForm/DebitFormStatusTracker.js +4 -5
  54. package/mobile/dist/components/DebitForm/DebitFormStatusTracker.js.map +1 -1
  55. package/mobile/dist/components/DebitForm/DebitFormStepsData.js +67 -1
  56. package/mobile/dist/components/DebitForm/DebitFormStepsData.js.map +1 -1
  57. package/mobile/dist/components/DebitForm/formStateMap.js +1 -0
  58. package/mobile/dist/components/DebitForm/formStateMap.js.map +1 -1
  59. package/mobile/dist/components/DebitForm/useDebitFormAPI.js +1 -1
  60. package/mobile/dist/components/DebitForm/useDebitFormAPI.js.map +1 -1
  61. package/mobile/dist/retail/components/Fields/CardCategoryField.js +6 -1
  62. package/mobile/dist/retail/components/Fields/CardCategoryField.js.map +1 -1
  63. package/mobile/dist/retail/components/Fields/DeliveryDateFiels.js +8 -1
  64. package/mobile/dist/retail/components/Fields/DeliveryDateFiels.js.map +1 -1
  65. package/mobile/dist/retail/components/Fields/DeliveryTimeField.js +13 -4
  66. package/mobile/dist/retail/components/Fields/DeliveryTimeField.js.map +1 -1
  67. package/mobile/dist/retail/components/Fields/RegionRetailField.js +3 -1
  68. package/mobile/dist/retail/components/Fields/RegionRetailField.js.map +1 -1
  69. package/mobile/dist/retail/components/Fields/SelectField.d.ts +2 -0
  70. package/mobile/dist/retail/components/Fields/SelectField.js +2 -2
  71. package/mobile/dist/retail/components/Fields/SelectField.js.map +1 -1
  72. package/mobile/dist/retail/model/LeadFormState.d.ts +1 -0
  73. package/mobile/dist/retail/model/NameFieldDef.d.ts +1 -1
  74. package/mobile/lib/components/DebitForm/DebitFormStatusTracker.js +4 -5
  75. package/mobile/lib/components/DebitForm/DebitFormStatusTracker.js.map +1 -1
  76. package/mobile/lib/components/DebitForm/DebitFormStepsData.js +67 -1
  77. package/mobile/lib/components/DebitForm/DebitFormStepsData.js.map +1 -1
  78. package/mobile/lib/components/DebitForm/formStateMap.js +1 -0
  79. package/mobile/lib/components/DebitForm/formStateMap.js.map +1 -1
  80. package/mobile/lib/components/DebitForm/useDebitFormAPI.js +1 -1
  81. package/mobile/lib/components/DebitForm/useDebitFormAPI.js.map +1 -1
  82. package/mobile/lib/retail/components/Fields/CardCategoryField.js +6 -1
  83. package/mobile/lib/retail/components/Fields/CardCategoryField.js.map +1 -1
  84. package/mobile/lib/retail/components/Fields/DeliveryDateFiels.js +8 -1
  85. package/mobile/lib/retail/components/Fields/DeliveryDateFiels.js.map +1 -1
  86. package/mobile/lib/retail/components/Fields/DeliveryTimeField.js +13 -4
  87. package/mobile/lib/retail/components/Fields/DeliveryTimeField.js.map +1 -1
  88. package/mobile/lib/retail/components/Fields/RegionRetailField.js +3 -1
  89. package/mobile/lib/retail/components/Fields/RegionRetailField.js.map +1 -1
  90. package/mobile/lib/retail/components/Fields/SelectField.d.ts +2 -0
  91. package/mobile/lib/retail/components/Fields/SelectField.js +2 -2
  92. package/mobile/lib/retail/components/Fields/SelectField.js.map +1 -1
  93. package/mobile/lib/retail/model/LeadFormState.d.ts +1 -0
  94. package/mobile/lib/retail/model/NameFieldDef.d.ts +1 -1
  95. package/mobile/src/components/DebitForm/DebitFormStatusTracker.tsx +4 -6
  96. package/mobile/src/components/DebitForm/DebitFormStepsData.tsx +67 -1
  97. package/mobile/src/components/DebitForm/formStateMap.tsx +1 -0
  98. package/mobile/src/components/DebitForm/useDebitFormAPI.tsx +1 -1
  99. package/mobile/src/retail/components/Fields/CardCategoryField.tsx +7 -0
  100. package/mobile/src/retail/components/Fields/DeliveryDateFiels.tsx +12 -3
  101. package/mobile/src/retail/components/Fields/DeliveryTimeField.tsx +15 -4
  102. package/mobile/src/retail/components/Fields/RegionRetailField.tsx +3 -2
  103. package/mobile/src/retail/components/Fields/SelectField.tsx +3 -0
  104. package/mobile/src/retail/model/LeadFormState.ts +1 -0
  105. package/mobile/src/retail/model/NameFieldDef.ts +1 -0
  106. package/package.json +1 -1
  107. package/src/components/DebitForm/DebitFormStatusTracker.tsx +4 -6
  108. package/src/components/DebitForm/DebitFormStepsData.tsx +67 -1
  109. package/src/components/DebitForm/formStateMap.tsx +1 -0
  110. package/src/components/DebitForm/useDebitFormAPI.tsx +1 -1
  111. package/src/retail/components/Fields/CardCategoryField.tsx +7 -0
  112. package/src/retail/components/Fields/DeliveryDateFiels.tsx +12 -3
  113. package/src/retail/components/Fields/DeliveryTimeField.tsx +15 -4
  114. package/src/retail/components/Fields/RegionRetailField.tsx +3 -2
  115. package/src/retail/components/Fields/SelectField.tsx +3 -0
  116. package/src/retail/model/LeadFormState.ts +1 -0
  117. package/src/retail/model/NameFieldDef.ts +1 -0
@@ -12,6 +12,7 @@ export const CardCategoryField = JSX<CustomFieldProps>(({ field, input }) => {
12
12
  const [programId] = useLocalStorage<string>('programId');
13
13
  const { value: selectedCardCategory, onChange: cardCategoryChange } = field('cardCategory');
14
14
  const selectedPaymentSystem = field('paymentSystem')?.value?.key;
15
+ const handleChangeIsMomentDebitCard = field('isMomentDebitCard')?.onChange;
15
16
 
16
17
  const getCardCategoryValue = useCallback(
17
18
  (fetchedCardTypes: CardTypeData[]) =>
@@ -24,6 +25,11 @@ export const CardCategoryField = JSX<CustomFieldProps>(({ field, input }) => {
24
25
  [],
25
26
  );
26
27
 
28
+ const onChange = useCallback((value: Option) => {
29
+ cardCategoryChange?.(value);
30
+ handleChangeIsMomentDebitCard?.(value?.text?.toLowerCase()?.includes('момент'));
31
+ }, []);
32
+
27
33
  useEffect(() => {
28
34
  if (selectedPaymentSystem && programId) {
29
35
  (async () => {
@@ -50,6 +56,7 @@ export const CardCategoryField = JSX<CustomFieldProps>(({ field, input }) => {
50
56
  label="Категория карты"
51
57
  fieldName="cardCategory"
52
58
  input={input}
59
+ onChange={onChange}
53
60
  />
54
61
  {description ? <InfoCard __html={description} /> : null}
55
62
  </div>
@@ -1,7 +1,16 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import { DatePickerControl } from '../../../ui-kit/DatePicker/DatePickerControl';
3
3
  import { type CustomFieldProps } from '../../../ui-kit/FormField/CustomFieldProps';
4
+ import { useRetailFormStore } from '../../hooks/useRetailFormStore';
4
5
 
5
- export const DeliveryDateFiels = JSX<CustomFieldProps>(({ field, input }) => (
6
- <DatePickerControl label="Дата доставки" {...field(input?.name ?? '')} minDate={new Date()} />
7
- ));
6
+ const MIN_DATE = new Date(Date.now() + 1 * 24 * 60 * 60 * 1000);
7
+
8
+ export const DeliveryDateFiels = JSX<CustomFieldProps>(({ field, input }) => {
9
+ const { productType } = useRetailFormStore();
10
+ const isDebit = productType === 'debitCard';
11
+ const minDate = isDebit ? MIN_DATE : new Date();
12
+
13
+ return (
14
+ <DatePickerControl label="Дата доставки" {...field(input?.name ?? '')} minDate={minDate} />
15
+ );
16
+ });
@@ -4,15 +4,26 @@ import { type CustomFieldProps } from '../../../ui-kit/FormField/CustomFieldProp
4
4
  import { type RadioButtonItem } from '../../../ui-kit/RadioButtonGroup/RadioButtonGroup';
5
5
  import { RadioButtonGroupControl } from '../../../ui-kit/RadioButtonGroup/RadioButtonGroupControl';
6
6
  import { useLeadFormData } from '../../hooks/useLeadFormData';
7
+ import { useRetailFormStore } from '../../hooks/useRetailFormStore';
7
8
 
8
9
  export const DeliveryTimeField = JSX<CustomFieldProps>(({ field, input }) => {
10
+ const { productType } = useRetailFormStore();
11
+ const isDebit = productType === 'debitCard';
9
12
  const { data } = useLeadFormData('COURIER_DELIVERY_TIME');
13
+
14
+ const deliveryTimeDebit = [
15
+ { id: 'TIME_1', text: '10:00-14:00' },
16
+ { id: 'TIME_2', text: '14:00-18:00' },
17
+ ];
18
+
10
19
  const deliveryTime: RadioButtonItem[] = useMemo(
11
20
  () =>
12
- data?.map((_) => ({
13
- id: _.key as string,
14
- text: _.value,
15
- })) ?? [],
21
+ isDebit
22
+ ? deliveryTimeDebit
23
+ : data?.map((_) => ({
24
+ id: _.key as string,
25
+ text: _.value,
26
+ })) ?? [],
16
27
  [data],
17
28
  );
18
29
 
@@ -14,12 +14,12 @@ export const RegionRetailField = JSX<CustomFieldProps>(({ field, input }) => {
14
14
  const { data: regions } = useLeadFormData('REGION_RF');
15
15
  const { data: regionsDelivery } = useAsyncData('regionsDelivery', getRegionsCardDelivery);
16
16
  const { data: productSettings } = useLeadFormData(getCurrentProductSettings(productType));
17
+ const isEsiaAuth = field('esiaAccountTypeCd')?.value?.key;
17
18
 
18
19
  const isSalaryCard = programId === '38';
19
20
  const formatRegions = regions?.map(({ key, value }) => ({ key, text: value }));
20
21
  const isDeliveryActive =
21
22
  productSettings?.find((_) => _?.key === 'DELIVERY_ACTIVE')?.value === 'true';
22
-
23
23
  const handleChangeRegion = field('regionRetail')?.onChange;
24
24
  const handleChangeRegionHasDelivery = field('regionHasDelivery')?.onChange;
25
25
  const handleChangeMethodObtain = field('methodObtain')?.onChange;
@@ -29,7 +29,8 @@ export const RegionRetailField = JSX<CustomFieldProps>(({ field, input }) => {
29
29
  const regionHasDelivery =
30
30
  isDeliveryActive &&
31
31
  regionsDelivery?.find((_) => _.regionCode === value.key)?.deliveryFlg &&
32
- !isSalaryCard;
32
+ !isSalaryCard &&
33
+ Boolean(isEsiaAuth);
33
34
  handleChangeRegionHasDelivery?.(regionHasDelivery);
34
35
  handleChangeMethodObtain?.(regionHasDelivery ? 'courier' : 'office');
35
36
  handleChangeRegion?.(value);
@@ -18,6 +18,7 @@ export interface SelectFieldProps
18
18
  fieldName: string;
19
19
  isSearch?: boolean;
20
20
  isManualInput?: boolean;
21
+ onChange?: (value: Option) => void;
21
22
  }
22
23
 
23
24
  export const SelectField = UniBlock<SelectFieldProps>(
@@ -28,6 +29,7 @@ export const SelectField = UniBlock<SelectFieldProps>(
28
29
  placeholder = 'Выберите из списка',
29
30
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
30
31
  options,
32
+ onChange,
31
33
  ...rest
32
34
  }) => {
33
35
  const leadOptions: Option[] =
@@ -42,6 +44,7 @@ export const SelectField = UniBlock<SelectFieldProps>(
42
44
  options={leadOptions}
43
45
  {...field(fieldName)}
44
46
  {...rest}
47
+ onChange={onChange ?? field(fieldName)?.onChange}
45
48
  />
46
49
  );
47
50
  },
@@ -186,6 +186,7 @@ export interface LeadFormState extends FormRetailConsents, FormStateDeliveryType
186
186
  latinName?: string;
187
187
  latinSurname?: string;
188
188
  regionHasDelivery?: boolean;
189
+ isMomentDebitCard?: boolean;
189
190
  files?: File[];
190
191
  deliveryTime?: string;
191
192
  }
@@ -27,6 +27,7 @@ type NameFieldCreditCardDef =
27
27
  | 'methodObtain'
28
28
  | 'deliveryDate'
29
29
  | 'regionHasDelivery'
30
+ | 'isMomentDebitCard'
30
31
  | 'latinName'
31
32
  | 'latinSurname';
32
33