@redneckz/wildless-cms-uni-blocks 0.14.744 → 0.14.746

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 (98) hide show
  1. package/bundle/blocks.schema.json +1 -1
  2. package/bundle/bundle.umd.js +91 -10
  3. package/bundle/bundle.umd.min.js +1 -1
  4. package/bundle/components/CardTransfer/CardTransferContent.d.ts +2 -1
  5. package/bundle/components/CardTransfer/SubmitFailedDialog.d.ts +6 -0
  6. package/bundle/components/CardTransfer/submitCardTransfer.d.ts +16 -0
  7. package/bundle/components/CardTransfer/useSubmitCardTransfer.d.ts +11 -0
  8. package/dist/components/CardTransfer/CardTransfer.js +9 -7
  9. package/dist/components/CardTransfer/CardTransfer.js.map +1 -1
  10. package/dist/components/CardTransfer/CardTransferContent.d.ts +2 -1
  11. package/dist/components/CardTransfer/SubmitFailedDialog.d.ts +6 -0
  12. package/dist/components/CardTransfer/SubmitFailedDialog.js +13 -0
  13. package/dist/components/CardTransfer/SubmitFailedDialog.js.map +1 -0
  14. package/dist/components/CardTransfer/submitCardTransfer.d.ts +16 -0
  15. package/dist/components/CardTransfer/submitCardTransfer.js +44 -0
  16. package/dist/components/CardTransfer/submitCardTransfer.js.map +1 -0
  17. package/dist/components/CardTransfer/useSubmitCardTransfer.d.ts +11 -0
  18. package/dist/components/CardTransfer/useSubmitCardTransfer.js +33 -0
  19. package/dist/components/CardTransfer/useSubmitCardTransfer.js.map +1 -0
  20. package/dist/components/CreditCardForm/getDeliveryCreditCardData.js +2 -1
  21. package/dist/components/CreditCardForm/getDeliveryCreditCardData.js.map +1 -1
  22. package/dist/ui-kit/FormField/getField.js +2 -1
  23. package/dist/ui-kit/FormField/getField.js.map +1 -1
  24. package/lib/common.css +1 -1
  25. package/lib/components/CardTransfer/CardTransfer.fixture.d.ts +2 -1
  26. package/lib/components/CardTransfer/CardTransfer.fixture.mobile.d.ts +2 -1
  27. package/lib/components/CardTransfer/CardTransfer.js +10 -8
  28. package/lib/components/CardTransfer/CardTransfer.js.map +1 -1
  29. package/lib/components/CardTransfer/CardTransferContent.d.ts +2 -1
  30. package/lib/components/CardTransfer/SubmitFailedDialog.d.ts +6 -0
  31. package/lib/components/CardTransfer/SubmitFailedDialog.js +10 -0
  32. package/lib/components/CardTransfer/SubmitFailedDialog.js.map +1 -0
  33. package/lib/components/CardTransfer/submitCardTransfer.d.ts +16 -0
  34. package/lib/components/CardTransfer/submitCardTransfer.js +39 -0
  35. package/lib/components/CardTransfer/submitCardTransfer.js.map +1 -0
  36. package/lib/components/CardTransfer/useSubmitCardTransfer.d.ts +11 -0
  37. package/lib/components/CardTransfer/useSubmitCardTransfer.js +30 -0
  38. package/lib/components/CardTransfer/useSubmitCardTransfer.js.map +1 -0
  39. package/lib/components/CreditCardForm/getDeliveryCreditCardData.js +2 -1
  40. package/lib/components/CreditCardForm/getDeliveryCreditCardData.js.map +1 -1
  41. package/lib/ui-kit/FormField/getField.js +2 -1
  42. package/lib/ui-kit/FormField/getField.js.map +1 -1
  43. package/mobile/bundle/bundle.umd.js +91 -10
  44. package/mobile/bundle/bundle.umd.min.js +1 -1
  45. package/mobile/bundle/components/CardTransfer/CardTransferContent.d.ts +2 -1
  46. package/mobile/bundle/components/CardTransfer/SubmitFailedDialog.d.ts +6 -0
  47. package/mobile/bundle/components/CardTransfer/submitCardTransfer.d.ts +16 -0
  48. package/mobile/bundle/components/CardTransfer/useSubmitCardTransfer.d.ts +11 -0
  49. package/mobile/dist/components/CardTransfer/CardTransfer.js +9 -7
  50. package/mobile/dist/components/CardTransfer/CardTransfer.js.map +1 -1
  51. package/mobile/dist/components/CardTransfer/CardTransferContent.d.ts +2 -1
  52. package/mobile/dist/components/CardTransfer/SubmitFailedDialog.d.ts +6 -0
  53. package/mobile/dist/components/CardTransfer/SubmitFailedDialog.js +13 -0
  54. package/mobile/dist/components/CardTransfer/SubmitFailedDialog.js.map +1 -0
  55. package/mobile/dist/components/CardTransfer/submitCardTransfer.d.ts +16 -0
  56. package/mobile/dist/components/CardTransfer/submitCardTransfer.js +44 -0
  57. package/mobile/dist/components/CardTransfer/submitCardTransfer.js.map +1 -0
  58. package/mobile/dist/components/CardTransfer/useSubmitCardTransfer.d.ts +11 -0
  59. package/mobile/dist/components/CardTransfer/useSubmitCardTransfer.js +33 -0
  60. package/mobile/dist/components/CardTransfer/useSubmitCardTransfer.js.map +1 -0
  61. package/mobile/dist/components/CreditCardForm/getDeliveryCreditCardData.js +2 -1
  62. package/mobile/dist/components/CreditCardForm/getDeliveryCreditCardData.js.map +1 -1
  63. package/mobile/dist/ui-kit/FormField/getField.js +2 -1
  64. package/mobile/dist/ui-kit/FormField/getField.js.map +1 -1
  65. package/mobile/lib/common.css +1 -1
  66. package/mobile/lib/components/CardTransfer/CardTransfer.js +10 -8
  67. package/mobile/lib/components/CardTransfer/CardTransfer.js.map +1 -1
  68. package/mobile/lib/components/CardTransfer/CardTransferContent.d.ts +2 -1
  69. package/mobile/lib/components/CardTransfer/SubmitFailedDialog.d.ts +6 -0
  70. package/mobile/lib/components/CardTransfer/SubmitFailedDialog.js +10 -0
  71. package/mobile/lib/components/CardTransfer/SubmitFailedDialog.js.map +1 -0
  72. package/mobile/lib/components/CardTransfer/submitCardTransfer.d.ts +16 -0
  73. package/mobile/lib/components/CardTransfer/submitCardTransfer.js +39 -0
  74. package/mobile/lib/components/CardTransfer/submitCardTransfer.js.map +1 -0
  75. package/mobile/lib/components/CardTransfer/useSubmitCardTransfer.d.ts +11 -0
  76. package/mobile/lib/components/CardTransfer/useSubmitCardTransfer.js +30 -0
  77. package/mobile/lib/components/CardTransfer/useSubmitCardTransfer.js.map +1 -0
  78. package/mobile/lib/components/CreditCardForm/getDeliveryCreditCardData.js +2 -1
  79. package/mobile/lib/components/CreditCardForm/getDeliveryCreditCardData.js.map +1 -1
  80. package/mobile/lib/ui-kit/FormField/getField.js +2 -1
  81. package/mobile/lib/ui-kit/FormField/getField.js.map +1 -1
  82. package/mobile/src/components/CardTransfer/CardTransfer.tsx +12 -9
  83. package/mobile/src/components/CardTransfer/CardTransferContent.ts +3 -1
  84. package/mobile/src/components/CardTransfer/SubmitFailedDialog.tsx +42 -0
  85. package/mobile/src/components/CardTransfer/submitCardTransfer.ts +72 -0
  86. package/mobile/src/components/CardTransfer/useSubmitCardTransfer.tsx +47 -0
  87. package/mobile/src/components/CreditCardForm/getDeliveryCreditCardData.ts +2 -1
  88. package/mobile/src/ui-kit/FormField/getField.tsx +7 -5
  89. package/package.json +1 -1
  90. package/src/components/CardTransfer/CardTransfer.fixture.mobile.tsx +11 -3
  91. package/src/components/CardTransfer/CardTransfer.fixture.tsx +13 -1
  92. package/src/components/CardTransfer/CardTransfer.tsx +12 -9
  93. package/src/components/CardTransfer/CardTransferContent.ts +3 -1
  94. package/src/components/CardTransfer/SubmitFailedDialog.tsx +42 -0
  95. package/src/components/CardTransfer/submitCardTransfer.ts +72 -0
  96. package/src/components/CardTransfer/useSubmitCardTransfer.tsx +47 -0
  97. package/src/components/CreditCardForm/getDeliveryCreditCardData.ts +2 -1
  98. package/src/ui-kit/FormField/getField.tsx +7 -5
