From a349a17649a7a42ab72fdd4a7d48e3239ebb7607 Mon Sep 17 00:00:00 2001 From: Chika Date: Tue, 14 Jun 2022 19:15:06 +0300 Subject: [PATCH] Calculation/Form: add CreateKP tab --- Components/Calculation/Form/CreateKP/config.ts | 13 +++++++++++++ Components/Calculation/Form/CreateKP/index.jsx | 12 ++++++++++++ Components/Calculation/Form/index.jsx | 3 ++- Components/Calculation/config/elements-titles.ts | 2 +- Elements/Button.tsx | 9 +++++++-- 5 files changed, 35 insertions(+), 4 deletions(-) create mode 100644 Components/Calculation/Form/CreateKP/config.ts create mode 100644 Components/Calculation/Form/CreateKP/index.jsx diff --git a/Components/Calculation/Form/CreateKP/config.ts b/Components/Calculation/Form/CreateKP/config.ts new file mode 100644 index 0000000..aa0958a --- /dev/null +++ b/Components/Calculation/Form/CreateKP/config.ts @@ -0,0 +1,13 @@ +/* eslint-disable object-curly-newline */ +import type { FormTabRows } from '../../lib/render-rows'; + +export const id = 'create-kp'; +export const title = 'Создание КП'; + +export const rows: FormTabRows = [ + [['cbxPriceWithDiscount', 'cbxFullPriceWithDiscount', 'cbxCostIncrease']], + [['cbxInsurance', 'cbxRegistrationQuote', 'cbxTechnicalCardQuote']], + [['cbxNSIB', 'cbxQuoteRedemptionGraph', 'cbxShowFinGAP']], + [['tbxQuoteName', 'radioQuoteContactGender'], { gridTemplateColumns: '1fr 1fr' }], + [['btnCreateKP', 'linkDownloadKp'], { gridTemplateColumns: '1fr 1fr' }], +]; diff --git a/Components/Calculation/Form/CreateKP/index.jsx b/Components/Calculation/Form/CreateKP/index.jsx new file mode 100644 index 0000000..0500868 --- /dev/null +++ b/Components/Calculation/Form/CreateKP/index.jsx @@ -0,0 +1,12 @@ +import renderFormRows from 'Components/Calculation/lib/render-rows'; +import { id, rows, title } from './config'; + +function CreateKP() { + return renderFormRows(rows); +} + +export default { + id, + title, + Component: CreateKP, +}; diff --git a/Components/Calculation/Form/index.jsx b/Components/Calculation/Form/index.jsx index 993104e..e73f3d3 100644 --- a/Components/Calculation/Form/index.jsx +++ b/Components/Calculation/Form/index.jsx @@ -1,13 +1,14 @@ import Background from 'Elements/layout/Background'; import { Tabs, Wrapper } from 'Elements/layout/Tabs'; import AddProduct from './AddProduct'; +import CreateKP from './CreateKP'; import Insurance from './Insurance'; import Leasing from './Leasing'; import LeasingObject from './LeasingObject'; import Payments from './Payments'; import SupplierAgent from './SupplierAgent'; -const formTabs = [Leasing, Payments, LeasingObject, SupplierAgent, Insurance, AddProduct]; +const formTabs = [Leasing, Payments, LeasingObject, SupplierAgent, Insurance, AddProduct, CreateKP]; function Form() { return ( diff --git a/Components/Calculation/config/elements-titles.ts b/Components/Calculation/config/elements-titles.ts index 48e8b83..b1dcab9 100644 --- a/Components/Calculation/config/elements-titles.ts +++ b/Components/Calculation/config/elements-titles.ts @@ -145,7 +145,7 @@ const titles: Record labelResultFirstPaymentRiskPolicy: 'Первый платеж по риск политике, %', /** Link Elements */ - linkDownloadKp: 'Скачать КП', + linkDownloadKp: '', /** Computed Elements */ labelIrrInfo: 'Диапазон IRR (Номинал)', diff --git a/Elements/Button.tsx b/Elements/Button.tsx index a3a2d58..9e549e6 100644 --- a/Elements/Button.tsx +++ b/Elements/Button.tsx @@ -8,7 +8,12 @@ type ElementProps = { text: string; }; -export default function Button({ status, action, text }: BaseElementProps & ElementProps) { +export default function Button({ + status, + action, + text, + ...props +}: BaseElementProps & ElementProps) { const throttledAction = throttle(action, 1200, { trailing: false, }); @@ -18,7 +23,7 @@ export default function Button({ status, action, text }: BaseElementProps disabled={status === 'Disabled'} loading={status === 'Loading'} onClick={throttledAction} - ghost + {...props} > {text}