@redneckz/wildless-cms-uni-blocks 0.14.872 → 0.14.874

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 (44) hide show
  1. package/bundle/bundle.umd.js +31 -2
  2. package/bundle/bundle.umd.min.js +1 -1
  3. package/bundle/retail/components/NoConsentDialog/NoConsentDialog.d.ts +6 -0
  4. package/dist/components/ApplicationLeadForm/ApplicationLeadForm.js +14 -1
  5. package/dist/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  6. package/dist/components/StickyBottomMenu/StickyBottomMenuDialog.js +1 -1
  7. package/dist/components/StickyBottomMenu/StickyBottomMenuDialog.js.map +1 -1
  8. package/dist/retail/components/NoConsentDialog/NoConsentDialog.d.ts +6 -0
  9. package/dist/retail/components/NoConsentDialog/NoConsentDialog.js +27 -0
  10. package/dist/retail/components/NoConsentDialog/NoConsentDialog.js.map +1 -0
  11. package/lib/components/ApplicationLeadForm/ApplicationLeadForm.js +14 -1
  12. package/lib/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  13. package/lib/components/StickyBottomMenu/StickyBottomMenuDialog.js +1 -1
  14. package/lib/components/StickyBottomMenu/StickyBottomMenuDialog.js.map +1 -1
  15. package/lib/retail/components/NoConsentDialog/NoConsentDialog.d.ts +6 -0
  16. package/lib/retail/components/NoConsentDialog/NoConsentDialog.fixture.d.ts +5 -0
  17. package/lib/retail/components/NoConsentDialog/NoConsentDialog.js +25 -0
  18. package/lib/retail/components/NoConsentDialog/NoConsentDialog.js.map +1 -0
  19. package/mobile/bundle/bundle.umd.js +32 -3
  20. package/mobile/bundle/bundle.umd.min.js +1 -1
  21. package/mobile/bundle/retail/components/NoConsentDialog/NoConsentDialog.d.ts +6 -0
  22. package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadForm.js +14 -1
  23. package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  24. package/mobile/dist/components/StickyBottomMenu/StickyBottomMenuDialog.js +1 -1
  25. package/mobile/dist/components/StickyBottomMenu/StickyBottomMenuDialog.js.map +1 -1
  26. package/mobile/dist/retail/components/NoConsentDialog/NoConsentDialog.d.ts +6 -0
  27. package/mobile/dist/retail/components/NoConsentDialog/NoConsentDialog.js +27 -0
  28. package/mobile/dist/retail/components/NoConsentDialog/NoConsentDialog.js.map +1 -0
  29. package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadForm.js +14 -1
  30. package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  31. package/mobile/lib/components/StickyBottomMenu/StickyBottomMenuDialog.js +1 -1
  32. package/mobile/lib/components/StickyBottomMenu/StickyBottomMenuDialog.js.map +1 -1
  33. package/mobile/lib/retail/components/NoConsentDialog/NoConsentDialog.d.ts +6 -0
  34. package/mobile/lib/retail/components/NoConsentDialog/NoConsentDialog.js +25 -0
  35. package/mobile/lib/retail/components/NoConsentDialog/NoConsentDialog.js.map +1 -0
  36. package/mobile/src/components/ApplicationLeadForm/ApplicationLeadForm.tsx +16 -1
  37. package/mobile/src/components/StickyBottomMenu/StickyBottomMenuDialog.tsx +1 -1
  38. package/mobile/src/retail/components/NoConsentDialog/NoConsentDialog.tsx +55 -0
  39. package/package.json +1 -1
  40. package/src/components/ApplicationLeadForm/ApplicationLeadForm.tsx +16 -1
  41. package/src/components/StickyBottomMenu/StickyBottomMenuDialog.tsx +1 -1
  42. package/src/icons/IconName.ts +4 -4
  43. package/src/retail/components/NoConsentDialog/NoConsentDialog.fixture.tsx +7 -0
  44. package/src/retail/components/NoConsentDialog/NoConsentDialog.tsx +55 -0
@@ -0,0 +1,6 @@
1
+ import type { OnCloseProps } from '../../../model/OnCloseProps';
2
+ export interface NoConsentDialogProps extends OnCloseProps {
3
+ attempts: number;
4
+ onSubmit?: (confirmStatus: string) => void;
5
+ }
6
+ export declare const NoConsentDialog: import("@redneckz/uni-jsx").UNIComponent<NoConsentDialogProps, any, any>;
@@ -5,6 +5,7 @@ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
5
5
  const uni_jsx_1 = require("@redneckz/uni-jsx");
6
6
  const hooks_1 = require("@redneckz/uni-jsx/lib/hooks");
7
7
  const useForm_1 = require("../../hooks/useForm/useForm");
8
+ const NoConsentDialog_1 = require("../../retail/components/NoConsentDialog/NoConsentDialog");
8
9
  const getLimitedBirthdayValidation_1 = require("../../retail/validator/getLimitedBirthdayValidation");
9
10
  const validatorObj_1 = require("../../retail/validator/validatorObj");
10
11
  const ApplicationFormLayout_1 = require("../../ui-kit/ApplicationFormLayout/ApplicationFormLayout");
@@ -25,9 +26,11 @@ const useApplicationLeadApi_1 = require("./useApplicationLeadApi");
25
26
  const useInitApplicationLead_1 = require("./useInitApplicationLead");
