wrap-env 16.3.1 → 16.3.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. package/README-es.md +1 -442
  2. package/package.json +1 -1
package/README-es.md CHANGED
@@ -1,442 +1 @@
1
- <div align="center">
2
-
3
- <p>
4
- <sup>
5
- <a href="https://github.com/sponsors/motdotla">Dotenv es apoyado por la comunidad.</a>
6
- </sup>
7
- </p>
8
- <sup>Gracias espaciales a:</sup>
9
- <br>
10
- <br>
11
- <a href="https://www.warp.dev/?utm_source=github&utm_medium=referral&utm_campaign=dotenv_p_20220831">
12
- <div>
13
- <img src="https://res.cloudinary.com/dotenv-org/image/upload/v1661980709/warp_hi8oqj.png" width="230" alt="Warp">
14
- </div>
15
- <b>Warp es una rápida e impresionante terminal basada en Rust, reinventado para funcionar como una aplicación moderna.</b>
16
- <div>
17
- <sup>Haga más en la CLI con edición de texto real, resultado básado en bloques, y busqueda de comandos de IA.</sup>
18
- </div>
19
- </a>
20
- <br>
21
- <a href="https://retool.com/?utm_source=sponsor&utm_campaign=dotenv">
22
- <div>
23
- <img src="https://res.cloudinary.com/dotenv-org/image/upload/c_scale,w_300/v1664466968/logo-full-black_vidfqf.png" width="270" alt="Retool">
24
- </div>
25
- <b>Retool ayuda a los desarrolladores a crear software interno personalizado, como aplicaciones CRUD y paneles de administración, realmente rápido.</b>
26
- <div>
27
- <sup>Construya Interfaces de Usuario de forma visual con componentes flexibles, conéctese a cualquier fuente de datos, y escriba lógica de negocio en JavaScript.</sup>
28
- </div>
29
- </a>
30
- <br>
31
- <a href="https://workos.com/?utm_campaign=github_repo&utm_medium=referral&utm_content=dotenv&utm_source=github">
32
- <div>
33
- <img src="https://res.cloudinary.com/dotenv-org/image/upload/c_scale,w_400/v1665605496/68747470733a2f2f73696e647265736f726875732e636f6d2f6173736574732f7468616e6b732f776f726b6f732d6c6f676f2d77686974652d62672e737667_zdmsbu.svg" width="270" alt="WorkOS">
34
- </div>
35
- <b>Su Apliación, Lista para la Empresa.</b>
36
- <div>
37
- <sup>Agrega Inicio de Sesión Único, Autenticación Multi-Factor, y mucho más, en minutos en lugar de meses.</sup>
38
- </div>
39
- </a>
40
- <hr>
41
- <br>
42
- <br>
43
- <br>
44
- <br>
45
-
46
- </div>
47
-
48
- # dotenv [![NPM version](https://img.shields.io/npm/v/dotenv.svg?style=flat-square)](https://www.npmjs.com/package/dotenv)
49
-
50
- <img src="https://raw.githubusercontent.com/motdotla/dotenv/master/dotenv.svg" alt="dotenv" align="right" width="200" />
51
-
52
- Dotenv es un módulo de dependencia cero que carga las variables de entorno desde un archivo `.env` en [`process.env`](https://nodejs.org/docs/latest/api/process.html#process_process_env). El almacenamiento de la configuración del entorno separado del código está basado en la metodología [The Twelve-Factor App](http://12factor.net/config).
53
-
54
- [![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat-square)](https://github.com/feross/standard)
55
- [![LICENSE](https://img.shields.io/github/license/motdotla/dotenv.svg)](LICENSE)
56
-
57
- ## Instalación
58
-
59
- ```bash
60
- # instalación local (recomendado)
61
- npm install dotenv --save
62
- ```
63
-
64
- O installación con yarn? `yarn add dotenv`
65
-
66
- ## Uso
67
-
68
- Cree un archivo `.env` en la raíz de su proyecto:
69
-
70
- ```dosini
71
- S3_BUCKET="YOURS3BUCKET"
72
- SECRET_KEY="YOURSECRETKEYGOESHERE"
73
- ```
74
-
75
- Tan prónto como sea posible en su aplicación, importe y configure dotenv:
76
-
77
- ```javascript
78
- require('dotenv').config()
79
- console.log(process.env) // elimine esto después que haya confirmado que esta funcionando
80
- ```
81
-
82
- .. o usa ES6?
83
-
84
- ```javascript
85
- import * as dotenv from 'dotenv' // vea en https://github.com/motdotla/dotenv#como-uso-dotenv-con-import
86
- // REVISAR LINK DE REFERENCIA DE IMPORTACIÓN
87
- dotenv.config()
88
- import express from 'express'
89
- ```
90
-
91
- Eso es todo. `process.env` ahora tiene las claves y los valores que definiste en tu archivo `.env`:
92
-
93
- ```javascript
94
- require('dotenv').config()
95
-
96
- ...
97
-
98
- s3.getBucketCors({Bucket: process.env.S3_BUCKET}, function(err, data) {})
99
- ```
100
-
101
- ### Valores multilínea
102
-
103
- Si necesita variables de varias líneas, por ejemplo, claves privadas, ahora se admiten en la versión (`>= v15.0.0`) con saltos de línea:
104
-
105
- ```dosini
106
- PRIVATE_KEY="-----BEGIN RSA PRIVATE KEY-----
107
- ...
108
- Kh9NV...
109
- ...
110
- -----END RSA PRIVATE KEY-----"
111
- ```
112
-
113
- Alternativamente, puede usar comillas dobles y usar el carácter `\n`:
114
-
115
- ```dosini
116
- PRIVATE_KEY="-----BEGIN RSA PRIVATE KEY-----\nKh9NV...\n-----END RSA PRIVATE KEY-----\n"
117
- ```
118
-
119
- ### Comentarios
120
-
121
- Los comentarios pueden ser agregados en tu archivo o en la misma línea:
122
-
123
- ```dosini
124
- # This is a comment
125
- SECRET_KEY=YOURSECRETKEYGOESHERE # comment
126
- SECRET_HASH="something-with-a-#-hash"
127
- ```
128
-
129
- Los comentarios comienzan donde existe un `#`, entonces, si su valor contiene un `#`, enciérrelo entre comillas. Este es un cambio importante desde la versión `>= v15.0.0` en adelante.
130
-
131
- ### Análisis
132
-
133
- El motor que analiza el contenido de su archivo que contiene variables de entorno está disponible para su uso. Este Acepta una Cadena o un Búfer y devolverá un Objeto con las claves y los valores analizados.
134
-
135
- ```javascript
136
- const dotenv = require('dotenv')
137
- const buf = Buffer.from('BASICO=basico')
138
- const config = dotenv.parse(buf) // devolverá un objeto
139
- console.log(typeof config, config) // objeto { BASICO : 'basico' }
140
- ```
141
-
142
- ### Precarga
143
-
144
- Puede usar el `--require` (`-r`) [opción de línea de comando](https://nodejs.org/api/cli.html#-r---require-module) para precargar dotenv. Al hacer esto, no necesita requerir ni cargar dotnev en el código de su aplicación.
145
-
146
- ```bash
147
- $ node -r dotenv/config tu_script.js
148
- ```
149
-
150
- Las opciones de configuración a continuación se admiten como argumentos de línea de comandos en el formato `dotenv_config_<option>=value`
151
-
152
- ```bash
153
- $ node -r dotenv/config tu_script.js dotenv_config_path=/custom/path/to/.env dotenv_config_debug=true
154
- ```
155
-
156
- Además, puede usar variables de entorno para establecer opciones de configuración. Los argumentos de línea de comandos precederán a estos.
157
-
158
- ```bash
159
- $ DOTENV_CONFIG_<OPTION>=value node -r dotenv/config tu_script.js
160
- ```
161
-
162
- ```bash
163
- $ DOTENV_CONFIG_ENCODING=latin1 DOTENV_CONFIG_DEBUG=true node -r dotenv/config tu_script.js dotenv_config_path=/custom/path/to/.env
164
- ```
165
-
166
- ### Expansión Variable
167
-
168
- Necesitaras agregar el valor de otro variable en una de sus variables? Usa [dotenv-expand](https://github.com/motdotla/dotenv-expand).
169
-
170
- ### Sincronizando
171
-
172
- Necesitas mentener sincronizados los archivos `.env` entre maquinas, entornos, o miembros del equipo? Usa
173
- [dotenv-vault](https://github.com/dotenv-org/dotenv-vault).
174
-
175
- ## Ejemplos
176
-
177
- Vea [ejemplos](https://github.com/dotenv-org/examples) sobre el uso de dotenv con varios frameworks, lenguajes y configuraciones.
178
-
179
- * [nodejs](https://github.com/dotenv-org/examples/tree/master/dotenv-nodejs)
180
- * [nodejs (depurar en)](https://github.com/dotenv-org/examples/tree/master/dotenv-nodejs-debug)
181
- * [nodejs (anular en)](https://github.com/dotenv-org/examples/tree/master/dotenv-nodejs-override)
182
- * [esm](https://github.com/dotenv-org/examples/tree/master/dotenv-esm)
183
- * [esm (precarga)](https://github.com/dotenv-org/examples/tree/master/dotenv-esm-preload)
184
- * [typescript](https://github.com/dotenv-org/examples/tree/master/dotenv-typescript)
185
- * [typescript parse](https://github.com/dotenv-org/examples/tree/master/dotenv-typescript-parse)
186
- * [typescript config](https://github.com/dotenv-org/examples/tree/master/dotenv-typescript-config)
187
- * [webpack](https://github.com/dotenv-org/examples/tree/master/dotenv-webpack)
188
- * [webpack (plugin)](https://github.com/dotenv-org/examples/tree/master/dotenv-webpack2)
189
- * [react](https://github.com/dotenv-org/examples/tree/master/dotenv-react)
190
- * [react (typescript)](https://github.com/dotenv-org/examples/tree/master/dotenv-react-typescript)
191
- * [express](https://github.com/dotenv-org/examples/tree/master/dotenv-express)
192
- * [nestjs](https://github.com/dotenv-org/examples/tree/master/dotenv-nestjs)
193
-
194
- ## Documentación
195
-
196
- Dotenv expone dos funciones:
197
-
198
- * `configuración`
199
- * `analizar`
200
-
201
- ### Configuración
202
-
203
- `Configuración` leerá su archivo `.env`, analizará el contenido, lo asignará a [`process.env`](https://nodejs.org/docs/latest/api/process.html#process_process_env),
204
- y devolverá un Objeto con una clave `parsed` que contiene el contenido cargado o una clave `error` si falla.
205
-
206
- ```js
207
- const result = dotenv.config()
208
-
209
- if (result.error) {
210
- throw result.error
211
- }
212
-
213
- console.log(result.parsed)
214
- ```
215
-
216
- Adicionalmente, puede pasar opciones a `configuracion`.
217
-
218
- #### Opciones
219
-
220
- ##### Ruta
221
-
222
- Por defecto: `path.resolve(process.cwd(), '.env')`
223
-
224
- Especifique una ruta personalizada si el archivo que contiene las variables de entorno se encuentra localizado en otro lugar.
225
-
226
- ```js
227
- require('dotenv').config({ path: '/personalizado/ruta/a/.env' })
228
- ```
229
-
230
- ##### Codificación
231
-
232
- Por defecto: `utf8`
233
-
234
- Especifique la codificación del archivo que contiene las variables de entorno.
235
-
236
- ```js
237
- require('dotenv').config({ encoding: 'latin1' })
238
- ```
239
-
240
- ##### Depurar
241
-
242
- Por defecto: `false`
243
-
244
- Active el registro de ayuda para depurar por qué ciertas claves o valores no se inician como lo esperabas.
245
-
246
- ```js
247
- require('dotenv').config({ debug: process.env.DEBUG })
248
- ```
249
-
250
- ##### Anular
251
-
252
- Por defecto: `false`
253
-
254
- Anule cualquier variable de entorno que ya se haya configurada en su maquina con los valores de su archivo .env.
255
-
256
- ```js
257
- require('dotenv').config({ override: true })
258
- ```
259
-
260
- ### Analizar
261
-
262
- El motor que analiza el contenido del archivo que contiene las variables de entorno está disponible para su uso. Acepta una Cadena o un Búfer y retornará un objecto con los valores analizados.
263
-
264
- ```js
265
- const dotenv = require('dotenv')
266
- const buf = Buffer.from('BASICO=basico')
267
- const config = dotenv.parse(buf) // devolverá un objeto
268
- console.log(typeof config, config) // objeto { BASICO : 'basico' }
269
- ```
270
-
271
- #### Opciones
272
-
273
- ##### Depurar
274
-
275
- Por defecto: `false`
276
-
277
- Active el registro de ayuda para depurar por qué ciertas claves o valores no se inician como lo esperabas.
278
-
279
- ```js
280
- const dotenv = require('dotenv')
281
- const buf = Buffer.from('hola mundo')
282
- const opt = { debug: true }
283
- const config = dotenv.parse(buf, opt)
284
- // espere por un mensaje de depuración porque el búfer no esta listo KEY=VAL
285
- ```
286
-
287
- ## FAQ
288
-
289
- ### ¿Por qué el archivo `.env` no carga mis variables de entorno correctamente?
290
-
291
- Lo más probable es que su archivo `.env` no esté en el lugar correcto. [Vea este stack overflow](https://stackoverflow.com/questions/42335016/dotenv-file-is-not-loading-environment-variables).
292
-
293
- Active el modo de depuración y vuelva a intentarlo...
294
-
295
- ```js
296
- require('dotenv').config({ debug: true })
297
- ```
298
-
299
- Recibirá un error apropiado en su consola.
300
-
301
- ### ¿Debo confirmar mi archivo `.env`?
302
-
303
- No. Recomendamos **enfáticamente** no enviar su archivo `.env` a la versión de control. Solo debe incluir los valores especificos del entorno, como la base de datos, contraseñas o claves API.
304
-
305
- ### ¿Debería tener multiples archivos `.env`?
306
-
307
- No. Recomendamos **enfáticamente** no tener un archivo `.env` "principal" y un archivo `.env` de "entorno" como `.env.test`. Su configuración debe variar entre implementaciones y no debe compartir valores entre entornos.
308
-
309
- > En una Aplicación de Doce Factores, las variables de entorno son controles diferenciados, cada uno totalmente independiente a otras variables de entorno. Nunca se agrupan como "entornos", sino que se gestionan de manera independiente para cada despliegue. Este es un modelo que se escala sin problemas a medida que la aplicación se expande de forma natural en más despliegues a lo largo de su vida.
310
- >
311
- > – [La Apliación de los Doce Factores](https://12factor.net/es/)
312
-
313
- ### ¿Qué reglas sigue el motor de análisis?
314
-
315
- El motor de análisis actualmente admite las siguientes reglas:
316
-
317
- - `BASICO=basico` se convierte en `{BASICO: 'basico'}`
318
- - las líneas vacías se saltan
319
- - las líneas que comienzan con `#` se tratan como comentarios
320
- - `#` marca el comienzo de un comentario (a menos que el valor esté entre comillas)
321
- - valores vacíos se convierten en cadenas vacías (`VACIO=` se convierte en `{VACIO: ''}`)
322
- - las comillas internas se mantienen (piensa en JSON) (`JSON={"foo": "bar"}` se convierte en `{JSON:"{\"foo\": \"bar\"}"`)
323
- - los espacios en blanco se eliminan de ambos extremos de los valores no citanos (aprende más en [`trim`](https://developer.mozilla.org/es/docs/Web/JavaScript/Reference/Global_Objects/String/Trim)) (`FOO= algo ` se convierte en `{FOO: 'algo'}`)
324
- - los valores entre comillas simples y dobles se escapan (`CITA_SIMPLE='citado'` se convierte en `{CITA_SIMPLE: "citado"}`)
325
- - los valores entre comillas simples y dobles mantienen los espacios en blanco en ambos extremos (`FOO=" algo "` se convierte en `{FOO: ' algo '}`)
326
- - los valores entre comillas dobles expanden nuevas líneas (`MULTILINEA="nueva\nlínea"` se convierte en
327
-
328
- ```
329
- {MULTILINEA: 'nueva
330
- línea'}
331
- ```
332
-
333
- - se admite la comilla simple invertida (`` SIGNO_ACENTO=`Esto tiene comillas 'simples' y "dobles" en su interior.` ``)
334
-
335
- ### ¿Qué sucede con las variables de entorno que ya estaban configuradas?
336
-
337
- Por defecto, nunca modificaremos ninguna variable de entorno que ya haya sido establecida. En particular, si hay una variable en su archivo `.env` que colisiona con una que ya existe en su entorno, entonces esa variable se omitirá.
338
-
339
- Si por el contrario, quieres anular `process.env` utiliza la opción `override`.
340
-
341
- ```javascript
342
- require('dotenv').config({ override: true })
343
- ```
344
-
345
- ### ¿Por qué mis variables de entorno no aparecen para React?
346
-
347
- Su código React se ejecuta en Webpack, donde el módulo `fs` o incluso el propio `process` global no son accesibles fuera-de-la-caja. El módulo `process.env` sólo puede ser inyectado a través de la configuración de Webpack.
348
-
349
- Si estás usando [`react-scripts`](https://www.npmjs.com/package/react-scripts), el cual se distribuye a través de [`create-react-app`](https://create-react-app.dev/), tiene dotenv incorporado pero con una singularidad. Escriba sus variables de entorno con `REACT_APP_`. Vea [este stack overflow](https://stackoverflow.com/questions/42182577/is-it-possible-to-use-dotenv-in-a-react-project) para más detalles.
350
-
351
- Si estás utilizando otros frameworks (por ejemplo, Next.js, Gatsby...), debes consultar su documentación para saber cómo injectar variables de entorno en el cliente.
352
-
353
- ### ¿Puedo personalizar/escribir plugins para dotenv?
354
-
355
- Sí! `dotenv.config()` devuelve un objeto que representa el archivo `.env` analizado. Esto te da todo lo que necesitas para poder establecer valores en `process.env`. Por ejemplo:
356
-
357
- ```js
358
- const dotenv = require('dotenv')
359
- const variableExpansion = require('dotenv-expand')
360
- const miEnv = dotenv.config()
361
- variableExpansion(miEnv)
362
- ```
363
-
364
- ### Cómo uso dotnev con `import`?
365
-
366
- Simplemente..
367
-
368
- ```javascript
369
- // index.mjs (ESM)
370
- import * as dotenv from 'dotenv' // vea https://github.com/motdotla/dotenv#como-uso-dotenv-con-import
371
- dotenv.config()
372
- import express from 'express'
373
- ```
374
-
375
- Un poco de historia...
376
-
377
- > Cuando se ejecuta un módulo que contiene una sentencia `import`, los módulos que importa serán cargados primero, y luego se ejecuta cada bloque del módulo en un recorrido en profundidad del gráfico de dependencias, evitando los ciclos al saltarse todo lo que ya se ha ejecutado.
378
- >
379
- > – [ES6 en Profundidad: Módulos](https://hacks.mozilla.org/2015/08/es6-in-depth-modules/)
380
-
381
- ¿Qué significa esto en lenguaje sencillo? Significa que se podrías pensar que lo siguiente funcionaría pero no lo hará.
382
-
383
- ```js
384
- // notificarError.mjs
385
- import { Cliente } from 'mejor-servicio-para-notificar-error'
386
-
387
- export default new Client(process.env.CLAVE_API)
388
-
389
- // index.mjs
390
- import dotenv from 'dotenv'
391
- dotenv.config()
392
-
393
- import notificarError from './notificarError.mjs'
394
- notificarError.report(new Error('ejemplo documentado'))
395
- ```
396
-
397
- `process.env.CLAVE_API` será vacio.
398
-
399
- En su lugar, el código anterior debe ser escrito como...
400
-
401
- ```js
402
- // notificarError.mjs
403
- import { Cliente } from 'mejor-servicio-para-notificar-errores'
404
-
405
- export default new Client(process.env.CLAVE_API)
406
-
407
- // index.mjs
408
- import * as dotenv from 'dotenv'
409
- dotenv.config()
410
-
411
- import notificarError from './notificarError.mjs'
412
- notificarError.report(new Error('ejemplo documentado'))
413
- ```
414
-
415
- ¿Esto tiene algo de sentido? Esto es poco poco intuitivo, pero es como funciona la importación de módulos en ES6. Aquí hay un ejemplo [ejemplo práctico de esta trampa](https://github.com/dotenv-org/examples/tree/master/dotenv-es6-import-pitfall).
416
-
417
- Existen dos arternativas a este planteamiento:
418
-
419
- 1. Precarga dotenv: `node --require dotenv/config index.js` (_Nota: no es necesario usar `import` dotenv con este método_)
420
- 2. Cree un archivo separado que ejecutará `config` primero como se describe en [este comentario #133](https://github.com/motdotla/dotenv/issues/133#issuecomment-255298822)
421
-
422
- ### ¿Qué pasa con la expansión de variable?
423
-
424
- Prueba [dotenv-expand](https://github.com/motdotla/dotenv-expand)
425
-
426
- ### ¿Qué pasa con la sincronización y la seguridad de los archivos .env?
427
-
428
- Vea [dotenv-vault](https://github.com/dotenv-org/dotenv-vault)
429
-
430
- ## Guía de contribución
431
-
432
- Vea [CONTRIBUTING.md](CONTRIBUTING.md)
433
-
434
- ## REGISTRO DE CAMBIOS
435
-
436
- Vea [CHANGELOG.md](CHANGELOG.md)
437
-
438
- ## ¿Quiénes utilizan dotenv?
439
-
440
- [Estos módulos npm dependen de él.](https://www.npmjs.com/browse/depended/dotenv)
441
-
442
- Los proyectos que lo amplían suelen utilizar la [palabra clave "dotenv" en npm](https://www.npmjs.com/search?q=keywords:dotenv).
1
+ This package is an wrap of `dotenv`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wrap-env",
3
- "version": "16.3.1",
3
+ "version": "16.3.2",
4
4
  "description": "Loads environment variables from .env file",
5
5
  "main": "lib/main.js",
6
6
  "types": "lib/main.d.ts",