Перейти до основного змісту
Версія: 11.x

pnpm-workspace.yaml

pnpm-workspace.yaml визначає корінь робочого простору і дозволяє включати/виключати теки з робочого простору. Стандартно до пакунків включаються всі пакунки з усіх вкладених тек.

Наприклад:

pnpm-workspace.yaml
packages:
# вказує на пакунок у безпосередній теці кореня
- 'my-app'
# всі пакунки в безпосередніх вкладених теках packages/
- 'packages/*'
# всі пакунки у вкладених теках components/
- 'components/**'
# виключити пакунки, які знаходяться всередині тестових тек
- '!**/test/**'

Кореневий пакунок завжди включається, навіть якщо використовуються користувацькі шаблони розташування.

Каталоги також визначено у файлі pnpm-workspace.yaml. Докладніше див. у Каталоги.

pnpm-workspace.yaml
packages:
- 'packages/*'

catalog:
chalk: ^4.1.2

catalogs:
react16:
react: ^16.7.0
react-dom: ^16.7.0
react17:
react: ^17.10.0
react-dom: ^17.10.0

packageConfigs

Додано у: v11.0.0

Дозволяє налаштовувати параметри для окремих пакунків робочого простору відповідно до вимог конкретного проєкту. Це замінює файли .npmrc, що належать до конкретних проєктів у робочому просторі.

packageConfigs можна вказати у вигляді мапи, в якій імена пакунків відповідають об’єктам конфігурації:

pnpm-workspace.yaml
packages:
- "packages/project-1"
- "packages/project-2"
packageConfigs:
"project-1":
saveExact: true
"project-2":
savePrefix: "~"

Або у вигляді масиву правил, що відповідають шаблонам:

pnpm-workspace.yaml
packages:
- "packages/project-1"
- "packages/project-2"
packageConfigs:
- match: ["project-1", "project-2"]
modulesDir: "node_modules"
saveExact: true