Skip to content

Commit

Permalink
Merge branch 'main' into patch-1
Browse files Browse the repository at this point in the history
  • Loading branch information
Franqsanz authored Nov 2, 2023
2 parents b3fb11c + fac9bf7 commit 4536d66
Show file tree
Hide file tree
Showing 33 changed files with 1,536 additions and 1,449 deletions.
7 changes: 4 additions & 3 deletions .eslintrc.cjs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
// @ts-check
const { builtinModules } = require('node:module')
const { defineConfig } = require('eslint-define-config')
const pkg = require('./package.json')

module.exports = defineConfig({
root: true,
Expand All @@ -14,7 +15,7 @@ module.exports = defineConfig({
parser: '@typescript-eslint/parser',
parserOptions: {
sourceType: 'module',
ecmaVersion: 2021,
ecmaVersion: 2022,
},
rules: {
eqeqeq: ['warn', 'always', { null: 'never' }],
Expand Down Expand Up @@ -163,13 +164,13 @@ module.exports = defineConfig({
'node/no-unsupported-features/es-builtins': [
'error',
{
version: '^14.18.0 || >=16.0.0',
version: pkg.engines.node,
},
],
'node/no-unsupported-features/node-builtins': [
'error',
{
version: '^14.18.0 || >=16.0.0',
version: pkg.engines.node,
},
],
'@typescript-eslint/explicit-module-boundary-types': 'off',
Expand Down
13 changes: 7 additions & 6 deletions .prettierrc.json
Original file line number Diff line number Diff line change
@@ -1,22 +1,23 @@
{
"semi": false,
"tabWidth": 2,
"singleQuote": true,
"printWidth": 80,
"trailingComma": "all",
"overrides": [
{
"files": ["*.json5"],
"files": [
"*.json5"
],
"options": {
"singleQuote": false,
"quoteProps": "preserve"
}
},
{
"files": ["*.yml"],
"files": [
"*.yml"
],
"options": {
"singleQuote": false
}
}
]
}
}
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
<a href="https://npmjs.com/package/vite"><img src="https://img.shields.io/npm/v/vite.svg" alt="npm package"></a>
<a href="https://nodejs.org/en/about/releases/"><img src="https://img.shields.io/node/v/vite.svg" alt="node compatibility"></a>
<a href="https://github.com/vitejs/vite/actions/workflows/ci.yml"><img src="https://github.com/vitejs/vite/actions/workflows/ci.yml/badge.svg?branch=main" alt="build status"></a>
<a href="https://pr.new/vitejs/vite"><img src="https://developer.stackblitz.com/img/start_pr_dark_small.svg" alt="Start new PR in StackBlitz Codeflow"></a>
<a href="https://chat.vitejs.dev"><img src="https://img.shields.io/badge/chat-discord-blue?style=flat&logo=discord" alt="discord chat"></a>
</p>
<br/>
Expand Down
39 changes: 19 additions & 20 deletions docs/.vitepress/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -33,26 +33,8 @@ const versionLinks = ((): DefaultTheme.NavItemWithLink[] => {
switch (deployType) {
case 'main':
case 'local':
return [
{
text: 'Documentación de Vite 4 (Producción)',
link: 'https://es.vitejs.dev',
},
{
text: 'Documentación de Vite 3',
link: 'https://es.vitejs.dev',
},
{
text: 'Documentación de Vite 2',
link: 'https://v2.vitejs.dev',
},
]
case 'release':
return [
{
text: 'Documentación de Vite 3',
link: 'https://es.vitejs.dev',
},
{
text: 'Documentación de Vite 2',
link: 'https://v2.vitejs.dev',
Expand Down Expand Up @@ -106,6 +88,7 @@ export default defineConfig({
{ icon: 'discord', link: 'https://chat.vitejs.dev' },
{ icon: 'github', link: 'https://github.com/vitejs/vite' },
],
darkModeSwitchLabel: 'Apariencia',
algolia: {
appId: '7H67QR5P0A',
apiKey: 'deaab78bcdfe96b599497d25acc6460e',
Expand Down Expand Up @@ -168,7 +151,8 @@ export default defineConfig({

footer: {
message: `Publicado bajo licencia MIT. (${commitRef})`,
copyright: 'Copyright © 2019-actualidad Evan You & colaboradores de Vite',
copyright:
'Copyright © 2019-actualidad Evan You & colaboradores de Vite',
},

nav: [
Expand Down Expand Up @@ -206,6 +190,10 @@ export default defineConfig({
text: 'Lista de Cambios',
link: 'https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md',
},
{
text: 'Contribución',
link: 'https://github.com/vitejs/docs-es/blob/main/CONTRIBUTING.md',
},
],
},
],
Expand Down Expand Up @@ -281,8 +269,16 @@ export default defineConfig({
text: 'Filosofía',
link: '/guide/philosophy',
},
// {
// text: 'Migración desde v2',
// link: '/guide/migration-v2-to-v3',
// },
// {
// text: 'Migración desde v3',
// link: '/guide/migration-v3-to-v4',
// },
{
text: 'Migración desde v3',
text: 'Migración desde v4',
link: '/guide/migration',
},
],
Expand Down Expand Up @@ -349,5 +345,8 @@ export default defineConfig({
},
],
},
outline: {
level: [2, 3],
},
},
})
27 changes: 13 additions & 14 deletions docs/.vitepress/theme/components/AsideSponsors.vue
Original file line number Diff line number Diff line change
Expand Up @@ -8,22 +8,22 @@ const sponsors = computed(() => {
data?.value.map((sponsor) => {
return {
size: sponsor.size === 'big' ? 'mini' : 'xmini',
items: sponsor.items
items: sponsor.items,
}
}) ?? []
)
})
</script>

<template>
<!-- <a class="viteconf" href="https://viteconf.org" target="_blank">
<a class="viteconf" href="https://viteconf.org/23" target="_blank">
<img width="22" height="22" src="/viteconf.svg" />
<span>
<p class="extra-info">Conferencia Online Gratis</p>
<p class="heading">ViteConf - Oct 11</p>
<p class="extra-info">¡Adquiere tu entrada!</p>
<p class="extra-info">Free Online Conference</p>
<p class="heading">ViteConf 23 - Oct 5</p>
<p class="extra-info">Get your ticket now!</p>
</span>
</a> -->
</a>
<VPDocAsideSponsors v-if="data" :data="sponsors" />
</template>

Expand All @@ -36,10 +36,9 @@ const sponsors = computed(() => {
padding-top: 0.4rem;
padding-bottom: 0.4rem;
position: relative;
font-size: 1rem;
font-size: 0.9rem;
font-weight: 700;
line-height: 1.1rem;
filter: grayscale(100%);
display: flex;
align-items: center;
justify-content: center;
Expand All @@ -49,23 +48,23 @@ const sponsors = computed(() => {
transition: border-color 0.5s;
}
.viteconf:hover {
filter: grayscale(0%);
border: 2px solid var(--vp-c-brand-light);
}
.viteconf img {
position: absolute;
left: 1.5rem;
transition: transform 0.5s;
transform: scale(1.25);
}
.viteconf:hover img {
transform: scale(1.75);
}
.viteconf:hover .heading {
.viteconf .heading {
background-image: linear-gradient(
120deg,
#bd34fe 16%,
var(--vp-c-brand-light),
var(--vp-c-brand-light)
#b047ff 16%,
var(--vp-c-brand-lighter),
var(--vp-c-brand-lighter)
);
background-clip: text;
-webkit-background-clip: text;
Expand All @@ -81,4 +80,4 @@ const sponsors = computed(() => {
.viteconf:hover .extra-info {
opacity: 0.9;
}
</style>
</style>
5 changes: 4 additions & 1 deletion docs/.vitepress/theme/components/HomeSponsors.vue
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,10 @@ const { data } = useSponsor()
text-align: center;
font-weight: 600;
white-space: nowrap;
transition: color 0.25s, border-color 0.25s, background-color 0.25s;
transition:
color 0.25s,
border-color 0.25s,
background-color 0.25s;
/* .VPButton.medium */
border-radius: 20px;
padding: 0 20px;
Expand Down
4 changes: 2 additions & 2 deletions docs/blog/anunciando-vite2.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,11 @@ Desde que decidimos refactorizar completamente los archivos internos antes que l

La idea original de Vite comenzó como un [prototipo trucado que entregaba componentes de una pagina de Vue sobre ESM nativo](https://github.com/vuejs/vue-dev-server). Vite 1 fue la continuación de esa idea con HMR implementado en base a esta.

Vite 2.0 toma lo que aprendimos durante este recorrido y es rediseñado desde cero con una arquitectura interna más robusta. Ahora es completamente independiente del marco de trabajo, y todos lo que es específico para cada marco de trabajos es delegado a los plugins. Ahora hay [plantillas oficiales para Vue, React, Preact, Lit Element](https://github.com/vitejs/vite/tree/main/packages/create-vite), y esfuerzos en curso hechos por la comunidad para la integración con Svelte.
Vite 2.0 toma lo que aprendimos durante este recorrido y es rediseñado desde cero con una arquitectura interna más robusta. Ahora es completamente independiente del marco de trabajo, y todos lo que es específico para cada marco de trabajos es delegado a los complementos. Ahora hay [plantillas oficiales para Vue, React, Preact, Lit Element](https://github.com/vitejs/vite/tree/main/packages/create-vite), y esfuerzos en curso hechos por la comunidad para la integración con Svelte.

### Nuevo formato de Plugin y API

Inspirado por [WMR](https://github.com/preactjs/wmr), el nuevo sistema de plugins extiende la interfaz de plugins de Rollup y es [compatible con varios plugins de Rollup](https://vite-rollup-plugins.patak.dev/) por defecto. Los plugins pueden usar hooks de Rollup compatibles, adicionalmente con hooks específicos de Vite y propiedades para ajustar el comportamiento específico de Vite (ej. diferenciar desarrollo vs construcción o manejo personalizado del HMR).
Inspirado por [WMR](https://github.com/preactjs/wmr), el nuevo sistema de complementos extiende la interfaz de complementos de Rollup y es [compatible con varios complementos de Rollup](https://vite-rollup-plugins.patak.dev/) por defecto. Los complementos pueden usar hooks de Rollup compatibles, adicionalmente con hooks específicos de Vite y propiedades para ajustar el comportamiento específico de Vite (ej. diferenciar desarrollo vs construcción o manejo personalizado del HMR).

La [API programable](https://vitejs.dev/guide/api-javascript.html) también fue mejorada para facilitar herramientas de alto nivel / marcos de trabajos construidos con base en Vite.

Expand Down
15 changes: 12 additions & 3 deletions docs/config/build-options.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ Especifica el directorio en el que se alojarán los recursos generados (en relac
## build.assetsInlineLimit
- **Tipo:** `number`
- **Por defecto:** `4096` (4kb)
- **Por defecto:** `4096` (4KiB)
Los recursos importados o a los que se hace referencia que son más pequeños que este umbral se insertarán como URL base64 para evitar solicitudes http adicionales. Configurar en `0` para deshabilitar la inserción por completo.
Expand Down Expand Up @@ -161,7 +161,7 @@ Compilar como una librería. Se requiere `entry` ya que la librería no puede us
- **Por defecto:** `false`
- **Relacionado:** [Integración del backend](/guide/backend-integration)
Cuando se coloca en `true`, la compilación también generará un archivo `manifest.json` que contiene una asignación de nombres de archivo de recursos sin hash a sus versiones hash, que luego puede ser utilizado por un marco de trabajo orientado a servidor para representar los enlaces de recursos correctos.
Cuando se coloca en `true`, la compilación también generará un archivo `.vite/manifest.json` que contiene una asignación de nombres de archivo de recursos sin hash a sus versiones hash, que luego puede ser utilizado por un marco de trabajo orientado a servidor para representar los enlaces de recursos correctos.
## build.ssrManifest
Expand All @@ -179,6 +179,13 @@ Cuando se coloca en `true`, la compilación también generará un manifiesto SSR
Produce la compilación orientada a SSR. El valor puede ser una cadena para especificar directamente la entrada SSR, o `true`, que requiere especificar la entrada SSR a través de `rollupOptions.input`.
## build.ssrEmitAssets
- **Tipo:** `boolean`
- **Por defecto:** `false`
Durante la compilación de SSR, los recursos estáticos no se emiten, ya que se supone que se emitirán como parte de la compilación del cliente. Esta opción permite que los frameworks fuercen su emisión tanto en el cliente como en la compilación SSR. Es responsabilidad del framework fusionar los recursos con un paso posterior a la compilación.
## build.minify
- **Tipo:** `boolean | 'terser' | 'esbuild'`
Expand All @@ -200,6 +207,8 @@ npm add -D terser
[Opciones de minimización](https://terser.org/docs/api-reference#minify-options) adicionales para pasar a Terser.
Además, también puedes pasar una opción `maxWorkers: number` para especificar el número máximo de workers que se generarán. El valor predeterminado es el número de CPU menos 1.
## build.write
- **Tipo:** `boolean`
Expand Down Expand Up @@ -234,7 +243,7 @@ Habilita/deshabilita los informes de tamaño comprimido con gzip. La compresión
- **Tipo:** `number`
- **Por defecto:** `500`
Límite para advertencias de tamaño de fragmento (en kbs). Se compara con el tamaño del fragmento sin comprimir, ya que [el tamaño de JavaScript en sí está relacionado con el tiempo de ejecución](https://v8.dev/blog/cost-of-javascript-2019).
Límite para advertencias de tamaño de fragmento (en kB). Se compara con el tamaño del fragmento sin comprimir, ya que [el tamaño de JavaScript en sí está relacionado con el tiempo de ejecución](https://v8.dev/blog/cost-of-javascript-2019).
## build.watch
Expand Down
25 changes: 8 additions & 17 deletions docs/config/server-options.md
Original file line number Diff line number Diff line change
Expand Up @@ -173,26 +173,17 @@ Consulta [el documento de WSL](https://learn.microsoft.com/en-us/windows/wsl/net

## server.watch

- **Tipo:** `object`
- **Tipo:** `object | null`

Opciones para el observador del sistema de archivos que serán pasados a [chokidar](https://github.com/paulmillr/chokidar#api).
Opciones para el observador del sistema de archivos que serán pasados a [chokidar](https://github.com/paulmillr/chokidar#api).

El observador del servidor Vite omite los directorios `.git/` y `node_modules/` de forma predeterminada. Si deseas ver un paquete dentro de `node_modules/`, puede pasar un patrón global negado a `server.watch.ignored`. Es decir:
El observador del servidor Vite observa el `root` y omite los directorios `.git/` y `node_modules/` de forma predeterminada. Al actualizar un archivo observado, Vite aplicará HMR y actualizará la página solo si es necesario.

```js
export default defineConfig({
server: {
watch: {
ignored: ['!**/node_modules/your-package-name/**'],
},
},
// El paquete observado debe excluirse de la optimización,
// para que pueda aparecer en el gráfico de dependencia y activar hot reload.
optimizeDeps: {
exclude: ['your-package-name'],
},
})
```
Si se configura en `null`, no se observará ningún archivo. `server.watcher` proporcionará un emisor de eventos compatible, pero invocar a `add` o `unwatch` no tendrá ningún efecto.

::: warning Observando archivos en `node_modules`
Actualmente no es posible ver archivos y paquetes en `node_modules`. Para obtener más avances y soluciones alternativas, puede seguir la [propuesta #8619](https://github.com/vitejs/vite/issues/8619).
:::

::: warning Uso de Vite en el Subsistema de Windows para Linux (WSL) 2

Expand Down
2 changes: 1 addition & 1 deletion docs/config/shared-options.md
Original file line number Diff line number Diff line change
Expand Up @@ -326,7 +326,7 @@ Configura Lightning CSS. Todas las opciones de transformación completas se pued

- **Tipo:** `ESBuildOptions | false`

`ESBuildOptions` amplía [las opciones de transformación propias de esbuild](https://esbuild.github.io/api/#transform-api). El caso de uso más común es personalizar JSX:
`ESBuildOptions` amplía [las opciones de transformación propias de esbuild](https://esbuild.github.io/api/#transform). El caso de uso más común es personalizar JSX:

```js
export default defineConfig({
Expand Down
15 changes: 13 additions & 2 deletions docs/config/ssr-options.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,21 @@

Destino de compilación para el servidor SSR.

## ssr.format
## ssr.resolve.conditions

- **Experimental** [El soporte CJS se eliminará en Vite 5](https://github.com/vitejs/vite/discussions/13816)
- **Tipo:** `'esm' | 'cjs'`
- **Por defecto:** `esm`
- **Tipo:** `string[]`
- **Relacionado:** [resolve.conditions](./shared-options.md#resolve-conditions)

El valor predeterminado es la raíz [`resolve.conditions`](./shared-options.md#resolve-conditions).

Estas condiciones se utilizan en la canalización del complemento y solo afectan a las dependencias no externalizadas durante la compilación de SSR. Utiliza `ssr.resolve.externalConditions` para afectar las importaciones externalizadas.

## ssr.resolve.externalConditions

- **Tipo:** `string[]`
- **Por defecto:** `[]`

Formato de compilación para el servidor SSR. Desde Vite v3, la compilación SSR genera ESM de forma predeterminada. Se puede seleccionar `'cjs'` para generar una compilación CJS, pero no se recomienda. La opción se deja marcada como experimental para dar a los usuarios más tiempo para actualizar a ESM. Las compilaciones de CJS requieren heurísticas de externalización complejas que no están presentes en el formato ESM.
Condiciones que se utilizan durante la importación ssr (incluido `ssrLoadModule`) de dependencias externalizadas.
Loading

0 comments on commit 4536d66

Please sign in to comment.