Install pinned dependencies from package-lock.json
npm run build
Compile src/ into lib/ with TypeScript declarations and source maps
npm test
Run the full Vitest suite once (used by CI)
npm run test:watch
Run Vitest in watch mode; re-runs affected tests on file change
npm run test:typecheck
Type-check the test/ tree with TypeScript using test/tsconfig.json
npm run lint
Lint the codebase with ESLint flat config in eslint.config.mjs
npm run lint:fix
Auto-fix lint issues where possible
TypeScript configs
tsconfig.json builds src/ into lib/.
test/tsconfig.json extends the main config, adds vitest/globals, and includes test/ files.
Tests
Tests live under test/ and run on Vitest in a real browser via Vitest browser mode (Playwright/Chromium). Running them locally the first time requires the browser binary: npx playwright install chromium.
Contributing
Read our contribution guideline to find out how to contribute bugs fixes and improvements
Microsoft Power BI visuals FormattingUtils
Usage
Learn how to install and use the FormattingUtils in your custom visuals:
Development
Common scripts:
npm cipackage-lock.jsonnpm run buildsrc/intolib/with TypeScript declarations and source mapsnpm testnpm run test:watchnpm run test:typechecktest/tree with TypeScript usingtest/tsconfig.jsonnpm run linteslint.config.mjsnpm run lint:fixTypeScript configs
tsconfig.jsonbuildssrc/intolib/.test/tsconfig.jsonextends the main config, addsvitest/globals, and includestest/files.Tests
Tests live under
test/and run on Vitest in a real browser via Vitest browser mode (Playwright/Chromium). Running them locally the first time requires the browser binary:npx playwright install chromium.Contributing
License
See the LICENSE file for license rights and limitations (MIT).