1
0
mirror of https://github.com/devcode-it/openstamanager.git synced 2025-03-13 09:40:18 +01:00

feat: Aggiunto parsing dei path da tsconfig.json

This commit is contained in:
Maicol Battistini 2023-05-08 20:06:48 +02:00
parent a92c7ce8b5
commit d4c40be717
No known key found for this signature in database
4 changed files with 1442 additions and 1383 deletions

View File

@ -43,7 +43,8 @@
"opcodesio/log-viewer": "^2",
"outhebox/blade-flags": "^1",
"rawilk/laravel-settings": "^2",
"tightenco/ziggy": "^1"
"tightenco/ziggy": "^1",
"openstamanager/attivita.tipi": "dev-main"
},
"require-dev": {
"barryvdh/laravel-debugbar": "^3",
@ -65,8 +66,7 @@
"rector/rector": "^0",
"roave/security-advisories": "dev-latest",
"spatie/laravel-ignition": "^2",
"thiagocordeiro/laravel-translator": "^1",
"openstamanager/attivita.tipi": "dev-main"
"thiagocordeiro/laravel-translator": "^1"
},
"autoload": {
"psr-4": {

View File

@ -41,6 +41,7 @@
"devDependencies": {
"@maicol07/eslint-config": "^2.3.0",
"@openstamanager/vite-config": "github:devcode-it/openstamanager-vite-config",
"@types/fs-extra": "^11.0.1",
"@types/lodash-es": "^4.17.7",
"@types/mithril": "^2.0.12",
"@types/node": "^20.1.0",
@ -48,6 +49,7 @@
"chokidar": "^3.5.3",
"csstype": "^3.1.2",
"fast-glob": "^3.2.12",
"fs-extra": "^11.1.1",
"inertia-plugin": "^0.6.0",
"laravel-vite-plugin": "^0.7.4",
"postcss": "^8.4.23",

2780
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@ -1,8 +1,15 @@
/* eslint-disable import/no-extraneous-dependencies,new-cap */
import {resolve} from 'node:path';
import FastGlob from 'fast-glob';
import {readJSON} from 'fs-extra';
import Inertia from 'inertia-plugin/vite';
import laravel from 'laravel-vite-plugin';
import {defineConfig} from 'vite';
import type {TsConfigJson} from 'type-fest';
import {
AliasOptions,
defineConfig
} from 'vite';
import laravelTranslations from 'vite-plugin-laravel-translations';
// import progress from 'vite-plugin-progress';
import {VitePWA} from 'vite-plugin-pwa';
@ -14,6 +21,30 @@ const modules = installedPackages.packages.filter((packageInfo) => packageInfo.t
// noinspection JSUnusedGlobalSymbols
export default defineConfig(async () => {
const bootstrapFiles = await FastGlob('./vendor/*/*/resources/ts/bootstrap.{tsx,ts,jsx,js}');
// Load module aliases from tsconfig.json
const aliases: AliasOptions = {
'@osm': '/resources/ts'
};
const mods = modules.map(async (module) => {
const modulePath = `./vendor/composer/${module['install-path']!}`;
return {
modulePath,
tsconfig: await readJSON(`${modulePath}/tsconfig.json`, 'utf8') as TsConfigJson
};
});
for await (const module of mods) {
const paths = module.tsconfig.compilerOptions?.paths;
if (paths) {
for (const [alias, path] of Object.entries(paths)) {
if (alias !== '@osm/*') {
aliases[alias.replace('/*', '')] = resolve(`${module.modulePath}/${path[0]}`);
}
}
}
}
return {
assetsInclude: '**/*.xml',
build: {
@ -21,9 +52,7 @@ export default defineConfig(async () => {
target: 'esnext'
},
resolve: {
alias: {
'@osm': '/resources/ts'
}
alias: aliases
},
esbuild: {
jsx: 'transform',