@@ -1,29 +1,31 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "@redneckz/uni-jsx/jsx-runtime";
2
2
  import { JSX } from '@redneckz/uni-jsx';
3
- import { useEffect, useState } from '@redneckz/uni-jsx/lib/hooks';
3
+ import { useEffect } from '@redneckz/uni-jsx/lib/hooks';
4
+ import { useBool } from '@redneckz/uni-jsx/lib/hooks/useBool';
4
5
  import { useForm } from '../../hooks/useForm/useForm.js';
5
6
  import { BlockWrapper } from '../../ui-kit/BlockWrapper.js';
6
7
  import { Button } from '../../ui-kit/Button/Button.js';
7
8
  import { CurrencyInput } from '../../ui-kit/CurrencyInput/CurrencyInput.js';
8
9
  import { Heading } from '../../ui-kit/Heading/Heading.js';
9
10
  import { style } from '../../utils/style.js';
11
+ import { useSubmitCardTransfer } from './useSubmitCardTransfer.js';
10
12
  const DEFAULT_TITLE = 'Укажите сумму перевода';
11
13
  const DEFAULT_LABEL = 'Сумма перевода';
12
14
  const MAX_AMOUNT = 300000;
13
15
  const MIN_AMOUNT = 1;
14
- const FORM_URL_MAP = {
15
- private: 'https://old.rshb.ru/p2p/',
16
- business: 'https://old.rshb.ru/smallbusiness/p2p/',
17
- };
18
16
  const INITIAL_FORM_STATE = {
19
17
  amount: 1500,
20
18
  };
