Pular para o conteúdo principal

Instalação

Instale @powerduck/conf-patch com seu gerenciador de pacotes preferido.

Requisitos​

  • Node.js: >= 22.12.0
  • TypeScript: opcional; o pacote inclui todas as declarações de tipos, sem precisar de @types/....

Instalação​

npm install @powerduck/conf-patch
yarn add @powerduck/conf-patch
pnpm add @powerduck/conf-patch

Dependências de execução​

conf-patch inclui três dependências de execução instaladas automaticamente:

PacoteVersãoUso
@powerduck/openapi-parser^0.3.12Validação OpenAPI/Swagger (validateOpenAPISpec, validateOpenAPIFile).
jsonc-parser^3.3.1Edições incrementais de texto para JSON e JSONC.
yaml^2.9.0Análise e alteração da AST de YAML.

Você não precisa usar essas dependências diretamente.

Dois pontos de entrada​

O pacote oferece duas exportações de subcaminhos. Escolha de acordo com seu ambiente.

Entrada principal — @powerduck/conf-patch​

Inclui a camada de arquivos (readConfigFile, writeConfigFile, patchConfigFile, setConfigValue, deleteConfigValue, withFileLock, releaseAllLocalLocks), o núcleo e a validação OpenAPI. Use no Node.js e Electron. Depende de node:fs, node:path e node:crypto.

Subcaminho do núcleo — @powerduck/conf-patch/core​

Exporta somente o núcleo compatível com navegadores: patchContent, setContentValue, deleteContentValue, utilitários de asserção e tipos do núcleo. Não tem dependências Node.js e pode ser empacotado para navegadores, Edge Functions e service workers.

dica

Para o navegador, sempre importe de @powerduck/conf-patch/core. Assim, a camada de arquivos e sua dependência node:fs ficam fora do bundle.

Sistema de módulos: CJS e ESM​

O pacote não define "type": "module"; portanto, arquivos .js são CommonJS por padrão. O mapa exports em package.json direciona explicitamente import e require ao build correto.

EntradaCJS (require)ESM (import)Tipos
Entrada principaldist/index.jsdist/index.mjsdist/index.d.ts
Subcaminho do núcleodist/core.jsdist/core.mjsdist/core.d.ts

CommonJS (Node.js ou processo principal do Electron)​

// Full library (includes file IO)
const { setConfigValue, readConfigFile } = require("@powerduck/conf-patch");

// Core layer only (browser-safe, no fs dependency)
const { patchContent, setContentValue } = require("@powerduck/conf-patch/core");

ES Modules (Node.js moderno, navegadores e empacotadores)​

// Full library
import { setConfigValue, readConfigFile } from "@powerduck/conf-patch";

// Core layer only (browser-safe)
import { patchContent, setContentValue } from "@powerduck/conf-patch/core";

Verificar a instalação​

# Check the installed version
npm list @powerduck/conf-patch

# Verify the main entry loads
node -e "const lib = require('@powerduck/conf-patch'); console.log('exports:', Object.keys(lib).length);"

# Verify the core subpath loads
node -e "const core = require('@powerduck/conf-patch/core'); console.log('core exports:', Object.keys(core).length);"

Próximos passos​