diff --git a/apps/web/Components/Calculation/Form/AddProduct/config.ts b/apps/web/Components/Calculation/Form/AddProduct/config.ts
index 7250fde..cf6142f 100644
--- a/apps/web/Components/Calculation/Form/AddProduct/config.ts
+++ b/apps/web/Components/Calculation/Form/AddProduct/config.ts
@@ -7,7 +7,7 @@ export const rows: FormTabRows = [
{
title: 'Регистрация',
},
- [['radioObjectRegistration', 'radioTypePTS'], { gridTemplateColumns: ['1fr 1fr'] }],
+ [['radioObjectRegistration', 'radioTypePTS'], { gridTemplateColumns: ['1fr', '1fr 1fr'] }],
[['selectRegionRegistration', 'selectTownRegistration', 'selectObjectRegionRegistration']],
[['selectObjectCategoryTax', 'selectObjectTypeTax', 'tbxVehicleTaxInYear']],
[['tbxLeaseObjectYear', 'tbxLeaseObjectMotorPower', 'tbxVehicleTaxInLeasingPeriod']],
diff --git a/apps/web/Components/Calculation/Form/LeasingObject/config.ts b/apps/web/Components/Calculation/Form/LeasingObject/config.ts
index 232b605..6f7ab8e 100644
--- a/apps/web/Components/Calculation/Form/LeasingObject/config.ts
+++ b/apps/web/Components/Calculation/Form/LeasingObject/config.ts
@@ -1,4 +1,5 @@
import type { FormTabRows } from '../../lib/render-rows';
+import { transformRowsForMobile } from '../lib/utils';
export const id = 'leasing-object';
export const title = 'ПЛ';
@@ -16,3 +17,5 @@ export const rows: FormTabRows = [
[['selectLeaseObjectCategory', 'tbxEngineVolume', 'tbxMileage']],
[['tbxMaxMass', 'tbxEngineHours', 'tbxVIN']],
];
+
+export const mobileRows = transformRowsForMobile(rows);
diff --git a/apps/web/Components/Calculation/Form/LeasingObject/index.jsx b/apps/web/Components/Calculation/Form/LeasingObject/index.jsx
index f039e20..980a418 100644
--- a/apps/web/Components/Calculation/Form/LeasingObject/index.jsx
+++ b/apps/web/Components/Calculation/Form/LeasingObject/index.jsx
@@ -1,8 +1,14 @@
import renderFormRows from '../../lib/render-rows';
-import { id, rows, title } from './config';
+import { id, mobileRows, rows, title } from './config';
+import { Media } from '@/styles/media';
function LeasingObject() {
- return renderFormRows(rows);
+ return (
+ <>
+ {renderFormRows(mobileRows)}
+ {renderFormRows(rows)}
+ >
+ );
}
export default {
diff --git a/apps/web/Components/Calculation/Form/SupplierAgent/config.ts b/apps/web/Components/Calculation/Form/SupplierAgent/config.ts
index ceb720e..c6f8d24 100644
--- a/apps/web/Components/Calculation/Form/SupplierAgent/config.ts
+++ b/apps/web/Components/Calculation/Form/SupplierAgent/config.ts
@@ -1,4 +1,5 @@
import type { FormTabRows } from '../../lib/render-rows';
+import { transformRowsForMobile } from '../lib/utils';
export const id = 'supplier-agent';
export const title = 'Поставщик/агент';
@@ -20,3 +21,5 @@ export const rows: FormTabRows = [
[['selectCalcBrokerRewardCondition', 'selectFinDepartmentRewardCondtion'], defaultRowStyle],
[['tbxCalcBrokerRewardSum', 'tbxFinDepartmentRewardSumm'], defaultRowStyle],
];
+
+export const mobileRows = transformRowsForMobile(rows);
diff --git a/apps/web/Components/Calculation/Form/SupplierAgent/index.jsx b/apps/web/Components/Calculation/Form/SupplierAgent/index.jsx
index 2aa6e0c..b6effa2 100644
--- a/apps/web/Components/Calculation/Form/SupplierAgent/index.jsx
+++ b/apps/web/Components/Calculation/Form/SupplierAgent/index.jsx
@@ -1,8 +1,14 @@
import renderFormRows from '../../lib/render-rows';
-import { id, rows, title } from './config';
+import { id, mobileRows, rows, title } from './config';
+import { Media } from '@/styles/media';
function Leasing() {
- return renderFormRows(rows);
+ return (
+ <>
+ {renderFormRows(mobileRows)}
+ {renderFormRows(rows)}
+ >
+ );
}
export default {
diff --git a/apps/web/Components/Calculation/Form/lib/utils.js b/apps/web/Components/Calculation/Form/lib/utils.js
new file mode 100644
index 0000000..b744f2e
--- /dev/null
+++ b/apps/web/Components/Calculation/Form/lib/utils.js
@@ -0,0 +1,32 @@
+/**
+ *
+ * @param {import('../../lib/render-rows').FormTabRows} rows
+ * @returns {import('../../lib/render-rows').FormTabRows}
+ */
+export function transformRowsForMobile(rows) {
+ const mobileRows = [];
+ let columnGroups = {};
+
+ rows.forEach((row) => {
+ if (Array.isArray(row)) {
+ row[0].forEach((item, index) => {
+ if (!columnGroups[index]) {
+ columnGroups[index] = [];
+ }
+ columnGroups[index].push(item);
+ });
+ } else {
+ Object.values(columnGroups).forEach((group) => {
+ mobileRows.push([group, { gridTemplateColumns: '1fr' }]);
+ });
+ columnGroups = {};
+ mobileRows.push(row);
+ }
+ });
+
+ Object.values(columnGroups).forEach((group) => {
+ mobileRows.push([group, { gridTemplateColumns: '1fr' }]);
+ });
+
+ return mobileRows;
+}