21
19
  export const CardTransfer = JSX(({ className = '', title = DEFAULT_TITLE, label = DEFAULT_LABEL, button, formType = 'private', ...rest }) => {
22
- const [{ amount }, { field }] = useForm(INITIAL_FORM_STATE);
23
- const [isDisabled, setDisabled] = useState(false);
20
+ const [isDisabled, { setValue: setDisabled }] = useBool(false);
21
+ const handleSubmit = useSubmitCardTransfer(formType);
22
+ const [{ amount }, { field, onSubmit }] = useForm(INITIAL_FORM_STATE, {
23
+ onSubmit: handleSubmit,
24
+ });
25
+ // TODO: dont set state in useEffect
24
26
  useEffect(() => {
25
27
  setDisabled(amount <= 0);
26
28
  }, [amount]);
27
- return (_jsxs(BlockWrapper, { className: style('flex flex-col items-center', className), defaultPadding: "p-6xl", ...rest, children: [title ? (_jsx(Heading, { className: "pb-lg xl:pb-4xl self-start xl:self-center", headingType: "h3", title: title })) : null, _jsxs("form", { className: "w-full xl:max-w-[468px]", method: "POST", action: FORM_URL_MAP[formType], children: [_jsx(CurrencyInput, { valid: !isDisabled, label: label, max: MAX_AMOUNT, min: MIN_AMOUNT, ...field('amount', { parse: Number, format: String }) }), _jsx("input", { type: "hidden", name: "amount", value: amount }), button?.text ? (_jsx(Button, { className: "w-full mt-lg", type: "submit", disabled: isDisabled, children: button.text })) : null] })] }));
29
+ return (_jsxs(BlockWrapper, { className: style('flex flex-col items-center', className), defaultPadding: "p-6xl", ...rest, children: [title ? (_jsx(Heading, { className: "pb-lg xl:pb-4xl self-start xl:self-center", headingType: "h3", title: title })) : null, _jsxs("form", { className: "w-full xl:max-w-[468px]", method: "POST", onSubmit: onSubmit, children: [_jsx(CurrencyInput, { valid: !isDisabled, label: label, max: MAX_AMOUNT, min: MIN_AMOUNT, ...field('amount', { parse: Number, format: String }) }), _jsx("input", { type: "hidden", name: "amount", value: amount }), button?.text ? (_jsx(Button, { className: "w-full mt-lg", type: "submit", disabled: isDisabled, children: button.text })) : null] })] }));
28
30
  });
29
31
  //# sourceMappingURL=CardTransfer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CardTransfer.js","sourceRoot":"","sources":["../../../src/components/CardTransfer/CardTransfer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAEvD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAG1C,MAAM,aAAa,GAAG,wBAAwB,CAAC;AAC/C,MAAM,aAAa,GAAG,gBAAgB,CAAC;AACvC,MAAM,UAAU,GAAG,MAAM,CAAC;AAC1B,MAAM,UAAU,GAAG,CAAC,CAAC;AAErB,MAAM,YAAY,GAAG;IACnB,OAAO,EAAE,0BAA0B;IACnC,QAAQ,EAAE,wCAAwC;CACnD,CAAC;AAEF,MAAM,kBAAkB,GAAG;IACzB,MAAM,EAAE,IAAI;CACb,CAAC;AAIF,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,CAC7B,CAAC,EACC,SAAS,GAAG,EAAE,EACd,KAAK,GAAG,aAAa,EACrB,KAAK,GAAG,aAAa,EACrB,MAAM,EACN,QAAQ,GAAG,SAAS,EACpB,GAAG,IAAI,EACR,EAAE,EAAE;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC5D,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAElD,SAAS,CAAC,GAAG,EAAE;QACb,WAAW,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;IAC3B,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,OAAO,CACL,MAAC,YAAY,IACX,SAAS,EAAE,KAAK,CAAC,4BAA4B,EAAE,SAAS,CAAC,EACzD,cAAc,EAAC,OAAO,KAClB,IAAI,aAEP,KAAK,CAAC,CAAC,CAAC,CACP,KAAC,OAAO,IACN,SAAS,EAAC,2CAA2C,EACrD,WAAW,EAAC,IAAI,EAChB,KAAK,EAAE,KAAK,GACZ,CACH,CAAC,CAAC,CAAC,IAAI,EACR,gBAAM,SAAS,EAAC,yBAAyB,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,aACpF,KAAC,aAAa,IACZ,KAAK,EAAE,CAAC,UAAU,EAClB,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,UAAU,EACf,GAAG,EAAE,UAAU,KACX,KAAK,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,GACtD,EACF,gBAAO,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,EAAC,KAAK,EAAE,MAAM,GAAI,EACnD,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CACd,KAAC,MAAM,IAAC,SAAS,EAAC,cAAc,EAAC,IAAI,EAAC,QAAQ,EAAC,QAAQ,EAAE,UAAU,YAChE,MAAM,CAAC,IAAI,GACL,CACV,CAAC,CAAC,CAAC,IAAI,IACH,IACM,CAChB,CAAC;AACJ,CAAC,CACF,CAAC"}
