versacompiler 2.2.0 → 2.3.0
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.
|
@@ -339,6 +339,9 @@ export class ModuleResolutionOptimizer {
|
|
|
339
339
|
const dir = dirname(entryPoint);
|
|
340
340
|
const baseName = entryPoint.split('/').pop() || '';
|
|
341
341
|
const nameWithoutExt = baseName.replace(/\.[^/.]+$/, '');
|
|
342
|
+
// Determinar el nombre base sin sufijos como .runtime, .bundler, etc.
|
|
343
|
+
// Por ejemplo: vue.runtime.esm-bundler -> vue
|
|
344
|
+
const coreBaseName = nameWithoutExt.split('.')[0];
|
|
342
345
|
const searchDir = join(moduleDir, dir);
|
|
343
346
|
if (!existsSync(searchDir)) {
|
|
344
347
|
return undefined;
|
|
@@ -346,15 +349,56 @@ export class ModuleResolutionOptimizer {
|
|
|
346
349
|
try {
|
|
347
350
|
const files = readdirSync(searchDir);
|
|
348
351
|
this.metrics.filesystemAccess++;
|
|
349
|
-
// Patrones de prioridad
|
|
350
|
-
const patterns =
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
352
|
+
// ✨ Patrones de prioridad dinámicos según modo producción
|
|
353
|
+
const patterns = env.isPROD === 'true'
|
|
354
|
+
? [
|
|
355
|
+
// 🏭 MODO PRODUCCIÓN: Priorizar versiones optimizadas
|
|
356
|
+
// Primero intentar con el nombre exacto
|
|
357
|
+
`${nameWithoutExt}.esm-browser.prod.js`,
|
|
358
|
+
`${nameWithoutExt}.esm-browser.min.js`,
|
|
359
|
+
// Luego con el nombre base (para casos como vue.runtime.esm-bundler -> vue.esm-browser.prod.js)
|
|
360
|
+
`${coreBaseName}.esm-browser.prod.js`,
|
|
361
|
+
`${coreBaseName}.esm-browser.min.js`,
|
|
362
|
+
`${coreBaseName}.runtime.esm-browser.prod.js`,
|
|
363
|
+
`${coreBaseName}.runtime.esm-browser.min.js`,
|
|
364
|
+
// Otros patrones ESM optimizados
|
|
365
|
+
`${nameWithoutExt}.esm.prod.js`,
|
|
366
|
+
`${nameWithoutExt}.esm.min.js`,
|
|
367
|
+
`${nameWithoutExt}.module.prod.js`,
|
|
368
|
+
`${nameWithoutExt}.module.min.js`,
|
|
369
|
+
`${nameWithoutExt}.browser.prod.js`,
|
|
370
|
+
`${nameWithoutExt}.browser.min.js`,
|
|
371
|
+
// Fallback a versiones de desarrollo
|
|
372
|
+
`${coreBaseName}.esm-browser.js`,
|
|
373
|
+
`${coreBaseName}.runtime.esm-browser.js`,
|
|
374
|
+
`${nameWithoutExt}.esm-browser.js`,
|
|
375
|
+
`${nameWithoutExt}.esm.js`,
|
|
376
|
+
`${nameWithoutExt}.module.js`,
|
|
377
|
+
`${nameWithoutExt}.browser.js`,
|
|
378
|
+
]
|
|
379
|
+
: [
|
|
380
|
+
// 🔧 MODO DESARROLLO: Priorizar versiones sin minificar
|
|
381
|
+
// Primero con nombre exacto
|
|
382
|
+
`${nameWithoutExt}.esm-browser.js`,
|
|
383
|
+
// Luego con nombre base
|
|
384
|
+
`${coreBaseName}.esm-browser.js`,
|
|
385
|
+
`${coreBaseName}.runtime.esm-browser.js`,
|
|
386
|
+
// Otros patrones ESM
|
|
387
|
+
`${nameWithoutExt}.esm.js`,
|
|
388
|
+
`${nameWithoutExt}.module.js`,
|
|
389
|
+
`${nameWithoutExt}.browser.js`,
|
|
390
|
+
// Fallback a versiones de producción si no hay desarrollo
|
|
391
|
+
`${coreBaseName}.esm-browser.prod.js`,
|
|
392
|
+
`${coreBaseName}.runtime.esm-browser.prod.js`,
|
|
393
|
+
`${nameWithoutExt}.esm-browser.prod.js`,
|
|
394
|
+
`${nameWithoutExt}.esm.prod.js`,
|
|
395
|
+
];
|
|
356
396
|
for (const pattern of patterns) {
|
|
357
397
|
if (files.includes(pattern)) {
|
|
398
|
+
if (env.VERBOSE === 'true') {
|
|
399
|
+
const mode = env.isPROD === 'true' ? '🏭 PROD' : '🔧 DEV';
|
|
400
|
+
logger.info(`${mode} Versión optimizada encontrada (${coreBaseName}): ${join(dir, pattern)}`);
|
|
401
|
+
}
|
|
358
402
|
return join(dir, pattern);
|
|
359
403
|
}
|
|
360
404
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { transform } from '/node_modules/oxc-transform/browser.js';
|
|
2
|
-
export function traspileTStoJS(filePath, sourceCode) {
|
|
2
|
+
export async function traspileTStoJS(filePath, sourceCode) {
|
|
3
3
|
try {
|
|
4
|
-
const { code: outputText, declaration, errors: diagnostics, } = transform(filePath, sourceCode);
|
|
4
|
+
const { code: outputText, declaration, errors: diagnostics, } = await transform(filePath, sourceCode);
|
|
5
5
|
return {
|
|
6
6
|
outputText: outputText,
|
|
7
7
|
declaration: declaration || '',
|
|
@@ -64,42 +64,81 @@ function findOptimalESMVersion(moduleDir, entryPoint) {
|
|
|
64
64
|
return entryPoint;
|
|
65
65
|
}
|
|
66
66
|
try {
|
|
67
|
-
const files = fs.readdirSync(searchDir);
|
|
68
|
-
//
|
|
69
|
-
const priorityPatterns =
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
67
|
+
const files = fs.readdirSync(searchDir);
|
|
68
|
+
// ✨ Patrones de prioridad dinámicos según modo producción
|
|
69
|
+
const priorityPatterns = env.isPROD === 'true'
|
|
70
|
+
? [
|
|
71
|
+
// 🏭 MODO PRODUCCIÓN: Priorizar versiones optimizadas
|
|
72
|
+
// Máxima prioridad: ESM-Browser producción
|
|
73
|
+
`${nameWithoutExt}.esm-browser.prod.js`,
|
|
74
|
+
`${nameWithoutExt}.esm-browser.min.js`,
|
|
75
|
+
// ESM producción
|
|
76
|
+
`${nameWithoutExt}.esm.prod.js`,
|
|
77
|
+
`${nameWithoutExt}.esm.min.js`,
|
|
78
|
+
`${nameWithoutExt}.module.prod.js`,
|
|
79
|
+
`${nameWithoutExt}.module.min.js`,
|
|
80
|
+
// Browser producción
|
|
81
|
+
`${nameWithoutExt}.browser.prod.js`,
|
|
82
|
+
`${nameWithoutExt}.browser.min.js`,
|
|
83
|
+
`${nameWithoutExt}.web.prod.js`,
|
|
84
|
+
`${nameWithoutExt}.web.min.js`,
|
|
85
|
+
// Global/UMD producción
|
|
86
|
+
`${nameWithoutExt}.global.prod.js`,
|
|
87
|
+
`${nameWithoutExt}.global.min.js`,
|
|
88
|
+
`${nameWithoutExt}.umd.prod.js`,
|
|
89
|
+
`${nameWithoutExt}.umd.min.js`,
|
|
90
|
+
`${nameWithoutExt}.min.js`,
|
|
91
|
+
// Fallback a versiones de desarrollo si no hay producción
|
|
92
|
+
`${nameWithoutExt}.esm-browser.js`,
|
|
93
|
+
`${nameWithoutExt}.esm.js`,
|
|
94
|
+
`${nameWithoutExt}.module.js`,
|
|
95
|
+
`${nameWithoutExt}.browser.js`,
|
|
96
|
+
`${nameWithoutExt}.web.js`,
|
|
97
|
+
`${nameWithoutExt}.umd.js`,
|
|
98
|
+
`${nameWithoutExt}.global.js`,
|
|
99
|
+
// Último recurso: versiones runtime
|
|
100
|
+
`${nameWithoutExt}.runtime.esm-browser.prod.js`,
|
|
101
|
+
`${nameWithoutExt}.runtime.esm-browser.min.js`,
|
|
102
|
+
`${nameWithoutExt}.runtime.esm-browser.js`,
|
|
103
|
+
]
|
|
104
|
+
: [
|
|
105
|
+
// 🔧 MODO DESARROLLO: Priorizar versiones sin minificar
|
|
106
|
+
// Máxima prioridad: ESM-Browser desarrollo
|
|
107
|
+
`${nameWithoutExt}.esm-browser.js`,
|
|
108
|
+
// ESM puro sin minificar
|
|
109
|
+
`${nameWithoutExt}.esm.all.js`,
|
|
110
|
+
`${nameWithoutExt}.esm.js`,
|
|
111
|
+
`${nameWithoutExt}.module.js`,
|
|
112
|
+
// Browser puro sin minificar
|
|
113
|
+
`${nameWithoutExt}.browser.js`,
|
|
114
|
+
`${nameWithoutExt}.web.js`,
|
|
115
|
+
// UMD sin minificar
|
|
116
|
+
`${nameWithoutExt}.umd.js`,
|
|
117
|
+
`${nameWithoutExt}.global.js`,
|
|
118
|
+
// Fallback a versiones minificadas
|
|
119
|
+
`${nameWithoutExt}.esm-browser.prod.js`,
|
|
120
|
+
`${nameWithoutExt}.esm-browser.min.js`,
|
|
121
|
+
`${nameWithoutExt}.esm.prod.js`,
|
|
122
|
+
`${nameWithoutExt}.esm.min.js`,
|
|
123
|
+
`${nameWithoutExt}.module.min.js`,
|
|
124
|
+
`${nameWithoutExt}.browser.prod.js`,
|
|
125
|
+
`${nameWithoutExt}.browser.min.js`,
|
|
126
|
+
`${nameWithoutExt}.web.min.js`,
|
|
127
|
+
`${nameWithoutExt}.umd.min.js`,
|
|
128
|
+
`${nameWithoutExt}.global.min.js`,
|
|
129
|
+
`${nameWithoutExt}.min.js`,
|
|
130
|
+
// Último recurso: versiones runtime
|
|
131
|
+
`${nameWithoutExt}.runtime.esm-browser.js`,
|
|
132
|
+
`${nameWithoutExt}.runtime.esm-browser.min.js`,
|
|
133
|
+
`${nameWithoutExt}.runtime.esm-browser.prod.js`,
|
|
134
|
+
];
|
|
99
135
|
// Buscar archivos que coincidan exactamente con los patrones
|
|
100
136
|
for (const pattern of priorityPatterns) {
|
|
101
137
|
if (files.includes(pattern)) {
|
|
102
138
|
const optimizedPath = join(dir, pattern).replace(/\\/g, '/');
|
|
139
|
+
if (env.VERBOSE === 'true') {
|
|
140
|
+
logger.info(`📦 Versión optimizada encontrada (${env.isPROD === 'true' ? 'PROD' : 'DEV'}): ${optimizedPath}`);
|
|
141
|
+
}
|
|
103
142
|
return optimizedPath;
|
|
104
143
|
}
|
|
105
144
|
} // Buscar archivos que contengan patrones ESM/browser dinámicamente
|
|
@@ -118,18 +157,47 @@ function findOptimalESMVersion(moduleDir, entryPoint) {
|
|
|
118
157
|
const esmBrowserCombined = esmBrowserFiles.filter((file) => file.toLowerCase().includes('.esm-browser.') &&
|
|
119
158
|
!file.toLowerCase().includes('.runtime.'));
|
|
120
159
|
if (esmBrowserCombined.length > 0) {
|
|
121
|
-
//
|
|
160
|
+
// ✨ MODO PRODUCCIÓN: Priorizar .prod.js o .min.js
|
|
161
|
+
if (env.isPROD === 'true') {
|
|
162
|
+
// Primera opción: archivos .prod.js
|
|
163
|
+
const prodFiles = esmBrowserCombined.filter((file) => file.toLowerCase().includes('.prod.'));
|
|
164
|
+
if (prodFiles.length > 0 && prodFiles[0]) {
|
|
165
|
+
const optimizedPath = join(dir, prodFiles[0]).replace(/\\/g, '/');
|
|
166
|
+
if (env.VERBOSE === 'true') {
|
|
167
|
+
logger.info(`🏭 Versión ESM-Browser producción encontrada: ${optimizedPath}`);
|
|
168
|
+
}
|
|
169
|
+
return optimizedPath;
|
|
170
|
+
}
|
|
171
|
+
// Segunda opción: archivos .min.js
|
|
172
|
+
const minFiles = esmBrowserCombined.filter((file) => file.toLowerCase().includes('.min.'));
|
|
173
|
+
if (minFiles.length > 0 && minFiles[0]) {
|
|
174
|
+
const optimizedPath = join(dir, minFiles[0]).replace(/\\/g, '/');
|
|
175
|
+
if (env.VERBOSE === 'true') {
|
|
176
|
+
logger.info(`🗜️ Versión ESM-Browser minificada encontrada: ${optimizedPath}`);
|
|
177
|
+
}
|
|
178
|
+
return optimizedPath;
|
|
179
|
+
}
|
|
180
|
+
// Fallback: si no hay .prod ni .min, usar desarrollo
|
|
181
|
+
if (env.VERBOSE === 'true') {
|
|
182
|
+
logger.warn('⚠️ No se encontró versión de producción, usando desarrollo');
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
// ✨ MODO DESARROLLO: Priorizar desarrollo > .prod > .min
|
|
122
186
|
const devFiles = esmBrowserCombined.filter((file) => !file.toLowerCase().includes('.prod.') &&
|
|
123
187
|
!file.toLowerCase().includes('.min.'));
|
|
124
188
|
if (devFiles.length > 0 && devFiles[0]) {
|
|
125
189
|
const optimizedPath = join(dir, devFiles[0]).replace(/\\/g, '/');
|
|
190
|
+
if (env.VERBOSE === 'true') {
|
|
191
|
+
logger.info(`🔧 Versión ESM-Browser desarrollo encontrada: ${optimizedPath}`);
|
|
192
|
+
}
|
|
126
193
|
return optimizedPath;
|
|
127
194
|
}
|
|
195
|
+
// Fallback en desarrollo: si no hay versión dev, usar prod
|
|
128
196
|
const prodFiles = esmBrowserCombined.filter((file) => file.toLowerCase().includes('.prod.'));
|
|
129
197
|
if (prodFiles.length > 0 && prodFiles[0]) {
|
|
130
198
|
const optimizedPath = join(dir, prodFiles[0]).replace(/\\/g, '/');
|
|
131
199
|
if (env.VERBOSE === 'true') {
|
|
132
|
-
logger.info(`Versión ESM-Browser producción encontrada: ${optimizedPath}`);
|
|
200
|
+
logger.info(`Versión ESM-Browser producción encontrada (fallback): ${optimizedPath}`);
|
|
133
201
|
}
|
|
134
202
|
return optimizedPath;
|
|
135
203
|
}
|
|
@@ -137,7 +205,7 @@ function findOptimalESMVersion(moduleDir, entryPoint) {
|
|
|
137
205
|
if (minFiles.length > 0 && minFiles[0]) {
|
|
138
206
|
const optimizedPath = join(dir, minFiles[0]).replace(/\\/g, '/');
|
|
139
207
|
if (env.VERBOSE === 'true') {
|
|
140
|
-
logger.info(`Versión ESM-Browser minificada encontrada: ${optimizedPath}`);
|
|
208
|
+
logger.info(`Versión ESM-Browser minificada encontrada (fallback): ${optimizedPath}`);
|
|
141
209
|
}
|
|
142
210
|
return optimizedPath;
|
|
143
211
|
}
|
|
@@ -149,18 +217,36 @@ function findOptimalESMVersion(moduleDir, entryPoint) {
|
|
|
149
217
|
return optimizedPath;
|
|
150
218
|
}
|
|
151
219
|
}
|
|
152
|
-
// Segunda prioridad: cualquier versión ESM disponible
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
if (
|
|
161
|
-
|
|
220
|
+
// Segunda prioridad: cualquier versión ESM disponible
|
|
221
|
+
if (env.isPROD === 'true') {
|
|
222
|
+
// En producción, buscar versiones minificadas/prod primero
|
|
223
|
+
const esmProdFiles = esmBrowserFiles.filter((file) => (file.toLowerCase().includes('.esm.') ||
|
|
224
|
+
file.toLowerCase().includes('.module.')) &&
|
|
225
|
+
(file.toLowerCase().includes('.prod.') ||
|
|
226
|
+
file.toLowerCase().includes('.min.')) &&
|
|
227
|
+
!file.toLowerCase().includes('.runtime.'));
|
|
228
|
+
if (esmProdFiles.length > 0 && esmProdFiles[0]) {
|
|
229
|
+
const optimizedPath = join(dir, esmProdFiles[0]).replace(/\\/g, '/');
|
|
230
|
+
if (env.VERBOSE === 'true') {
|
|
231
|
+
logger.info(`🏭 Versión ESM producción encontrada: ${optimizedPath}`);
|
|
232
|
+
}
|
|
233
|
+
return optimizedPath;
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
else {
|
|
237
|
+
// En desarrollo, buscar versiones sin minificar
|
|
238
|
+
const esmFiles = esmBrowserFiles.filter((file) => (file.toLowerCase().includes('.esm.') ||
|
|
239
|
+
file.toLowerCase().includes('.module.')) &&
|
|
240
|
+
!file.toLowerCase().includes('.min.') &&
|
|
241
|
+
!file.toLowerCase().includes('.prod.') &&
|
|
242
|
+
!file.toLowerCase().includes('.runtime.'));
|
|
243
|
+
if (esmFiles.length > 0 && esmFiles[0]) {
|
|
244
|
+
const optimizedPath = join(dir, esmFiles[0]).replace(/\\/g, '/');
|
|
245
|
+
if (env.VERBOSE === 'true') {
|
|
246
|
+
logger.info(`🔧 Versión ESM desarrollo encontrada: ${optimizedPath}`);
|
|
247
|
+
}
|
|
248
|
+
return optimizedPath;
|
|
162
249
|
}
|
|
163
|
-
return optimizedPath;
|
|
164
250
|
}
|
|
165
251
|
// Tercera prioridad: archivos minificados de cualquier tipo ESM/browser (sin runtime)
|
|
166
252
|
const minifiedFiles = esmBrowserFiles.filter((file) => (file.toLowerCase().includes('.min.') ||
|
|
@@ -186,8 +186,8 @@ declare module '*.ico' {
|
|
|
186
186
|
// Vue Router tipos adicionales
|
|
187
187
|
declare module '@vue/runtime-core' {
|
|
188
188
|
interface ComponentCustomProperties {
|
|
189
|
-
$route: import('vue-router').RouteLocationNormalized;
|
|
190
|
-
$router: import('vue-router').Router;
|
|
189
|
+
$route: import('/node_modules/vue-router/dist/vue-router.esm-browser.js').RouteLocationNormalized;
|
|
190
|
+
$router: import('/node_modules/vue-router/dist/vue-router.esm-browser.js').Router;
|
|
191
191
|
}
|
|
192
192
|
}
|
|
193
193
|
`;
|
|
@@ -197,7 +197,7 @@ declare module '@vue/runtime-core' {
|
|
|
197
197
|
// Pinia tipos adicionales
|
|
198
198
|
declare module '@vue/runtime-core' {
|
|
199
199
|
interface ComponentCustomProperties {
|
|
200
|
-
$pinia: import('pinia').Pinia;
|
|
200
|
+
$pinia: import('/node_modules/pinia/dist/pinia.esm-browser.js').Pinia;
|
|
201
201
|
}
|
|
202
202
|
}
|
|
203
203
|
`;
|
package/package.json
CHANGED
|
@@ -1,107 +1,109 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "versacompiler",
|
|
3
|
-
"version": "2.
|
|
4
|
-
"description": "Una herramienta para compilar y minificar archivos .vue, .js y .ts para proyectos de Vue 3 con soporte para TypeScript.",
|
|
5
|
-
"main": "dist/main.js",
|
|
6
|
-
"bin": {
|
|
7
|
-
"versacompiler": "dist/main.js"
|
|
8
|
-
},
|
|
9
|
-
"publishConfig": {
|
|
10
|
-
"access": "public"
|
|
11
|
-
},
|
|
12
|
-
"files": [
|
|
13
|
-
"dist",
|
|
14
|
-
"LICENSE",
|
|
15
|
-
"README.md"
|
|
16
|
-
],
|
|
17
|
-
"type": "module",
|
|
18
|
-
"scripts": {
|
|
19
|
-
"dev": "tsx --watch src/main.ts --watch --verbose --tailwind",
|
|
20
|
-
"file": "tsx src/main.ts ",
|
|
21
|
-
"compile": "tsx src/main.ts --all --cc --co -y --verbose --prod",
|
|
22
|
-
"test": "vitest run",
|
|
23
|
-
"test:watch": "vitest",
|
|
24
|
-
"test:ui": "vitest --ui",
|
|
25
|
-
"test:coverage": "vitest run --coverage",
|
|
26
|
-
"build": "tsx src/main.ts --all -t --cc --co -y --verbose",
|
|
27
|
-
"lint": "oxlint --fix --config .oxlintrc.json",
|
|
28
|
-
"lint:eslint": "eslint --ext .js,.ts,.vue src/ --fix"
|
|
29
|
-
},
|
|
30
|
-
"keywords": [
|
|
31
|
-
"vue",
|
|
32
|
-
"compiler",
|
|
33
|
-
"minifier",
|
|
34
|
-
"vue3",
|
|
35
|
-
"versacompiler",
|
|
36
|
-
"typescript",
|
|
37
|
-
"linter"
|
|
38
|
-
],
|
|
39
|
-
"author": "Jorge Jara H (kriollone@gmail.com)",
|
|
40
|
-
"license": "MIT",
|
|
41
|
-
"repository": {
|
|
42
|
-
"type": "git",
|
|
43
|
-
"url": "git+https://github.com/kriollo/versaCompiler.git"
|
|
44
|
-
},
|
|
45
|
-
"bugs": {
|
|
46
|
-
"url": "https://github.com/kriollo/versaCompiler/issues"
|
|
47
|
-
},
|
|
48
|
-
"homepage": "https://github.com/kriollo/versaCompiler#readme",
|
|
49
|
-
"dependencies": {
|
|
50
|
-
"@vue/compiler-dom": "^3.5.24",
|
|
51
|
-
"@vue/reactivity": "^3.5.24",
|
|
52
|
-
"@vue/runtime-core": "^3.5.24",
|
|
53
|
-
"@vue/runtime-dom": "^3.5.24",
|
|
54
|
-
"browser-sync": "^3.0.4",
|
|
55
|
-
"chalk": "5.6.2",
|
|
56
|
-
"chokidar": "^
|
|
57
|
-
"enhanced-resolve": "^5.18.3",
|
|
58
|
-
"execa": "^9.6.0",
|
|
59
|
-
"find-root": "^1.1.0",
|
|
60
|
-
"fs-extra": "^11.3.2",
|
|
61
|
-
"get-port": "^7.1.0",
|
|
62
|
-
"minify-html-literals": "^1.3.5",
|
|
63
|
-
"minimatch": "^10.1.1",
|
|
64
|
-
"oxc-minify": "^0.
|
|
65
|
-
"oxc-parser": "^0.
|
|
66
|
-
"oxc-transform": "^0.
|
|
67
|
-
"resolve": "^1.22.11",
|
|
68
|
-
"tsx": "^4.20.6",
|
|
69
|
-
"typescript": "^5.9.3",
|
|
70
|
-
"vue": "3.5.
|
|
71
|
-
"yargs": "^18.0.0"
|
|
72
|
-
},
|
|
73
|
-
"devDependencies": {
|
|
74
|
-
"@eslint/eslintrc": "^3.3.1",
|
|
75
|
-
"@tailwindcss/cli": "^4.1.17",
|
|
76
|
-
"@types/browser-sync": "^2.29.1",
|
|
77
|
-
"@types/find-root": "^1.1.4",
|
|
78
|
-
"@types/fs-extra": "^11.0.4",
|
|
79
|
-
"@types/jest": "^30.0.0",
|
|
80
|
-
"@types/mocha": "^10.0.10",
|
|
81
|
-
"@types/node": "^
|
|
82
|
-
"@types/resolve": "^1.20.6",
|
|
83
|
-
"@types/yargs": "^17.0.35",
|
|
84
|
-
"@typescript-eslint/eslint-plugin": "^8.46.4",
|
|
85
|
-
"@typescript-eslint/parser": "^8.46.4",
|
|
86
|
-
"@vitest/coverage-v8": "^4.0.9",
|
|
87
|
-
"@vitest/ui": "^4.0.9",
|
|
88
|
-
"@vue/eslint-config-typescript": "^14.6.0",
|
|
89
|
-
"@vue/test-utils": "^2.4.6",
|
|
90
|
-
"code-tag": "^1.2.0",
|
|
91
|
-
"eslint": "^9.39.1",
|
|
92
|
-
"eslint-import-resolver-typescript": "^4.4.4",
|
|
93
|
-
"eslint-plugin-import": "^2.32.0",
|
|
94
|
-
"eslint-plugin-oxlint": "^1.28.0",
|
|
95
|
-
"eslint-plugin-promise": "^7.2.1",
|
|
96
|
-
"eslint-plugin-unicorn": "^62.0.0",
|
|
97
|
-
"eslint-plugin-vue": "^10.5.1",
|
|
98
|
-
"oxlint": "^1.28.0",
|
|
99
|
-
"
|
|
100
|
-
"
|
|
101
|
-
"
|
|
102
|
-
"
|
|
103
|
-
"
|
|
104
|
-
"
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "versacompiler",
|
|
3
|
+
"version": "2.3.0",
|
|
4
|
+
"description": "Una herramienta para compilar y minificar archivos .vue, .js y .ts para proyectos de Vue 3 con soporte para TypeScript.",
|
|
5
|
+
"main": "dist/main.js",
|
|
6
|
+
"bin": {
|
|
7
|
+
"versacompiler": "dist/main.js"
|
|
8
|
+
},
|
|
9
|
+
"publishConfig": {
|
|
10
|
+
"access": "public"
|
|
11
|
+
},
|
|
12
|
+
"files": [
|
|
13
|
+
"dist",
|
|
14
|
+
"LICENSE",
|
|
15
|
+
"README.md"
|
|
16
|
+
],
|
|
17
|
+
"type": "module",
|
|
18
|
+
"scripts": {
|
|
19
|
+
"dev": "tsx --watch src/main.ts --watch --verbose --tailwind",
|
|
20
|
+
"file": "tsx src/main.ts ",
|
|
21
|
+
"compile": "tsx src/main.ts --all --cc --co -y --verbose --prod",
|
|
22
|
+
"test": "vitest run",
|
|
23
|
+
"test:watch": "vitest",
|
|
24
|
+
"test:ui": "vitest --ui",
|
|
25
|
+
"test:coverage": "vitest run --coverage",
|
|
26
|
+
"build": "tsx src/main.ts --all -t --cc --co -y --verbose",
|
|
27
|
+
"lint": "oxlint --fix --config .oxlintrc.json",
|
|
28
|
+
"lint:eslint": "eslint --ext .js,.ts,.vue src/ --fix"
|
|
29
|
+
},
|
|
30
|
+
"keywords": [
|
|
31
|
+
"vue",
|
|
32
|
+
"compiler",
|
|
33
|
+
"minifier",
|
|
34
|
+
"vue3",
|
|
35
|
+
"versacompiler",
|
|
36
|
+
"typescript",
|
|
37
|
+
"linter"
|
|
38
|
+
],
|
|
39
|
+
"author": "Jorge Jara H (kriollone@gmail.com)",
|
|
40
|
+
"license": "MIT",
|
|
41
|
+
"repository": {
|
|
42
|
+
"type": "git",
|
|
43
|
+
"url": "git+https://github.com/kriollo/versaCompiler.git"
|
|
44
|
+
},
|
|
45
|
+
"bugs": {
|
|
46
|
+
"url": "https://github.com/kriollo/versaCompiler/issues"
|
|
47
|
+
},
|
|
48
|
+
"homepage": "https://github.com/kriollo/versaCompiler#readme",
|
|
49
|
+
"dependencies": {
|
|
50
|
+
"@vue/compiler-dom": "^3.5.24",
|
|
51
|
+
"@vue/reactivity": "^3.5.24",
|
|
52
|
+
"@vue/runtime-core": "^3.5.24",
|
|
53
|
+
"@vue/runtime-dom": "^3.5.24",
|
|
54
|
+
"browser-sync": "^3.0.4",
|
|
55
|
+
"chalk": "5.6.2",
|
|
56
|
+
"chokidar": "^5.0.0",
|
|
57
|
+
"enhanced-resolve": "^5.18.3",
|
|
58
|
+
"execa": "^9.6.0",
|
|
59
|
+
"find-root": "^1.1.0",
|
|
60
|
+
"fs-extra": "^11.3.2",
|
|
61
|
+
"get-port": "^7.1.0",
|
|
62
|
+
"minify-html-literals": "^1.3.5",
|
|
63
|
+
"minimatch": "^10.1.1",
|
|
64
|
+
"oxc-minify": "^0.108.0",
|
|
65
|
+
"oxc-parser": "^0.108.0",
|
|
66
|
+
"oxc-transform": "^0.108.0",
|
|
67
|
+
"resolve": "^1.22.11",
|
|
68
|
+
"tsx": "^4.20.6",
|
|
69
|
+
"typescript": "^5.9.3",
|
|
70
|
+
"vue": "3.5.26",
|
|
71
|
+
"yargs": "^18.0.0"
|
|
72
|
+
},
|
|
73
|
+
"devDependencies": {
|
|
74
|
+
"@eslint/eslintrc": "^3.3.1",
|
|
75
|
+
"@tailwindcss/cli": "^4.1.17",
|
|
76
|
+
"@types/browser-sync": "^2.29.1",
|
|
77
|
+
"@types/find-root": "^1.1.4",
|
|
78
|
+
"@types/fs-extra": "^11.0.4",
|
|
79
|
+
"@types/jest": "^30.0.0",
|
|
80
|
+
"@types/mocha": "^10.0.10",
|
|
81
|
+
"@types/node": "^25.0.8",
|
|
82
|
+
"@types/resolve": "^1.20.6",
|
|
83
|
+
"@types/yargs": "^17.0.35",
|
|
84
|
+
"@typescript-eslint/eslint-plugin": "^8.46.4",
|
|
85
|
+
"@typescript-eslint/parser": "^8.46.4",
|
|
86
|
+
"@vitest/coverage-v8": "^4.0.9",
|
|
87
|
+
"@vitest/ui": "^4.0.9",
|
|
88
|
+
"@vue/eslint-config-typescript": "^14.6.0",
|
|
89
|
+
"@vue/test-utils": "^2.4.6",
|
|
90
|
+
"code-tag": "^1.2.0",
|
|
91
|
+
"eslint": "^9.39.1",
|
|
92
|
+
"eslint-import-resolver-typescript": "^4.4.4",
|
|
93
|
+
"eslint-plugin-import": "^2.32.0",
|
|
94
|
+
"eslint-plugin-oxlint": "^1.28.0",
|
|
95
|
+
"eslint-plugin-promise": "^7.2.1",
|
|
96
|
+
"eslint-plugin-unicorn": "^62.0.0",
|
|
97
|
+
"eslint-plugin-vue": "^10.5.1",
|
|
98
|
+
"oxlint": "^1.28.0",
|
|
99
|
+
"pinia": "^3.0.4",
|
|
100
|
+
"prettier": "3.8.0",
|
|
101
|
+
"rimraf": "^6.1.0",
|
|
102
|
+
"sweetalert2": "^11.26.3",
|
|
103
|
+
"tailwindcss": "^4.1.17",
|
|
104
|
+
"vitest": "^4.0.9",
|
|
105
|
+
"vue-eslint-parser": "^10.2.0",
|
|
106
|
+
"vue-router": "^4.6.4"
|
|
107
|
+
},
|
|
108
|
+
"packageManager": "pnpm@10.15.0+sha512.486ebc259d3e999a4e8691ce03b5cac4a71cbeca39372a9b762cb500cfdf0873e2cb16abe3d951b1ee2cf012503f027b98b6584e4df22524e0c7450d9ec7aa7b"
|
|
109
|
+
}
|