@redneckz/wildless-cms-uni-blocks 0.6.34 → 0.6.35
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.
- package/bundle/bundle.umd.js +55 -20
- package/bundle/bundle.umd.min.js +1 -1
- package/bundle/components/Calculator/constants.d.ts +3 -0
- package/bundle/components/Calculator/useDepositCalculatorParams.d.ts +22 -0
- package/bundle/components/Header/HeaderSecondaryMenu.d.ts +1 -0
- package/bundle/services/sitemap/SitemapProps.d.ts +1 -2
- package/dist/components/Calculator/DepositCalculatorForm.js +13 -11
- package/dist/components/Calculator/DepositCalculatorForm.js.map +1 -1
- package/dist/components/Calculator/constants.d.ts +3 -0
- package/dist/components/Calculator/constants.js +10 -1
- package/dist/components/Calculator/constants.js.map +1 -1
- package/dist/components/Calculator/useDepositCalculatorParams.d.ts +22 -0
- package/dist/components/Calculator/useDepositCalculatorParams.js +28 -0
- package/dist/components/Calculator/useDepositCalculatorParams.js.map +1 -0
- package/dist/components/Header/Header.js +2 -2
- package/dist/components/Header/Header.js.map +1 -1
- package/dist/components/Header/HeaderSecondaryMenu.d.ts +1 -0
- package/dist/components/Header/HeaderSecondaryMenu.js +2 -2
- package/dist/components/Header/HeaderSecondaryMenu.js.map +1 -1
- package/dist/components/OtherProductsItem/OtherProductsItem.js +1 -1
- package/dist/components/OtherProductsItem/OtherProductsItem.js.map +1 -1
- package/dist/components/VerticalLayout/VerticalLayout.js +5 -3
- package/dist/components/VerticalLayout/VerticalLayout.js.map +1 -1
- package/dist/services/sitemap/SitemapProps.d.ts +1 -2
- package/lib/components/Calculator/DepositCalculatorForm.js +14 -12
- package/lib/components/Calculator/DepositCalculatorForm.js.map +1 -1
- package/lib/components/Calculator/constants.d.ts +3 -0
- package/lib/components/Calculator/constants.js +9 -0
- package/lib/components/Calculator/constants.js.map +1 -1
- package/lib/components/Calculator/useDepositCalculatorParams.d.ts +22 -0
- package/lib/components/Calculator/useDepositCalculatorParams.js +25 -0
- package/lib/components/Calculator/useDepositCalculatorParams.js.map +1 -0
- package/lib/components/Header/Header.js +2 -2
- package/lib/components/Header/Header.js.map +1 -1
- package/lib/components/Header/HeaderSecondaryMenu.d.ts +1 -0
- package/lib/components/Header/HeaderSecondaryMenu.js +2 -2
- package/lib/components/Header/HeaderSecondaryMenu.js.map +1 -1
- package/lib/components/OtherProductsItem/OtherProductsItem.js +1 -1
- package/lib/components/OtherProductsItem/OtherProductsItem.js.map +1 -1
- package/lib/components/VerticalLayout/VerticalLayout.js +5 -3
- package/lib/components/VerticalLayout/VerticalLayout.js.map +1 -1
- package/lib/services/sitemap/SitemapProps.d.ts +1 -2
- package/mobile/bundle/bundle.umd.js +1 -1
- package/mobile/bundle/bundle.umd.min.js +1 -1
- package/mobile/bundle/components/Calculator/constants.d.ts +3 -0
- package/mobile/bundle/components/Calculator/useDepositCalculatorParams.d.ts +22 -0
- package/mobile/bundle/components/Header/HeaderSecondaryMenu.d.ts +1 -0
- package/mobile/bundle/services/sitemap/SitemapProps.d.ts +1 -2
- package/mobile/dist/components/Calculator/DepositCalculatorForm.js +13 -11
- package/mobile/dist/components/Calculator/DepositCalculatorForm.js.map +1 -1
- package/mobile/dist/components/Calculator/constants.d.ts +3 -0
- package/mobile/dist/components/Calculator/constants.js +10 -1
- package/mobile/dist/components/Calculator/constants.js.map +1 -1
- package/mobile/dist/components/Calculator/useDepositCalculatorParams.d.ts +22 -0
- package/mobile/dist/components/Calculator/useDepositCalculatorParams.js +28 -0
- package/mobile/dist/components/Calculator/useDepositCalculatorParams.js.map +1 -0
- package/mobile/dist/components/Header/HeaderSecondaryMenu.d.ts +1 -0
- package/mobile/dist/components/Header/HeaderSecondaryMenu.js +2 -2
- package/mobile/dist/components/Header/HeaderSecondaryMenu.js.map +1 -1
- package/mobile/dist/components/OtherProductsItem/OtherProductsItem.js +1 -1
- package/mobile/dist/components/OtherProductsItem/OtherProductsItem.js.map +1 -1
- package/mobile/dist/components/VerticalLayout/VerticalLayout.js +5 -3
- package/mobile/dist/components/VerticalLayout/VerticalLayout.js.map +1 -1
- package/mobile/dist/services/sitemap/SitemapProps.d.ts +1 -2
- package/mobile/lib/components/Calculator/DepositCalculatorForm.js +14 -12
- package/mobile/lib/components/Calculator/DepositCalculatorForm.js.map +1 -1
- package/mobile/lib/components/Calculator/constants.d.ts +3 -0
- package/mobile/lib/components/Calculator/constants.js +9 -0
- package/mobile/lib/components/Calculator/constants.js.map +1 -1
- package/mobile/lib/components/Calculator/useDepositCalculatorParams.d.ts +22 -0
- package/mobile/lib/components/Calculator/useDepositCalculatorParams.js +25 -0
- package/mobile/lib/components/Calculator/useDepositCalculatorParams.js.map +1 -0
- package/mobile/lib/components/Header/HeaderSecondaryMenu.d.ts +1 -0
- package/mobile/lib/components/Header/HeaderSecondaryMenu.js +2 -2
- package/mobile/lib/components/Header/HeaderSecondaryMenu.js.map +1 -1
- package/mobile/lib/components/OtherProductsItem/OtherProductsItem.js +1 -1
- package/mobile/lib/components/OtherProductsItem/OtherProductsItem.js.map +1 -1
- package/mobile/lib/components/VerticalLayout/VerticalLayout.js +5 -3
- package/mobile/lib/components/VerticalLayout/VerticalLayout.js.map +1 -1
- package/mobile/lib/services/sitemap/SitemapProps.d.ts +1 -2
- package/mobile/src/components/Calculator/DepositCalculatorForm.tsx +17 -22
- package/mobile/src/components/Calculator/constants.ts +11 -0
- package/mobile/src/components/Calculator/useDepositCalculatorParams.ts +64 -0
- package/mobile/src/components/Header/HeaderSecondaryMenu.tsx +12 -9
- package/mobile/src/components/OtherProductsItem/OtherProductsItem.tsx +1 -1
- package/mobile/src/components/VerticalLayout/VerticalLayout.tsx +5 -3
- package/mobile/src/services/sitemap/SitemapProps.ts +1 -2
- package/package.json +1 -1
- package/src/components/Calculator/Calculator.fixture.tsx +0 -5
- package/src/components/Calculator/DepositCalculatorForm.tsx +17 -22
- package/src/components/Calculator/constants.ts +11 -0
- package/src/components/Calculator/useDepositCalculatorParams.ts +64 -0
- package/src/components/Header/Header.tsx +2 -1
- package/src/components/Header/HeaderSecondaryMenu.tsx +12 -9
- package/src/components/OtherProductsItem/OtherProductsItem.tsx +1 -1
- package/src/components/VerticalLayout/VerticalLayout.tsx +5 -3
- package/src/services/sitemap/SitemapProps.ts +1 -2
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { BonusCalculatorSourceBookParams } from './useBonusCalculatorParams';
|
|
2
2
|
import { CreditCalculatorSourceBookParams } from './useCreditCalculatorParams';
|
|
3
|
+
import { DepositCalculatorSourceBookParams } from './useDepositCalculatorParams';
|
|
3
4
|
export declare const DEFAULT_MIN_SUM = 60000;
|
|
4
5
|
export declare const DEFAULT_MAX_SUM = 2000000;
|
|
5
6
|
export declare const DEFAULT_SUM: number;
|
|
@@ -12,5 +13,7 @@ export declare const DEFAULT_CREDIT_CALCULATOR_PARAMS: CreditCalculatorSourceBoo
|
|
|
12
13
|
export declare const DEFAULT_TRAVEL_MIN_SUM = 6000;
|
|
13
14
|
export declare const DEFAULT_REST_MIN_SUM = 6000;
|
|
14
15
|
export declare const DEFAULT_BONUS_CALCULATOR_PARAMS: BonusCalculatorSourceBookParams;
|
|
16
|
+
export declare const DEFAULT_DEPOSIT_CALCULATOR_PARAMS: DepositCalculatorSourceBookParams;
|
|
15
17
|
export declare const CREDIT_CALC_DEFAULT_DIR = "credit-calculator-data";
|
|
16
18
|
export declare const BONUS_CALC_DEFAULT_DIR = "bonus-calculator-data";
|
|
19
|
+
export declare const DEPOSIT_CALC_DEFAULT_DIR = "deposit-calculator-data";
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export interface CommonDepositParams {
|
|
2
|
+
isMonthlyInterestPayment: boolean;
|
|
3
|
+
}
|
|
4
|
+
export interface DepositCalculatorSourceBookParams extends CommonDepositParams {
|
|
5
|
+
minSum: number;
|
|
6
|
+
maxSum: number;
|
|
7
|
+
minMonths: number;
|
|
8
|
+
maxMonths: number;
|
|
9
|
+
rate: number;
|
|
10
|
+
}
|
|
11
|
+
export interface DepositCalculatorUserInputParams extends CommonDepositParams {
|
|
12
|
+
moneyValue: number;
|
|
13
|
+
monthsValue: number;
|
|
14
|
+
}
|
|
15
|
+
export interface DepositCalculatorParams extends DepositCalculatorSourceBookParams, DepositCalculatorUserInputParams {
|
|
16
|
+
income: number;
|
|
17
|
+
finalSum: number;
|
|
18
|
+
}
|
|
19
|
+
export declare type DepositCalculatorData = {
|
|
20
|
+
rows: DepositCalculatorSourceBookParams[];
|
|
21
|
+
};
|
|
22
|
+
export declare const useDepositCalculatorParams: (userInputParams: DepositCalculatorUserInputParams, sourceBookDir?: string) => DepositCalculatorParams;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { BgColorVersion } from '../../model/BgColorVersion';
|
|
2
2
|
interface HeaderSecondaryMenuContent {
|
|
3
3
|
defaultLocation?: string;
|
|
4
|
+
officesLink?: string;
|
|
4
5
|
bgColor?: BgColorVersion;
|
|
5
6
|
}
|
|
6
7
|
export interface HeaderSecondaryMenuProps extends HeaderSecondaryMenuContent {
|
|
@@ -17,13 +17,12 @@ export interface DispositionItem extends LinkProps {
|
|
|
17
17
|
icon?: Picture;
|
|
18
18
|
}
|
|
19
19
|
export interface SitemapDataProps {
|
|
20
|
-
/** @title Основное меню */
|
|
21
20
|
topItems?: TopMenuItem[];
|
|
22
|
-
/** @title Дополнительное меню */
|
|
23
21
|
dispositions?: DispositionItem[];
|
|
24
22
|
logo?: {
|
|
25
23
|
image?: Picture;
|
|
26
24
|
title?: string;
|
|
27
25
|
};
|
|
28
26
|
defaultLocation?: string;
|
|
27
|
+
officesLink?: string;
|
|
29
28
|
}
|
|
@@ -12,6 +12,7 @@ const renderButtonSection_1 = require("./renderButtonSection");
|
|
|
12
12
|
const renderFootnote_1 = require("./renderFootnote");
|
|
13
13
|
const renderMonthsInput_1 = require("./renderMonthsInput");
|
|
14
14
|
const renderWantedSumInput_1 = require("./renderWantedSumInput");
|
|
15
|
+
const useDepositCalculatorParams_1 = require("./useDepositCalculatorParams");
|
|
15
16
|
const EVERY_MONTH = 'everyMonth';
|
|
16
17
|
const AT_END_TERM = 'atEndTerm';
|
|
17
18
|
const depositTypeItems = [
|
|
@@ -24,20 +25,21 @@ const depositTypeItems = [
|
|
|
24
25
|
text: 'В конце срока',
|
|
25
26
|
},
|
|
26
27
|
];
|
|
27
|
-
exports.DepositCalculatorForm = (0, uni_jsx_1.JSX)(({ className = '',
|
|
28
|
+
exports.DepositCalculatorForm = (0, uni_jsx_1.JSX)(({ className = '', sourceBookDir, buttons, footnote }) => {
|
|
28
29
|
const [moneyValue, setMoneyValue] = (0, hooks_1.useState)(constants_1.DEFAULT_SUM);
|
|
29
30
|
const [monthsValue, setMonthsValue] = (0, hooks_1.useState)(constants_1.DEFAULT_MONTHS);
|
|
30
|
-
const [
|
|
31
|
-
const
|
|
32
|
-
|
|
31
|
+
const [isMonthlyInterestPayment, toggleIsMonthlyInterestPayment] = (0, hooks_1.useState)(false);
|
|
32
|
+
const userInputParams = {
|
|
33
|
+
moneyValue,
|
|
34
|
+
monthsValue,
|
|
35
|
+
isMonthlyInterestPayment,
|
|
36
|
+
};
|
|
37
|
+
const calculatorParams = (0, useDepositCalculatorParams_1.useDepositCalculatorParams)(userInputParams, sourceBookDir);
|
|
38
|
+
const { income, finalSum, rate } = calculatorParams;
|
|
33
39
|
return ((0, jsx_runtime_1.jsxs)("section", { className: className, children: [(0, jsx_runtime_1.jsxs)("div", { className: "w-[468px]", children: [(0, renderWantedSumInput_1.renderWantedSumInput)('Сумма вклада, ₽', {
|
|
34
|
-
|
|
35
|
-
minSum: constants_1.DEFAULT_MIN_SUM,
|
|
36
|
-
maxSum: constants_1.DEFAULT_MAX_SUM,
|
|
40
|
+
...calculatorParams,
|
|
37
41
|
}, setMoneyValue), (0, renderMonthsInput_1.renderMonthsInput)('Срок вклада, месяцев', {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
monthsValue,
|
|
41
|
-
}, setMonthsValue)] }), (0, jsx_runtime_1.jsx)(Rate_1.Rate, { rate: rate || 1, rateBlockClassName: "tracking-[-25px]", unit: "%" }), (0, jsx_runtime_1.jsxs)("div", { className: "w-full max-w-[350px]", children: [income ? ((0, jsx_runtime_1.jsx)(CalculatorValueBlock_1.CalculatorValueBlock, { title: "\u0414\u043E\u0445\u043E\u0434 \u043F\u043E \u0432\u043A\u043B\u0430\u0434\u0443", value: income, postfix: "\u20BD", prefix: "+" })) : null, finallySum ? ((0, jsx_runtime_1.jsx)(CalculatorValueBlock_1.CalculatorValueBlock, { title: "\u0421\u0443\u043C\u043C\u0430 \u0432 \u043A\u043E\u043D\u0446\u0435 \u0441\u0440\u043E\u043A\u0430", value: finallySum, postfix: "\u20BD" })) : null, (0, jsx_runtime_1.jsx)(RadioButtonGroup_1.RadioButtonGroup, { items: depositTypeItems, checkedItem: isEveryMonth ? EVERY_MONTH : AT_END_TERM, onChange: (text) => toggleIsEveryMonth(text === EVERY_MONTH) }), (0, renderButtonSection_1.renderButtonSection)(buttons), (0, renderFootnote_1.renderFootnote)(footnote)] })] }));
|
|
42
|
+
...calculatorParams,
|
|
43
|
+
}, setMonthsValue)] }), (0, jsx_runtime_1.jsx)(Rate_1.Rate, { rate: rate || 1, rateBlockClassName: "tracking-[-25px]", unit: "%" }), (0, jsx_runtime_1.jsxs)("div", { className: "w-full max-w-[350px]", children: [income ? ((0, jsx_runtime_1.jsx)(CalculatorValueBlock_1.CalculatorValueBlock, { title: "\u0414\u043E\u0445\u043E\u0434 \u043F\u043E \u0432\u043A\u043B\u0430\u0434\u0443", value: income, postfix: "\u20BD", prefix: "+" })) : null, finalSum ? ((0, jsx_runtime_1.jsx)(CalculatorValueBlock_1.CalculatorValueBlock, { title: "\u0421\u0443\u043C\u043C\u0430 \u0432 \u043A\u043E\u043D\u0446\u0435 \u0441\u0440\u043E\u043A\u0430", value: finalSum, postfix: "\u20BD" })) : null, (0, jsx_runtime_1.jsx)(RadioButtonGroup_1.RadioButtonGroup, { items: depositTypeItems, checkedItem: isMonthlyInterestPayment ? EVERY_MONTH : AT_END_TERM, onChange: (text) => toggleIsMonthlyInterestPayment(text === EVERY_MONTH) }), (0, renderButtonSection_1.renderButtonSection)(buttons), (0, renderFootnote_1.renderFootnote)(footnote)] })] }));
|
|
42
44
|
});
|
|
43
45
|
//# sourceMappingURL=DepositCalculatorForm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DepositCalculatorForm.js","sourceRoot":"","sources":["../../../src/components/Calculator/DepositCalculatorForm.tsx"],"names":[],"mappings":";;;AAAA,OAAO;AAEP,+CAAwC;AACxC,uDAAuD;AACvD,qFAAkF;AAElF,iEAA8D;AAC9D,
|
|
1
|
+
{"version":3,"file":"DepositCalculatorForm.js","sourceRoot":"","sources":["../../../src/components/Calculator/DepositCalculatorForm.tsx"],"names":[],"mappings":";;;AAAA,OAAO;AAEP,+CAAwC;AACxC,uDAAuD;AACvD,qFAAkF;AAElF,iEAA8D;AAC9D,2CAA0D;AAC1D,iCAA8B;AAC9B,+DAA4D;AAC5D,qDAAkD;AAClD,2DAAwD;AACxD,iEAA8D;AAC9D,6EAA0E;AAM1E,MAAM,WAAW,GAAG,YAAY,CAAC;AACjC,MAAM,WAAW,GAAG,WAAW,CAAC;AAEhC,MAAM,gBAAgB,GAAG;IACvB;QACE,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,YAAY;KACnB;IACD;QACE,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,eAAe;KACtB;CACF,CAAC;AAEW,QAAA,qBAAqB,GAAG,IAAA,aAAG,EACtC,CAAC,EAAE,SAAS,GAAG,EAAE,EAAE,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;IACvD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAAC,uBAAW,CAAC,CAAC;IAC1D,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,IAAA,gBAAQ,EAAC,0BAAc,CAAC,CAAC;IAC/D,MAAM,CAAC,wBAAwB,EAAE,8BAA8B,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IACnF,MAAM,eAAe,GAAG;QACtB,UAAU;QACV,WAAW;QACX,wBAAwB;KACzB,CAAC;IAEF,MAAM,gBAAgB,GAAG,IAAA,uDAA0B,EAAC,eAAe,EAAE,aAAa,CAAC,CAAC;IACpF,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,gBAAgB,CAAC;IAEpD,OAAO,CACL,qCAAS,SAAS,EAAE,SAAS,aAC3B,iCAAK,SAAS,EAAC,WAAW,aACvB,IAAA,2CAAoB,EACnB,iBAAiB,EACjB;wBACE,GAAG,gBAAgB;qBACpB,EACD,aAAa,CACd,EACA,IAAA,qCAAiB,EAChB,sBAAsB,EACtB;wBACE,GAAG,gBAAgB;qBACpB,EACD,cAAc,CACf,IACG,EACN,uBAAC,WAAI,IAAC,IAAI,EAAE,IAAI,IAAI,CAAC,EAAE,kBAAkB,EAAC,kBAAkB,EAAC,IAAI,EAAC,GAAG,GAAG,EACxE,iCAAK,SAAS,EAAC,sBAAsB,aAClC,MAAM,CAAC,CAAC,CAAC,CACR,uBAAC,2CAAoB,IAAC,KAAK,EAAC,kFAAiB,EAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAC,QAAG,EAAC,MAAM,EAAC,GAAG,GAAG,CACvF,CAAC,CAAC,CAAC,IAAI,EACP,QAAQ,CAAC,CAAC,CAAC,CACV,uBAAC,2CAAoB,IAAC,KAAK,EAAC,qGAAqB,EAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAC,QAAG,GAAG,CAClF,CAAC,CAAC,CAAC,IAAI,EACR,uBAAC,mCAAgB,IACf,KAAK,EAAE,gBAAgB,EACvB,WAAW,EAAE,wBAAwB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,EACjE,QAAQ,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,8BAA8B,CAAC,IAAI,KAAK,WAAW,CAAC,GAChF,EACD,IAAA,yCAAmB,EAAC,OAAO,CAAC,EAC5B,IAAA,+BAAc,EAAC,QAAQ,CAAC,IACrB,IACE,CACX,CAAC;AACJ,CAAC,CACF,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { BonusCalculatorSourceBookParams } from './useBonusCalculatorParams';
|
|
2
2
|
import { CreditCalculatorSourceBookParams } from './useCreditCalculatorParams';
|
|
3
|
+
import { DepositCalculatorSourceBookParams } from './useDepositCalculatorParams';
|
|
3
4
|
export declare const DEFAULT_MIN_SUM = 60000;
|
|
4
5
|
export declare const DEFAULT_MAX_SUM = 2000000;
|
|
5
6
|
export declare const DEFAULT_SUM: number;
|
|
@@ -12,5 +13,7 @@ export declare const DEFAULT_CREDIT_CALCULATOR_PARAMS: CreditCalculatorSourceBoo
|
|
|
12
13
|
export declare const DEFAULT_TRAVEL_MIN_SUM = 6000;
|
|
13
14
|
export declare const DEFAULT_REST_MIN_SUM = 6000;
|
|
14
15
|
export declare const DEFAULT_BONUS_CALCULATOR_PARAMS: BonusCalculatorSourceBookParams;
|
|
16
|
+
export declare const DEFAULT_DEPOSIT_CALCULATOR_PARAMS: DepositCalculatorSourceBookParams;
|
|
15
17
|
export declare const CREDIT_CALC_DEFAULT_DIR = "credit-calculator-data";
|
|
16
18
|
export declare const BONUS_CALC_DEFAULT_DIR = "bonus-calculator-data";
|
|
19
|
+
export declare const DEPOSIT_CALC_DEFAULT_DIR = "deposit-calculator-data";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2
|
-
exports.BONUS_CALC_DEFAULT_DIR = exports.CREDIT_CALC_DEFAULT_DIR = exports.DEFAULT_BONUS_CALCULATOR_PARAMS = exports.DEFAULT_REST_MIN_SUM = exports.DEFAULT_TRAVEL_MIN_SUM = exports.DEFAULT_CREDIT_CALCULATOR_PARAMS = exports.MONTHLY_INTEREST_RATE = exports.MONTHS_IN_YEAR = exports.DEFAULT_MONTHS = exports.DEFAULT_MAX_MONTHS = exports.DEFAULT_MIN_MONTHS = exports.DEFAULT_SUM = exports.DEFAULT_MAX_SUM = exports.DEFAULT_MIN_SUM = void 0;
|
|
2
|
+
exports.DEPOSIT_CALC_DEFAULT_DIR = exports.BONUS_CALC_DEFAULT_DIR = exports.CREDIT_CALC_DEFAULT_DIR = exports.DEFAULT_DEPOSIT_CALCULATOR_PARAMS = exports.DEFAULT_BONUS_CALCULATOR_PARAMS = exports.DEFAULT_REST_MIN_SUM = exports.DEFAULT_TRAVEL_MIN_SUM = exports.DEFAULT_CREDIT_CALCULATOR_PARAMS = exports.MONTHLY_INTEREST_RATE = exports.MONTHS_IN_YEAR = exports.DEFAULT_MONTHS = exports.DEFAULT_MAX_MONTHS = exports.DEFAULT_MIN_MONTHS = exports.DEFAULT_SUM = exports.DEFAULT_MAX_SUM = exports.DEFAULT_MIN_SUM = void 0;
|
|
3
3
|
exports.DEFAULT_MIN_SUM = 60000;
|
|
4
4
|
exports.DEFAULT_MAX_SUM = 2000000;
|
|
5
5
|
exports.DEFAULT_SUM = (exports.DEFAULT_MAX_SUM - exports.DEFAULT_MIN_SUM) / 2;
|
|
@@ -34,6 +34,15 @@ exports.DEFAULT_BONUS_CALCULATOR_PARAMS = {
|
|
|
34
34
|
travelBonusRate: 0.015,
|
|
35
35
|
restBonusRate: 0.01,
|
|
36
36
|
};
|
|
37
|
+
exports.DEFAULT_DEPOSIT_CALCULATOR_PARAMS = {
|
|
38
|
+
minSum: 50000,
|
|
39
|
+
maxSum: 5000000,
|
|
40
|
+
minMonths: 2,
|
|
41
|
+
maxMonths: 120,
|
|
42
|
+
rate: 5.9,
|
|
43
|
+
isMonthlyInterestPayment: true,
|
|
44
|
+
};
|
|
37
45
|
exports.CREDIT_CALC_DEFAULT_DIR = 'credit-calculator-data';
|
|
38
46
|
exports.BONUS_CALC_DEFAULT_DIR = 'bonus-calculator-data';
|
|
47
|
+
exports.DEPOSIT_CALC_DEFAULT_DIR = 'deposit-calculator-data';
|
|
39
48
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/components/Calculator/constants.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/components/Calculator/constants.ts"],"names":[],"mappings":";;AAIa,QAAA,eAAe,GAAG,KAAK,CAAC;AACxB,QAAA,eAAe,GAAG,OAAO,CAAC;AAC1B,QAAA,WAAW,GAAG,CAAC,uBAAe,GAAG,uBAAe,CAAC,GAAG,CAAC,CAAC;AACtD,QAAA,kBAAkB,GAAG,EAAE,CAAC;AACxB,QAAA,kBAAkB,GAAG,EAAE,CAAC;AACxB,QAAA,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,0BAAkB,GAAG,0BAAkB,CAAC,GAAG,CAAC,CAAC,CAAC;AAE3E,QAAA,cAAc,GAAG,EAAE,CAAC;AAEpB,QAAA,qBAAqB,GAAG,sBAAc,GAAG,GAAG,CAAC;AAE7C,QAAA,gCAAgC,GAAqC;IAChF,MAAM,EAAE,uBAAe;IACvB,MAAM,EAAE,uBAAe;IACvB,SAAS,EAAE,0BAAkB;IAC7B,SAAS,EAAE,0BAAkB;IAC7B,eAAe,EAAE,EAAE;IACnB,YAAY,EAAE,CAAC;IACf,cAAc,EAAE,IAAI;IACpB,eAAe,EAAE,IAAI;IACrB,WAAW,EAAE,IAAI;IACjB,SAAS,EAAE,MAAM;CAClB,CAAC;AAEW,QAAA,sBAAsB,GAAG,IAAI,CAAC;AAC9B,QAAA,oBAAoB,GAAG,IAAI,CAAC;AAE5B,QAAA,+BAA+B,GAAoC;IAC9E,YAAY,EAAE,IAAI;IAClB,YAAY,EAAE,MAAM;IACpB,WAAW,EAAE,IAAI;IACjB,WAAW,EAAE,MAAM;IACnB,QAAQ,EAAE,IAAI;IACd,aAAa,EAAE,CAAC;IAChB,mBAAmB,EAAE,KAAK;IAC1B,iBAAiB,EAAE,IAAI;IACvB,eAAe,EAAE,KAAK;IACtB,aAAa,EAAE,IAAI;CACpB,CAAC;AAEW,QAAA,iCAAiC,GAAsC;IAClF,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,OAAO;IACf,SAAS,EAAE,CAAC;IACZ,SAAS,EAAE,GAAG;IACd,IAAI,EAAE,GAAG;IACT,wBAAwB,EAAE,IAAI;CAC/B,CAAC;AAEW,QAAA,uBAAuB,GAAG,wBAAwB,CAAC;AACnD,QAAA,sBAAsB,GAAG,uBAAuB,CAAC;AACjD,QAAA,wBAAwB,GAAG,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export interface CommonDepositParams {
|
|
2
|
+
isMonthlyInterestPayment: boolean;
|
|
3
|
+
}
|
|
4
|
+
export interface DepositCalculatorSourceBookParams extends CommonDepositParams {
|
|
5
|
+
minSum: number;
|
|
6
|
+
maxSum: number;
|
|
7
|
+
minMonths: number;
|
|
8
|
+
maxMonths: number;
|
|
9
|
+
rate: number;
|
|
10
|
+
}
|
|
11
|
+
export interface DepositCalculatorUserInputParams extends CommonDepositParams {
|
|
12
|
+
moneyValue: number;
|
|
13
|
+
monthsValue: number;
|
|
14
|
+
}
|
|
15
|
+
export interface DepositCalculatorParams extends DepositCalculatorSourceBookParams, DepositCalculatorUserInputParams {
|
|
16
|
+
income: number;
|
|
17
|
+
finalSum: number;
|
|
18
|
+
}
|
|
19
|
+
export declare type DepositCalculatorData = {
|
|
20
|
+
rows: DepositCalculatorSourceBookParams[];
|
|
21
|
+
};
|
|
22
|
+
export declare const useDepositCalculatorParams: (userInputParams: DepositCalculatorUserInputParams, sourceBookDir?: string) => DepositCalculatorParams;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2
|
+
exports.useDepositCalculatorParams = void 0;
|
|
3
|
+
const constants_1 = require("./constants");
|
|
4
|
+
const useCalculatorParams_1 = require("./useCalculatorParams");
|
|
5
|
+
const useDepositCalculatorParams = (userInputParams, sourceBookDir) => {
|
|
6
|
+
const { isMonthlyInterestPayment, moneyValue } = userInputParams;
|
|
7
|
+
const data = (0, useCalculatorParams_1.useCalculatorParams)(sourceBookDir || constants_1.DEPOSIT_CALC_DEFAULT_DIR);
|
|
8
|
+
const depositCalculatorSourceBookParams = data?.rows.find((_) => isMonthlyInterestPayment === _.isMonthlyInterestPayment) ||
|
|
9
|
+
constants_1.DEFAULT_DEPOSIT_CALCULATOR_PARAMS;
|
|
10
|
+
const { rate } = depositCalculatorSourceBookParams;
|
|
11
|
+
const income = getDepositIncome(rate, userInputParams);
|
|
12
|
+
const finalSum = moneyValue + income;
|
|
13
|
+
return { ...depositCalculatorSourceBookParams, ...userInputParams, income, finalSum };
|
|
14
|
+
};
|
|
15
|
+
exports.useDepositCalculatorParams = useDepositCalculatorParams;
|
|
16
|
+
const getDepositIncome = (rate, userInputParams) => {
|
|
17
|
+
const { isMonthlyInterestPayment, moneyValue, monthsValue } = userInputParams;
|
|
18
|
+
if (isMonthlyInterestPayment) {
|
|
19
|
+
return Math.round(moneyValue * Math.pow((1200 + rate) / 1200, monthsValue) - moneyValue);
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
/*
|
|
23
|
+
Приблизительный расчёт, не учитывающий разницу в количестве дней в месяцах. Месяц принят за 30 дней, год за 365 дней.
|
|
24
|
+
*/
|
|
25
|
+
return Math.round((moneyValue * rate * 30 * monthsValue) / 365 / 100);
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=useDepositCalculatorParams.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDepositCalculatorParams.js","sourceRoot":"","sources":["../../../src/components/Calculator/useDepositCalculatorParams.ts"],"names":[],"mappings":";;AAAA,2CAA0F;AAC1F,+DAA4D;AA6BrD,MAAM,0BAA0B,GAAG,CACxC,eAAiD,EACjD,aAAsB,EACG,EAAE;IAC3B,MAAM,EAAE,wBAAwB,EAAE,UAAU,EAAE,GAAG,eAAe,CAAC;IAEjE,MAAM,IAAI,GAAG,IAAA,yCAAmB,EAC9B,aAAa,IAAI,oCAAwB,CAC1C,CAAC;IAEF,MAAM,iCAAiC,GACrC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,wBAAwB,KAAK,CAAC,CAAC,wBAAwB,CAAC;QAC/E,6CAAiC,CAAC;IAEpC,MAAM,EAAE,IAAI,EAAE,GAAG,iCAAiC,CAAC;IAEnD,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;IAErC,OAAO,EAAE,GAAG,iCAAiC,EAAE,GAAG,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;AACxF,CAAC,CAAC;AApBW,QAAA,0BAA0B,8BAoBrC;AAEF,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,eAAiD,EAAE,EAAE;IAC3F,MAAM,EAAE,wBAAwB,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,eAAe,CAAC;IAE9E,IAAI,wBAAwB,EAAE;QAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,EAAE,WAAW,CAAC,GAAG,UAAU,CAAC,CAAC;KAC1F;SAAM;QACL;;UAEE;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,GAAG,IAAI,GAAG,EAAE,GAAG,WAAW,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;KACvE;AACH,CAAC,CAAC"}
|
|
@@ -17,10 +17,10 @@ const BORDER_COLORS = {
|
|
|
17
17
|
};
|
|
18
18
|
exports.Header = (0, uni_jsx_1.JSX)(({ bgColor = 'bg-white', className = '', showSubMenu = true, ...rest }) => {
|
|
19
19
|
const router = (0, useRouter_1.useRouter)();
|
|
20
|
-
const { topItems, logo, defaultLocation } = (0, useSWRResource_1.useSWRResource)(ProjectSettings_1.projectSettings.SITEMAP || 'sitemap', rest.options?.page?.fallback);
|
|
20
|
+
const { topItems, logo, defaultLocation, officesLink } = (0, useSWRResource_1.useSWRResource)(ProjectSettings_1.projectSettings.SITEMAP || 'sitemap', rest.options?.page?.fallback);
|
|
21
21
|
const activeTopItem = showSubMenu ? getActiveItem(topItems, router) : null;
|
|
22
22
|
const topMenu = topItems?.map((_, i) => ((0, jsx_runtime_1.jsx)(TopItem_1.TopItem, { active: _ === activeTopItem, "aria-label": _.text, bgColor: bgColor, ..._ }, String(i))));
|
|
23
|
-
return ((0, jsx_runtime_1.jsx)(BlockWrapper_1.BlockWrapper, { tag: "header", className: `pt-6 px-20 ${bgColor} ${className} ${showSubMenu && activeTopItem?.items?.length ? 'pb-4' : 'pb-5'}`, ...rest, children: (0, jsx_runtime_1.jsxs)("div", { className: "container", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsx)(Logo_1.Logo, { className: "mr-8", bgColor: bgColor, logo: logo }), topMenu, (0, jsx_runtime_1.jsx)(HeaderSecondaryMenu_1.HeaderSecondaryMenu, { className: "ml-auto", defaultLocation: defaultLocation, bgColor: bgColor })] }), (0, jsx_runtime_1.jsx)("div", { className: `mt-6 h-[1px] ${BORDER_COLORS[bgColor]}` }), showSubMenu && activeTopItem?.items?.length ? ((0, jsx_runtime_1.jsx)(HeaderSubMenu_1.HeaderSubMenu, { subItems: activeTopItem.items, bgColor: bgColor })) : null] }) }));
|
|
23
|
+
return ((0, jsx_runtime_1.jsx)(BlockWrapper_1.BlockWrapper, { tag: "header", className: `pt-6 px-20 ${bgColor} ${className} ${showSubMenu && activeTopItem?.items?.length ? 'pb-4' : 'pb-5'}`, ...rest, children: (0, jsx_runtime_1.jsxs)("div", { className: "container", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsx)(Logo_1.Logo, { className: "mr-8", bgColor: bgColor, logo: logo }), topMenu, (0, jsx_runtime_1.jsx)(HeaderSecondaryMenu_1.HeaderSecondaryMenu, { className: "ml-auto", defaultLocation: defaultLocation, officesLink: officesLink, bgColor: bgColor })] }), (0, jsx_runtime_1.jsx)("div", { className: `mt-6 h-[1px] ${BORDER_COLORS[bgColor]}` }), showSubMenu && activeTopItem?.items?.length ? ((0, jsx_runtime_1.jsx)(HeaderSubMenu_1.HeaderSubMenu, { subItems: activeTopItem.items, bgColor: bgColor })) : null] }) }));
|
|
24
24
|
});
|
|
25
25
|
const getActiveItem = (topItems, router) => {
|
|
26
26
|
const [firstPortal] = topItems || [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Header.js","sourceRoot":"","sources":["../../../src/components/Header/Header.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,qDAA0D;AAI1D,2DAAwD;AACxD,4EAAyE;AAEzE,0EAAuE;AACvE,4DAAyD;AACzD,iDAA8C;AAC9C,0DAAuD;AAEvD,+DAA4D;AAC5D,mDAAgD;AAEhD,MAAM,aAAa,GAAmC;IACpD,UAAU,EAAE,iBAAiB;IAC7B,WAAW,EAAE,4BAA4B;CAC1C,CAAC;AAIW,QAAA,MAAM,GAAG,IAAA,aAAG,EACvB,CAAC,EAAE,OAAO,GAAG,UAAU,EAAE,SAAS,GAAG,EAAE,EAAE,WAAW,GAAG,IAAI,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;IACxE,MAAM,MAAM,GAAG,IAAA,qBAAS,GAAE,CAAC;IAE3B,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,IAAA,+BAAc,
|
|
1
|
+
{"version":3,"file":"Header.js","sourceRoot":"","sources":["../../../src/components/Header/Header.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,qDAA0D;AAI1D,2DAAwD;AACxD,4EAAyE;AAEzE,0EAAuE;AACvE,4DAAyD;AACzD,iDAA8C;AAC9C,0DAAuD;AAEvD,+DAA4D;AAC5D,mDAAgD;AAEhD,MAAM,aAAa,GAAmC;IACpD,UAAU,EAAE,iBAAiB;IAC7B,WAAW,EAAE,4BAA4B;CAC1C,CAAC;AAIW,QAAA,MAAM,GAAG,IAAA,aAAG,EACvB,CAAC,EAAE,OAAO,GAAG,UAAU,EAAE,SAAS,GAAG,EAAE,EAAE,WAAW,GAAG,IAAI,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;IACxE,MAAM,MAAM,GAAG,IAAA,qBAAS,GAAE,CAAC;IAE3B,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,WAAW,EAAE,GAAG,IAAA,+BAAc,EACrE,iCAAe,CAAC,OAAO,IAAI,SAAS,EACpC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,CAC7B,CAAC;IAEF,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAE3E,MAAM,OAAO,GAAG,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CACtC,uBAAC,iBAAO,IAEN,MAAM,EAAE,CAAC,KAAK,aAAa,gBACf,CAAC,CAAC,IAAI,EAClB,OAAO,EAAE,OAAO,KACZ,CAAC,IAJA,MAAM,CAAC,CAAC,CAAC,CAKd,CACH,CAAC,CAAC;IAEH,OAAO,CACL,uBAAC,2BAAY,IACX,GAAG,EAAC,QAAQ,EACZ,SAAS,EAAE,cAAc,OAAO,IAAI,SAAS,IAC3C,WAAW,IAAI,aAAa,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MACzD,EAAE,KACE,IAAI,YAER,iCAAK,SAAS,EAAC,WAAW,aACxB,iCAAK,SAAS,EAAC,mBAAmB,aAChC,uBAAC,WAAI,IAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,GAAI,EACtD,OAAO,EACR,uBAAC,yCAAmB,IAClB,SAAS,EAAC,SAAS,EACnB,eAAe,EAAE,eAAe,EAChC,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,OAAO,GAChB,IACE,EACN,gCAAK,SAAS,EAAE,gBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE,GAAI,EAC3D,WAAW,IAAI,aAAa,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAC7C,uBAAC,6BAAa,IAAC,QAAQ,EAAE,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,GAAI,CACnE,CAAC,CAAC,CAAC,IAAI,IACJ,GACO,CAChB,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,QAAmC,EAAE,MAAc,EAAE,EAAE;IAC5E,MAAM,CAAC,WAAW,CAAC,GAAG,QAAQ,IAAI,EAAE,CAAC;IAErC,0GAA0G;IAC1G,OAAO,QAAQ,EAAE,IAAI,CAAC,IAAA,iCAAe,EAAC,MAAM,CAAC,CAAC,IAAI,WAAW,CAAC;AAChE,CAAC,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { BgColorVersion } from '../../model/BgColorVersion';
|
|
2
2
|
interface HeaderSecondaryMenuContent {
|
|
3
3
|
defaultLocation?: string;
|
|
4
|
+
officesLink?: string;
|
|
4
5
|
bgColor?: BgColorVersion;
|
|
5
6
|
}
|
|
6
7
|
export interface HeaderSecondaryMenuProps extends HeaderSecondaryMenuContent {
|
|
@@ -18,8 +18,8 @@ const LINKS_ICON_VERSION_MAP = {
|
|
|
18
18
|
'bg-white': 'black',
|
|
19
19
|
transparent: 'white',
|
|
20
20
|
};
|
|
21
|
-
exports.HeaderSecondaryMenu = (0, uni_jsx_1.JSX)(({ className, defaultLocation = 'Москва', bgColor = 'bg-white' }) => {
|
|
21
|
+
exports.HeaderSecondaryMenu = (0, uni_jsx_1.JSX)(({ className, officesLink, defaultLocation = 'Москва', bgColor = 'bg-white' }) => {
|
|
22
22
|
const [city, getCity] = (0, useGeolocation_1.useGeolocation)(defaultLocation);
|
|
23
|
-
return ((0, jsx_runtime_1.jsxs)("div", { className: `flex items-center ${className || ''}`, children: [(0, jsx_runtime_1.jsx)(TopItem_1.TopItem, { className: "mr-5", flat: true, href: "#", text: city, ariaLabel: "\u041C\u0435\u0441\u0442\u043E\u043F\u043E\u043B\u043E\u0436\u0435\u043D\u0438\u0435", onClick: getCity, bgColor: bgColor }), (0, jsx_runtime_1.jsx)(TopItem_1.TopItem, { className: "mr-7", flat: true, href:
|
|
23
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: `flex items-center ${className || ''}`, children: [(0, jsx_runtime_1.jsx)(TopItem_1.TopItem, { className: "mr-5", flat: true, href: "#", text: city, ariaLabel: "\u041C\u0435\u0441\u0442\u043E\u043F\u043E\u043B\u043E\u0436\u0435\u043D\u0438\u0435", onClick: getCity, bgColor: bgColor }), officesLink ? ((0, jsx_runtime_1.jsx)(TopItem_1.TopItem, { className: "mr-7", flat: true, href: officesLink, text: "\u041E\u0444\u0438\u0441\u044B \u0438 \u0431\u0430\u043D\u043A\u043E\u043C\u0430\u0442\u044B", ariaLabel: "\u0421\u043F\u0438\u0441\u043E\u043A \u0432\u0441\u0435\u0445 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0445 \u043E\u0444\u0438\u0441\u043E\u0432 \u0438 \u0431\u0430\u043D\u043A\u043E\u043C\u0430\u0442\u043E\u0432", bgColor: bgColor })) : null, (0, jsx_runtime_1.jsx)(HeaderSecondaryMenuButton_1.HeaderSecondaryMenuButton, { className: `mr-5 group ${COLORS_MAP[bgColor]}`, ariaLabel: "\u041F\u043E\u0438\u0441\u043A \u043F\u043E \u0441\u0430\u0439\u0442\u0443", children: (0, jsx_runtime_1.jsx)(Img_1.Img, { image: { icon: 'LoupeIcon', iconVersion: LINKS_ICON_VERSION_MAP[bgColor] }, className: "h-full pointer-events-none", imageClassName: "group-hover:text-primary-hover group-hover:invert-0 pointer-events-none", asSVG: true }) }), (0, jsx_runtime_1.jsx)(HeaderSecondaryMenuButton_1.HeaderSecondaryMenuButton, { className: `${LINKS_COLORS_MAP[bgColor]} group min-w-[32px] min-h-[32px]`, ariaLabel: "\u0414\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0435 \u0441\u0441\u044B\u043B\u043A\u0438", children: (0, jsx_runtime_1.jsx)(Img_1.Img, { image: { icon: 'GridIcon', iconVersion: LINKS_ICON_VERSION_MAP[bgColor] }, className: "h-full bg-main-divider/20 rounded-full pointer-events-none", imageClassName: "group-hover:text-primary-hover group-hover:invert-0", asSVG: true }) })] }));
|
|
24
24
|
});
|
|
25
25
|
//# sourceMappingURL=HeaderSecondaryMenu.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeaderSecondaryMenu.js","sourceRoot":"","sources":["../../../src/components/Header/HeaderSecondaryMenu.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,+DAA4D;AAG5D,8CAA2C;AAC3C,0DAAuD;AACvD,2EAAwE;
|
|
1
|
+
{"version":3,"file":"HeaderSecondaryMenu.js","sourceRoot":"","sources":["../../../src/components/Header/HeaderSecondaryMenu.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,+DAA4D;AAG5D,8CAA2C;AAC3C,0DAAuD;AACvD,2EAAwE;AAYxE,MAAM,UAAU,GAAmC;IACjD,UAAU,EAAE,2CAA2C;IACvD,WAAW,EAAE,YAAY;CAC1B,CAAC;AACF,MAAM,gBAAgB,GAAmC;IACvD,UAAU,EAAE,iDAAiD;IAC7D,WAAW,EAAE,YAAY;CAC1B,CAAC;AACF,MAAM,sBAAsB,GAAwC;IAClE,UAAU,EAAE,OAAO;IACnB,WAAW,EAAE,OAAO;CACrB,CAAC;AAEW,QAAA,mBAAmB,GAAG,IAAA,aAAG,EACpC,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,GAAG,QAAQ,EAAE,OAAO,GAAG,UAAU,EAAE,EAAE,EAAE;IAC/E,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,IAAA,+BAAc,EAAC,eAAe,CAAC,CAAC;IAExD,OAAO,CACL,iCAAK,SAAS,EAAE,qBAAqB,SAAS,IAAI,EAAE,EAAE,aACpD,uBAAC,iBAAO,IACN,SAAS,EAAC,MAAM,EAChB,IAAI,EAAE,IAAI,EACV,IAAI,EAAC,GAAG,EACR,IAAI,EAAE,IAAI,EACV,SAAS,EAAC,sFAAgB,EAC1B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,GAChB,EACD,WAAW,CAAC,CAAC,CAAC,CACb,uBAAC,iBAAO,IACN,SAAS,EAAC,MAAM,EAChB,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,WAAW,EACjB,IAAI,EAAC,8FAAmB,EACxB,SAAS,EAAC,+NAA2C,EACrD,OAAO,EAAE,OAAO,GAChB,CACH,CAAC,CAAC,CAAC,IAAI,EACR,uBAAC,qDAAyB,IACxB,SAAS,EAAE,cAAc,UAAU,CAAC,OAAO,CAAC,EAAE,EAC9C,SAAS,EAAC,4EAAgB,YAE1B,uBAAC,SAAG,IACF,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,sBAAsB,CAAC,OAAO,CAAC,EAAE,EAC1E,SAAS,EAAC,4BAA4B,EACtC,cAAc,EAAC,yEAAyE,EACxF,KAAK,SACL,GACwB,EAC5B,uBAAC,qDAAyB,IACxB,SAAS,EAAE,GAAG,gBAAgB,CAAC,OAAO,CAAC,kCAAkC,EACzE,SAAS,EAAC,2HAAuB,YAEjC,uBAAC,SAAG,IACF,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,sBAAsB,CAAC,OAAO,CAAC,EAAE,EACzE,SAAS,EAAC,4DAA4D,EACtE,cAAc,EAAC,qDAAqD,EACpE,KAAK,SACL,GACwB,IACxB,CACP,CAAC;AACJ,CAAC,CACF,CAAC"}
|
|
@@ -10,7 +10,7 @@ const FoldableSection_1 = require("../../ui-kit/Foldable/FoldableSection");
|
|
|
10
10
|
const icons = ['ArrowDownIcon', 'ArrowUpIcon'];
|
|
11
11
|
exports.OtherProductsItem = (0, uni_jsx_1.JSX)(({ className, label = '', isUnfolded: unfoldedByDefault, ...rest }) => {
|
|
12
12
|
const { colorPalette } = (0, getParentBlockContent_1.getParentBlockContent)(rest.options, {});
|
|
13
|
-
return ((0, jsx_runtime_1.jsx)("div", { className: `border-0 border-b border-solid border-main-divider ${className}`, children: (0, jsx_runtime_1.jsx)(Foldable_1.Foldable, { unfoldedByDefault: unfoldedByDefault, renderFoldableSection: ({ isUnfolded }) => ((0, jsx_runtime_1.jsx)("div", { className: "box-border", children: (0, jsx_runtime_1.jsx)(FoldableSection_1.FoldableSection, { className: "grid grid-cols-12 gap-1 border-box", isUnfolded: isUnfolded, children: (0, renderChildren_1.renderChildren)(rest) }) })), renderFoldButton: ({ isUnfolded, onToggle }) => ((0, jsx_runtime_1.jsx)(DefaultFoldButton_1.DefaultFoldButton, { label: label, icon: icons[Number(isUnfolded)], dataTheme: rest.options?.page?.colorPalette
|
|
13
|
+
return ((0, jsx_runtime_1.jsx)("div", { className: `border-0 border-b border-solid border-main-divider ${className}`, children: (0, jsx_runtime_1.jsx)(Foldable_1.Foldable, { unfoldedByDefault: unfoldedByDefault, renderFoldableSection: ({ isUnfolded }) => ((0, jsx_runtime_1.jsx)("div", { className: "box-border", children: (0, jsx_runtime_1.jsx)(FoldableSection_1.FoldableSection, { className: "grid grid-cols-12 gap-1 border-box", isUnfolded: isUnfolded, children: (0, renderChildren_1.renderChildren)(rest) }) })), renderFoldButton: ({ isUnfolded, onToggle }) => ((0, jsx_runtime_1.jsx)(DefaultFoldButton_1.DefaultFoldButton, { label: label, icon: icons[Number(isUnfolded)], dataTheme: colorPalette || rest.options?.page?.colorPalette, onClick: onToggle })) }) }));
|
|
14
14
|
});
|
|
15
15
|
exports.OtherProductsItem.childrenTypes = []; // All types of blocks are suitable
|
|
16
16
|
//# sourceMappingURL=OtherProductsItem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OtherProductsItem.js","sourceRoot":"","sources":["../../../src/components/OtherProductsItem/OtherProductsItem.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,qFAAkF;AAClF,uEAAoE;AAEpE,+EAA4E;AAC5E,6DAA0D;AAC1D,2EAAwE;AAOxE,MAAM,KAAK,GAAe,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;AAE9C,QAAA,iBAAiB,GAAqC,IAAA,aAAG,EACpE,CAAC,EAAE,SAAS,EAAE,KAAK,GAAG,EAAE,EAAE,UAAU,EAAE,iBAAiB,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;IACpE,MAAM,EAAE,YAAY,EAAE,GAAG,IAAA,6CAAqB,EAAC,IAAI,CAAC,OAAO,EAAE,EAA0B,CAAC,CAAC;IAEzF,OAAO,CACL,gCAAK,SAAS,EAAE,sDAAsD,SAAS,EAAE,YAC/E,uBAAC,mBAAQ,IACP,iBAAiB,EAAE,iBAAiB,EACpC,qBAAqB,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CACzC,gCAAK,SAAS,EAAC,YAAY,YACzB,uBAAC,iCAAe,IACd,SAAS,EAAC,oCAAoC,EAC9C,UAAU,EAAE,UAAU,YAErB,IAAA,+BAAc,EAAC,IAAI,CAAC,GACL,GACd,CACP,EACD,gBAAgB,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAC9C,uBAAC,qCAAiB,IAChB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAC/B,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"OtherProductsItem.js","sourceRoot":"","sources":["../../../src/components/OtherProductsItem/OtherProductsItem.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,qFAAkF;AAClF,uEAAoE;AAEpE,+EAA4E;AAC5E,6DAA0D;AAC1D,2EAAwE;AAOxE,MAAM,KAAK,GAAe,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;AAE9C,QAAA,iBAAiB,GAAqC,IAAA,aAAG,EACpE,CAAC,EAAE,SAAS,EAAE,KAAK,GAAG,EAAE,EAAE,UAAU,EAAE,iBAAiB,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;IACpE,MAAM,EAAE,YAAY,EAAE,GAAG,IAAA,6CAAqB,EAAC,IAAI,CAAC,OAAO,EAAE,EAA0B,CAAC,CAAC;IAEzF,OAAO,CACL,gCAAK,SAAS,EAAE,sDAAsD,SAAS,EAAE,YAC/E,uBAAC,mBAAQ,IACP,iBAAiB,EAAE,iBAAiB,EACpC,qBAAqB,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CACzC,gCAAK,SAAS,EAAC,YAAY,YACzB,uBAAC,iCAAe,IACd,SAAS,EAAC,oCAAoC,EAC9C,UAAU,EAAE,UAAU,YAErB,IAAA,+BAAc,EAAC,IAAI,CAAC,GACL,GACd,CACP,EACD,gBAAgB,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAC9C,uBAAC,qCAAiB,IAChB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAC/B,SAAS,EAAE,YAAY,IAAI,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,YAAY,EAC3D,OAAO,EAAE,QAAQ,GACjB,CACH,GACD,GACE,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,yBAAiB,CAAC,aAAa,GAAG,EAAE,CAAC,CAAC,mCAAmC"}
|
|
@@ -23,13 +23,15 @@ const backgroundStyleMap = {
|
|
|
23
23
|
primary: 'bg-white',
|
|
24
24
|
secondary: 'bg-primary-main',
|
|
25
25
|
};
|
|
26
|
-
exports.VerticalLayout = (0, uni_jsx_1.JSX)(({ className = '', gap = '', align
|
|
26
|
+
exports.VerticalLayout = (0, uni_jsx_1.JSX)(({ className = '', gap = '', align, version = 'transparent', ...rest }) => ((0, jsx_runtime_1.jsx)(BlockWrapper_1.BlockWrapper, { className: [
|
|
27
27
|
'flex flex-col',
|
|
28
28
|
gapStyleMap[gap],
|
|
29
|
-
alignStyle[align],
|
|
29
|
+
align && alignStyle[align],
|
|
30
30
|
backgroundStyleMap[version],
|
|
31
31
|
className,
|
|
32
|
-
]
|
|
32
|
+
]
|
|
33
|
+
.filter(Boolean)
|
|
34
|
+
.join(' '), ...rest, children: (0, renderChildren_1.renderChildren)(rest) })));
|
|
33
35
|
exports.VerticalLayout.childrenTypes = {
|
|
34
36
|
exclude: ['VerticalLayout'],
|
|
35
37
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VerticalLayout.js","sourceRoot":"","sources":["../../../src/components/VerticalLayout/VerticalLayout.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,uEAAoE;AAIpE,4DAAyD;AAKzD,MAAM,UAAU,GAA8B;IAC5C,IAAI,EAAE,aAAa;IACnB,MAAM,EAAE,cAAc;IACtB,KAAK,EAAE,WAAW;CACnB,CAAC;AAEF,MAAM,WAAW,GAA+B;IAC9C,GAAG,EAAE,QAAQ;IACb,EAAE,EAAE,OAAO;IACX,CAAC,EAAE,OAAO;IACV,CAAC,EAAE,OAAO;IACV,CAAC,EAAE,OAAO;IACV,EAAE,EAAE,OAAO;IACX,EAAE,EAAE,EAAE;CACP,CAAC;AAEF,MAAM,kBAAkB,GAAgD;IACtE,WAAW,EAAE,EAAE;IACf,OAAO,EAAE,UAAU;IACnB,SAAS,EAAE,iBAAiB;CAC7B,CAAC;AAEW,QAAA,cAAc,GAAkC,IAAA,aAAG,EAC9D,CAAC,EAAE,SAAS,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"VerticalLayout.js","sourceRoot":"","sources":["../../../src/components/VerticalLayout/VerticalLayout.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,uEAAoE;AAIpE,4DAAyD;AAKzD,MAAM,UAAU,GAA8B;IAC5C,IAAI,EAAE,aAAa;IACnB,MAAM,EAAE,cAAc;IACtB,KAAK,EAAE,WAAW;CACnB,CAAC;AAEF,MAAM,WAAW,GAA+B;IAC9C,GAAG,EAAE,QAAQ;IACb,EAAE,EAAE,OAAO;IACX,CAAC,EAAE,OAAO;IACV,CAAC,EAAE,OAAO;IACV,CAAC,EAAE,OAAO;IACV,EAAE,EAAE,OAAO;IACX,EAAE,EAAE,EAAE;CACP,CAAC;AAEF,MAAM,kBAAkB,GAAgD;IACtE,WAAW,EAAE,EAAE;IACf,OAAO,EAAE,UAAU;IACnB,SAAS,EAAE,iBAAiB;CAC7B,CAAC;AAEW,QAAA,cAAc,GAAkC,IAAA,aAAG,EAC9D,CAAC,EAAE,SAAS,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,KAAK,EAAE,OAAO,GAAG,aAAa,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,CACzE,uBAAC,2BAAY,IACX,SAAS,EAAE;QACT,eAAe;QACf,WAAW,CAAC,GAAG,CAAC;QAChB,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC;QAC1B,kBAAkB,CAAC,OAAO,CAAC;QAC3B,SAAS;KACV;SACE,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,GAAG,CAAC,KACR,IAAI,YAEP,IAAA,+BAAc,EAAC,IAAI,CAAC,GACR,CAChB,CACF,CAAC;AAEF,sBAAc,CAAC,aAAa,GAAG;IAC7B,OAAO,EAAE,CAAC,gBAAgB,CAAC;CAC5B,CAAC"}
|
|
@@ -17,13 +17,12 @@ export interface DispositionItem extends LinkProps {
|
|
|
17
17
|
icon?: Picture;
|
|
18
18
|
}
|
|
19
19
|
export interface SitemapDataProps {
|
|
20
|
-
/** @title Основное меню */
|
|
21
20
|
topItems?: TopMenuItem[];
|
|
22
|
-
/** @title Дополнительное меню */
|
|
23
21
|
dispositions?: DispositionItem[];
|
|
24
22
|
logo?: {
|
|
25
23
|
image?: Picture;
|
|
26
24
|
title?: string;
|
|
27
25
|
};
|
|
28
26
|
defaultLocation?: string;
|
|
27
|
+
officesLink?: string;
|
|
29
28
|
}
|
|
@@ -4,12 +4,13 @@ import { JSX } from '@redneckz/uni-jsx';
|
|
|
4
4
|
import { useState } from '@redneckz/uni-jsx/lib/hooks';
|
|
5
5
|
import { RadioButtonGroup } from '../../ui-kit/RadioButtonGroup/RadioButtonGroup.js';
|
|
6
6
|
import { CalculatorValueBlock } from './CalculatorValueBlock.js';
|
|
7
|
-
import {
|
|
7
|
+
import { DEFAULT_MONTHS, DEFAULT_SUM } from './constants.js';
|
|
8
8
|
import { Rate } from './Rate.js';
|
|
9
9
|
import { renderButtonSection } from './renderButtonSection.js';
|
|
10
10
|
import { renderFootnote } from './renderFootnote.js';
|
|
11
11
|
import { renderMonthsInput } from './renderMonthsInput.js';
|
|
12
12
|
import { renderWantedSumInput } from './renderWantedSumInput.js';
|
|
13
|
+
import { useDepositCalculatorParams } from './useDepositCalculatorParams.js';
|
|
13
14
|
const EVERY_MONTH = 'everyMonth';
|
|
14
15
|
const AT_END_TERM = 'atEndTerm';
|
|
15
16
|
const depositTypeItems = [
|
|
@@ -22,20 +23,21 @@ const depositTypeItems = [
|
|
|
22
23
|
text: 'В конце срока',
|
|
23
24
|
},
|
|
24
25
|
];
|
|
25
|
-
export const DepositCalculatorForm = JSX(({ className = '',
|
|
26
|
+
export const DepositCalculatorForm = JSX(({ className = '', sourceBookDir, buttons, footnote }) => {
|
|
26
27
|
const [moneyValue, setMoneyValue] = useState(DEFAULT_SUM);
|
|
27
28
|
const [monthsValue, setMonthsValue] = useState(DEFAULT_MONTHS);
|
|
28
|
-
const [
|
|
29
|
-
const
|
|
30
|
-
|
|
29
|
+
const [isMonthlyInterestPayment, toggleIsMonthlyInterestPayment] = useState(false);
|
|
30
|
+
const userInputParams = {
|
|
31
|
+
moneyValue,
|
|
32
|
+
monthsValue,
|
|
33
|
+
isMonthlyInterestPayment,
|
|
34
|
+
};
|
|
35
|
+
const calculatorParams = useDepositCalculatorParams(userInputParams, sourceBookDir);
|
|
36
|
+
const { income, finalSum, rate } = calculatorParams;
|
|
31
37
|
return (_jsxs("section", { className: className, children: [_jsxs("div", { className: "w-[468px]", children: [renderWantedSumInput('Сумма вклада, ₽', {
|
|
32
|
-
|
|
33
|
-
minSum: DEFAULT_MIN_SUM,
|
|
34
|
-
maxSum: DEFAULT_MAX_SUM,
|
|
38
|
+
...calculatorParams,
|
|
35
39
|
}, setMoneyValue), renderMonthsInput('Срок вклада, месяцев', {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
monthsValue,
|
|
39
|
-
}, setMonthsValue)] }), _jsx(Rate, { rate: rate || 1, rateBlockClassName: "tracking-[-25px]", unit: "%" }), _jsxs("div", { className: "w-full max-w-[350px]", children: [income ? (_jsx(CalculatorValueBlock, { title: "\u0414\u043E\u0445\u043E\u0434 \u043F\u043E \u0432\u043A\u043B\u0430\u0434\u0443", value: income, postfix: "\u20BD", prefix: "+" })) : null, finallySum ? (_jsx(CalculatorValueBlock, { title: "\u0421\u0443\u043C\u043C\u0430 \u0432 \u043A\u043E\u043D\u0446\u0435 \u0441\u0440\u043E\u043A\u0430", value: finallySum, postfix: "\u20BD" })) : null, _jsx(RadioButtonGroup, { items: depositTypeItems, checkedItem: isEveryMonth ? EVERY_MONTH : AT_END_TERM, onChange: (text) => toggleIsEveryMonth(text === EVERY_MONTH) }), renderButtonSection(buttons), renderFootnote(footnote)] })] }));
|
|
40
|
+
...calculatorParams,
|
|
41
|
+
}, setMonthsValue)] }), _jsx(Rate, { rate: rate || 1, rateBlockClassName: "tracking-[-25px]", unit: "%" }), _jsxs("div", { className: "w-full max-w-[350px]", children: [income ? (_jsx(CalculatorValueBlock, { title: "\u0414\u043E\u0445\u043E\u0434 \u043F\u043E \u0432\u043A\u043B\u0430\u0434\u0443", value: income, postfix: "\u20BD", prefix: "+" })) : null, finalSum ? (_jsx(CalculatorValueBlock, { title: "\u0421\u0443\u043C\u043C\u0430 \u0432 \u043A\u043E\u043D\u0446\u0435 \u0441\u0440\u043E\u043A\u0430", value: finalSum, postfix: "\u20BD" })) : null, _jsx(RadioButtonGroup, { items: depositTypeItems, checkedItem: isMonthlyInterestPayment ? EVERY_MONTH : AT_END_TERM, onChange: (text) => toggleIsMonthlyInterestPayment(text === EVERY_MONTH) }), renderButtonSection(buttons), renderFootnote(footnote)] })] }));
|
|
40
42
|
});
|
|
41
43
|
//# sourceMappingURL=DepositCalculatorForm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DepositCalculatorForm.js","sourceRoot":"","sources":["../../../src/components/Calculator/DepositCalculatorForm.tsx"],"names":[],"mappings":";AAAA,OAAO;AAEP,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAC;AAElF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,
|
|
1
|
+
{"version":3,"file":"DepositCalculatorForm.js","sourceRoot":"","sources":["../../../src/components/Calculator/DepositCalculatorForm.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { BonusCalculatorSourceBookParams } from './useBonusCalculatorParams';
|
|
2
2
|
import { CreditCalculatorSourceBookParams } from './useCreditCalculatorParams';
|
|
3
|
+
import { DepositCalculatorSourceBookParams } from './useDepositCalculatorParams';
|
|
3
4
|
export declare const DEFAULT_MIN_SUM = 60000;
|
|
4
5
|
export declare const DEFAULT_MAX_SUM = 2000000;
|
|
5
6
|
export declare const DEFAULT_SUM: number;
|
|
@@ -12,5 +13,7 @@ export declare const DEFAULT_CREDIT_CALCULATOR_PARAMS: CreditCalculatorSourceBoo
|
|
|
12
13
|
export declare const DEFAULT_TRAVEL_MIN_SUM = 6000;
|
|
13
14
|
export declare const DEFAULT_REST_MIN_SUM = 6000;
|
|
14
15
|
export declare const DEFAULT_BONUS_CALCULATOR_PARAMS: BonusCalculatorSourceBookParams;
|
|
16
|
+
export declare const DEFAULT_DEPOSIT_CALCULATOR_PARAMS: DepositCalculatorSourceBookParams;
|
|
15
17
|
export declare const CREDIT_CALC_DEFAULT_DIR = "credit-calculator-data";
|
|
16
18
|
export declare const BONUS_CALC_DEFAULT_DIR = "bonus-calculator-data";
|
|
19
|
+
export declare const DEPOSIT_CALC_DEFAULT_DIR = "deposit-calculator-data";
|
|
@@ -32,6 +32,15 @@ export const DEFAULT_BONUS_CALCULATOR_PARAMS = {
|
|
|
32
32
|
travelBonusRate: 0.015,
|
|
33
33
|
restBonusRate: 0.01,
|
|
34
34
|
};
|
|
35
|
+
export const DEFAULT_DEPOSIT_CALCULATOR_PARAMS = {
|
|
36
|
+
minSum: 50000,
|
|
37
|
+
maxSum: 5000000,
|
|
38
|
+
minMonths: 2,
|
|
39
|
+
maxMonths: 120,
|
|
40
|
+
rate: 5.9,
|
|
41
|
+
isMonthlyInterestPayment: true,
|
|
42
|
+
};
|
|
35
43
|
export const CREDIT_CALC_DEFAULT_DIR = 'credit-calculator-data';
|
|
36
44
|
export const BONUS_CALC_DEFAULT_DIR = 'bonus-calculator-data';
|
|
45
|
+
export const DEPOSIT_CALC_DEFAULT_DIR = 'deposit-calculator-data';
|
|
37
46
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/components/Calculator/constants.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/components/Calculator/constants.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC;AACrC,MAAM,CAAC,MAAM,eAAe,GAAG,OAAO,CAAC;AACvC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,eAAe,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;AACnE,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AACrC,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AACrC,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,kBAAkB,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC;AAExF,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC;AAEjC,MAAM,CAAC,MAAM,qBAAqB,GAAG,cAAc,GAAG,GAAG,CAAC;AAE1D,MAAM,CAAC,MAAM,gCAAgC,GAAqC;IAChF,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,eAAe;IACvB,SAAS,EAAE,kBAAkB;IAC7B,SAAS,EAAE,kBAAkB;IAC7B,eAAe,EAAE,EAAE;IACnB,YAAY,EAAE,CAAC;IACf,cAAc,EAAE,IAAI;IACpB,eAAe,EAAE,IAAI;IACrB,WAAW,EAAE,IAAI;IACjB,SAAS,EAAE,MAAM;CAClB,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAC3C,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC;AAEzC,MAAM,CAAC,MAAM,+BAA+B,GAAoC;IAC9E,YAAY,EAAE,IAAI;IAClB,YAAY,EAAE,MAAM;IACpB,WAAW,EAAE,IAAI;IACjB,WAAW,EAAE,MAAM;IACnB,QAAQ,EAAE,IAAI;IACd,aAAa,EAAE,CAAC;IAChB,mBAAmB,EAAE,KAAK;IAC1B,iBAAiB,EAAE,IAAI;IACvB,eAAe,EAAE,KAAK;IACtB,aAAa,EAAE,IAAI;CACpB,CAAC;AAEF,MAAM,CAAC,MAAM,iCAAiC,GAAsC;IAClF,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,OAAO;IACf,SAAS,EAAE,CAAC;IACZ,SAAS,EAAE,GAAG;IACd,IAAI,EAAE,GAAG;IACT,wBAAwB,EAAE,IAAI;CAC/B,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,wBAAwB,CAAC;AAChE,MAAM,CAAC,MAAM,sBAAsB,GAAG,uBAAuB,CAAC;AAC9D,MAAM,CAAC,MAAM,wBAAwB,GAAG,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export interface CommonDepositParams {
|
|
2
|
+
isMonthlyInterestPayment: boolean;
|
|
3
|
+
}
|
|
4
|
+
export interface DepositCalculatorSourceBookParams extends CommonDepositParams {
|
|
5
|
+
minSum: number;
|
|
6
|
+
maxSum: number;
|
|
7
|
+
minMonths: number;
|
|
8
|
+
maxMonths: number;
|
|
9
|
+
rate: number;
|
|
10
|
+
}
|
|
11
|
+
export interface DepositCalculatorUserInputParams extends CommonDepositParams {
|
|
12
|
+
moneyValue: number;
|
|
13
|
+
monthsValue: number;
|
|
14
|
+
}
|
|
15
|
+
export interface DepositCalculatorParams extends DepositCalculatorSourceBookParams, DepositCalculatorUserInputParams {
|
|
16
|
+
income: number;
|
|
17
|
+
finalSum: number;
|
|
18
|
+
}
|
|
19
|
+
export declare type DepositCalculatorData = {
|
|
20
|
+
rows: DepositCalculatorSourceBookParams[];
|
|
21
|
+
};
|
|
22
|
+
export declare const useDepositCalculatorParams: (userInputParams: DepositCalculatorUserInputParams, sourceBookDir?: string) => DepositCalculatorParams;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { DEFAULT_DEPOSIT_CALCULATOR_PARAMS, DEPOSIT_CALC_DEFAULT_DIR } from './constants.js';
|
|
2
|
+
import { useCalculatorParams } from './useCalculatorParams.js';
|
|
3
|
+
export const useDepositCalculatorParams = (userInputParams, sourceBookDir) => {
|
|
4
|
+
const { isMonthlyInterestPayment, moneyValue } = userInputParams;
|
|
5
|
+
const data = useCalculatorParams(sourceBookDir || DEPOSIT_CALC_DEFAULT_DIR);
|
|
6
|
+
const depositCalculatorSourceBookParams = data?.rows.find((_) => isMonthlyInterestPayment === _.isMonthlyInterestPayment) ||
|
|
7
|
+
DEFAULT_DEPOSIT_CALCULATOR_PARAMS;
|
|
8
|
+
const { rate } = depositCalculatorSourceBookParams;
|
|
9
|
+
const income = getDepositIncome(rate, userInputParams);
|
|
10
|
+
const finalSum = moneyValue + income;
|
|
11
|
+
return { ...depositCalculatorSourceBookParams, ...userInputParams, income, finalSum };
|
|
12
|
+
};
|
|
13
|
+
const getDepositIncome = (rate, userInputParams) => {
|
|
14
|
+
const { isMonthlyInterestPayment, moneyValue, monthsValue } = userInputParams;
|
|
15
|
+
if (isMonthlyInterestPayment) {
|
|
16
|
+
return Math.round(moneyValue * Math.pow((1200 + rate) / 1200, monthsValue) - moneyValue);
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
/*
|
|
20
|
+
Приблизительный расчёт, не учитывающий разницу в количестве дней в месяцах. Месяц принят за 30 дней, год за 365 дней.
|
|
21
|
+
*/
|
|
22
|
+
return Math.round((moneyValue * rate * 30 * monthsValue) / 365 / 100);
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=useDepositCalculatorParams.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDepositCalculatorParams.js","sourceRoot":"","sources":["../../../src/components/Calculator/useDepositCalculatorParams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAC1F,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AA6B5D,MAAM,CAAC,MAAM,0BAA0B,GAAG,CACxC,eAAiD,EACjD,aAAsB,EACG,EAAE;IAC3B,MAAM,EAAE,wBAAwB,EAAE,UAAU,EAAE,GAAG,eAAe,CAAC;IAEjE,MAAM,IAAI,GAAG,mBAAmB,CAC9B,aAAa,IAAI,wBAAwB,CAC1C,CAAC;IAEF,MAAM,iCAAiC,GACrC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,wBAAwB,KAAK,CAAC,CAAC,wBAAwB,CAAC;QAC/E,iCAAiC,CAAC;IAEpC,MAAM,EAAE,IAAI,EAAE,GAAG,iCAAiC,CAAC;IAEnD,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;IAErC,OAAO,EAAE,GAAG,iCAAiC,EAAE,GAAG,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;AACxF,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,eAAiD,EAAE,EAAE;IAC3F,MAAM,EAAE,wBAAwB,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,eAAe,CAAC;IAE9E,IAAI,wBAAwB,EAAE;QAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,EAAE,WAAW,CAAC,GAAG,UAAU,CAAC,CAAC;KAC1F;SAAM;QACL;;UAEE;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,GAAG,IAAI,GAAG,EAAE,GAAG,WAAW,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;KACvE;AACH,CAAC,CAAC"}
|
|
@@ -15,10 +15,10 @@ const BORDER_COLORS = {
|
|
|
15
15
|
};
|
|
16
16
|
export const Header = JSX(({ bgColor = 'bg-white', className = '', showSubMenu = true, ...rest }) => {
|
|
17
17
|
const router = useRouter();
|
|
18
|
-
const { topItems, logo, defaultLocation } = useSWRResource(projectSettings.SITEMAP || 'sitemap', rest.options?.page?.fallback);
|
|
18
|
+
const { topItems, logo, defaultLocation, officesLink } = useSWRResource(projectSettings.SITEMAP || 'sitemap', rest.options?.page?.fallback);
|
|
19
19
|
const activeTopItem = showSubMenu ? getActiveItem(topItems, router) : null;
|
|
20
20
|
const topMenu = topItems?.map((_, i) => (_jsx(TopItem, { active: _ === activeTopItem, "aria-label": _.text, bgColor: bgColor, ..._ }, String(i))));
|
|
21
|
-
return (_jsx(BlockWrapper, { tag: "header", className: `pt-6 px-20 ${bgColor} ${className} ${showSubMenu && activeTopItem?.items?.length ? 'pb-4' : 'pb-5'}`, ...rest, children: _jsxs("div", { className: "container", children: [_jsxs("div", { className: "flex items-center", children: [_jsx(Logo, { className: "mr-8", bgColor: bgColor, logo: logo }), topMenu, _jsx(HeaderSecondaryMenu, { className: "ml-auto", defaultLocation: defaultLocation, bgColor: bgColor })] }), _jsx("div", { className: `mt-6 h-[1px] ${BORDER_COLORS[bgColor]}` }), showSubMenu && activeTopItem?.items?.length ? (_jsx(HeaderSubMenu, { subItems: activeTopItem.items, bgColor: bgColor })) : null] }) }));
|
|
21
|
+
return (_jsx(BlockWrapper, { tag: "header", className: `pt-6 px-20 ${bgColor} ${className} ${showSubMenu && activeTopItem?.items?.length ? 'pb-4' : 'pb-5'}`, ...rest, children: _jsxs("div", { className: "container", children: [_jsxs("div", { className: "flex items-center", children: [_jsx(Logo, { className: "mr-8", bgColor: bgColor, logo: logo }), topMenu, _jsx(HeaderSecondaryMenu, { className: "ml-auto", defaultLocation: defaultLocation, officesLink: officesLink, bgColor: bgColor })] }), _jsx("div", { className: `mt-6 h-[1px] ${BORDER_COLORS[bgColor]}` }), showSubMenu && activeTopItem?.items?.length ? (_jsx(HeaderSubMenu, { subItems: activeTopItem.items, bgColor: bgColor })) : null] }) }));
|
|
22
22
|
});
|
|
23
23
|
const getActiveItem = (topItems, router) => {
|
|
24
24
|
const [firstPortal] = topItems || [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Header.js","sourceRoot":"","sources":["../../../src/components/Header/Header.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAU,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAI1D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AAEzE,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAEvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,aAAa,GAAmC;IACpD,UAAU,EAAE,iBAAiB;IAC7B,WAAW,EAAE,4BAA4B;CAC1C,CAAC;AAIF,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CACvB,CAAC,EAAE,OAAO,GAAG,UAAU,EAAE,SAAS,GAAG,EAAE,EAAE,WAAW,GAAG,IAAI,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;IACxE,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,cAAc,
|
|
1
|
+
{"version":3,"file":"Header.js","sourceRoot":"","sources":["../../../src/components/Header/Header.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { BgColorVersion } from '../../model/BgColorVersion';
|
|
2
2
|
interface HeaderSecondaryMenuContent {
|
|
3
3
|
defaultLocation?: string;
|
|
4
|
+
officesLink?: string;
|
|
4
5
|
bgColor?: BgColorVersion;
|
|
5
6
|
}
|
|
6
7
|
export interface HeaderSecondaryMenuProps extends HeaderSecondaryMenuContent {
|
|
@@ -16,8 +16,8 @@ const LINKS_ICON_VERSION_MAP = {
|
|
|
16
16
|
'bg-white': 'black',
|
|
17
17
|
transparent: 'white',
|
|
18
18
|
};
|
|
19
|
-
export const HeaderSecondaryMenu = JSX(({ className, defaultLocation = 'Москва', bgColor = 'bg-white' }) => {
|
|
19
|
+
export const HeaderSecondaryMenu = JSX(({ className, officesLink, defaultLocation = 'Москва', bgColor = 'bg-white' }) => {
|
|
20
20
|
const [city, getCity] = useGeolocation(defaultLocation);
|
|
21
|
-
return (_jsxs("div", { className: `flex items-center ${className || ''}`, children: [_jsx(TopItem, { className: "mr-5", flat: true, href: "#", text: city, ariaLabel: "\u041C\u0435\u0441\u0442\u043E\u043F\u043E\u043B\u043E\u0436\u0435\u043D\u0438\u0435", onClick: getCity, bgColor: bgColor }), _jsx(TopItem, { className: "mr-7", flat: true, href:
|
|
21
|
+
return (_jsxs("div", { className: `flex items-center ${className || ''}`, children: [_jsx(TopItem, { className: "mr-5", flat: true, href: "#", text: city, ariaLabel: "\u041C\u0435\u0441\u0442\u043E\u043F\u043E\u043B\u043E\u0436\u0435\u043D\u0438\u0435", onClick: getCity, bgColor: bgColor }), officesLink ? (_jsx(TopItem, { className: "mr-7", flat: true, href: officesLink, text: "\u041E\u0444\u0438\u0441\u044B \u0438 \u0431\u0430\u043D\u043A\u043E\u043C\u0430\u0442\u044B", ariaLabel: "\u0421\u043F\u0438\u0441\u043E\u043A \u0432\u0441\u0435\u0445 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0445 \u043E\u0444\u0438\u0441\u043E\u0432 \u0438 \u0431\u0430\u043D\u043A\u043E\u043C\u0430\u0442\u043E\u0432", bgColor: bgColor })) : null, _jsx(HeaderSecondaryMenuButton, { className: `mr-5 group ${COLORS_MAP[bgColor]}`, ariaLabel: "\u041F\u043E\u0438\u0441\u043A \u043F\u043E \u0441\u0430\u0439\u0442\u0443", children: _jsx(Img, { image: { icon: 'LoupeIcon', iconVersion: LINKS_ICON_VERSION_MAP[bgColor] }, className: "h-full pointer-events-none", imageClassName: "group-hover:text-primary-hover group-hover:invert-0 pointer-events-none", asSVG: true }) }), _jsx(HeaderSecondaryMenuButton, { className: `${LINKS_COLORS_MAP[bgColor]} group min-w-[32px] min-h-[32px]`, ariaLabel: "\u0414\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0435 \u0441\u0441\u044B\u043B\u043A\u0438", children: _jsx(Img, { image: { icon: 'GridIcon', iconVersion: LINKS_ICON_VERSION_MAP[bgColor] }, className: "h-full bg-main-divider/20 rounded-full pointer-events-none", imageClassName: "group-hover:text-primary-hover group-hover:invert-0", asSVG: true }) })] }));
|
|
22
22
|
});
|
|
23
23
|
//# sourceMappingURL=HeaderSecondaryMenu.js.map
|