1
+ {"version":3,"file":"CardTransfer.js","sourceRoot":"","sources":["../../../src/components/CardTransfer/CardTransfer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,qCAAqC,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAEvD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,aAAa,GAAG,wBAAwB,CAAC;AAC/C,MAAM,aAAa,GAAG,gBAAgB,CAAC;AACvC,MAAM,UAAU,GAAG,MAAM,CAAC;AAC1B,MAAM,UAAU,GAAG,CAAC,CAAC;AAErB,MAAM,kBAAkB,GAAG;IACzB,MAAM,EAAE,IAAI;CACb,CAAC;AAIF,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,CAC7B,CAAC,EACC,SAAS,GAAG,EAAE,EACd,KAAK,GAAG,aAAa,EACrB,KAAK,GAAG,aAAa,EACrB,MAAM,EACN,QAAQ,GAAG,SAAS,EACpB,GAAG,IAAI,EACR,EAAE,EAAE;IACH,MAAM,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAE/D,MAAM,YAAY,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAErD,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,GAAG,OAAO,CAAC,kBAAkB,EAAE;QACpE,QAAQ,EAAE,YAAY;KACvB,CAAC,CAAC;IAEH,oCAAoC;IACpC,SAAS,CAAC,GAAG,EAAE;QACb,WAAW,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;IAC3B,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,OAAO,CACL,MAAC,YAAY,IACX,SAAS,EAAE,KAAK,CAAC,4BAA4B,EAAE,SAAS,CAAC,EACzD,cAAc,EAAC,OAAO,KAClB,IAAI,aAEP,KAAK,CAAC,CAAC,CAAC,CACP,KAAC,OAAO,IACN,SAAS,EAAC,2CAA2C,EACrD,WAAW,EAAC,IAAI,EAChB,KAAK,EAAE,KAAK,GACZ,CACH,CAAC,CAAC,CAAC,IAAI,EACR,gBAAM,SAAS,EAAC,yBAAyB,EAAC,MAAM,EAAC,MAAM,EAAC,QAAQ,EAAE,QAAQ,aACxE,KAAC,aAAa,IACZ,KAAK,EAAE,CAAC,UAAU,EAClB,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,UAAU,EACf,GAAG,EAAE,UAAU,KACX,KAAK,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,GACtD,EACF,gBAAO,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,EAAC,KAAK,EAAE,MAAM,GAAI,EACnD,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CACd,KAAC,MAAM,IAAC,SAAS,EAAC,cAAc,EAAC,IAAI,EAAC,QAAQ,EAAC,QAAQ,EAAE,UAAU,YAChE,MAAM,CAAC,IAAI,GACL,CACV,CAAC,CAAC,CAAC,IAAI,IACH,IACM,CAChB,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { type LabelProps, type TextProps, type TitleProps } from '../../model/HeadlineType';
2
2
  import { type UniBlockContent } from '../../UniBlock/UniBlockProps';
3
+ export declare type CardTransferFormType = 'private' | 'business';
3
4
  /**
4
5
  * @title Перевод с карты на карту
5
6
  */
@@ -10,5 +11,5 @@ export declare type CardTransferContent = UniBlockContent & LabelProps & TitlePr
10
11
  * @title Тип формы
11
12
  * @enumNames ['Частные клиенты', 'Бизнес-клиенты']
12
13
  */
13
- formType?: 'private' | 'business';
14
+ formType?: CardTransferFormType;
14
15
  };
@@ -0,0 +1,6 @@
1
+ export interface FormResponseDialogProps {
2
+ onClose?: () => void;
3
+ errorCode?: number;
4
+ errorMessage?: string;
5
+ }
6
+ export declare const SubmitFailedDialog: ({ onClose, errorCode, errorMessage, }: FormResponseDialogProps) => any;
@@ -0,0 +1,10 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "@redneckz/uni-jsx/jsx-runtime";
2
+ import { Dialog } from '../../ui-kit/DialogManager/Dialog.js';
3
+ import { Img } from '../../ui-kit/Img/Img.js';
4
+ import { Headline } from '../Headline/Headline.js';
5
+ const FAILED_TITLE = 'Ошибка перевода';
6
+ export const SubmitFailedDialog = ({ onClose, errorCode, errorMessage, }) => {
7
+ const description = errorCode ? `Код ошибки - ${errorCode}` : 'Пожалуйста, повторите позднее';
8
+ return (_jsx(Dialog, { className: "my-6xl max-w-lg w-full min-h-fit mx-auto", onClose: onClose, children: _jsxs("div", { className: "flex flex-col gap-lg items-center rounded-md space-x-m", children: [_jsx(Img, { image: { icon: 'ResponseFailIcon', iconVersion: 'normal' }, width: "136", height: "136" }), _jsx(Headline, { className: "w-full", title: FAILED_TITLE, description: description, headlineVersion: "XS", isEmbedded: true }), errorMessage ? (_jsxs("div", { className: "bg-secondary-dark rounded-xl px-4 pt-4 pb-8 grid gap-4 grid-cols-12", children: [_jsxs("div", { className: "col-span-8", children: [" ", errorMessage] }), _jsx("div", { className: "col-span-4", children: _jsx(Img, { image: { icon: 'ResponseFailIcon', iconVersion: 'normal' } }) })] })) : null] }) }));
9
+ };
10
+ //# sourceMappingURL=SubmitFailedDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SubmitFailedDialog.js","sourceRoot":"","sources":["../../../src/components/CardTransfer/SubmitFailedDialog.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAQhD,MAAM,YAAY,GAAG,iBAAiB,CAAC;AAEvC,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EACjC,OAAO,EACP,SAAS,EACT,YAAY,GACY,EAAE,EAAE;IAC5B,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,gBAAgB,SAAS,EAAE,CAAC,CAAC,CAAC,+BAA+B,CAAC;IAE9F,OAAO,CACL,KAAC,MAAM,IAAC,SAAS,EAAC,0CAA0C,EAAC,OAAO,EAAE,OAAO,YAC3E,eAAK,SAAS,EAAC,wDAAwD,aACrE,KAAC,GAAG,IAAC,KAAK,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,KAAK,GAAG,EAC5F,KAAC,QAAQ,IACP,SAAS,EAAC,QAAQ,EAClB,KAAK,EAAE,YAAY,EACnB,WAAW,EAAE,WAAW,EACxB,eAAe,EAAC,IAAI,EACpB,UAAU,EAAE,IAAI,GAChB,EACD,YAAY,CAAC,CAAC,CAAC,CACd,eAAK,SAAS,EAAC,qEAAqE,aAClF,eAAK,SAAS,EAAC,YAAY,kBAAG,YAAY,IAAO,EACjD,cAAK,SAAS,EAAC,YAAY,YACzB,KAAC,GAAG,IAAC,KAAK,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAI,GAC/D,IACF,CACP,CAAC,CAAC,CAAC,IAAI,IACJ,GACC,CACV,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { type CardTransferFormType } from './CardTransferContent';
2
+ export declare type CardTransferResponse = Partial<{
3
+ errorCode: number;
4
+ errorMessage: string;
5
+ orderId: string;
6
+ formUrl: string;
7
+ }>;
8
+ export declare const submitCardTransfer: (typeForm: CardTransferFormType, amount: number) => Promise<CardTransferResponse | null>;
9
+ export declare const isSuccessResponse: (response: CardTransferResponse | null) => response is {
10
+ orderId: string;
11
+ formUrl: string;
12
+ };
13
+ export declare const isErrorInResponse: (response: CardTransferResponse | null) => response is {
14
+ errorCode: number;
15
+ errorMessage: string;
16
+ };
@@ -0,0 +1,39 @@
1
+ import { API_BASE_URI } from '../../api/apiBaseUrl.js';
2
+ import { locationNavigator } from '../../external/locationNavigator.js';
3
+ const paymentURLMap = {
4
+ private: 'p2p/registerP2P',
5
+ business: 'b2c/registerB2C',
6
+ };
7
+ const SUCCESS_URL = '/p2p/success';
8
+ const FAIL_URL = '/p2p/success';
9
+ const CURRENCY_CODE = '643';
10
+ const LANGUAGE = 'ru';
11
+ export const submitCardTransfer = async (typeForm, amount) => {
12
+ const navigator = locationNavigator();
13
+ const submitBody = {
14
+ amount: String(amount),
15
+ currency: CURRENCY_CODE,
16
+ returnUrl: `${navigator.origin}${SUCCESS_URL}`,
17
+ failUrl: `${navigator.origin}${FAIL_URL}`,
18
+ language: LANGUAGE,
19
+ };
20
+ const url = `${API_BASE_URI}/payment/${paymentURLMap[typeForm]}`;
21
+ try {
22
+ const res = await fetch(url, {
23
+ method: 'POST',
24
+ headers: { 'Content-Type': 'application/json' },
25
+ mode: 'cors',
26
+ body: JSON.stringify(submitBody),
27
+ });
28
+ if (!res.ok) {
29
+ return null;
30
+ }
31
+ return await res.json();
32
+ }
33
+ catch (ex) {
34
+ return null;
35
+ }
36
+ };
37
+ export const isSuccessResponse = (response) => Boolean(response?.formUrl) && Boolean(response?.orderId);
38
+ export const isErrorInResponse = (response) => Boolean(response?.errorMessage) && response?.errorCode !== 0;
39
+ //# sourceMappingURL=submitCardTransfer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"submitCardTransfer.js","sourceRoot":"","sources":["../../../src/components/CardTransfer/submitCardTransfer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAkBrE,MAAM,aAAa,GAAyC;IAC1D,OAAO,EAAE,iBAAiB;IAC1B,QAAQ,EAAE,iBAAiB;CAC5B,CAAC;AAEF,MAAM,WAAW,GAAG,cAAc,CAAC;AACnC,MAAM,QAAQ,GAAG,cAAc,CAAC;AAChC,MAAM,aAAa,GAAG,KAAK,CAAC;AAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC;AAEtB,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EACrC,QAA8B,EAC9B,MAAc,EACwB,EAAE;IACxC,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC;IAEtC,MAAM,UAAU,GAA2B;QACzC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;QACtB,QAAQ,EAAE,aAAa;QACvB,SAAS,EAAE,GAAG,SAAS,CAAC,MAAM,GAAG,WAAW,EAAE;QAC9C,OAAO,EAAE,GAAG,SAAS,CAAC,MAAM,GAAG,QAAQ,EAAE;QACzC,QAAQ,EAAE,QAAQ;KACnB,CAAC;IAEF,MAAM,GAAG,GAAG,GAAG,YAAY,YAAY,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;IAEjE,IAAI;QACF,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC3B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;SACjC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;YACX,OAAO,IAAI,CAAC;SACb;QAED,OAAO,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;KACzB;IAAC,OAAO,EAAE,EAAE;QACX,OAAO,IAAI,CAAC;KACb;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,QAAqC,EACa,EAAE,CACpD,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAE3D,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,QAAqC,EACoB,EAAE,CAC3D,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,IAAI,QAAQ,EAAE,SAAS,KAAK,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { type CardTransferFormType } from './CardTransferContent';
2
+ export interface TransactionStore {
3
+ transaction: {
4
+ orderId: string;
5
+ type: 'p2p' | 'b2c';
6
+ url: string;
7
+ };
8
+ }
9
+ export declare const useSubmitCardTransfer: (formType: CardTransferFormType) => ({ amount }: {
10
+ amount: number;
11
+ }) => Promise<void>;
@@ -0,0 +1,30 @@
1
+ import { useCallback } from '@redneckz/uni-jsx/lib/hooks';
2
+ import { useSessionStore } from '@redneckz/uni-jsx/lib/Store/useSessionStore';
3
+ import { locationNavigator } from '../../external/locationNavigator.js';
4
+ import { useDialog } from '../../ui-kit/DialogManager/useDialog.js';
5
+ import { isErrorInResponse, isSuccessResponse, submitCardTransfer } from './submitCardTransfer.js';
6
+ import { SubmitFailedDialog } from './SubmitFailedDialog.js';
7
+ export const useSubmitCardTransfer = (formType) => {
8
+ const responseTypeDialog = useDialog(SubmitFailedDialog);
9
+ const sessionStore = useSessionStore();
10
+ const navigator = locationNavigator();
11
+ const adjustedTypeForm = formType === 'private' ? 'p2p' : 'b2c';
12
+ return useCallback(async ({ amount }) => {
13
+ const response = await submitCardTransfer(formType, amount);
14
+ if (isSuccessResponse(response)) {
15
+ sessionStore.transaction = {
16
+ orderId: response.orderId,
17
+ type: adjustedTypeForm,
18
+ url: navigator.href,
19
+ };
20
+ navigator.assign(`${adjustedTypeForm}/?formUrl=${encodeURIComponent(response.formUrl)}`);
21
+ }
22
+ if (isErrorInResponse(response)) {
23
+ responseTypeDialog.open({
24
+ errorCode: response.errorCode,
25
+ errorMessage: response.errorMessage,
26
+ });
27
+ }
28
+ }, [formType]);
29
+ };
30
+ //# sourceMappingURL=useSubmitCardTransfer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSubmitCardTransfer.js","sourceRoot":"","sources":["../../../src/components/CardTransfer/useSubmitCardTransfer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAEjE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAChG,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAU1D,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,QAA8B,EAAE,EAAE;IACtE,MAAM,kBAAkB,GAAG,SAAS,CAAC,kBAAkB,CAAC,CAAC;IACzD,MAAM,YAAY,GAAG,eAAe,EAAoB,CAAC;IACzD,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC;IAEtC,MAAM,gBAAgB,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;IAEhE,OAAO,WAAW,CAChB,KAAK,EAAE,EAAE,MAAM,EAAsB,EAAE,EAAE;QACvC,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAE5D,IAAI,iBAAiB,CAAC,QAAQ,CAAC,EAAE;YAC/B,YAAY,CAAC,WAAW,GAAG;gBACzB,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,IAAI,EAAE,gBAAgB;gBACtB,GAAG,EAAE,SAAS,CAAC,IAAI;aACpB,CAAC;YAEF,SAAS,CAAC,MAAM,CAAC,GAAG,gBAAgB,aAAa,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;SAC1F;QAED,IAAI,iBAAiB,CAAC,QAAQ,CAAC,EAAE;YAC/B,kBAAkB,CAAC,IAAI,CAAC;gBACtB,SAAS,EAAE,QAAQ,CAAC,SAAS;gBAC7B,YAAY,EAAE,QAAQ,CAAC,YAAY;aACpC,CAAC,CAAC;SACJ;IACH,CAAC,EACD,CAAC,QAAQ,CAAC,CACX,CAAC;AACJ,CAAC,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { dateToISO } from '../../utils/dateToISO.js';
1
2
  import { getParticipantAddresses } from '../CreditForm/utils.js';
2
3
  export const getDeliveryData = (formData) => {
3
4
  const { methodObtain, deliveryDate = '' } = formData;
@@ -5,7 +6,7 @@ export const getDeliveryData = (formData) => {
5
6
  return isCourierDelivery
6
7
  ? {
7
8
  courierDeliveryFlg: isCourierDelivery,
8
- deliveryDate: deliveryDate.toString().replace(/(GMT)[+-]\d{4}/, 'GMT+0000'),
9
+ deliveryDate: dateToISO(deliveryDate.toString().replace(/(GMT)[+-]\d{4}/, 'GMT+0000')),
9
10
  deliveryTimeCd: { value: 'TIME_2' },
10
11
  //TODO временный хардкод для тестирования, не забыть удалить
11
12
  office: { id: '3' },
@@ -1 +1 @@
1
- {"version":3,"file":"getDeliveryCreditCardData.js","sourceRoot":"","sources":["../../../src/components/CreditCardForm/getDeliveryCreditCardData.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAuB,EAAE,EAAE;IACzD,MAAM,EAAE,YAAY,EAAE,YAAY,GAAG,EAAE,EAAE,GAAG,QAAQ,CAAC;IAErD,MAAM,iBAAiB,GAAG,YAAY,KAAK,SAAS,CAAC;IAErD,OAAO,iBAAiB;QACtB,CAAC,CAAC;YACE,kBAAkB,EAAE,iBAAiB;YACrC,YAAY,EAAE,YAAY,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,UAAU,CAAC;YAC3E,cAAc,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE;YACnC,4DAA4D;YAC5D,MAAM,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE;SACpB;QACH,CAAC,CAAC,EAAE,CAAC;AACT,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,QAAuB,EAAE,EAAE;IACvD,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,GAAG,QAAQ,CAAC;IAEjD,MAAM,cAAc,GAAG,aAAa,EAAE,GAAG,IAAI,YAAY,KAAK,QAAQ,CAAC;IAEvE,OAAO,cAAc;QACnB,CAAC,CAAC;YACE,MAAM,EAAE,EAAE,EAAE,EAAE,aAAa,CAAC,GAAG,EAAE;SAClC;QACH,CAAC,CAAC,EAAE,CAAC;AACT,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,QAAuB,EAAE,EAAE;IACnE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,QAAQ,CAAC;IAElD,MAAM,iBAAiB,GAAG,YAAY,KAAK,SAAS,CAAC;IAErD,OAAO,iBAAiB;QACtB,CAAC,CAAC;YACE,oBAAoB,EAAE,uBAAuB,CAAC,EAAE,cAAc,EAAE,CAAC;SAClE;QACH,CAAC,CAAC,EAAE,CAAC;AACT,CAAC,CAAC"}
1
+ {"version":3,"file":"getDeliveryCreditCardData.js","sourceRoot":"","sources":["../../../src/components/CreditCardForm/getDeliveryCreditCardData.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAuB,EAAE,EAAE;IACzD,MAAM,EAAE,YAAY,EAAE,YAAY,GAAG,EAAE,EAAE,GAAG,QAAQ,CAAC;IAErD,MAAM,iBAAiB,GAAG,YAAY,KAAK,SAAS,CAAC;IAErD,OAAO,iBAAiB;QACtB,CAAC,CAAC;YACE,kBAAkB,EAAE,iBAAiB;YACrC,YAAY,EAAE,SAAS,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;YACtF,cAAc,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE;YACnC,4DAA4D;YAC5D,MAAM,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE;SACpB;QACH,CAAC,CAAC,EAAE,CAAC;AACT,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,QAAuB,EAAE,EAAE;IACvD,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,GAAG,QAAQ,CAAC;IAEjD,MAAM,cAAc,GAAG,aAAa,EAAE,GAAG,IAAI,YAAY,KAAK,QAAQ,CAAC;IAEvE,OAAO,cAAc;QACnB,CAAC,CAAC;YACE,MAAM,EAAE,EAAE,EAAE,EAAE,aAAa,CAAC,GAAG,EAAE;SAClC;QACH,CAAC,CAAC,EAAE,CAAC;AACT,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,QAAuB,EAAE,EAAE;IACnE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,QAAQ,CAAC;IAElD,MAAM,iBAAiB,GAAG,YAAY,KAAK,SAAS,CAAC;IAErD,OAAO,iBAAiB;QACtB,CAAC,CAAC;YACE,oBAAoB,EAAE,uBAAuB,CAAC,EAAE,cAAc,EAAE,CAAC;SAClE;QACH,CAAC,CAAC,EAAE,CAAC;AACT,CAAC,CAAC"}
@@ -74,6 +74,7 @@ export const getField = (field, params, externalInputs = {}) => (input, i) => {
74
74
  ...InputsMap,
75
75
  ...externalInputs,
76
76
  };
77
- return (shouldRenderField({ input, field }) && (_jsx("div", { children: fieldsRegister[String(input.name)]?.({ field, input, params }) }, i)));
77
+ const Component = fieldsRegister[String(input.name)];
78
+ return shouldRenderField({ input, field }) && Component ? (_jsx("div", { children: _jsx(Component, { field: field, input: input, params: params }) }, i)) : null;
78
79
  };
79
80
  //# sourceMappingURL=getField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getField.js","sourceRoot":"","sources":["../../../src/ui-kit/FormField/getField.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getField.js","sourceRoot":"","sources":["../../../src/ui-kit/FormField/getField.tsx"],"names":[],"mappings":"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"}
@@ -2817,7 +2817,8 @@
2817
2817
  ...InputsMap$1,
2818
2818
  ...externalInputs,
2819
2819
  };
2820
- return (shouldRenderField({ input, field }) && (jsx("div", { children: fieldsRegister[String(input.name)]?.({ field, input, params }) }, i)));
2820
+ const Component = fieldsRegister[String(input.name)];
2821
+ return shouldRenderField({ input, field }) && Component ? (jsx("div", { children: jsx(Component, { field: field, input: input, params: params }) }, i)) : null;
2821
2822
  };
2822
2823
 
2823
2824
  const inputColumnStyles = (column) => column === 2 ? '@xl:grid-cols-2' : '';
@@ -6491,24 +6492,97 @@
6491
6492
 
6492
6493
  const CurrencyInput = JSX((props) => (jsx(NumberInput, { ...props, fractionDigits: 2, children: jsx("div", { className: "absolute right-4 bottom-4", children: jsx(Text, { size: "text-xl", font: "font-light", children: "\u20BD" }) }) })));
6493
6494
 
6495
+ const sessionStore = new Store(); // sessionStorage cache
6496
+ replicate(sessionStore, new StorageAdapter(globalThis?.sessionStorage));
6497
+ function useSessionStore() {
6498
+ return useStore(sessionStore);
6499
+ }
6500
+
6501
+ const paymentURLMap = {
6502
+ private: 'p2p/registerP2P',
6503
+ business: 'b2c/registerB2C',
6504
+ };
6505
+ const SUCCESS_URL = '/p2p/success';
6506
+ const FAIL_URL = '/p2p/success';
6507
+ const CURRENCY_CODE = '643';
6508
+ const LANGUAGE = 'ru';
6509
+ const submitCardTransfer = async (typeForm, amount) => {
6510
+ const navigator = locationNavigator();
6511
+ const submitBody = {
6512
+ amount: String(amount),
6513
+ currency: CURRENCY_CODE,
6514
+ returnUrl: `${navigator.origin}${SUCCESS_URL}`,
6515
+ failUrl: `${navigator.origin}${FAIL_URL}`,
6516
+ language: LANGUAGE,
6517
+ };
6518
+ const url = `${API_BASE_URI}/payment/${paymentURLMap[typeForm]}`;
6519
+ try {
6520
+ const res = await fetch(url, {
6521
+ method: 'POST',
6522
+ headers: { 'Content-Type': 'application/json' },
6523
+ mode: 'cors',
6524
+ body: JSON.stringify(submitBody),
6525
+ });
6526
+ if (!res.ok) {
6527
+ return null;
6528
+ }
6529
+ return await res.json();
6530
+ }
6531
+ catch (ex) {
6532
+ return null;
6533
+ }
6534
+ };
6535
+ const isSuccessResponse = (response) => Boolean(response?.formUrl) && Boolean(response?.orderId);
6536
+ const isErrorInResponse = (response) => Boolean(response?.errorMessage) && response?.errorCode !== 0;
6537
+
6538
+ const FAILED_TITLE = 'Ошибка перевода';
6539
+ const SubmitFailedDialog = ({ onClose, errorCode, errorMessage, }) => {
6540
+ const description = errorCode ? `Код ошибки - ${errorCode}` : 'Пожалуйста, повторите позднее';
6541
+ return (jsx(Dialog, { className: "my-6xl max-w-lg w-full min-h-fit mx-auto", onClose: onClose, children: jsxs("div", { className: "flex flex-col gap-lg items-center rounded-md space-x-m", children: [jsx(Img, { image: { icon: 'ResponseFailIcon', iconVersion: 'normal' }, width: "136", height: "136" }), jsx(Headline, { className: "w-full", title: FAILED_TITLE, description: description, headlineVersion: "XS", isEmbedded: true }), errorMessage ? (jsxs("div", { className: "bg-secondary-dark rounded-xl px-4 pt-4 pb-8 grid gap-4 grid-cols-12", children: [jsxs("div", { className: "col-span-8", children: [" ", errorMessage] }), jsx("div", { className: "col-span-4", children: jsx(Img, { image: { icon: 'ResponseFailIcon', iconVersion: 'normal' } }) })] })) : null] }) }));
6542
+ };
6543
+
6544
+ const useSubmitCardTransfer = (formType) => {
6545
+ const responseTypeDialog = useDialog(SubmitFailedDialog);
6546
+ const sessionStore = useSessionStore();
6547
+ const navigator = locationNavigator();
6548
+ const adjustedTypeForm = formType === 'private' ? 'p2p' : 'b2c';
6549
+ return useCallback(async ({ amount }) => {
6550
+ const response = await submitCardTransfer(formType, amount);
6551
+ if (isSuccessResponse(response)) {
6552
+ sessionStore.transaction = {
6553
+ orderId: response.orderId,
6554
+ type: adjustedTypeForm,
6555
+ url: navigator.href,
6556
+ };
6557
+ navigator.assign(`${adjustedTypeForm}/?formUrl=${encodeURIComponent(response.formUrl)}`);
6558
+ }
6559
+ if (isErrorInResponse(response)) {
6560
+ responseTypeDialog.open({
6561
+ errorCode: response.errorCode,
6562
+ errorMessage: response.errorMessage,
6563
+ });
6564
+ }
6565
+ }, [formType]);
6566
+ };
6567
+
6494
6568
  const DEFAULT_TITLE = 'Укажите сумму перевода';
6495
6569
  const DEFAULT_LABEL = 'Сумма перевода';
6496
6570
  const MAX_AMOUNT = 300000;
6497
6571
  const MIN_AMOUNT = 1;
6498
- const FORM_URL_MAP = {
6499
- private: 'https://old.rshb.ru/p2p/',
6500
- business: 'https://old.rshb.ru/smallbusiness/p2p/',
6501
- };
6502
6572
  const INITIAL_FORM_STATE = {
6503
6573
  amount: 1500,
6504
6574
  };
6505
6575
  const CardTransfer = JSX(({ className = '', title = DEFAULT_TITLE, label = DEFAULT_LABEL, button, formType = 'private', ...rest }) => {
6506
- const [{ amount }, { field }] = useForm(INITIAL_FORM_STATE);
6507
- const [isDisabled, setDisabled] = useState(false);
6576
+ const [isDisabled, { setValue: setDisabled }] = useBool(false);
6577
+ const handleSubmit = useSubmitCardTransfer(formType);
6578
+ const [{ amount }, { field, onSubmit }] = useForm(INITIAL_FORM_STATE, {
6579
+ onSubmit: handleSubmit,
6580
+ });
6581
+ // TODO: dont set state in useEffect
6508
6582
  useEffect(() => {
6509
6583
  setDisabled(amount <= 0);
6510
6584
  }, [amount]);
6511
- return (jsxs(BlockWrapper, { className: style('flex flex-col items-center', className), defaultPadding: "p-6xl", ...rest, children: [title ? (jsx(Heading, { className: "pb-lg xl:pb-4xl self-start xl:self-center", headingType: "h3", title: title })) : null, jsxs("form", { className: "w-full xl:max-w-[468px]", method: "POST", action: FORM_URL_MAP[formType], children: [jsx(CurrencyInput, { valid: !isDisabled, label: label, max: MAX_AMOUNT, min: MIN_AMOUNT, ...field('amount', { parse: Number, format: String }) }), jsx("input", { type: "hidden", name: "amount", value: amount }), button?.text ? (jsx(Button, { className: "w-full mt-lg", type: "submit", disabled: isDisabled, children: button.text })) : null] })] }));
6585
+ return (jsxs(BlockWrapper, { className: style('flex flex-col items-center', className), defaultPadding: "p-6xl", ...rest, children: [title ? (jsx(Heading, { className: "pb-lg xl:pb-4xl self-start xl:self-center", headingType: "h3", title: title })) : null, jsxs("form", { className: "w-full xl:max-w-[468px]", method: "POST", onSubmit: onSubmit, children: [jsx(CurrencyInput, { valid: !isDisabled, label: label, max: MAX_AMOUNT, min: MIN_AMOUNT, ...field('amount', { parse: Number, format: String }) }), jsx("input", { type: "hidden", name: "amount", value: amount }), button?.text ? (jsx(Button, { className: "w-full mt-lg", type: "submit", disabled: isDisabled, children: button.text })) : null] })] }));
6512
6586
  });
6513
6587
 
6514
6588
  const ITEMS_GAP = 16;
@@ -7043,13 +7117,20 @@
7043
7117
  };
7044
7118
  };
7045
7119
 
7120
+ const dateToISO = (date) => {
7121
+ if (!date) {
7122
+ return '';
7123
+ }
7124
+ return new Date(date).toISOString().split('.')[0];
7125
+ };
7126
+
7046
7127
  const getDeliveryData = (formData) => {
7047
7128
  const { methodObtain, deliveryDate = '' } = formData;
7048
7129
  const isCourierDelivery = methodObtain === 'courier';
7049
7130
  return isCourierDelivery
7050
7131
  ? {
7051
7132
  courierDeliveryFlg: isCourierDelivery,
7052
- deliveryDate: deliveryDate.toString().replace(/(GMT)[+-]\d{4}/, 'GMT+0000'),
7133
+ deliveryDate: dateToISO(deliveryDate.toString().replace(/(GMT)[+-]\d{4}/, 'GMT+0000')),
7053
7134
  deliveryTimeCd: { value: 'TIME_2' },
7054
7135
  //TODO временный хардкод для тестирования, не забыть удалить
7055
7136
  office: { id: '3' },
@@ -10009,7 +10090,7 @@
10009
10090
  slots: () => [HEADER_SLOT, FOOTER_SLOT, STICKY_FOOTER_SLOT],
10010
10091
  });
10011
10092
 
10012
- const packageVersion = "0.14.743";
10093
+ const packageVersion = "0.14.745";
10013
10094
 
10014
10095
  exports.Blocks = Blocks;
10015
10096
  exports.ContentPage = ContentPage;