26
27
  exports.ApplicationLeadForm = (0, uni_jsx_1.JSX)(({ className, title, programId = '', nextStepLink = '/credit-lead', button, productType = 'credit', data, ...rest }) => {
27
28
  const [esiaStatus, setEsiaStatus] = (0, hooks_1.useState)();
29
+ const [attemptsWithoutConsents, setAttemptsWithoutConsents] = (0, hooks_1.useState)(0);
28
30
  const leadForm = (0, hooks_1.useRef)(null);
29
31
  const applicationFormData = (0, hooks_1.useMemo)(() => (0, applicationFormData_1.getApplicationFormData)(productType), [productType]);
30
32
  const inputs = (0, hooks_1.useMemo)(() => getInputs(applicationFormData), [applicationFormData]);
33
+ const noConsentDialog = (0, useDialog_1.useDialog)(NoConsentDialog_1.NoConsentDialog);
31
34
  const extendedValidatorObj = (0, hooks_1.useMemo)(() => getExtendedValidatorObj(productType), [productType]);
32
35
  const formValidator = (0, hooks_1.useMemo)(() => (0, getObjectValidator_1.getFormValidator)(inputs, extendedValidatorObj), [inputs, extendedValidatorObj]);
33
36
  const initialFormState = (0, useInitApplicationLead_1.useInitApplicationLead)({
@@ -47,6 +50,16 @@ exports.ApplicationLeadForm = (0, uni_jsx_1.JSX)(({ className, title, programId
47
50
  formValidator,
48
51
  onSubmit: handleSubmit,
49
52
  });
53
+ const onSubmitWithPrecondition = (ev) => {
54
+ if (!field('processPersonalDataFlg')?.value) {
55
+ setAttemptsWithoutConsents((prev) => prev + 1);
56
+ attemptsWithoutConsents > 0 &&
57
+ noConsentDialog.open({
58
+ attempts: attemptsWithoutConsents,
59
+ });
60
+ }
61
+ onSubmit?.(ev);
62
+ };
50
63
  const responseTypeDialog = (0, useDialog_1.useDialog)(ResponseTypeDialog_1.ResponseTypeDialog);
51
64
  (0, hooks_1.useEffect)(() => {
52
65
  if (ok !== undefined) {
@@ -63,7 +76,7 @@ exports.ApplicationLeadForm = (0, uni_jsx_1.JSX)(({ className, title, programId
63
76
  reset();
64
77
  }
65
78
  }, [leadForm?.current, esiaStatus]);
66
- return ((0, jsx_runtime_1.jsxs)(ApplicationFormLayout_1.ApplicationFormLayout, { className: (0, style_1.style)('container space-y-m', className), title: title, ...rest, children: [!esiaStatus ? (0, jsx_runtime_1.jsx)(EsiaLoginBanner_1.EsiaLoginBanner, { onChangeEsiaStatus: setEsiaStatus }) : null, (0, jsx_runtime_1.jsxs)("form", { onSubmit: onSubmit, className: "space-y-m relative", ref: leadForm, children: [esiaStatus === ApplicationLeadFormContent_1.EsiaStatuses.Pending ? (0, jsx_runtime_1.jsx)(Loader_1.Loader, { blur: false }) : null, applicationFormData.map((_, i) => ((0, jsx_runtime_1.jsxs)("div", { className: (0, style_1.style)((0, inputColumnStyle_1.inputColumnStyles)(_.columns), 'grid gap-x-m'), children: [(0, renderTitle_1.renderTitle)(_.title), (0, renderInputs_1.renderInputs)({ field, inputs: _?.inputs }, productType)] }, `section-${i}`))), (0, renderSubmitButton_1.renderSubmitButton)(button, isSending), esiaStatus === ApplicationLeadFormContent_1.EsiaStatuses.Error ? ((0, jsx_runtime_1.jsx)(Text_1.Text, { size: "text-m", font: "font-medium", color: "text-error", children: "\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u0413\u043E\u0441\u0443\u0441\u043B\u0443\u0433\u0438 \u0434\u043B\u044F \u043E\u0444\u043E\u0440\u043C\u043B\u0435\u043D\u0438\u044F \u0437\u0430\u044F\u0432\u043A\u0438 \u043D\u0435\u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E, \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E \u0437\u0430\u043F\u043E\u043B\u043D\u0438\u0442\u044C \u043F\u043E\u043B\u044F \u0432\u0440\u0443\u0447\u043D\u0443\u044E." })) : null] })] }));
79
+ return ((0, jsx_runtime_1.jsxs)(ApplicationFormLayout_1.ApplicationFormLayout, { className: (0, style_1.style)('container space-y-m', className), title: title, ...rest, children: [!esiaStatus ? (0, jsx_runtime_1.jsx)(EsiaLoginBanner_1.EsiaLoginBanner, { onChangeEsiaStatus: setEsiaStatus }) : null, (0, jsx_runtime_1.jsxs)("form", { onSubmit: onSubmitWithPrecondition, className: "space-y-m relative", ref: leadForm, children: [esiaStatus === ApplicationLeadFormContent_1.EsiaStatuses.Pending ? (0, jsx_runtime_1.jsx)(Loader_1.Loader, { blur: false }) : null, applicationFormData.map((_, i) => ((0, jsx_runtime_1.jsxs)("div", { className: (0, style_1.style)((0, inputColumnStyle_1.inputColumnStyles)(_.columns), 'grid gap-x-m'), children: [(0, renderTitle_1.renderTitle)(_.title), (0, renderInputs_1.renderInputs)({ field, inputs: _?.inputs }, productType)] }, `section-${i}`))), (0, renderSubmitButton_1.renderSubmitButton)(button, isSending), esiaStatus === ApplicationLeadFormContent_1.EsiaStatuses.Error ? ((0, jsx_runtime_1.jsx)(Text_1.Text, { size: "text-m", font: "font-medium", color: "text-error", children: "\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u0413\u043E\u0441\u0443\u0441\u043B\u0443\u0433\u0438 \u0434\u043B\u044F \u043E\u0444\u043E\u0440\u043C\u043B\u0435\u043D\u0438\u044F \u0437\u0430\u044F\u0432\u043A\u0438 \u043D\u0435\u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E, \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E \u0437\u0430\u043F\u043E\u043B\u043D\u0438\u0442\u044C \u043F\u043E\u043B\u044F \u0432\u0440\u0443\u0447\u043D\u0443\u044E." })) : null] })] }));
67
80
  });
68
81
  const getInputs = (applicationFormData) => (applicationFormData?.flatMap((_) => _?.inputs) || []);
69
82
  const getExtendedValidatorObj = (productType) => ({
@@ -1 +1 @@
1
- {"version":3,"file":"ApplicationLeadForm.js","sourceRoot":"","sources":["../../../src/components/ApplicationLeadForm/ApplicationLeadForm.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ApplicationLeadForm.js","sourceRoot":"","sources":["../../../src/components/ApplicationLeadForm/ApplicationLeadForm.tsx"],"names":[],"mappings":"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"}
@@ -4,5 +4,5 @@ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
4
  const uni_jsx_1 = require("@redneckz/uni-jsx");
5
5
  const CloseButton_1 = require("../../ui-kit/DialogManager/CloseButton");
6
6
  const style_1 = require("../../utils/style");
7
- exports.StickyBottomMenuDialog = (0, uni_jsx_1.JSX)(({ className, head, children, onClose, onClick }) => ((0, jsx_runtime_1.jsxs)("div", { onClick: onClick, className: (0, style_1.style)('relative bg-white p-0 rounded-xl top-32', className), role: "dialog", children: [(0, jsx_runtime_1.jsxs)("div", { className: "sticky py-xl top-0 rounded-xl bg-white z-10", children: [(0, jsx_runtime_1.jsx)(CloseButton_1.CloseButton, { className: "absolute top-1.5 right-0", onClose: onClose }), (0, jsx_runtime_1.jsx)("div", { className: "container", children: head })] }), (0, jsx_runtime_1.jsx)("div", { className: "container pb-6xl", children: children })] })));
7
+ exports.StickyBottomMenuDialog = (0, uni_jsx_1.JSX)(({ className, head, children, onClose, onClick }) => ((0, jsx_runtime_1.jsxs)("div", { onClick: onClick, className: (0, style_1.style)('absolute bg-white p-0 rounded-xl bottom-0 top-32 w-full', className), role: "dialog", children: [(0, jsx_runtime_1.jsxs)("div", { className: "sticky py-xl top-0 rounded-xl bg-white z-10", children: [(0, jsx_runtime_1.jsx)(CloseButton_1.CloseButton, { className: "absolute top-1.5 right-0", onClose: onClose }), (0, jsx_runtime_1.jsx)("div", { className: "container", children: head })] }), (0, jsx_runtime_1.jsx)("div", { className: "container pb-6xl", children: children })] })));
8
8
  //# sourceMappingURL=StickyBottomMenuDialog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StickyBottomMenuDialog.js","sourceRoot":"","sources":["../../../src/components/StickyBottomMenu/StickyBottomMenuDialog.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAKxC,wEAAqE;AACrE,6CAA0C;AAS7B,QAAA,sBAAsB,GAAG,IAAA,aAAG,EACvC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CACnD,iCACE,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,IAAA,aAAK,EAAC,yCAAyC,EAAE,SAAS,CAAC,EACtE,IAAI,EAAC,QAAQ,aAEb,iCAAK,SAAS,EAAC,6CAA6C,aAC1D,uBAAC,yBAAW,IAAC,SAAS,EAAC,0BAA0B,EAAC,OAAO,EAAE,OAAO,GAAI,EACtE,gCAAK,SAAS,EAAC,WAAW,YAAE,IAAI,GAAO,IACnC,EACN,gCAAK,SAAS,EAAC,kBAAkB,YAAE,QAAQ,GAAO,IAC9C,CACP,CACF,CAAC"}
1
+ {"version":3,"file":"StickyBottomMenuDialog.js","sourceRoot":"","sources":["../../../src/components/StickyBottomMenu/StickyBottomMenuDialog.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAKxC,wEAAqE;AACrE,6CAA0C;AAS7B,QAAA,sBAAsB,GAAG,IAAA,aAAG,EACvC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CACnD,iCACE,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,IAAA,aAAK,EAAC,yDAAyD,EAAE,SAAS,CAAC,EACtF,IAAI,EAAC,QAAQ,aAEb,iCAAK,SAAS,EAAC,6CAA6C,aAC1D,uBAAC,yBAAW,IAAC,SAAS,EAAC,0BAA0B,EAAC,OAAO,EAAE,OAAO,GAAI,EACtE,gCAAK,SAAS,EAAC,WAAW,YAAE,IAAI,GAAO,IACnC,EACN,gCAAK,SAAS,EAAC,kBAAkB,YAAE,QAAQ,GAAO,IAC9C,CACP,CACF,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { OnCloseProps } from '../../../model/OnCloseProps';
2
+ export interface NoConsentDialogProps extends OnCloseProps {
3
+ attempts: number;
4
+ onSubmit?: (confirmStatus: string) => void;
5
+ }
6
+ export declare const NoConsentDialog: import("@redneckz/uni-jsx").UNIComponent<NoConsentDialogProps, any, any>;
@@ -0,0 +1,27 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.NoConsentDialog = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
+ const hooks_1 = require("@redneckz/uni-jsx/lib/hooks");
6
+ const locationNavigator_1 = require("../../../external/locationNavigator");
7
+ const Button_1 = require("../../../ui-kit/Button/Button");
8
+ const Dialog_1 = require("../../../ui-kit/DialogManager/Dialog");
9
+ const Paragraph_1 = require("../../../ui-kit/Paragraph/Paragraph");
10
+ const noop_1 = require("../../../utils/noop");
11
+ exports.NoConsentDialog = (0, uni_jsx_1.JSX)(({ attempts, onClose = noop_1.noop }) => {
12
+ const navigator = (0, locationNavigator_1.locationNavigator)();
13
+ const isMaxAttempts = attempts > 1;
14
+ const returnToMainPage = (0, hooks_1.useCallback)(() => {
15
+ navigator.assign('/natural');
16
+ }, []);
17
+ const handleClose = (0, hooks_1.useCallback)(() => {
18
+ if (isMaxAttempts) {
19
+ returnToMainPage();
20
+ }
21
+ else {
22
+ onClose();
23
+ }
24
+ }, [isMaxAttempts]);
25
+ return ((0, jsx_runtime_1.jsx)(Dialog_1.Dialog, { className: "my-6xl max-w-3xl w-full min-h-fit mx-auto rounded-lg px-5xl", onClose: handleClose, children: (0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col gap-xl items-center", children: [(0, jsx_runtime_1.jsx)(Paragraph_1.Paragraph, { align: "text-center", children: "\u0423\u0432\u0430\u0436\u0430\u0435\u043C\u044B\u0439 \u043A\u043B\u0438\u0435\u043D\u0442!" }), (0, jsx_runtime_1.jsx)(Paragraph_1.Paragraph, { align: "text-center", children: "\u0414\u043B\u044F \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u044F \u043A\u0440\u0435\u0434\u0438\u0442\u0430 \u0412\u0430\u043C \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E \u043E\u0431\u0440\u0430\u0442\u0438\u0442\u044C\u0441\u044F \u0432 \u043E\u0444\u0438\u0441 \u0411\u0430\u043D\u043A\u0430" }), (0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col sm:flex-row gap-xl items-center", children: [(0, jsx_runtime_1.jsx)(Button_1.Button, { type: "button", version: "secondary", onClick: returnToMainPage, children: "\u0417\u0430\u0432\u0435\u0440\u0448\u0438\u0442\u044C" }), isMaxAttempts ? null : ((0, jsx_runtime_1.jsx)(Button_1.Button, { type: "button", onClick: onClose, children: "\u041F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u044C" }))] })] }) }));
26
+ });
27
+ //# sourceMappingURL=NoConsentDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NoConsentDialog.js","sourceRoot":"","sources":["../../../../src/retail/components/NoConsentDialog/NoConsentDialog.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,uDAA0D;AAG1D,2EAAwE;AACxE,0DAAuD;AACvD,iEAA8D;AAC9D,mEAAgE;AAChE,8CAA2C;AAO9B,QAAA,eAAe,GAAG,IAAA,aAAG,EAAuB,CAAC,EAAE,QAAQ,EAAE,OAAO,GAAG,WAAI,EAAE,EAAE,EAAE;IACxF,MAAM,SAAS,GAAG,IAAA,qCAAiB,GAAE,CAAC;IACtC,MAAM,aAAa,GAAG,QAAQ,GAAG,CAAC,CAAC;IAEnC,MAAM,gBAAgB,GAAG,IAAA,mBAAW,EAAC,GAAG,EAAE;QACxC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC/B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,WAAW,GAAG,IAAA,mBAAW,EAAC,GAAG,EAAE;QACnC,IAAI,aAAa,EAAE;YACjB,gBAAgB,EAAE,CAAC;SACpB;aAAM;YACL,OAAO,EAAE,CAAC;SACX;IACH,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,OAAO,CACL,uBAAC,eAAM,IACL,SAAS,EAAC,6DAA6D,EACvE,OAAO,EAAE,WAAW,YAEpB,iCAAK,SAAS,EAAC,mCAAmC,aAChD,uBAAC,qBAAS,IAAC,KAAK,EAAC,aAAa,6GAA8B,EAC5D,uBAAC,qBAAS,IAAC,KAAK,EAAC,aAAa,iVAElB,EACZ,iCAAK,SAAS,EAAC,+CAA+C,aAC5D,uBAAC,eAAM,IAAC,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAE,gBAAgB,uEAE1D,EACR,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACtB,uBAAC,eAAM,IAAC,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAE,OAAO,6EAE7B,CACV,IACG,IACF,GACC,CACV,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -3,6 +3,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "@redneckz/uni-jsx/jsx-runtime";
3
3
  import { JSX } from '@redneckz/uni-jsx';
4
4
  import { useEffect, useMemo, useRef, useState } from '@redneckz/uni-jsx/lib/hooks';
5
5
  import { useForm } from '../../hooks/useForm/useForm.js';
6
+ import { NoConsentDialog } from '../../retail/components/NoConsentDialog/NoConsentDialog.js';
6
7
  import { getLimitedBirthdayValidation } from '../../retail/validator/getLimitedBirthdayValidation.js';
7
8
  import { validatorObj } from '../../retail/validator/validatorObj.js';
8
9
  import { ApplicationFormLayout } from '../../ui-kit/ApplicationFormLayout/ApplicationFormLayout.js';
@@ -23,9 +24,11 @@ import { useApplicationLeadApi } from './useApplicationLeadApi.js';
23
24
  import { useInitApplicationLead } from './useInitApplicationLead.js';
24
25
  export const ApplicationLeadForm = JSX(({ className, title, programId = '', nextStepLink = '/credit-lead', button, productType = 'credit', data, ...rest }) => {
25
26
  const [esiaStatus, setEsiaStatus] = useState();
27
+ const [attemptsWithoutConsents, setAttemptsWithoutConsents] = useState(0);
26
28
  const leadForm = useRef(null);
27
29
  const applicationFormData = useMemo(() => getApplicationFormData(productType), [productType]);
28
30
  const inputs = useMemo(() => getInputs(applicationFormData), [applicationFormData]);
31
+ const noConsentDialog = useDialog(NoConsentDialog);
29
32
  const extendedValidatorObj = useMemo(() => getExtendedValidatorObj(productType), [productType]);
30
33
  const formValidator = useMemo(() => getFormValidator(inputs, extendedValidatorObj), [inputs, extendedValidatorObj]);
31
34
  const initialFormState = useInitApplicationLead({
@@ -45,6 +48,16 @@ export const ApplicationLeadForm = JSX(({ className, title, programId = '', next
45
48
  formValidator,
46
49
  onSubmit: handleSubmit,
47
50
  });
51
+ const onSubmitWithPrecondition = (ev) => {
52
+ if (!field('processPersonalDataFlg')?.value) {
53
+ setAttemptsWithoutConsents((prev) => prev + 1);
54
+ attemptsWithoutConsents > 0 &&
55
+ noConsentDialog.open({
56
+ attempts: attemptsWithoutConsents,
57
+ });
58
+ }
59
+ onSubmit?.(ev);
60
+ };
48
61
  const responseTypeDialog = useDialog(ResponseTypeDialog);
49
62
  useEffect(() => {
50
63
  if (ok !== undefined) {
@@ -61,7 +74,7 @@ export const ApplicationLeadForm = JSX(({ className, title, programId = '', next
61
74
  reset();
62
75
  }
63
76
  }, [leadForm?.current, esiaStatus]);
64
- return (_jsxs(ApplicationFormLayout, { className: style('container space-y-m', className), title: title, ...rest, children: [!esiaStatus ? _jsx(EsiaLoginBanner, { onChangeEsiaStatus: setEsiaStatus }) : null, _jsxs("form", { onSubmit: onSubmit, className: "space-y-m relative", ref: leadForm, children: [esiaStatus === EsiaStatuses.Pending ? _jsx(Loader, { blur: false }) : null, applicationFormData.map((_, i) => (_jsxs("div", { className: style(inputColumnStyles(_.columns), 'grid gap-x-m'), children: [renderTitle(_.title), renderInputs({ field, inputs: _?.inputs }, productType)] }, `section-${i}`))), renderSubmitButton(button, isSending), esiaStatus === EsiaStatuses.Error ? (_jsx(Text, { size: "text-m", font: "font-medium", color: "text-error", children: "\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u0413\u043E\u0441\u0443\u0441\u043B\u0443\u0433\u0438 \u0434\u043B\u044F \u043E\u0444\u043E\u0440\u043C\u043B\u0435\u043D\u0438\u044F \u0437\u0430\u044F\u0432\u043A\u0438 \u043D\u0435\u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E, \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E \u0437\u0430\u043F\u043E\u043B\u043D\u0438\u0442\u044C \u043F\u043E\u043B\u044F \u0432\u0440\u0443\u0447\u043D\u0443\u044E." })) : null] })] }));
77
+ return (_jsxs(ApplicationFormLayout, { className: style('container space-y-m', className), title: title, ...rest, children: [!esiaStatus ? _jsx(EsiaLoginBanner, { onChangeEsiaStatus: setEsiaStatus }) : null, _jsxs("form", { onSubmit: onSubmitWithPrecondition, className: "space-y-m relative", ref: leadForm, children: [esiaStatus === EsiaStatuses.Pending ? _jsx(Loader, { blur: false }) : null, applicationFormData.map((_, i) => (_jsxs("div", { className: style(inputColumnStyles(_.columns), 'grid gap-x-m'), children: [renderTitle(_.title), renderInputs({ field, inputs: _?.inputs }, productType)] }, `section-${i}`))), renderSubmitButton(button, isSending), esiaStatus === EsiaStatuses.Error ? (_jsx(Text, { size: "text-m", font: "font-medium", color: "text-error", children: "\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u0413\u043E\u0441\u0443\u0441\u043B\u0443\u0433\u0438 \u0434\u043B\u044F \u043E\u0444\u043E\u0440\u043C\u043B\u0435\u043D\u0438\u044F \u0437\u0430\u044F\u0432\u043A\u0438 \u043D\u0435\u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E, \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E \u0437\u0430\u043F\u043E\u043B\u043D\u0438\u0442\u044C \u043F\u043E\u043B\u044F \u0432\u0440\u0443\u0447\u043D\u0443\u044E." })) : null] })] }));
65
78
  });
66
79
  const getInputs = (applicationFormData) => (applicationFormData?.flatMap((_) => _?.inputs) || []);
67
80
  const getExtendedValidatorObj = (productType) => ({
@@ -1 +1 @@
1
- {"version":3,"file":"ApplicationLeadForm.js","sourceRoot":"","sources":["../../../src/components/ApplicationLeadForm/ApplicationLeadForm.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ApplicationLeadForm.js","sourceRoot":"","sources":["../../../src/components/ApplicationLeadForm/ApplicationLeadForm.tsx"],"names":[],"mappings":";AAAA,2CAA2C;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACnF,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,yDAAyD,CAAC;AAG1F,OAAO,EAAE,4BAA4B,EAAE,MAAM,qDAAqD,CAAC;AACnG,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0DAA0D,CAAC;AACjG,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AACxF,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EACL,YAAY,GAGb,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAIlE,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CACpC,CAAC,EACC,SAAS,EACT,KAAK,EACL,SAAS,GAAG,EAAE,EACd,YAAY,GAAG,cAAc,EAC7B,MAAM,EACN,WAAW,GAAG,QAAQ,EACtB,IAAI,EACJ,GAAG,IAAI,EACR,EAAE,EAAE;IACH,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,EAAgB,CAAC;IAC7D,MAAM,CAAC,uBAAuB,EAAE,0BAA0B,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC1E,MAAM,QAAQ,GAAG,MAAM,CAAyB,IAAI,CAAC,CAAC;IACtD,MAAM,mBAAmB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAC9F,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,mBAAmB,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC;IACpF,MAAM,eAAe,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC;IAEnD,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAChG,MAAM,aAAa,GAAG,OAAO,CAC3B,GAAG,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,oBAAoB,CAAC,EACpD,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAC/B,CAAC;IAEF,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;QAC9C,MAAM;QACN,YAAY;QACZ,WAAW;QACX,aAAa;QACb,eAAe,EAAE,UAAU,KAAK,YAAY,CAAC,OAAO;KACrD,CAAC,CAAC;IACH,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,qBAAqB,CAAC;QAC5D,SAAS;QACT,YAAY;QACZ,WAAW;QACX,IAAI;KACL,CAAC,CAAC;IAEH,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,gBAAgB,EAAE;QAC/D,aAAa;QACb,QAAQ,EAAE,YAAY;KACvB,CAAC,CAAC;IAEH,MAAM,wBAAwB,GAAG,CAAC,EAAoB,EAAE,EAAE;QACxD,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,EAAE,KAAK,EAAE;YAC3C,0BAA0B,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;YAC/C,uBAAuB,GAAG,CAAC;gBACzB,eAAe,CAAC,IAAI,CAAC;oBACnB,QAAQ,EAAE,uBAAuB;iBAClC,CAAC,CAAC;SACN;QACD,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,SAAS,CAAC,kBAAkB,CAAC,CAAC;IACzD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,EAAE,KAAK,SAAS,EAAE;YACpB,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;SACjC;IACH,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAET,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,UAAU,IAAI,QAAQ,EAAE,OAAO,EAAE;YACnC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC;gBAC9B,KAAK,EAAE,OAAO;aACf,CAAC,CAAC;SACJ;QAED,IAAI,UAAU,KAAK,YAAY,CAAC,OAAO,EAAE;YACvC,KAAK,EAAE,CAAC;SACT;IACH,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;IAEpC,OAAO,CACL,MAAC,qBAAqB,IACpB,SAAS,EAAE,KAAK,CAAC,qBAAqB,EAAE,SAAS,CAAC,EAClD,KAAK,EAAE,KAAK,KACR,IAAI,aAEP,CAAC,UAAU,CAAC,CAAC,CAAC,KAAC,eAAe,IAAC,kBAAkB,EAAE,aAAa,GAAI,CAAC,CAAC,CAAC,IAAI,EAC5E,gBAAM,QAAQ,EAAE,wBAAwB,EAAE,SAAS,EAAC,oBAAoB,EAAC,GAAG,EAAE,QAAQ,aACnF,UAAU,KAAK,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,KAAC,MAAM,IAAC,IAAI,EAAE,KAAK,GAAI,CAAC,CAAC,CAAC,IAAI,EACpE,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CACjC,eAEE,SAAS,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC,aAE7D,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,EACpB,YAAY,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,WAAW,CAAC,KAJnD,WAAW,CAAC,EAAE,CAKf,CACP,CAAC,EACD,kBAAkB,CAAC,MAAM,EAAE,SAAS,CAAC,EACrC,UAAU,KAAK,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CACnC,KAAC,IAAI,IAAC,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,aAAa,EAAC,KAAK,EAAC,YAAY,4fAGlD,CACR,CAAC,CAAC,CAAC,IAAI,IACH,IACe,CACzB,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,mBAA2C,EAAE,EAAE,CAChE,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,CAAqB,CAAC;AAE7E,MAAM,uBAAuB,GAAG,CAAC,WAAwB,EAAE,EAAE,CAAC,CAAC;IAC7D,GAAG,YAAY;IACf,eAAe,EAAE,4BAA4B,CAAC,WAAW,CAAC;CAC3D,CAAC,CAAC"}
@@ -2,5 +2,5 @@ import { jsx as _jsx, jsxs as _jsxs } from "@redneckz/uni-jsx/jsx-runtime";
2
2
  import { JSX } from '@redneckz/uni-jsx';
3
3
  import { CloseButton } from '../../ui-kit/DialogManager/CloseButton.js';
4
4
  import { style } from '../../utils/style.js';
5
- export const StickyBottomMenuDialog = JSX(({ className, head, children, onClose, onClick }) => (_jsxs("div", { onClick: onClick, className: style('relative bg-white p-0 rounded-xl top-32', className), role: "dialog", children: [_jsxs("div", { className: "sticky py-xl top-0 rounded-xl bg-white z-10", children: [_jsx(CloseButton, { className: "absolute top-1.5 right-0", onClose: onClose }), _jsx("div", { className: "container", children: head })] }), _jsx("div", { className: "container pb-6xl", children: children })] })));
5
+ export const StickyBottomMenuDialog = JSX(({ className, head, children, onClose, onClick }) => (_jsxs("div", { onClick: onClick, className: style('absolute bg-white p-0 rounded-xl bottom-0 top-32 w-full', className), role: "dialog", children: [_jsxs("div", { className: "sticky py-xl top-0 rounded-xl bg-white z-10", children: [_jsx(CloseButton, { className: "absolute top-1.5 right-0", onClose: onClose }), _jsx("div", { className: "container", children: head })] }), _jsx("div", { className: "container pb-6xl", children: children })] })));
6
6
  //# sourceMappingURL=StickyBottomMenuDialog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StickyBottomMenuDialog.js","sourceRoot":"","sources":["../../../src/components/StickyBottomMenu/StickyBottomMenuDialog.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAKxC,OAAO,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AACrE,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAS1C,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CACvC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CACnD,eACE,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,KAAK,CAAC,yCAAyC,EAAE,SAAS,CAAC,EACtE,IAAI,EAAC,QAAQ,aAEb,eAAK,SAAS,EAAC,6CAA6C,aAC1D,KAAC,WAAW,IAAC,SAAS,EAAC,0BAA0B,EAAC,OAAO,EAAE,OAAO,GAAI,EACtE,cAAK,SAAS,EAAC,WAAW,YAAE,IAAI,GAAO,IACnC,EACN,cAAK,SAAS,EAAC,kBAAkB,YAAE,QAAQ,GAAO,IAC9C,CACP,CACF,CAAC"}
1
+ {"version":3,"file":"StickyBottomMenuDialog.js","sourceRoot":"","sources":["../../../src/components/StickyBottomMenu/StickyBottomMenuDialog.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAKxC,OAAO,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AACrE,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAS1C,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CACvC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CACnD,eACE,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,KAAK,CAAC,yDAAyD,EAAE,SAAS,CAAC,EACtF,IAAI,EAAC,QAAQ,aAEb,eAAK,SAAS,EAAC,6CAA6C,aAC1D,KAAC,WAAW,IAAC,SAAS,EAAC,0BAA0B,EAAC,OAAO,EAAE,OAAO,GAAI,EACtE,cAAK,SAAS,EAAC,WAAW,YAAE,IAAI,GAAO,IACnC,EACN,cAAK,SAAS,EAAC,kBAAkB,YAAE,QAAQ,GAAO,IAC9C,CACP,CACF,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { OnCloseProps } from '../../../model/OnCloseProps';
2
+ export interface NoConsentDialogProps extends OnCloseProps {
3
+ attempts: number;
4
+ onSubmit?: (confirmStatus: string) => void;
5
+ }
6
+ export declare const NoConsentDialog: import("@redneckz/uni-jsx").UNIComponent<NoConsentDialogProps, any, any>;
@@ -0,0 +1,25 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "@redneckz/uni-jsx/jsx-runtime";
2
+ import { JSX } from '@redneckz/uni-jsx';
3
+ import { useCallback } from '@redneckz/uni-jsx/lib/hooks';
4
+ import { locationNavigator } from '../../../external/locationNavigator.js';
5
+ import { Button } from '../../../ui-kit/Button/Button.js';
6
+ import { Dialog } from '../../../ui-kit/DialogManager/Dialog.js';
7
+ import { Paragraph } from '../../../ui-kit/Paragraph/Paragraph.js';
8
+ import { noop } from '../../../utils/noop.js';
9
+ export const NoConsentDialog = JSX(({ attempts, onClose = noop }) => {
10
+ const navigator = locationNavigator();
11
+ const isMaxAttempts = attempts > 1;
12
+ const returnToMainPage = useCallback(() => {
13
+ navigator.assign('/natural');
14
+ }, []);
15
+ const handleClose = useCallback(() => {
16
+ if (isMaxAttempts) {
17
+ returnToMainPage();
18
+ }
19
+ else {
20
+ onClose();
21
+ }
22
+ }, [isMaxAttempts]);
23
+ return (_jsx(Dialog, { className: "my-6xl max-w-3xl w-full min-h-fit mx-auto rounded-lg px-5xl", onClose: handleClose, children: _jsxs("div", { className: "flex flex-col gap-xl items-center", children: [_jsx(Paragraph, { align: "text-center", children: "\u0423\u0432\u0430\u0436\u0430\u0435\u043C\u044B\u0439 \u043A\u043B\u0438\u0435\u043D\u0442!" }), _jsx(Paragraph, { align: "text-center", children: "\u0414\u043B\u044F \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u044F \u043A\u0440\u0435\u0434\u0438\u0442\u0430 \u0412\u0430\u043C \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E \u043E\u0431\u0440\u0430\u0442\u0438\u0442\u044C\u0441\u044F \u0432 \u043E\u0444\u0438\u0441 \u0411\u0430\u043D\u043A\u0430" }), _jsxs("div", { className: "flex flex-col sm:flex-row gap-xl items-center", children: [_jsx(Button, { type: "button", version: "secondary", onClick: returnToMainPage, children: "\u0417\u0430\u0432\u0435\u0440\u0448\u0438\u0442\u044C" }), isMaxAttempts ? null : (_jsx(Button, { type: "button", onClick: onClose, children: "\u041F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u044C" }))] })] }) }));
24
+ });
25
+ //# sourceMappingURL=NoConsentDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NoConsentDialog.js","sourceRoot":"","sources":["../../../../src/retail/components/NoConsentDialog/NoConsentDialog.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAG1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAO3C,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAuB,CAAC,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI,EAAE,EAAE,EAAE;IACxF,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC;IACtC,MAAM,aAAa,GAAG,QAAQ,GAAG,CAAC,CAAC;IAEnC,MAAM,gBAAgB,GAAG,WAAW,CAAC,GAAG,EAAE;QACxC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC/B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE;QACnC,IAAI,aAAa,EAAE;YACjB,gBAAgB,EAAE,CAAC;SACpB;aAAM;YACL,OAAO,EAAE,CAAC;SACX;IACH,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,OAAO,CACL,KAAC,MAAM,IACL,SAAS,EAAC,6DAA6D,EACvE,OAAO,EAAE,WAAW,YAEpB,eAAK,SAAS,EAAC,mCAAmC,aAChD,KAAC,SAAS,IAAC,KAAK,EAAC,aAAa,6GAA8B,EAC5D,KAAC,SAAS,IAAC,KAAK,EAAC,aAAa,iVAElB,EACZ,eAAK,SAAS,EAAC,+CAA+C,aAC5D,KAAC,MAAM,IAAC,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAE,gBAAgB,uEAE1D,EACR,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACtB,KAAC,MAAM,IAAC,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAE,OAAO,6EAE7B,CACV,IACG,IACF,GACC,CACV,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -2,6 +2,7 @@
2
2
  import { JSX } from '@redneckz/uni-jsx';
3
3
  import { useEffect, useMemo, useRef, useState } from '@redneckz/uni-jsx/lib/hooks';
4
4
  import { useForm } from '../../hooks/useForm/useForm';
5
+ import { NoConsentDialog } from '../../retail/components/NoConsentDialog/NoConsentDialog';
5
6
  import { type SectionsRetailProps } from '../../retail/model/InputSectionsType';
6
7
  import { type FieldRetailDef } from '../../retail/model/RetailFormContent';
7
8
  import { getLimitedBirthdayValidation } from '../../retail/validator/getLimitedBirthdayValidation';
@@ -12,6 +13,7 @@ import { getFormValidator } from '../../ui-kit/FormField/getObjectValidator';
12
13
  import { inputColumnStyles } from '../../ui-kit/FormField/inputColumnStyle';
13
14
  import { renderTitle } from '../../ui-kit/FormField/renderTitle';
14
15
  import { Loader } from '../../ui-kit/Loader/Loader';
16
+ import { type PreventableEvent } from '../../ui-kit/PreventableEvent';
15
17
  import { ResponseTypeDialog } from '../../ui-kit/ResponseTypeDialog/ResponseTypeDialog';
16
18
  import { Text } from '../../ui-kit/Text/Text';
17
19
  import { type UniBlockProps } from '../../UniBlock/UniBlockProps';
@@ -42,9 +44,11 @@ export const ApplicationLeadForm = JSX<ApplicationLeadFormProps>(
42
44
  ...rest
43
45
  }) => {
44
46
  const [esiaStatus, setEsiaStatus] = useState<EsiaStatuses>();
47
+ const [attemptsWithoutConsents, setAttemptsWithoutConsents] = useState(0);
45
48
  const leadForm = useRef<HTMLFormElement | null>(null);
46
49
  const applicationFormData = useMemo(() => getApplicationFormData(productType), [productType]);
47
50
  const inputs = useMemo(() => getInputs(applicationFormData), [applicationFormData]);
51
+ const noConsentDialog = useDialog(NoConsentDialog);
48
52
 
49
53
  const extendedValidatorObj = useMemo(() => getExtendedValidatorObj(productType), [productType]);
50
54
  const formValidator = useMemo(
@@ -71,6 +75,17 @@ export const ApplicationLeadForm = JSX<ApplicationLeadFormProps>(
71
75
  onSubmit: handleSubmit,
72
76
  });
73
77
 
78
+ const onSubmitWithPrecondition = (ev: PreventableEvent) => {
79
+ if (!field('processPersonalDataFlg')?.value) {
80
+ setAttemptsWithoutConsents((prev) => prev + 1);
81
+ attemptsWithoutConsents > 0 &&
82
+ noConsentDialog.open({
83
+ attempts: attemptsWithoutConsents,
84
+ });
85
+ }
86
+ onSubmit?.(ev);
87
+ };
88
+
74
89
  const responseTypeDialog = useDialog(ResponseTypeDialog);
75
90
  useEffect(() => {
76
91
  if (ok !== undefined) {
@@ -97,7 +112,7 @@ export const ApplicationLeadForm = JSX<ApplicationLeadFormProps>(
97
112
  {...rest}
98
113
  >
99
114
  {!esiaStatus ? <EsiaLoginBanner onChangeEsiaStatus={setEsiaStatus} /> : null}
100
- <form onSubmit={onSubmit} className="space-y-m relative" ref={leadForm}>
115
+ <form onSubmit={onSubmitWithPrecondition} className="space-y-m relative" ref={leadForm}>
101
116
  {esiaStatus === EsiaStatuses.Pending ? <Loader blur={false} /> : null}
102
117
  {applicationFormData.map((_, i) => (
103
118
  <div
@@ -17,7 +17,7 @@ export const StickyBottomMenuDialog = JSX<StickyBottomMenuDialogProps>(
17
17
  ({ className, head, children, onClose, onClick }) => (
18
18
  <div
19
19
  onClick={onClick}
20
- className={style('relative bg-white p-0 rounded-xl top-32', className)}
20
+ className={style('absolute bg-white p-0 rounded-xl bottom-0 top-32 w-full', className)}
21
21
  role="dialog"
22
22
  >
23
23
  <div className="sticky py-xl top-0 rounded-xl bg-white z-10">
@@ -0,0 +1,55 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { useCallback } from '@redneckz/uni-jsx/lib/hooks';
3
+ import type { OnCloseProps } from '../../../model/OnCloseProps';
4
+
5
+ import { locationNavigator } from '../../../external/locationNavigator';
6
+ import { Button } from '../../../ui-kit/Button/Button';
7
+ import { Dialog } from '../../../ui-kit/DialogManager/Dialog';
8
+ import { Paragraph } from '../../../ui-kit/Paragraph/Paragraph';
9
+ import { noop } from '../../../utils/noop';
10
+
11
+ export interface NoConsentDialogProps extends OnCloseProps {
12
+ attempts: number;
13
+ onSubmit?: (confirmStatus: string) => void;
14
+ }
15
+
16
+ export const NoConsentDialog = JSX<NoConsentDialogProps>(({ attempts, onClose = noop }) => {
17
+ const navigator = locationNavigator();
18
+ const isMaxAttempts = attempts > 1;
19
+
20
+ const returnToMainPage = useCallback(() => {
21
+ navigator.assign('/natural');
22
+ }, []);
23
+
24
+ const handleClose = useCallback(() => {
25
+ if (isMaxAttempts) {
26
+ returnToMainPage();
27
+ } else {
28
+ onClose();
29
+ }
30
+ }, [isMaxAttempts]);
31
+
32
+ return (
33
+ <Dialog
34
+ className="my-6xl max-w-3xl w-full min-h-fit mx-auto rounded-lg px-5xl"
35
+ onClose={handleClose}
36
+ >
37
+ <div className="flex flex-col gap-xl items-center">
38
+ <Paragraph align="text-center">Уважаемый клиент!</Paragraph>
39
+ <Paragraph align="text-center">
40
+ Для получения кредита Вам необходимо обратиться в офис Банка
41
+ </Paragraph>
42
+ <div className="flex flex-col sm:flex-row gap-xl items-center">
43
+ <Button type="button" version="secondary" onClick={returnToMainPage}>
44
+ Завершить
45
+ </Button>
46
+ {isMaxAttempts ? null : (
47
+ <Button type="button" onClick={onClose}>
48
+ Продолжить
49
+ </Button>
50
+ )}
51
+ </div>
52
+ </div>
53
+ </Dialog>
54
+ );
55
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redneckz/wildless-cms-uni-blocks",
3
- "version": "0.14.872",
3
+ "version": "0.14.874",
4
4
  "private": false,
5
5
  "license": "MIT",
6
6
  "author": "ЦК",
@@ -2,6 +2,7 @@
2
2
  import { JSX } from '@redneckz/uni-jsx';
3
3
  import { useEffect, useMemo, useRef, useState } from '@redneckz/uni-jsx/lib/hooks';
4
4
  import { useForm } from '../../hooks/useForm/useForm';
5
+ import { NoConsentDialog } from '../../retail/components/NoConsentDialog/NoConsentDialog';
5
6
  import { type SectionsRetailProps } from '../../retail/model/InputSectionsType';
6
7
  import { type FieldRetailDef } from '../../retail/model/RetailFormContent';
7
8
  import { getLimitedBirthdayValidation } from '../../retail/validator/getLimitedBirthdayValidation';
@@ -12,6 +13,7 @@ import { getFormValidator } from '../../ui-kit/FormField/getObjectValidator';
12
13
  import { inputColumnStyles } from '../../ui-kit/FormField/inputColumnStyle';
13
14
  import { renderTitle } from '../../ui-kit/FormField/renderTitle';
14
15
  import { Loader } from '../../ui-kit/Loader/Loader';
16
+ import { type PreventableEvent } from '../../ui-kit/PreventableEvent';
15
17
  import { ResponseTypeDialog } from '../../ui-kit/ResponseTypeDialog/ResponseTypeDialog';
16
18
  import { Text } from '../../ui-kit/Text/Text';
17
19
  import { type UniBlockProps } from '../../UniBlock/UniBlockProps';
@@ -42,9 +44,11 @@ export const ApplicationLeadForm = JSX<ApplicationLeadFormProps>(
42
44
  ...rest
43
45
  }) => {
44
46
  const [esiaStatus, setEsiaStatus] = useState<EsiaStatuses>();
47
+ const [attemptsWithoutConsents, setAttemptsWithoutConsents] = useState(0);
45
48
  const leadForm = useRef<HTMLFormElement | null>(null);
46
49
  const applicationFormData = useMemo(() => getApplicationFormData(productType), [productType]);
47
50
  const inputs = useMemo(() => getInputs(applicationFormData), [applicationFormData]);
51
+ const noConsentDialog = useDialog(NoConsentDialog);
48
52
 
49
53
  const extendedValidatorObj = useMemo(() => getExtendedValidatorObj(productType), [productType]);
50
54
  const formValidator = useMemo(
@@ -71,6 +75,17 @@ export const ApplicationLeadForm = JSX<ApplicationLeadFormProps>(
71
75
  onSubmit: handleSubmit,
72
76
  });
73
77
 
78
+ const onSubmitWithPrecondition = (ev: PreventableEvent) => {
79
+ if (!field('processPersonalDataFlg')?.value) {
80
+ setAttemptsWithoutConsents((prev) => prev + 1);
81
+ attemptsWithoutConsents > 0 &&
82
+ noConsentDialog.open({
83
+ attempts: attemptsWithoutConsents,
84
+ });
85
+ }
86
+ onSubmit?.(ev);
87
+ };
88
+
74
89
  const responseTypeDialog = useDialog(ResponseTypeDialog);
75
90
  useEffect(() => {
76
91
  if (ok !== undefined) {
@@ -97,7 +112,7 @@ export const ApplicationLeadForm = JSX<ApplicationLeadFormProps>(
97
112
  {...rest}
98
113
  >
99
114
  {!esiaStatus ? <EsiaLoginBanner onChangeEsiaStatus={setEsiaStatus} /> : null}
100
- <form onSubmit={onSubmit} className="space-y-m relative" ref={leadForm}>
115
+ <form onSubmit={onSubmitWithPrecondition} className="space-y-m relative" ref={leadForm}>
101
116
  {esiaStatus === EsiaStatuses.Pending ? <Loader blur={false} /> : null}
102
117
  {applicationFormData.map((_, i) => (
103
118
  <div
@@ -17,7 +17,7 @@ export const StickyBottomMenuDialog = JSX<StickyBottomMenuDialogProps>(
17
17
  ({ className, head, children, onClose, onClick }) => (
18
18
  <div
19
19
  onClick={onClick}
20
- className={style('relative bg-white p-0 rounded-xl top-32', className)}
20
+ className={style('absolute bg-white p-0 rounded-xl bottom-0 top-32 w-full', className)}
21
21
  role="dialog"
22
22
  >
23
23
  <div className="sticky py-xl top-0 rounded-xl bg-white z-10">
@@ -7,11 +7,11 @@ export const IconsWithoutInversion = new Set([
7
7
  ]);
8
8
 
9
9
  export enum IconMap {
10
- YoutubeIcon = 'YoutubeIcon', WalletWithMoneyIcon = 'WalletWithMoneyIcon', WalletIcon = 'WalletIcon', WalletAddIcon = 'WalletAddIcon', VKIcon = 'VKIcon', UserTickIcon = 'UserTickIcon', UserSquareIcon = 'UserSquareIcon', UserGeoLocationIcon = 'UserGeoLocationIcon', TelegramIcon = 'TelegramIcon', StarIcon = 'StarIcon', SoundIcon = 'SoundIcon', SmallClockIcon = 'SmallClockIcon', SignDocsIcon = 'SignDocsIcon', ShieldTickIcon = 'ShieldTickIcon', SecurityСardIcon = 'SecurityСardIcon', SafeIcon = 'SafeIcon', RutubeIcon = 'RutubeIcon', RustoreIcon = 'RustoreIcon', RoundRubleIcon = 'RoundRubleIcon', ResponseOKIcon = 'ResponseOKIcon', ResponseFailIcon = 'ResponseFailIcon', RefreshIcon = 'RefreshIcon', ProfileIcon = 'ProfileIcon', Profile2UserIcon = 'Profile2UserIcon', PlusIcon = 'PlusIcon', PlusCircleIcon = 'PlusCircleIcon', PlayMarketIcon = 'PlayMarketIcon', PhoneIcon = 'PhoneIcon', PhoneCallingIcon = 'PhoneCallingIcon', PersonalCardIcon = 'PersonalCardIcon', PercentageRoundIcon = 'PercentageRoundIcon', PercentIcon = 'PercentIcon', PassSendIcon = 'PassSendIcon', PackA4Icon = 'PackA4Icon', OkIcon = 'OkIcon', NotificationBingIcon = 'NotificationBingIcon', NewLoanIcon = 'NewLoanIcon', NewDocIcon = 'NewDocIcon', MonitorMobileIcon = 'MonitorMobileIcon', MoneyInsuranceIcon = 'MoneyInsuranceIcon', MoneyIcon = 'MoneyIcon', MinusIcon = 'MinusIcon', MapOpenedIcon = 'MapOpenedIcon', MapMarkerSingleIcon = 'MapMarkerSingleIcon', MapMarkerClusterYellowIcon = 'MapMarkerClusterYellowIcon', MapMarkerClusterIcon = 'MapMarkerClusterIcon', MailIcon = 'MailIcon', MagnifierIcon = 'MagnifierIcon', LoupeIcon = 'LoupeIcon', LogoIcon = 'LogoIcon', LockIcon = 'LockIcon', InfoCircleIcon = 'InfoCircleIcon', HuaweiIcon = 'HuaweiIcon', HouseIcon = 'HouseIcon', HeartTickIcon = 'HeartTickIcon', HeartIcon = 'HeartIcon', HeadphonesIcon = 'HeadphonesIcon', GridIcon = 'GridIcon', GpsIcon = 'GpsIcon', GosUslugiIcon = 'GosUslugiIcon', GlobalIcon = 'GlobalIcon', GeolocationIcon = 'GeolocationIcon', FullScreenIcon = 'FullScreenIcon', FaxIcon = 'FaxIcon', EuroIcon = 'EuroIcon', EmptyWalletIcon = 'EmptyWalletIcon', EmptyWalletChangeIcon = 'EmptyWalletChangeIcon', DzenIcon = 'DzenIcon', DoneSimpleIcon = 'DoneSimpleIcon', DoneIcon = 'DoneIcon', DollarIcon = 'DollarIcon', DocIcon = 'DocIcon', DocDownloadIcon = 'DocDownloadIcon', DiscountShapeIcon = 'DiscountShapeIcon', DevIcon = 'DevIcon', CupIcon = 'CupIcon', CourtHouseIcon = 'CourtHouseIcon', CopyIcon = 'CopyIcon', ConvertCardIcon = 'ConvertCardIcon', CoinIcon = 'CoinIcon', CloseIcon = 'CloseIcon', ClientIcon = 'ClientIcon', ChineseYuanRenminbiIcon = 'ChineseYuanRenminbiIcon', ChevronLeftIcon = 'ChevronLeftIcon', ChatBotIcon = 'ChatBotIcon', ChartSquareIcon = 'ChartSquareIcon', ChartRoundIcon = 'ChartRoundIcon', ChartIcon = 'ChartIcon', CardTickIcon = 'CardTickIcon', CardSendIcon = 'CardSendIcon', CardPosIcon = 'CardPosIcon', CardIcon = 'CardIcon', CalendarTickIcon = 'CalendarTickIcon', CalendarIcon = 'CalendarIcon', CalendarCircleIcon = 'CalendarCircleIcon', BurgerIcon = 'BurgerIcon', BuildingIcon = 'BuildingIcon', BriefcaseIcon = 'BriefcaseIcon', BelarusianFlag = 'BelarusianFlag', BankIcon = 'BankIcon', BankColorIcon = 'BankColorIcon', AtmIcon = 'AtmIcon', ArrowUpSolidIcon = 'ArrowUpSolidIcon', ArrowUpIcon = 'ArrowUpIcon', ArrowTopRightIcon = 'ArrowTopRightIcon', ArrowRightIcon = 'ArrowRightIcon', ArrowLeftIcon = 'ArrowLeftIcon', ArrowDownSolidIcon = 'ArrowDownSolidIcon', ArrowDownIcon = 'ArrowDownIcon', AppleIcon = 'AppleIcon', AlarmIcon = 'AlarmIcon', ActualBalanceIcon = 'ActualBalanceIcon', AchievementIcon = 'AchievementIcon'
10
+ YoutubeIcon = 'YoutubeIcon', WalletWithMoneyIcon = 'WalletWithMoneyIcon', WalletIcon = 'WalletIcon', WalletAddIcon = 'WalletAddIcon', VKIcon = 'VKIcon', UserTickIcon = 'UserTickIcon', UserSquareIcon = 'UserSquareIcon', UserGeoLocationIcon = 'UserGeoLocationIcon', TelegramIcon = 'TelegramIcon', StarIcon = 'StarIcon', SoundIcon = 'SoundIcon', SmallClockIcon = 'SmallClockIcon', SignDocsIcon = 'SignDocsIcon', ShieldTickIcon = 'ShieldTickIcon', SecurityСardIcon = 'SecurityСardIcon', SafeIcon = 'SafeIcon', RutubeIcon = 'RutubeIcon', RustoreIcon = 'RustoreIcon', RoundRubleIcon = 'RoundRubleIcon', ResponseOKIcon = 'ResponseOKIcon', ResponseFailIcon = 'ResponseFailIcon', RefreshIcon = 'RefreshIcon', ProfileIcon = 'ProfileIcon', Profile2UserIcon = 'Profile2UserIcon', PlusIcon = 'PlusIcon', PlusCircleIcon = 'PlusCircleIcon', PlayMarketIcon = 'PlayMarketIcon', PhoneIcon = 'PhoneIcon', PhoneCallingIcon = 'PhoneCallingIcon', PersonalCardIcon = 'PersonalCardIcon', PercentIcon = 'PercentIcon', PercentageRoundIcon = 'PercentageRoundIcon', PassSendIcon = 'PassSendIcon', PackA4Icon = 'PackA4Icon', OkIcon = 'OkIcon', NotificationBingIcon = 'NotificationBingIcon', NewLoanIcon = 'NewLoanIcon', NewDocIcon = 'NewDocIcon', MonitorMobileIcon = 'MonitorMobileIcon', MoneyInsuranceIcon = 'MoneyInsuranceIcon', MoneyIcon = 'MoneyIcon', MinusIcon = 'MinusIcon', MapOpenedIcon = 'MapOpenedIcon', MapMarkerSingleIcon = 'MapMarkerSingleIcon', MapMarkerClusterYellowIcon = 'MapMarkerClusterYellowIcon', MapMarkerClusterIcon = 'MapMarkerClusterIcon', MailIcon = 'MailIcon', MagnifierIcon = 'MagnifierIcon', LoupeIcon = 'LoupeIcon', LogoIcon = 'LogoIcon', LockIcon = 'LockIcon', InfoCircleIcon = 'InfoCircleIcon', HuaweiIcon = 'HuaweiIcon', HouseIcon = 'HouseIcon', HeartTickIcon = 'HeartTickIcon', HeartIcon = 'HeartIcon', HeadphonesIcon = 'HeadphonesIcon', GridIcon = 'GridIcon', GpsIcon = 'GpsIcon', GosUslugiIcon = 'GosUslugiIcon', GlobalIcon = 'GlobalIcon', GeolocationIcon = 'GeolocationIcon', FullScreenIcon = 'FullScreenIcon', FaxIcon = 'FaxIcon', EuroIcon = 'EuroIcon', EmptyWalletIcon = 'EmptyWalletIcon', EmptyWalletChangeIcon = 'EmptyWalletChangeIcon', DzenIcon = 'DzenIcon', DoneSimpleIcon = 'DoneSimpleIcon', DoneIcon = 'DoneIcon', DollarIcon = 'DollarIcon', DocIcon = 'DocIcon', DocDownloadIcon = 'DocDownloadIcon', DiscountShapeIcon = 'DiscountShapeIcon', DevIcon = 'DevIcon', CupIcon = 'CupIcon', CourtHouseIcon = 'CourtHouseIcon', CopyIcon = 'CopyIcon', ConvertCardIcon = 'ConvertCardIcon', CoinIcon = 'CoinIcon', CloseIcon = 'CloseIcon', ClientIcon = 'ClientIcon', ChineseYuanRenminbiIcon = 'ChineseYuanRenminbiIcon', ChevronLeftIcon = 'ChevronLeftIcon', ChatBotIcon = 'ChatBotIcon', ChartSquareIcon = 'ChartSquareIcon', ChartRoundIcon = 'ChartRoundIcon', ChartIcon = 'ChartIcon', CardTickIcon = 'CardTickIcon', CardSendIcon = 'CardSendIcon', CardPosIcon = 'CardPosIcon', CardIcon = 'CardIcon', CalendarTickIcon = 'CalendarTickIcon', CalendarIcon = 'CalendarIcon', CalendarCircleIcon = 'CalendarCircleIcon', BurgerIcon = 'BurgerIcon', BuildingIcon = 'BuildingIcon', BriefcaseIcon = 'BriefcaseIcon', BelarusianFlag = 'BelarusianFlag', BankIcon = 'BankIcon', BankColorIcon = 'BankColorIcon', AtmIcon = 'AtmIcon', ArrowUpSolidIcon = 'ArrowUpSolidIcon', ArrowUpIcon = 'ArrowUpIcon', ArrowTopRightIcon = 'ArrowTopRightIcon', ArrowRightIcon = 'ArrowRightIcon', ArrowLeftIcon = 'ArrowLeftIcon', ArrowDownSolidIcon = 'ArrowDownSolidIcon', ArrowDownIcon = 'ArrowDownIcon', AppleIcon = 'AppleIcon', AlarmIcon = 'AlarmIcon', ActualBalanceIcon = 'ActualBalanceIcon', AchievementIcon = 'AchievementIcon'
11
11
  }
12
12
 
13
13
  export enum IconTitleMap {
14
- YoutubeIcon = 'Лого «Youtube»', WalletWithMoneyIcon = 'Кошелёк с деньгами', WalletIcon = 'Кошелёк', WalletAddIcon = 'Кошелёк с плюсом', VKIcon = 'Лого «VK»', UserTickIcon = 'Пользователь', UserSquareIcon = 'Пользователь в рамке', UserGeoLocationIcon = 'Самолётик', TelegramIcon = 'Лого «Telegram»', StarIcon = 'Звезда', SoundIcon = 'Кольцо', SmallClockIcon = 'Маленькие часы', SignDocsIcon = 'Подписанные документы', ShieldTickIcon = 'Безопасность', SecurityСardIcon = 'Безопасность', SafeIcon = 'Сейф', RutubeIcon = 'Лого «Rutube»', RustoreIcon = 'Лого «Rustore»', RoundRubleIcon = 'Рубль (круг.)', ResponseOKIcon = 'Ок', ResponseFailIcon = 'Ошибка', RefreshIcon = 'RefreshIcon', ProfileIcon = 'Профиль', Profile2UserIcon = 'Профиль, 2 персоны', PlusIcon = 'Плюс', PlusCircleIcon = 'Плюс в круге', PlayMarketIcon = 'Лого «PlayMarket»', PhoneIcon = 'Телефон', PhoneCallingIcon = 'Звонящий телефон', PersonalCardIcon = 'Персональная карта', PercentageRoundIcon = 'Проценты (круг.)', PercentIcon = 'Проценты', PassSendIcon = 'Бизнес', PackA4Icon = 'Пачка бумаги А4', OkIcon = 'Лого «Одноклассники»', NotificationBingIcon = 'Колокольчик нотификаций', NewLoanIcon = 'Новая заявка', NewDocIcon = 'Новый документ', MonitorMobileIcon = 'Монитор и мобильный', MoneyInsuranceIcon = 'Денежное страхование', MoneyIcon = 'Деньги', MinusIcon = 'Минус', MapOpenedIcon = 'Иконка Развёрнутая карта', MapMarkerSingleIcon = 'Маркер карты РСХБ', MapMarkerClusterYellowIcon = 'Маркер карты (желтый)', MapMarkerClusterIcon = 'Маркер карты', MailIcon = 'E-mail', MagnifierIcon = 'MagnifierIcon', LoupeIcon = 'Лупа', LogoIcon = 'Логотип', LockIcon = 'Замок', InfoCircleIcon = 'InfoCircleIcon', HuaweiIcon = 'Лого «Huawei»', HouseIcon = 'Ипотека', HeartTickIcon = 'Сердцебеение', HeartIcon = 'Сердце', HeadphonesIcon = 'HeadphonesIcon', GridIcon = 'Сетка (белая)', GpsIcon = 'Gps', GosUslugiIcon = 'ГосУслуги', GlobalIcon = 'Глобус', GeolocationIcon = 'Геолокация', FullScreenIcon = 'FullScreenIcon', FaxIcon = 'Факс', EuroIcon = 'Евро', EmptyWalletIcon = 'Пустой кошелёк', EmptyWalletChangeIcon = 'Пустой кошелёк с возвратом', DzenIcon = 'Лого «Дзен»', DoneSimpleIcon = 'Зелёная \'галочка\'', DoneIcon = 'Зелёная \'галочка\' в круге', DollarIcon = 'Доллар', DocIcon = 'Документ', DocDownloadIcon = 'Скачать документ', DiscountShapeIcon = 'Скидка', DevIcon = 'Разработка', CupIcon = 'Кубок', CourtHouseIcon = 'Здание суда', CopyIcon = 'Копирование', ConvertCardIcon = 'Конвертирование', CoinIcon = 'Монеты', CloseIcon = 'Крестик', ClientIcon = 'Клиент', ChineseYuanRenminbiIcon = 'Китайский юань', ChevronLeftIcon = 'Стрелка \'Влево\'', ChatBotIcon = 'Чат-бот', ChartSquareIcon = 'Деньги внутри кошелька', ChartRoundIcon = 'Диаграмма (в круге)', ChartIcon = 'Инвестиции', CardTickIcon = 'Кред. карта с галочкой', CardSendIcon = 'Карта', CardPosIcon = 'Кред. карта под наклоном', CardIcon = 'Кред. карта', CalendarTickIcon = 'Календарь с галочкой', CalendarIcon = 'Календарь', CalendarCircleIcon = 'Скруглённый календарь', BurgerIcon = 'Бургер', BuildingIcon = 'Здание с деревом', BriefcaseIcon = 'Портфель', BelarusianFlag = 'Белорусский флаг', BankIcon = 'Банк', BankColorIcon = 'Банк (в цвете)', AtmIcon = 'Банкомат', ArrowUpSolidIcon = 'Стрелка сплошная \'Вверх\'', ArrowUpIcon = 'Стрелка \'Вверх\'', ArrowTopRightIcon = 'Стрелка \'Вверх-право\'', ArrowRightIcon = 'Стрелка \'Вправо\'', ArrowLeftIcon = 'Стрелка \'Влево\'', ArrowDownSolidIcon = 'Стрелка сплошная \'Вниз\'', ArrowDownIcon = 'Стрелка \'Вниз\'', AppleIcon = 'Лого «Apple»', AlarmIcon = 'Предупреждение', ActualBalanceIcon = 'Деньги', AchievementIcon = 'Достижение'
14
+ YoutubeIcon = 'Лого «Youtube»', WalletWithMoneyIcon = 'Кошелёк с деньгами', WalletIcon = 'Кошелёк', WalletAddIcon = 'Кошелёк с плюсом', VKIcon = 'Лого «VK»', UserTickIcon = 'Пользователь', UserSquareIcon = 'Пользователь в рамке', UserGeoLocationIcon = 'Самолётик', TelegramIcon = 'Лого «Telegram»', StarIcon = 'Звезда', SoundIcon = 'Кольцо', SmallClockIcon = 'Маленькие часы', SignDocsIcon = 'Подписанные документы', ShieldTickIcon = 'Безопасность', SecurityСardIcon = 'Безопасность', SafeIcon = 'Сейф', RutubeIcon = 'Лого «Rutube»', RustoreIcon = 'Лого «Rustore»', RoundRubleIcon = 'Рубль (круг.)', ResponseOKIcon = 'Ок', ResponseFailIcon = 'Ошибка', RefreshIcon = 'RefreshIcon', ProfileIcon = 'Профиль', Profile2UserIcon = 'Профиль, 2 персоны', PlusIcon = 'Плюс', PlusCircleIcon = 'Плюс в круге', PlayMarketIcon = 'Лого «PlayMarket»', PhoneIcon = 'Телефон', PhoneCallingIcon = 'Звонящий телефон', PersonalCardIcon = 'Персональная карта', PercentIcon = 'Проценты', PercentageRoundIcon = 'Проценты (круг.)', PassSendIcon = 'Бизнес', PackA4Icon = 'Пачка бумаги А4', OkIcon = 'Лого «Одноклассники»', NotificationBingIcon = 'Колокольчик нотификаций', NewLoanIcon = 'Новая заявка', NewDocIcon = 'Новый документ', MonitorMobileIcon = 'Монитор и мобильный', MoneyInsuranceIcon = 'Денежное страхование', MoneyIcon = 'Деньги', MinusIcon = 'Минус', MapOpenedIcon = 'Иконка Развёрнутая карта', MapMarkerSingleIcon = 'Маркер карты РСХБ', MapMarkerClusterYellowIcon = 'Маркер карты (желтый)', MapMarkerClusterIcon = 'Маркер карты', MailIcon = 'E-mail', MagnifierIcon = 'MagnifierIcon', LoupeIcon = 'Лупа', LogoIcon = 'Логотип', LockIcon = 'Замок', InfoCircleIcon = 'InfoCircleIcon', HuaweiIcon = 'Лого «Huawei»', HouseIcon = 'Ипотека', HeartTickIcon = 'Сердцебеение', HeartIcon = 'Сердце', HeadphonesIcon = 'HeadphonesIcon', GridIcon = 'Сетка (белая)', GpsIcon = 'Gps', GosUslugiIcon = 'ГосУслуги', GlobalIcon = 'Глобус', GeolocationIcon = 'Геолокация', FullScreenIcon = 'FullScreenIcon', FaxIcon = 'Факс', EuroIcon = 'Евро', EmptyWalletIcon = 'Пустой кошелёк', EmptyWalletChangeIcon = 'Пустой кошелёк с возвратом', DzenIcon = 'Лого «Дзен»', DoneSimpleIcon = 'Зелёная \'галочка\'', DoneIcon = 'Зелёная \'галочка\' в круге', DollarIcon = 'Доллар', DocIcon = 'Документ', DocDownloadIcon = 'Скачать документ', DiscountShapeIcon = 'Скидка', DevIcon = 'Разработка', CupIcon = 'Кубок', CourtHouseIcon = 'Здание суда', CopyIcon = 'Копирование', ConvertCardIcon = 'Конвертирование', CoinIcon = 'Монеты', CloseIcon = 'Крестик', ClientIcon = 'Клиент', ChineseYuanRenminbiIcon = 'Китайский юань', ChevronLeftIcon = 'Стрелка \'Влево\'', ChatBotIcon = 'Чат-бот', ChartSquareIcon = 'Деньги внутри кошелька', ChartRoundIcon = 'Диаграмма (в круге)', ChartIcon = 'Инвестиции', CardTickIcon = 'Кред. карта с галочкой', CardSendIcon = 'Карта', CardPosIcon = 'Кред. карта под наклоном', CardIcon = 'Кред. карта', CalendarTickIcon = 'Календарь с галочкой', CalendarIcon = 'Календарь', CalendarCircleIcon = 'Скруглённый календарь', BurgerIcon = 'Бургер', BuildingIcon = 'Здание с деревом', BriefcaseIcon = 'Портфель', BelarusianFlag = 'Белорусский флаг', BankIcon = 'Банк', BankColorIcon = 'Банк (в цвете)', AtmIcon = 'Банкомат', ArrowUpSolidIcon = 'Стрелка сплошная \'Вверх\'', ArrowUpIcon = 'Стрелка \'Вверх\'', ArrowTopRightIcon = 'Стрелка \'Вверх-право\'', ArrowRightIcon = 'Стрелка \'Вправо\'', ArrowLeftIcon = 'Стрелка \'Влево\'', ArrowDownSolidIcon = 'Стрелка сплошная \'Вниз\'', ArrowDownIcon = 'Стрелка \'Вниз\'', AppleIcon = 'Лого «Apple»', AlarmIcon = 'Предупреждение', ActualBalanceIcon = 'Деньги', AchievementIcon = 'Достижение'
15
15
  }
16
16
 
17
17
  /**
@@ -19,7 +19,7 @@ export enum IconTitleMap {
19
19
  * @title Иконка
20
20
  * @enumNames [
21
21
  * "",
22
- * 'Лого «Youtube»', 'Кошелёк с деньгами', 'Кошелёк', 'Кошелёк с плюсом', 'Лого «VK»', 'Пользователь', 'Пользователь в рамке', 'Самолётик', 'Лого «Telegram»', 'Звезда', 'Кольцо', 'Маленькие часы', 'Подписанные документы', 'Безопасность', 'Безопасность', 'Сейф', 'Лого «Rutube»', 'Лого «Rustore»', 'Рубль (круг.)', 'Ок', 'Ошибка', 'RefreshIcon', 'Профиль', 'Профиль, 2 персоны', 'Плюс', 'Плюс в круге', 'Лого «PlayMarket»', 'Телефон', 'Звонящий телефон', 'Персональная карта', 'Проценты (круг.)', 'Проценты', 'Бизнес', 'Пачка бумаги А4', 'Лого «Одноклассники»', 'Колокольчик нотификаций', 'Новая заявка', 'Новый документ', 'Монитор и мобильный', 'Денежное страхование', 'Деньги', 'Минус', 'Иконка Развёрнутая карта', 'Маркер карты РСХБ', 'Маркер карты (желтый)', 'Маркер карты', 'E-mail', 'MagnifierIcon', 'Лупа', 'Логотип', 'Замок', 'InfoCircleIcon', 'Лого «Huawei»', 'Ипотека', 'Сердцебеение', 'Сердце', 'HeadphonesIcon', 'Сетка (белая)', 'Gps', 'ГосУслуги', 'Глобус', 'Геолокация', 'FullScreenIcon', 'Факс', 'Евро', 'Пустой кошелёк', 'Пустой кошелёк с возвратом', 'Лого «Дзен»', 'Зелёная \'галочка\'', 'Зелёная \'галочка\' в круге', 'Доллар', 'Документ', 'Скачать документ', 'Скидка', 'Разработка', 'Кубок', 'Здание суда', 'Копирование', 'Конвертирование', 'Монеты', 'Крестик', 'Клиент', 'Китайский юань', 'Стрелка \'Влево\'', 'Чат-бот', 'Деньги внутри кошелька', 'Диаграмма (в круге)', 'Инвестиции', 'Кред. карта с галочкой', 'Карта', 'Кред. карта под наклоном', 'Кред. карта', 'Календарь с галочкой', 'Календарь', 'Скруглённый календарь', 'Бургер', 'Здание с деревом', 'Портфель', 'Белорусский флаг', 'Банк', 'Банк (в цвете)', 'Банкомат', 'Стрелка сплошная \'Вверх\'', 'Стрелка \'Вверх\'', 'Стрелка \'Вверх-право\'', 'Стрелка \'Вправо\'', 'Стрелка \'Влево\'', 'Стрелка сплошная \'Вниз\'', 'Стрелка \'Вниз\'', 'Лого «Apple»', 'Предупреждение', 'Деньги', 'Достижение'
22
+ * 'Лого «Youtube»', 'Кошелёк с деньгами', 'Кошелёк', 'Кошелёк с плюсом', 'Лого «VK»', 'Пользователь', 'Пользователь в рамке', 'Самолётик', 'Лого «Telegram»', 'Звезда', 'Кольцо', 'Маленькие часы', 'Подписанные документы', 'Безопасность', 'Безопасность', 'Сейф', 'Лого «Rutube»', 'Лого «Rustore»', 'Рубль (круг.)', 'Ок', 'Ошибка', 'RefreshIcon', 'Профиль', 'Профиль, 2 персоны', 'Плюс', 'Плюс в круге', 'Лого «PlayMarket»', 'Телефон', 'Звонящий телефон', 'Персональная карта', 'Проценты', 'Проценты (круг.)', 'Бизнес', 'Пачка бумаги А4', 'Лого «Одноклассники»', 'Колокольчик нотификаций', 'Новая заявка', 'Новый документ', 'Монитор и мобильный', 'Денежное страхование', 'Деньги', 'Минус', 'Иконка Развёрнутая карта', 'Маркер карты РСХБ', 'Маркер карты (желтый)', 'Маркер карты', 'E-mail', 'MagnifierIcon', 'Лупа', 'Логотип', 'Замок', 'InfoCircleIcon', 'Лого «Huawei»', 'Ипотека', 'Сердцебеение', 'Сердце', 'HeadphonesIcon', 'Сетка (белая)', 'Gps', 'ГосУслуги', 'Глобус', 'Геолокация', 'FullScreenIcon', 'Факс', 'Евро', 'Пустой кошелёк', 'Пустой кошелёк с возвратом', 'Лого «Дзен»', 'Зелёная \'галочка\'', 'Зелёная \'галочка\' в круге', 'Доллар', 'Документ', 'Скачать документ', 'Скидка', 'Разработка', 'Кубок', 'Здание суда', 'Копирование', 'Конвертирование', 'Монеты', 'Крестик', 'Клиент', 'Китайский юань', 'Стрелка \'Влево\'', 'Чат-бот', 'Деньги внутри кошелька', 'Диаграмма (в круге)', 'Инвестиции', 'Кред. карта с галочкой', 'Карта', 'Кред. карта под наклоном', 'Кред. карта', 'Календарь с галочкой', 'Календарь', 'Скруглённый календарь', 'Бургер', 'Здание с деревом', 'Портфель', 'Белорусский флаг', 'Банк', 'Банк (в цвете)', 'Банкомат', 'Стрелка сплошная \'Вверх\'', 'Стрелка \'Вверх\'', 'Стрелка \'Вверх-право\'', 'Стрелка \'Вправо\'', 'Стрелка \'Влево\'', 'Стрелка сплошная \'Вниз\'', 'Стрелка \'Вниз\'', 'Лого «Apple»', 'Предупреждение', 'Деньги', 'Достижение'
23
23
  * ]
24
24
  */
25
- export type IconName = '' | 'YoutubeIcon' | 'WalletWithMoneyIcon' | 'WalletIcon' | 'WalletAddIcon' | 'VKIcon' | 'UserTickIcon' | 'UserSquareIcon' | 'UserGeoLocationIcon' | 'TelegramIcon' | 'StarIcon' | 'SoundIcon' | 'SmallClockIcon' | 'SignDocsIcon' | 'ShieldTickIcon' | 'SecurityСardIcon' | 'SafeIcon' | 'RutubeIcon' | 'RustoreIcon' | 'RoundRubleIcon' | 'ResponseOKIcon' | 'ResponseFailIcon' | 'RefreshIcon' | 'ProfileIcon' | 'Profile2UserIcon' | 'PlusIcon' | 'PlusCircleIcon' | 'PlayMarketIcon' | 'PhoneIcon' | 'PhoneCallingIcon' | 'PersonalCardIcon' | 'PercentageRoundIcon' | 'PercentIcon' | 'PassSendIcon' | 'PackA4Icon' | 'OkIcon' | 'NotificationBingIcon' | 'NewLoanIcon' | 'NewDocIcon' | 'MonitorMobileIcon' | 'MoneyInsuranceIcon' | 'MoneyIcon' | 'MinusIcon' | 'MapOpenedIcon' | 'MapMarkerSingleIcon' | 'MapMarkerClusterYellowIcon' | 'MapMarkerClusterIcon' | 'MailIcon' | 'MagnifierIcon' | 'LoupeIcon' | 'LogoIcon' | 'LockIcon' | 'InfoCircleIcon' | 'HuaweiIcon' | 'HouseIcon' | 'HeartTickIcon' | 'HeartIcon' | 'HeadphonesIcon' | 'GridIcon' | 'GpsIcon' | 'GosUslugiIcon' | 'GlobalIcon' | 'GeolocationIcon' | 'FullScreenIcon' | 'FaxIcon' | 'EuroIcon' | 'EmptyWalletIcon' | 'EmptyWalletChangeIcon' | 'DzenIcon' | 'DoneSimpleIcon' | 'DoneIcon' | 'DollarIcon' | 'DocIcon' | 'DocDownloadIcon' | 'DiscountShapeIcon' | 'DevIcon' | 'CupIcon' | 'CourtHouseIcon' | 'CopyIcon' | 'ConvertCardIcon' | 'CoinIcon' | 'CloseIcon' | 'ClientIcon' | 'ChineseYuanRenminbiIcon' | 'ChevronLeftIcon' | 'ChatBotIcon' | 'ChartSquareIcon' | 'ChartRoundIcon' | 'ChartIcon' | 'CardTickIcon' | 'CardSendIcon' | 'CardPosIcon' | 'CardIcon' | 'CalendarTickIcon' | 'CalendarIcon' | 'CalendarCircleIcon' | 'BurgerIcon' | 'BuildingIcon' | 'BriefcaseIcon' | 'BelarusianFlag' | 'BankIcon' | 'BankColorIcon' | 'AtmIcon' | 'ArrowUpSolidIcon' | 'ArrowUpIcon' | 'ArrowTopRightIcon' | 'ArrowRightIcon' | 'ArrowLeftIcon' | 'ArrowDownSolidIcon' | 'ArrowDownIcon' | 'AppleIcon' | 'AlarmIcon' | 'ActualBalanceIcon' | 'AchievementIcon';
25
+ export type IconName = '' | 'YoutubeIcon' | 'WalletWithMoneyIcon' | 'WalletIcon' | 'WalletAddIcon' | 'VKIcon' | 'UserTickIcon' | 'UserSquareIcon' | 'UserGeoLocationIcon' | 'TelegramIcon' | 'StarIcon' | 'SoundIcon' | 'SmallClockIcon' | 'SignDocsIcon' | 'ShieldTickIcon' | 'SecurityСardIcon' | 'SafeIcon' | 'RutubeIcon' | 'RustoreIcon' | 'RoundRubleIcon' | 'ResponseOKIcon' | 'ResponseFailIcon' | 'RefreshIcon' | 'ProfileIcon' | 'Profile2UserIcon' | 'PlusIcon' | 'PlusCircleIcon' | 'PlayMarketIcon' | 'PhoneIcon' | 'PhoneCallingIcon' | 'PersonalCardIcon' | 'PercentIcon' | 'PercentageRoundIcon' | 'PassSendIcon' | 'PackA4Icon' | 'OkIcon' | 'NotificationBingIcon' | 'NewLoanIcon' | 'NewDocIcon' | 'MonitorMobileIcon' | 'MoneyInsuranceIcon' | 'MoneyIcon' | 'MinusIcon' | 'MapOpenedIcon' | 'MapMarkerSingleIcon' | 'MapMarkerClusterYellowIcon' | 'MapMarkerClusterIcon' | 'MailIcon' | 'MagnifierIcon' | 'LoupeIcon' | 'LogoIcon' | 'LockIcon' | 'InfoCircleIcon' | 'HuaweiIcon' | 'HouseIcon' | 'HeartTickIcon' | 'HeartIcon' | 'HeadphonesIcon' | 'GridIcon' | 'GpsIcon' | 'GosUslugiIcon' | 'GlobalIcon' | 'GeolocationIcon' | 'FullScreenIcon' | 'FaxIcon' | 'EuroIcon' | 'EmptyWalletIcon' | 'EmptyWalletChangeIcon' | 'DzenIcon' | 'DoneSimpleIcon' | 'DoneIcon' | 'DollarIcon' | 'DocIcon' | 'DocDownloadIcon' | 'DiscountShapeIcon' | 'DevIcon' | 'CupIcon' | 'CourtHouseIcon' | 'CopyIcon' | 'ConvertCardIcon' | 'CoinIcon' | 'CloseIcon' | 'ClientIcon' | 'ChineseYuanRenminbiIcon' | 'ChevronLeftIcon' | 'ChatBotIcon' | 'ChartSquareIcon' | 'ChartRoundIcon' | 'ChartIcon' | 'CardTickIcon' | 'CardSendIcon' | 'CardPosIcon' | 'CardIcon' | 'CalendarTickIcon' | 'CalendarIcon' | 'CalendarCircleIcon' | 'BurgerIcon' | 'BuildingIcon' | 'BriefcaseIcon' | 'BelarusianFlag' | 'BankIcon' | 'BankColorIcon' | 'AtmIcon' | 'ArrowUpSolidIcon' | 'ArrowUpIcon' | 'ArrowTopRightIcon' | 'ArrowRightIcon' | 'ArrowLeftIcon' | 'ArrowDownSolidIcon' | 'ArrowDownIcon' | 'AppleIcon' | 'AlarmIcon' | 'ActualBalanceIcon' | 'AchievementIcon';
@@ -0,0 +1,7 @@
1
+ import '../../../setup-fixture';
2
+
3
+ import { NoConsentDialog } from './NoConsentDialog';
4
+
5
+ export default {
6
+ default: <NoConsentDialog attempts={1} />,
7
+ };