config

Uma Ferramenta Sumor Cloud.
Documentação Adicional O Carregador de Configuração suporta arquivos yaml e json. Ele pode carregar todos os arquivos em um diretório. E converter automaticamente o arquivo para o formato especificado.

CI Teste Cobertura Auditoria

Instalação

npm i @sumor/config --save

Pré-requisitos

Versão do Node.JS

Requer a versão do Node.JS 16.x ou superior

Requer módulo ES do Node.JS

Como este pacote é escrito em módulo ES, por favor altere o seguinte código em seu arquivo package.json:

{
  "type": "module"
}

Uso

Métodos

load

find

* root: string - diretório raiz
* category: string - nome da categoria
* ext: string - extensão do arquivo para converter (yml, json)

findReference

* root: string - diretório raiz
* references: array - extensão do arquivo de referência (vue, js)
* ext: string - extensão do arquivo para converter (yml, json)

Carregar arquivo de configuração

import { load } from '@sumor/config'

const config1 = await load(process.cwd(), 'demo')
// irá carregar demo.yml ou demo.json no diretório raiz

const config2 = await load(process.cwd(), 'demo', 'yaml')
// irá carregar demo.yml ou demo.json no diretório raiz, e convertê-lo para um arquivo no formato yaml

Encontrar arquivos de configuração

import { find } from '@sumor/config'

const config = await find(process.cwd(), 'entidade')
// irá carregar todos os arquivos *.entity.yml ou *.entity.json no diretório raiz
/*
 * exemplo:
 *   car.entity.yml, bike.entity.json
 *   {
 *       "car": {...}
 *       "bike": {...}
 *   }
 * */

Encontrar arquivos de configuração em outros arquivos

como arquivos .vue, .js, que têm o mesmo nome de arquivo de configuração

import { findReference } from '@sumor/config'

const config = await findReference(process.cwd(), ['vue', 'js'])
// irá carregar todos os arquivos *.entity.yml ou *.entity.json que têm o mesmo nome com *.vue ou *.js no diretório raiz
/*
 * exemplo:
 *   car.entity.yml, bike.entity.json
 *   car.vue, bike.js
 *   {
 *       "car": {...}
 *       "bike": {...}
 *   }
 * */