Лучшие практики Dinero
Core best practices for the Dinero.js money library. Use when writing, reviewing, or refactoring code that creates Dinero objects, performs arithmetic on monetary values, or handles money in JavaScript/TypeScript. Triggers on imports from 'dinero.js', monetary calculations, or price/cost handling logic.
Что делает навык
Набор лучших практик для безопасного создания, арифметики и форматирования денежных значений в JavaScript/TypeScript с использованием библиотеки Dinero.js. Правила охватывают критические аспекты, такие как работа с целыми числами, неизменяемость объектов и выбор правильного калькулятора для предотвращения ошибок округления.
Когда применять
- Создание объектов Dinero из пользовательского ввода, ответов API или значений базы данных
- Выполнение арифметических операций над денежными значениями, таких как сложение, разделение и умножение
- Выбор между калькуляторами number и bigint для обеспечения точности расчетов
- Импорт модулей из dinero.js, dinero.js/currencies или dinero.js/bigint
- Работа с ценами, себестоимостью, налогами или любыми финансовыми вычислениями
Как работает
- Следовать правилам создания объектов: передавать суммы в целых числах в минорных единицах валюты (creation-minor-units) и использовать вспомогательные функции для конвертации float (creation-from-floats)
- Учитывать особенности валют с показателем степени 0 (например, JPY), которые принимают основные единицы напрямую (creation-zero-exponent)
- Обеспечивать неизменяемость операций, всегда захватывая возвращаемое значение новых объектов (arithmetic-immutability)
- Использовать метод allocate для разделения денег вместо ручного деления (arithmetic-allocate-not-divide)
- Избегать умножения на сырые десятичные числа, используя масштабированные суммы (arithmetic-scaled-amounts)
- Применять allocate или масштабированное умножение для вычисления процентов (arithmetic-percentages)
Примеры запросов агенту
Описание составлено по SKILL.md навыка, сверено 05.10.2026.
Как подключить
SKILL.md к навыкам ассистентаНавык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.