From 93a2527e6089928d4eec8d3261bd531c8d02f260 Mon Sep 17 00:00:00 2001 From: "edgar.mendez" Date: Sat, 21 Mar 2026 18:04:08 -0600 Subject: [PATCH] feat: update company management components and services - Upgrade vue-tsc to version 3.2.6 in package.json. - Refactor Companies.vue to replace address column with domains_count and update company service references. - Modify CompaniesForm.vue to include new fields for email, primary domain, and certificate files, and adjust validation logic. - Revamp companies.service.ts to implement new API endpoints for tenant management and improve error handling. - Introduce companies.mapper.ts for payload transformation between form data and API requirements. - Update companies.types.ts to reflect changes in data structure and types for better type safety. --- .gitignore | 1 + components.d.ts | 4 +- package-lock.json | 56 +- package.json | 2 +- .../components/companies/Companies.vue | 150 ++--- .../components/companies/CompaniesForm.vue | 572 ++++++++---------- .../components/companies/companies.mapper.ts | 114 ++++ .../components/companies/companies.service.ts | 164 ++--- .../components/companies/companies.types.ts | 99 ++- 9 files changed, 559 insertions(+), 603 deletions(-) create mode 100644 src/modules/catalog/components/companies/companies.mapper.ts diff --git a/.gitignore b/.gitignore index 378ffdb..a45c388 100644 --- a/.gitignore +++ b/.gitignore @@ -30,3 +30,4 @@ dist-ssr # Docker docker-compose.override.yml +.agents \ No newline at end of file diff --git a/components.d.ts b/components.d.ts index 75d40af..b38179b 100644 --- a/components.d.ts +++ b/components.d.ts @@ -25,19 +25,19 @@ declare module 'vue' { IconField: typeof import('primevue/iconfield')['default'] InputIcon: typeof import('primevue/inputicon')['default'] InputNumber: typeof import('primevue/inputnumber')['default'] + InputSwitch: typeof import('primevue/inputswitch')['default'] InputText: typeof import('primevue/inputtext')['default'] KpiCard: typeof import('./src/components/shared/KpiCard.vue')['default'] Menu: typeof import('primevue/menu')['default'] Message: typeof import('primevue/message')['default'] Paginator: typeof import('primevue/paginator')['default'] - Panel: typeof import('primevue/panel')['default'] + Password: typeof import('primevue/password')['default'] ProgressSpinner: typeof import('primevue/progressspinner')['default'] RouterLink: typeof import('vue-router')['RouterLink'] RouterView: typeof import('vue-router')['RouterView'] Sidebar: typeof import('./src/components/layout/Sidebar.vue')['default'] Tag: typeof import('primevue/tag')['default'] Toast: typeof import('primevue/toast')['default'] - Toolbar: typeof import('primevue/toolbar')['default'] TopBar: typeof import('./src/components/layout/TopBar.vue')['default'] } export interface GlobalDirectives { diff --git a/package-lock.json b/package-lock.json index af3fa98..70d2372 100644 --- a/package-lock.json +++ b/package-lock.json @@ -27,7 +27,7 @@ "@vue/tsconfig": "^0.8.1", "typescript": "~5.9.3", "vite": "^7.1.7", - "vue-tsc": "^3.1.0" + "vue-tsc": "^3.2.6" } }, "node_modules/@babel/helper-string-parser": { @@ -1216,30 +1216,30 @@ } }, "node_modules/@volar/language-core": { - "version": "2.4.23", - "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.23.tgz", - "integrity": "sha512-hEEd5ET/oSmBC6pi1j6NaNYRWoAiDhINbT8rmwtINugR39loROSlufGdYMF9TaKGfz+ViGs1Idi3mAhnuPcoGQ==", + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.28.tgz", + "integrity": "sha512-w4qhIJ8ZSitgLAkVay6AbcnC7gP3glYM3fYwKV3srj8m494E3xtrCv6E+bWviiK/8hs6e6t1ij1s2Endql7vzQ==", "dev": true, "license": "MIT", "dependencies": { - "@volar/source-map": "2.4.23" + "@volar/source-map": "2.4.28" } }, "node_modules/@volar/source-map": { - "version": "2.4.23", - "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.23.tgz", - "integrity": "sha512-Z1Uc8IB57Lm6k7q6KIDu/p+JWtf3xsXJqAX/5r18hYOTpJyBn0KXUR8oTJ4WFYOcDzWC9n3IflGgHowx6U6z9Q==", + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.28.tgz", + "integrity": "sha512-yX2BDBqJkRXfKw8my8VarTyjv48QwxdJtvRgUpNE5erCsgEUdI2DsLbpa+rOQVAJYshY99szEcRDmyHbF10ggQ==", "dev": true, "license": "MIT" }, "node_modules/@volar/typescript": { - "version": "2.4.23", - "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.4.23.tgz", - "integrity": "sha512-lAB5zJghWxVPqfcStmAP1ZqQacMpe90UrP5RJ3arDyrhy4aCUQqmxPPLB2PWDKugvylmO41ljK7vZ+t6INMTag==", + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.4.28.tgz", + "integrity": "sha512-Ja6yvWrbis2QtN4ClAKreeUZPVYMARDYZl9LMEv1iQ1QdepB6wn0jTRxA9MftYmYa4DQ4k/DaSZpFPUfxl8giw==", "dev": true, "license": "MIT", "dependencies": { - "@volar/language-core": "2.4.23", + "@volar/language-core": "2.4.28", "path-browserify": "^1.0.1", "vscode-uri": "^3.0.8" } @@ -1325,27 +1325,19 @@ } }, "node_modules/@vue/language-core": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-3.1.3.tgz", - "integrity": "sha512-KpR1F/eGAG9D1RZ0/T6zWJs6dh/pRLfY5WupecyYKJ1fjVmDMgTPw9wXmKv2rBjo4zCJiOSiyB8BDP1OUwpMEA==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-3.2.6.tgz", + "integrity": "sha512-xYYYX3/aVup576tP/23sEUpgiEnujrENaoNRbaozC1/MA9I6EGFQRJb4xrt/MmUCAGlxTKL2RmT8JLTPqagCkg==", "dev": true, "license": "MIT", "dependencies": { - "@volar/language-core": "2.4.23", + "@volar/language-core": "2.4.28", "@vue/compiler-dom": "^3.5.0", "@vue/shared": "^3.5.0", "alien-signals": "^3.0.0", "muggle-string": "^0.4.1", "path-browserify": "^1.0.1", "picomatch": "^4.0.2" - }, - "peerDependencies": { - "typescript": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } } }, "node_modules/@vue/reactivity": { @@ -1468,9 +1460,9 @@ } }, "node_modules/alien-signals": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/alien-signals/-/alien-signals-3.0.6.tgz", - "integrity": "sha512-gCs0YqC1mkYGC6IRXsSrA62ShOSv1FlVN5tRp/Cs2vRWLK/BAeluWIdfsl253pFQPznKEvRmHhfep7crWfyfWQ==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/alien-signals/-/alien-signals-3.1.2.tgz", + "integrity": "sha512-d9dYqZTS90WLiU0I5c6DHj/HcKkF8ZyGN3G5x8wSbslulz70KOxaqCT0hQCo9KOyhVqzqGojvNdJXoTumZOtcw==", "dev": true, "license": "MIT" }, @@ -2802,14 +2794,14 @@ } }, "node_modules/vue-tsc": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-3.1.3.tgz", - "integrity": "sha512-StMNfZHwPIXQgY3KxPKM0Jsoc8b46mDV3Fn2UlHCBIwRJApjqrSwqeMYgWf0zpN+g857y74pv7GWuBm+UqQe1w==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-3.2.6.tgz", + "integrity": "sha512-gYW/kWI0XrwGzd0PKc7tVB/qpdeAkIZLNZb10/InizkQjHjnT8weZ/vBarZoj4kHKbUTZT/bAVgoOr8x4NsQ/Q==", "dev": true, "license": "MIT", "dependencies": { - "@volar/typescript": "2.4.23", - "@vue/language-core": "3.1.3" + "@volar/typescript": "2.4.28", + "@vue/language-core": "3.2.6" }, "bin": { "vue-tsc": "bin/vue-tsc.js" diff --git a/package.json b/package.json index 1fe36b3..07071b0 100644 --- a/package.json +++ b/package.json @@ -28,6 +28,6 @@ "@vue/tsconfig": "^0.8.1", "typescript": "~5.9.3", "vite": "^7.1.7", - "vue-tsc": "^3.1.0" + "vue-tsc": "^3.2.6" } } diff --git a/src/modules/catalog/components/companies/Companies.vue b/src/modules/catalog/components/companies/Companies.vue index 3a0c152..84e9cb9 100644 --- a/src/modules/catalog/components/companies/Companies.vue +++ b/src/modules/catalog/components/companies/Companies.vue @@ -60,15 +60,11 @@ - - - + + +