{"_id":"ocelot-ui","_rev":"27-1ac1f94a7410ef6255b35f79a3737c1d","name":"ocelot-ui","dist-tags":{"latest":"0.0.28"},"versions":{"0.0.1":{"name":"ocelot-ui","version":"0.0.1","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.1","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"e1bcc88a2bcda717e216fa7dcd3904d194e4c207","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.1.tgz","fileCount":3,"integrity":"sha512-p8SJrpYtNFmjoW0rhaz85clTDSh8Lfk3AiB8ieDxEjvhlRljMNEy6ExbFnr/fw3+cLZQPec/pCDsZ4LEADJqWA==","signatures":[{"sig":"MEUCIA7NcLZNyKTmw1aZWe6PDJBgfvXfK4AG1bLaP8XJ3OQCAiEA2+enBiz1zfcm6XPYC7hZGwPyqbJY13H8rOCEA3M5TVI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5082},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./dist/style.css":"./dist/style.css"},"gitHead":"9afe2d45433ac19fc877afc92fdd1e7ad052174d","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","stylelint:fix":"stylelint **/*.css **/*.scss --fix","version:major":"npm version major --no-git-tag-version","version:minor":"npm version minor --no-git-tag-version","version:patch":"npm version patch --no-git-tag-version","test-storybook":"test-storybook","build-storybook":"storybook build"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"**Ocelot UI (OUI)**, a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your ","directories":{},"_nodeVersion":"24.14.1","dependencies":{"vue":"^3.5.31","culori":"^4.0.2","qrcode":"^1.5.4","@tabler/icons":"^3.41.1","@faker-js/faker":"^10.4.0","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1","@tailwindcss/vite":"^4.2.2","@rushstack/eslint-patch":"^1.16.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.3","eslint":"^10.1.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.3","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.58.2","typescript":"^6.0.2","tailwindcss":"^4.2.2","concurrently":"^9.2.1","@types/qrcode":"^1.5.6","sass-embedded":"^1.98.0","axe-playwright":"^2.2.2","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.8.1","@storybook/vue3-vite":"^10.3.3","@tailwindcss/postcss":"^4.2.2","@storybook/addon-a11y":"^10.3.3","@storybook/addon-docs":"^10.3.3","@storybook/addon-links":"^10.3.3","@storybook/test-runner":"^0.24.3","@storybook/addon-themes":"^10.3.3","@storybook/addon-vitest":"^10.3.3","eslint-plugin-storybook":"^10.3.3","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.1_1775073181409_0.7106451729205709","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"ocelot-ui","version":"0.0.2","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.2","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"d7449de4fc1bf0842fd7d4c4efd5316866e17adf","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.2.tgz","fileCount":7,"integrity":"sha512-v5RhSzpi6dFeqdAhT5Br7iSyEkZGIz2vt+vz0mcdk4ubIl6Gy93FDiiPoZUV+oJyeZqbjyk+KvEjVYpH3cMGzA==","signatures":[{"sig":"MEQCIHRwmb7fxJbveYIoaJEmPrYdhNml/toW3d/HfyfM5TBdAiAssjOOWIgMh67ho4v8utLbyF3/DmrHY/1Lpv44mdEUXA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":214244},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./dist/style.css":"./dist/style.css"},"gitHead":"f98d06187d57b1ea26371c79161d5cd35e7fd9cd","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"**Ocelot UI (OUI)**, a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your ","directories":{},"_nodeVersion":"24.14.1","dependencies":{"vue":"^3.5.31","culori":"^4.0.2","qrcode":"^1.5.4","@tabler/icons":"^3.41.1","@faker-js/faker":"^10.4.0","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1","@tailwindcss/vite":"^4.2.2","@rushstack/eslint-patch":"^1.16.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.3","eslint":"^10.1.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.3","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.58.2","typescript":"^6.0.2","tailwindcss":"^4.2.2","concurrently":"^9.2.1","@types/qrcode":"^1.5.6","sass-embedded":"^1.98.0","axe-playwright":"^2.2.2","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.8.1","@storybook/vue3-vite":"^10.3.3","@tailwindcss/postcss":"^4.2.2","@storybook/addon-a11y":"^10.3.3","@storybook/addon-docs":"^10.3.3","@storybook/addon-links":"^10.3.3","@storybook/test-runner":"^0.24.3","@storybook/addon-themes":"^10.3.3","@storybook/addon-vitest":"^10.3.3","eslint-plugin-storybook":"^10.3.3","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.2_1775073684067_0.36091279372166984","host":"s3://npm-registry-packages-npm-production"}},"0.0.4":{"name":"ocelot-ui","version":"0.0.4","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.4","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"868790c7ce875c49025465fcd1653c97333d3fd1","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.4.tgz","fileCount":7,"integrity":"sha512-2NNPrRwfkMEBqPheM2KbO7zbYml8t3GHIW22ag+74W2P+Du6BySFX83VB0WhjlQmFU9quVJff2R7NFC33L2N2Q==","signatures":[{"sig":"MEQCIC8YKsVG0WWz+r6oF2MOsV0bE5qVn6OshXPNZ6VBn3gGAiBxHn9dhQ+D/uPjoBT/Q5FiGHDfsCqPVpNw/o65yli2kQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":214546},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./dist/style.css":"./dist/style.css"},"gitHead":"c8fee5051a3d97659bb0458a2785486e665b6633","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"**Ocelot UI (OUI)**, a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your ","directories":{},"_nodeVersion":"24.14.1","dependencies":{"vue":"^3.5.31","culori":"^4.0.2","qrcode":"^1.5.4","@tabler/icons":"^3.41.1","@faker-js/faker":"^10.4.0","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1","@tailwindcss/vite":"^4.2.2","@rushstack/eslint-patch":"^1.16.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.3","eslint":"^10.1.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.3","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.58.2","typescript":"^6.0.2","tailwindcss":"^4.2.2","concurrently":"^9.2.1","@types/qrcode":"^1.5.6","sass-embedded":"^1.98.0","axe-playwright":"^2.2.2","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.8.1","@storybook/vue3-vite":"^10.3.3","@tailwindcss/postcss":"^4.2.2","@storybook/addon-a11y":"^10.3.3","@storybook/addon-docs":"^10.3.3","@storybook/addon-links":"^10.3.3","@storybook/test-runner":"^0.24.3","@storybook/addon-themes":"^10.3.3","@storybook/addon-vitest":"^10.3.3","eslint-plugin-storybook":"^10.3.3","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.4_1775075225896_0.6540434416668679","host":"s3://npm-registry-packages-npm-production"}},"0.0.5":{"name":"ocelot-ui","version":"0.0.5","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.5","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"8fdf9c3e5dd1e0a1cccd3df6434be78816dacfeb","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.5.tgz","fileCount":7,"integrity":"sha512-QH1jSql+UKOW3KR/MVuamqdxyl6RjJuaGkVPsPK4YVajAA8ipmJOqMmwC6uNvXUxWjNE9jo47FpnZmNFe1c8jQ==","signatures":[{"sig":"MEUCIDEiKBGyZt/Wv38u7x8/hdLoYdIyDgfdlhVrorc38NTXAiEAogiTv7vDXlDae/Bva7KCWnqKxVRDco8JdggXLoAr6bI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":188551},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./style.css":"./dist/style.css"},"gitHead":"96f44acb417629f66cc5432c5bef9e6be6c0f311","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"**Ocelot UI (OUI)**, a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your ","directories":{},"_nodeVersion":"24.14.1","dependencies":{"culori":"^4.0.2","qrcode":"^1.5.4","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.31","vite":"^8.0.3","eslint":"^10.1.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.3","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.58.2","typescript":"^6.0.2","tailwindcss":"^4.2.2","@types/qrcode":"^1.5.6","sass-embedded":"^1.98.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.2","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.8.1","@storybook/vue3-vite":"^10.3.3","@storybook/addon-a11y":"^10.3.3","@storybook/addon-docs":"^10.3.3","@storybook/addon-links":"^10.3.3","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.3","@storybook/addon-vitest":"^10.3.3","eslint-plugin-storybook":"^10.3.3","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","tailwindcss":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.5_1775136343444_0.2516599741831578","host":"s3://npm-registry-packages-npm-production"}},"0.0.6":{"name":"ocelot-ui","version":"0.0.6","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.6","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"a16017e87bef66dbad72add14050a3ed0dc8c22b","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.6.tgz","fileCount":7,"integrity":"sha512-GsHX9C8AYLvwE2HtRlnH/gzcnM2bAr+HQOG4jN7GdY+2zcbqasmJHzUBfEeR88qPQYMxlrG5WFOlMrzhZoux8w==","signatures":[{"sig":"MEQCIEoZiMiIUphLKm+p3ooXduRmpKqzv965Itb6JopvOMRcAiBPnyBt/rwd7++U4KwJhPZW7j2Gxl/BlVFtcw52acoUAQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":188565},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./style.css":"./dist/style.css"},"gitHead":"708528a0657e235d8975ba0be6671d225b26edbc","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"**Ocelot UI (OUI)**, a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your ","directories":{},"_nodeVersion":"24.14.1","dependencies":{"culori":"^4.0.2","qrcode":"^1.5.4","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.31","vite":"^8.0.3","eslint":"^10.1.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.3","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.58.2","typescript":"^6.0.2","tailwindcss":"^4.2.2","@types/qrcode":"^1.5.6","sass-embedded":"^1.98.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.2","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.8.1","@storybook/vue3-vite":"^10.3.3","@storybook/addon-a11y":"^10.3.3","@storybook/addon-docs":"^10.3.3","@storybook/addon-links":"^10.3.3","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.3","@storybook/addon-vitest":"^10.3.3","eslint-plugin-storybook":"^10.3.3","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","tailwindcss":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.6_1775136784055_0.37637801075503563","host":"s3://npm-registry-packages-npm-production"}},"0.0.7":{"name":"ocelot-ui","version":"0.0.7","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.7","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"99a37120d7f4994cfa7c14eb384651b5ab55bc16","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.7.tgz","fileCount":9,"integrity":"sha512-qvOHf3VwqteUgXaqItdrvdb+n03O6oqeBFcwTXEXfDbi4+UFJJlrpmHqJS9UWb5tK0q18TgqXMkqKCkL7r4F3A==","signatures":[{"sig":"MEQCIFxu46FUJo25tzRMaQplyiFjcTmsi8T3KHH3BTDlhUx5AiAXMrPiSW5cGx6JKqwjAR6O/WU/uUM3RLEs6bNN7SJPQg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":50553319},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./style.css":"./dist/style.css"},"gitHead":"3130c97b768e4017493419826752d25a537e97a6","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"**Ocelot UI (OUI)**, a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your ","directories":{},"_nodeVersion":"24.14.1","dependencies":{"plyr":"^3.8.4","culori":"^4.0.2","qrcode":"^1.5.4","photoswipe":"^5.4.4","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.31","vite":"^8.0.3","eslint":"^10.1.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.4","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.58.2","typescript":"^6.0.2","tailwindcss":"^4.2.2","@types/qrcode":"^1.5.6","sass-embedded":"^1.98.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.2","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.8.1","@storybook/vue3-vite":"^10.3.4","@storybook/addon-a11y":"^10.3.4","@storybook/addon-docs":"^10.3.4","@storybook/addon-links":"^10.3.4","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.4","@storybook/addon-vitest":"^10.3.4","eslint-plugin-storybook":"^10.3.4","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","tailwindcss":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.7_1775420265942_0.08678506808524111","host":"s3://npm-registry-packages-npm-production"}},"0.0.8":{"name":"ocelot-ui","version":"0.0.8","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.8","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"6df563ea31827b560178775a81cd8353e917d22a","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.8.tgz","fileCount":7,"integrity":"sha512-SZZ7Hqj8GjNVNacnsmgKX9B8rhOTEubeissUF6Sg5ncnGWM00Er/o0j18jjjU6I3bQ8+HuRl5/AypWTW05C8uw==","signatures":[{"sig":"MEYCIQDrMlPjLs09tbMDbx5pc/NX+Vd+H85t5KIkIjGU2c2OEgIhAJk5IDHXTZTNZ6vzdkz6hehKZmx3jqSL0OAHSozHTtd3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":648929},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./style.css":"./dist/style.css"},"gitHead":"790b7a16e275d6244d5b49f629a2d2503870a789","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"plyr":"^3.8.4","culori":"^4.0.2","qrcode":"^1.5.4","photoswipe":"^5.4.4","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.32","vite":"^8.0.3","eslint":"^10.2.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.4","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.59.1","typescript":"^6.0.2","tailwindcss":"^4.2.2","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.2","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.4","@storybook/addon-a11y":"^10.3.4","@storybook/addon-docs":"^10.3.4","@storybook/addon-links":"^10.3.4","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.4","@storybook/addon-vitest":"^10.3.4","eslint-plugin-storybook":"^10.3.4","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","tailwindcss":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.8_1775429367908_0.5805407420551423","host":"s3://npm-registry-packages-npm-production"}},"0.0.9":{"name":"ocelot-ui","version":"0.0.9","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.9","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"be3656c1cba521ae45076f57be6d0b58bbaf43e8","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.9.tgz","fileCount":7,"integrity":"sha512-rDJrdjF2HhUJFwakU8qn13BigJjmllXCMGAooxwxyPBRE3ikQ4GIO5Gb735RMycD3eTgGpaCK88KqOx6kwvPsQ==","signatures":[{"sig":"MEYCIQDyC9/A3wo7wkPYWzmrJ40YnZksRBqX4UjDC5HI9JX3xwIhAIfUjHGvC5ePMwK1E9oklIg2MgSAlvfRlp3MZXSv7sVx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":662086},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./style.css":"./dist/style.css"},"gitHead":"d0bc9c2b041bbd0a2cbd15d5906c0b5aba8279db","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"plyr":"^3.8.4","culori":"^4.0.2","qrcode":"^1.5.4","photoswipe":"^5.4.4","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.32","vite":"^8.0.7","eslint":"^10.2.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.4","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.59.1","typescript":"^6.0.2","tailwindcss":"^4.2.2","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.2","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.4","@storybook/addon-a11y":"^10.3.4","@storybook/addon-docs":"^10.3.4","@storybook/addon-links":"^10.3.4","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.4","@storybook/addon-vitest":"^10.3.4","eslint-plugin-storybook":"^10.3.4","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","tailwindcss":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.9_1775913874067_0.6033611205338982","host":"s3://npm-registry-packages-npm-production"}},"0.0.10":{"name":"ocelot-ui","version":"0.0.10","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.10","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"357df2c83b56f72d090d0cc15cb18ba45f79e835","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.10.tgz","fileCount":7,"integrity":"sha512-jZ+jMu2pSdKnSpedKNmusP+VlRYC2KrpuavZaXMdbZHs/oRPHFtbokvfGFY4IBaj/u5qh2XySDjXQJbs6C68+w==","signatures":[{"sig":"MEQCIE6mKgbJeQTP6D7o5EunIzl+TgGzWwMRzhqXtDYHAPTaAiAcmFA5jzDhnhZtENeBNmQLP3S1b2W7xYxjUckVIfJwpQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":662068},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./style.css":"./dist/style.css"},"gitHead":"8c85553b19b69dc6e12c5d94eefbff8dde04231d","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"plyr":"^3.8.4","culori":"^4.0.2","qrcode":"^1.5.4","photoswipe":"^5.4.4","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.32","vite":"^8.0.7","eslint":"^10.2.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.4","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.59.1","typescript":"^6.0.2","tailwindcss":"^4.2.2","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.2","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.4","@storybook/addon-a11y":"^10.3.4","@storybook/addon-docs":"^10.3.4","@storybook/addon-links":"^10.3.4","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.4","@storybook/addon-vitest":"^10.3.4","eslint-plugin-storybook":"^10.3.4","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","tailwindcss":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.10_1775914489149_0.3308733179572241","host":"s3://npm-registry-packages-npm-production"}},"0.0.11":{"name":"ocelot-ui","version":"0.0.11","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.11","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"a957e0f56f13407c1776e8ca3954dcf00b686ac1","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.11.tgz","fileCount":7,"integrity":"sha512-E3NHLoyoKFV5sa9inYCgVylt3EpPy0XHhplH+88P2pVvv21/6Rpon3oTcl9nQ1ldGWd5dnoNU18wvF2EuL31BQ==","signatures":[{"sig":"MEYCIQCEr3sVc1M/i8Q2fNAOfcz7VtLltjHsA8mD/lkwCwR8lwIhAPjTKYdQcHzFHw4mlz+c89ptJb47I41gjE+zkZZoaF5k","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":662122},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./style.css":"./dist/style.css"},"gitHead":"45868eaac779c425635bb91ee7e41b4795730425","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"plyr":"^3.8.4","culori":"^4.0.2","qrcode":"^1.5.4","photoswipe":"^5.4.4","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.32","vite":"^8.0.7","eslint":"^10.2.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.4","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.59.1","typescript":"^6.0.2","tailwindcss":"^4.2.2","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.2","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.4","@storybook/addon-a11y":"^10.3.4","@storybook/addon-docs":"^10.3.4","@storybook/addon-links":"^10.3.4","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.4","@storybook/addon-vitest":"^10.3.4","eslint-plugin-storybook":"^10.3.4","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","tailwindcss":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.11_1775918415490_0.411947944478257","host":"s3://npm-registry-packages-npm-production"}},"0.0.12":{"name":"ocelot-ui","version":"0.0.12","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.12","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"555dfbdb6d53f97fbce10b6ad02f8610022554af","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.12.tgz","fileCount":7,"integrity":"sha512-jAgARj9fySdQDLtdY+7v6XuDVy9i3Um4KhjhB6JIHPFQNQUR7nijD8I15XK1uEarDePZsFGJtahqiEUj6sI+lg==","signatures":[{"sig":"MEMCH3tQm6jZc1HnCQobRr644bdqdTRKG5Z2LDUfydsMBr8CIAigVqRVNh1oMdbC8MHk5KuMW3mQAzHIfMKY8ltEO8Z7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":670194},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./style.css":"./dist/style.css"},"gitHead":"c8852c07cc16f611814f6dd5b7f6addf88e04008","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"plyr":"^3.8.4","culori":"^4.0.2","qrcode":"^1.5.4","photoswipe":"^5.4.4","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.32","vite":"^8.0.7","eslint":"^10.2.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.4","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.59.1","typescript":"^6.0.2","tailwindcss":"^4.2.2","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.2","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.4","@storybook/addon-a11y":"^10.3.4","@storybook/addon-docs":"^10.3.4","@storybook/addon-links":"^10.3.4","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.4","@storybook/addon-vitest":"^10.3.4","eslint-plugin-storybook":"^10.3.4","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","tailwindcss":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.12_1775920355178_0.5858600600036119","host":"s3://npm-registry-packages-npm-production"}},"0.0.13":{"name":"ocelot-ui","version":"0.0.13","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.13","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"7d8c65821dc57abed9503f18f81a7d30db5fb2bb","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.13.tgz","fileCount":8,"integrity":"sha512-JNufMsf6k2Pp9sJxIHtQ/Cp3ueQKc2+PyWUcJdZPrBFBZFpVu0hNiJftYr9cJHdrlo9kpbXw/834NzD1nRR2LA==","signatures":[{"sig":"MEUCIQDF8r/0jJ8SkF8lKBSAfsY9w1VvkW/FL+zipcNNQkGFiAIgE5Zjhe/dMXT9Kzf2pO7dhV2rilzec6a+k+LugZTLkl8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":672442},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./style.css":"./dist/style.css","./tailwind.css":"./tailwind.css"},"gitHead":"a5054892fdd57929a5c88d057a620d35560914c8","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"plyr":"^3.8.4","culori":"^4.0.2","qrcode":"^1.5.4","photoswipe":"^5.4.4","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.32","vite":"^8.0.7","eslint":"^10.2.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.4","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.59.1","typescript":"^6.0.2","tailwindcss":"^4.2.2","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.2","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.4","@storybook/addon-a11y":"^10.3.4","@storybook/addon-docs":"^10.3.4","@storybook/addon-links":"^10.3.4","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.4","@storybook/addon-vitest":"^10.3.4","eslint-plugin-storybook":"^10.3.4","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","tailwindcss":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.13_1775922857746_0.19830120596629208","host":"s3://npm-registry-packages-npm-production"}},"0.0.14":{"name":"ocelot-ui","version":"0.0.14","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.14","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"c47f69a81dbdf09fb39660eebb466890d499f28a","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.14.tgz","fileCount":8,"integrity":"sha512-/NEmii4tG7cnVlG90k+kEecHvCtOCFaUEW2Enioa+7iRXpnDkMwuXYQR0X6nrstM8c2Jq87xtVWY+jioX2vk0A==","signatures":[{"sig":"MEYCIQDNvkxbxKTd//yyt/Y5eXrmmDFWsWjVY7wlX2FRksZ+AwIhAImy4Ve/QzA3cjRWhF61uGqy8O7Vm/fgKlxzPRKQpxy9","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":683266},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./style.css":"./dist/style.css","./tailwind.css":"./tailwind.css"},"gitHead":"5d733b3b440a27c92546071fe68fe2dda23b2e0f","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"plyr":"^3.8.4","culori":"^4.0.2","qrcode":"^1.5.4","photoswipe":"^5.4.4","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.32","vite":"^8.0.7","eslint":"^10.2.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.4","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.59.1","typescript":"^6.0.2","tailwindcss":"^4.2.2","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.2","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.4","@storybook/addon-a11y":"^10.3.4","@storybook/addon-docs":"^10.3.4","@storybook/addon-links":"^10.3.4","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.4","@storybook/addon-vitest":"^10.3.4","eslint-plugin-storybook":"^10.3.4","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","tailwindcss":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.14_1775925053878_0.005547662131400566","host":"s3://npm-registry-packages-npm-production"}},"0.0.15":{"name":"ocelot-ui","version":"0.0.15","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.15","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"35b2cf186f3d1971ecf97ac7b486d9fe5a7a8235","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.15.tgz","fileCount":8,"integrity":"sha512-zHpP1MC/PCs4ORO9kKdxh1OxLfIDKMs+4tJ1FMgy6U1gBKHDzjrBGWiQDYEE27uouKLAaDprk914/b0TigH6Sg==","signatures":[{"sig":"MEUCIGnoUGhuJjZc7vgf3ollXGblAjpM7Vgv4oWBxER9RtUHAiEA0SzHx2ApBnGTqzxnRnnV5+k2m16cNulObVUnCnt4+2M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":683302},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./style.css":"./dist/style.css","./tailwind.css":"./tailwind.css"},"gitHead":"25105bc9ff5ddd5b3d78cab5eb8a48210339ab06","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"plyr":"^3.8.4","culori":"^4.0.2","qrcode":"^1.5.4","photoswipe":"^5.4.4","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.32","vite":"^8.0.7","eslint":"^10.2.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.4","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.59.1","typescript":"^6.0.2","tailwindcss":"^4.2.2","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.2","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.4","@storybook/addon-a11y":"^10.3.4","@storybook/addon-docs":"^10.3.4","@storybook/addon-links":"^10.3.4","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.4","@storybook/addon-vitest":"^10.3.4","eslint-plugin-storybook":"^10.3.4","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","tailwindcss":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.15_1775925371978_0.28655974554333397","host":"s3://npm-registry-packages-npm-production"}},"0.0.16":{"name":"ocelot-ui","version":"0.0.16","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.16","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"4eeb3fa176f69067f088bbf86083c2d2788232b0","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.16.tgz","fileCount":8,"integrity":"sha512-I12VRczfX720P1x/Un96JUOy7Tb2IINCJGzfL46WulJiDnO8lthQ0of7Y4KcO1+DJEC0J0TjKDaC2qrf33dGfg==","signatures":[{"sig":"MEYCIQCesvD2JkyHkMIGOsgGb3T0+ci2zgRYoq0c78xecOwr7gIhALwvWGwhxdLAO+guMi7KfMwqbUlOnxjCQMKhk5h7Y0be","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":683302},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./style.css":"./dist/style.css","./tailwind.css":"./tailwind.css"},"gitHead":"e6867bef2a01a3568c714555ce774be44e1599d9","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"plyr":"^3.8.4","culori":"^4.0.2","qrcode":"^1.5.4","photoswipe":"^5.4.4","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.32","vite":"^8.0.7","eslint":"^10.2.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.4","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.59.1","typescript":"^6.0.2","tailwindcss":"^4.2.2","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.2","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.4","@storybook/addon-a11y":"^10.3.4","@storybook/addon-docs":"^10.3.4","@storybook/addon-links":"^10.3.4","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.4","@storybook/addon-vitest":"^10.3.4","eslint-plugin-storybook":"^10.3.4","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","tailwindcss":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.16_1775925768136_0.3113970143748075","host":"s3://npm-registry-packages-npm-production"}},"0.0.17":{"name":"ocelot-ui","version":"0.0.17","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.17","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"b3fd0a0bf2bb3f6953be1395aef813298382fae5","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.17.tgz","fileCount":8,"integrity":"sha512-qgIMPDCS9BlNeNKo0GQJjEsxITANNt+1Dk4r5UP9wrQXazD8J/zG9JUAnOsSHBjzL2nJjytKi7KkXJqUKoFklw==","signatures":[{"sig":"MEUCIGvWhacuzpL+lWeZjb8eoCzzrlkQ5vHMhI0v0NDhejYRAiEA1pArEl84BCvpBbMKqYgjfjvibdexthxC4F4pQlxp8WM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":684342},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./style.css":"./dist/style.css","./tailwind.css":"./tailwind.css"},"gitHead":"690bf054b0962408db44aef6d417a0cb849c818a","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"plyr":"^3.8.4","culori":"^4.0.2","qrcode":"^1.5.4","photoswipe":"^5.4.4","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.32","vite":"^8.0.7","eslint":"^10.2.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.4","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.59.1","typescript":"^6.0.2","tailwindcss":"^4.2.2","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.2","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.4","@storybook/addon-a11y":"^10.3.4","@storybook/addon-docs":"^10.3.4","@storybook/addon-links":"^10.3.4","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.4","@storybook/addon-vitest":"^10.3.4","eslint-plugin-storybook":"^10.3.4","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","tailwindcss":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.17_1775948601332_0.16077380604926828","host":"s3://npm-registry-packages-npm-production"}},"0.0.18":{"name":"ocelot-ui","version":"0.0.18","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.18","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"1155dad3c9d5835f3dffed1aa0dc12f161d92c7b","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.18.tgz","fileCount":8,"integrity":"sha512-RxPMCP2KW42mZil8k+iaicJYeQgVhxOHftDtRfD1FgRWNox0Qh2uZmeJ1Tewoe3pJ1ytSrexkAQOgH7xxCODhg==","signatures":[{"sig":"MEUCIQDrmuGPtyFMwLUXXtHwVb1+jBiKZK5wp4r9impeR16KEwIgHacPxqQnwHTv7GnjLwH/5hAWhq1pqMJGR93nS9iYrGs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":685696},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./style.css":"./dist/style.css","./tailwind.css":"./tailwind.css"},"gitHead":"4967ccf019783fe6d46f8634650fbec063aea091","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"plyr":"^3.8.4","culori":"^4.0.2","qrcode":"^1.5.4","photoswipe":"^5.4.4","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.32","vite":"^8.0.7","eslint":"^10.2.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.4","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.59.1","typescript":"^6.0.2","tailwindcss":"^4.2.2","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.2","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.4","@storybook/addon-a11y":"^10.3.4","@storybook/addon-docs":"^10.3.4","@storybook/addon-links":"^10.3.4","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.4","@storybook/addon-vitest":"^10.3.4","eslint-plugin-storybook":"^10.3.4","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","tailwindcss":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.18_1775948795117_0.2628052533591472","host":"s3://npm-registry-packages-npm-production"}},"0.0.19":{"name":"ocelot-ui","version":"0.0.19","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.19","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"b4ca1647e033739389e9d541b00c91f56a54271e","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.19.tgz","fileCount":8,"integrity":"sha512-y/xbJT2w3SKHN9Y604Z1iGiUJ9QkPhr62tPT+L9Q9KnOTnLFP41ZfD7NHNGsPZpYAmzNjjJfAjNMFBiD5oNY6A==","signatures":[{"sig":"MEYCIQD+XYFdgOMZiOv9yUY6htv58+NCAzyxZ/MX9RL/PrTCgwIhAKOAyS4ffRsVXUxzbY+BzxAYy/HNmw7mnO4Lf/8QQW4x","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":686071},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./style.css":"./dist/style.css","./tailwind.css":"./tailwind.css"},"gitHead":"a166570b3c635311267d38e70cbb487b458b6907","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"plyr":"^3.8.4","culori":"^4.0.2","qrcode":"^1.5.4","photoswipe":"^5.4.4","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.32","vite":"^8.0.7","eslint":"^10.2.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.4","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.59.1","typescript":"^6.0.2","tailwindcss":"^4.2.2","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.2","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.4","@storybook/addon-a11y":"^10.3.4","@storybook/addon-docs":"^10.3.4","@storybook/addon-links":"^10.3.4","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.4","@storybook/addon-vitest":"^10.3.4","eslint-plugin-storybook":"^10.3.4","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","tailwindcss":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.19_1775949404084_0.7471457616337254","host":"s3://npm-registry-packages-npm-production"}},"0.0.20":{"name":"ocelot-ui","version":"0.0.20","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.20","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"f928ec4c6313e42b3ba8228cd2490afd6e63e199","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.20.tgz","fileCount":8,"integrity":"sha512-D3djhgbsdBEnsUPYSsemN/FqScuUiBKnCn0DzKtMwpiY06TOyqKXcIUq7xptmUd7LRD3uX3gBFHyiBVw3U9ZmA==","signatures":[{"sig":"MEYCIQCsZkrICbG2LX0aI3R9zcYtR9l0QS2tIyp6EwKflj+5PgIhAP9MjVlo91Omc+qf0oFDn7Z37Ru2giC7vXWk6f8nOYVT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":686499},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./style.css":"./dist/style.css","./tailwind.css":"./tailwind.css"},"gitHead":"87d18a642baee7b295f4d13241e6bb02fa63f274","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"plyr":"^3.8.4","culori":"^4.0.2","qrcode":"^1.5.4","photoswipe":"^5.4.4","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.32","vite":"^8.0.7","eslint":"^10.2.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.4","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.59.1","typescript":"^6.0.2","tailwindcss":"^4.2.2","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.2","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.4","@storybook/addon-a11y":"^10.3.4","@storybook/addon-docs":"^10.3.4","@storybook/addon-links":"^10.3.4","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.4","@storybook/addon-vitest":"^10.3.4","eslint-plugin-storybook":"^10.3.4","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","tailwindcss":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.20_1775992744862_0.587722323416423","host":"s3://npm-registry-packages-npm-production"}},"0.0.21":{"name":"ocelot-ui","version":"0.0.21","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.21","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"3b68960d570fd6d18bf4896a80c6af9142b57a46","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.21.tgz","fileCount":8,"integrity":"sha512-nbbonEAZC4h1l8XAVorqemIYRW310OZTKJGyECEW73j55Fvh3cK69TlMN00gz4BztOGnwTTj9RBlpfIqFapt0w==","signatures":[{"sig":"MEUCIQD7vc/PDoyoa6IuPvPMGTT3RhAMAXzIFW6dCtwz2VAq9QIgOhp2pDJ2EXL2Bpur6zeNUgHn3Eo62rvumKr8CdQIVBk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":686952},"main":"./dist/ocelot-ui.umd.js","type":"module","module":"./dist/ocelot-ui.es.js","exports":{".":{"import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./style.css":"./dist/style.css","./tailwind.css":"./tailwind.css"},"gitHead":"dfd9a0e9d0497e0f8a95a40edeb0642ce66c438a","scripts":{"dev":"vite","lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","publish:npm":"node .build/publish.mjs","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"plyr":"^3.8.4","culori":"^4.0.2","qrcode":"^1.5.4","photoswipe":"^5.4.4","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.32","vite":"^8.0.7","eslint":"^10.2.0","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.4","stylelint":"^17.6.0","@eslint/js":"^10.0.1","playwright":"^1.59.1","typescript":"^6.0.2","tailwindcss":"^4.2.2","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.2","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.2","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.4","@storybook/addon-a11y":"^10.3.4","@storybook/addon-docs":"^10.3.4","@storybook/addon-links":"^10.3.4","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.4","@storybook/addon-vitest":"^10.3.4","eslint-plugin-storybook":"^10.3.4","@stylistic/eslint-plugin":"^5.10.0","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","tailwindcss":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.21_1776004495128_0.6025802873870858","host":"s3://npm-registry-packages-npm-production"}},"0.0.22":{"name":"ocelot-ui","version":"0.0.22","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.22","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"c4f4d1d0040f152a24c7581e5764798d634c87f2","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.22.tgz","fileCount":381,"integrity":"sha512-GsIZ8Dt+vvh8vLYxIDu0Xk18moDoJZDFVvaoLXLsKYYGprOBHtOS1kkZDzyO5PXr7WkBEW4t+DVIKRgbCQMdBA==","signatures":[{"sig":"MEUCIF+Q0vWs9/HLNf995XW8fqC325Z4gn85YsL3CDgOvve5AiEA7lm5s2u1M1ASA/3uZZwG3sJNo+OQ83OJ1y7tmO002M4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20372845},"main":"./dist/ocelot-ui.umd.js","type":"module","types":"./dist/index.d.ts","module":"./dist/ocelot-ui.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./tailwind.css":"./tailwind.css"},"gitHead":"c66081b9e013a77460bcbcf5921b94d4ebaf1945","scripts":{"lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","check-types":"vue-tsc --noEmit","publish:npm":"node .build/publish.mjs","build:analyse":"vite build --mode analyze","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"shiki":"^4.0.2","remark-gfm":"^4.0.1","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.32","plyr":"^3.8.4","vite":"^8.0.7","eslint":"^10.2.0","qrcode":"^1.5.4","vitest":"^4.1.2","globals":"^17.4.0","postcss":"^8.5.8","vue-tsc":"^3.2.6","storybook":"^10.3.4","stylelint":"^17.6.0","@eslint/js":"^10.0.1","photoswipe":"^5.4.4","playwright":"^1.59.1","typescript":"^6.0.2","tailwindcss":"^4.2.2","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.2","vite-plugin-dts":"^4.5.4","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.2","eslint-plugin-vue":"^10.8.0","typescript-eslint":"^8.58.0","@vitejs/plugin-vue":"^6.0.5","@tanstack/vue-table":"^8.21.3","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.4","@storybook/addon-a11y":"^10.3.4","@storybook/addon-docs":"^10.3.4","@storybook/addon-links":"^10.3.4","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.4","@storybook/addon-vitest":"^10.3.4","eslint-plugin-storybook":"^10.3.4","@stylistic/eslint-plugin":"^5.10.0","rollup-plugin-visualizer":"^7.0.1","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.2","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","plyr":"^3.8.4","qrcode":"^1.5.4","photoswipe":"^5.4.4","tailwindcss":"^4.0.0","@tanstack/vue-table":"^8.21.3"},"peerDependenciesMeta":{"plyr":{"optional":true},"qrcode":{"optional":true},"photoswipe":{"optional":true},"@tanstack/vue-table":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.22_1777198762546_0.42972744527155515","host":"s3://npm-registry-packages-npm-production"}},"0.0.23":{"name":"ocelot-ui","version":"0.0.23","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.23","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"c5678ee23aa770a5104fc80bfecd779c07ec828e","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.23.tgz","fileCount":386,"integrity":"sha512-zMm/9aZlCSQll2chOaUl6x+Pl/MCevT/eBzY1zrCrACZrf4Binw1M2DzZ1qcLfWu9grOiqAvzLrnt+juMTGPqg==","signatures":[{"sig":"MEQCIHNNviFlpDKsBAW1gf+UdyfXV6cjnUutZe/Ei5yeJUO8AiApuxHjDCevRJasV74ZucaX4eWBAqdV4rGCMhFADqMZOQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20400945},"main":"./dist/ocelot-ui.umd.js","type":"module","types":"./dist/index.d.ts","module":"./dist/ocelot-ui.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./tailwind.css":"./tailwind.css"},"gitHead":"ff742197cc734362bff096b6dd8cdc52450298da","scripts":{"lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","check-types":"vue-tsc --noEmit","publish:npm":"node .build/publish.mjs","build:analyse":"vite build --mode analyze","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"rickrx","email":"rick@rxdesign.co.uk"},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"shiki":"^4.0.2","remark-gfm":"^4.0.1","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.33","plyr":"^3.8.4","vite":"^8.0.10","eslint":"^10.2.1","qrcode":"^1.5.4","vitest":"^4.1.5","globals":"^17.5.0","postcss":"^8.5.10","vue-tsc":"^3.2.7","storybook":"^10.3.5","stylelint":"^17.9.0","@eslint/js":"^10.0.1","photoswipe":"^5.4.4","playwright":"^1.59.1","typescript":"^6.0.3","tailwindcss":"^4.2.4","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.5","vite-plugin-dts":"^4.5.4","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.4","eslint-plugin-vue":"^10.9.0","typescript-eslint":"^8.59.0","@vitejs/plugin-vue":"^6.0.6","@tanstack/vue-table":"^8.21.3","@vitest/coverage-v8":"^4.1.5","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.5","@storybook/addon-a11y":"^10.3.5","@storybook/addon-docs":"^10.3.5","@storybook/addon-links":"^10.3.5","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.5","@storybook/addon-vitest":"^10.3.5","eslint-plugin-storybook":"^10.3.5","@stylistic/eslint-plugin":"^5.10.0","rollup-plugin-visualizer":"^7.0.1","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.5","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","plyr":"^3.8.4","qrcode":"^1.5.4","photoswipe":"^5.4.4","tailwindcss":"^4.0.0","@tanstack/vue-table":"^8.21.3"},"peerDependenciesMeta":{"plyr":{"optional":true},"qrcode":{"optional":true},"photoswipe":{"optional":true},"@tanstack/vue-table":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.23_1778273785441_0.736676617546806","host":"s3://npm-registry-packages-npm-production"}},"0.0.24":{"name":"ocelot-ui","version":"0.0.24","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.24","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"15323a21ba879944bfe5bb1f10ae3ba0ea8c4d3d","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.24.tgz","fileCount":386,"integrity":"sha512-GACSRgFK2eI0a097aSUpCWXWP6Vo9zSzUPCfwUh4nfMJRmprdnWXEl8a5Kj/LY0GwwbNg15ILtjHsa7EY3FmRQ==","signatures":[{"sig":"MEYCIQCLq//ISYoGX3J0wtEZNYw5XJVDaMII8h1RAmvSGaHZ7wIhANGJ4npnGp6n92Ahdt2O8hR84gqGYufkvQvzRZd8H3Jh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/ocelot-ui@0.0.24","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":20400524},"main":"./dist/ocelot-ui.umd.js","type":"module","types":"./dist/index.d.ts","module":"./dist/ocelot-ui.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./tailwind.css":"./tailwind.css"},"gitHead":"a39cc7a232003d0c4618e8c9ad1c7ada71d49a7e","scripts":{"lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","check-types":"vue-tsc --noEmit","publish:npm":"node .build/publish.mjs","build:analyse":"vite build --mode analyze","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ca4bc59-bd87-4be7-bf0c-b17693a5e53e"}},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"shiki":"^4.0.2","remark-gfm":"^4.0.1","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.33","plyr":"^3.8.4","vite":"^8.0.10","eslint":"^10.2.1","qrcode":"^1.5.4","vitest":"^4.1.5","globals":"^17.5.0","postcss":"^8.5.10","vue-tsc":"^3.2.7","storybook":"^10.3.5","stylelint":"^17.9.0","@eslint/js":"^10.0.1","photoswipe":"^5.4.4","playwright":"^1.59.1","typescript":"^6.0.3","tailwindcss":"^4.2.4","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.5","vite-plugin-dts":"^4.5.4","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.4","eslint-plugin-vue":"^10.9.0","typescript-eslint":"^8.59.0","@vitejs/plugin-vue":"^6.0.6","@tanstack/vue-table":"^8.21.3","@vitest/coverage-v8":"^4.1.5","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.5","@storybook/addon-a11y":"^10.3.5","@storybook/addon-docs":"^10.3.5","@storybook/addon-links":"^10.3.5","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.5","@storybook/addon-vitest":"^10.3.5","eslint-plugin-storybook":"^10.3.5","@stylistic/eslint-plugin":"^5.10.0","rollup-plugin-visualizer":"^7.0.1","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.5","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","plyr":"^3.8.4","qrcode":"^1.5.4","photoswipe":"^5.4.4","tailwindcss":"^4.0.0","@tanstack/vue-table":"^8.21.3"},"peerDependenciesMeta":{"plyr":{"optional":true},"qrcode":{"optional":true},"photoswipe":{"optional":true},"@tanstack/vue-table":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.24_1784914067907_0.12328977497219329","host":"s3://npm-registry-packages-npm-production"}},"0.0.25":{"name":"ocelot-ui","version":"0.0.25","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.25","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"b5ea009c682c646ae6f1dbedba55d707456aac4a","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.25.tgz","fileCount":386,"integrity":"sha512-QY4fmGXDqnZEcCvlgCNrmgCt+WSIBJ4hfz2BijRlD3UbHagUD4BSIstAIwyeeDcnq7Pm3l1zZBLpBSKIwXoV5g==","signatures":[{"sig":"MEYCIQDdbl1ajGMl5BqihC596QOwCwbTxFA9qVuPCfLb0DIZoQIhAL0sa1bdNd1kNLsGl+M4CxJxfPeUlGRnESOeJsPmpMho","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/ocelot-ui@0.0.25","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":20401604},"main":"./dist/ocelot-ui.umd.js","type":"module","types":"./dist/index.d.ts","module":"./dist/ocelot-ui.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./tailwind.css":"./tailwind.css"},"gitHead":"d6d97a8101d69ff671e660c3f89b6c933ead1fca","scripts":{"lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","changeset":"changeset","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","check-types":"vue-tsc --noEmit","publish:npm":"node .build/publish.mjs","build:analyse":"vite build --mode analyze","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","changeset:check":"node .build/check-changesets.mjs","release:prepare":"changeset version","release:publish":"npm run lint && npx playwright install --with-deps chromium && npm run test:run && npm run build && npm run changeset:publish","changeset:publish":"changeset publish","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ca4bc59-bd87-4be7-bf0c-b17693a5e53e"}},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"shiki":"^4.0.2","remark-gfm":"^4.0.1","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.33","plyr":"^3.8.4","vite":"^8.0.10","eslint":"^10.2.1","qrcode":"^1.5.4","vitest":"^4.1.5","globals":"^17.5.0","postcss":"^8.5.10","vue-tsc":"^3.2.7","storybook":"^10.3.5","stylelint":"^17.9.0","@eslint/js":"^10.0.1","photoswipe":"^5.4.4","playwright":"^1.59.1","typescript":"^6.0.3","tailwindcss":"^4.2.4","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@changesets/cli":"^2.31.1","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.5","vite-plugin-dts":"^4.5.4","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.4","eslint-plugin-vue":"^10.9.0","typescript-eslint":"^8.59.0","@vitejs/plugin-vue":"^6.0.6","@tanstack/vue-table":"^8.21.3","@vitest/coverage-v8":"^4.1.5","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.5","@storybook/addon-a11y":"^10.3.5","@storybook/addon-docs":"^10.3.5","@storybook/addon-links":"^10.3.5","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.5","@storybook/addon-vitest":"^10.3.5","eslint-plugin-storybook":"^10.3.5","@stylistic/eslint-plugin":"^5.10.0","rollup-plugin-visualizer":"^7.0.1","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.5","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","plyr":"^3.8.4","qrcode":"^1.5.4","photoswipe":"^5.4.4","tailwindcss":"^4.0.0","@tanstack/vue-table":"^8.21.3"},"peerDependenciesMeta":{"plyr":{"optional":true},"qrcode":{"optional":true},"photoswipe":{"optional":true},"@tanstack/vue-table":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.25_1784920794836_0.5125637864303296","host":"s3://npm-registry-packages-npm-production"}},"0.0.26":{"name":"ocelot-ui","version":"0.0.26","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.26","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"2fdaaa2d66e43218f5f6b5f6f1358d46a476928a","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.26.tgz","fileCount":386,"integrity":"sha512-rf51hH8yXQVb0Lory435rjVYXr7PKQKI0FbUd1OZImq0Xw4zrATGzy5DRR0otmXqt3Knzb58HldZvSfySEkfXg==","signatures":[{"sig":"MEQCIF7nnoD8cOyJSb4FyNWsuXs1rpWJIoJUKO7YFGk/o63OAiA09ey2jsirz+OYcYrjyzfvftvK1+LwC63XRJ7BLyWBew==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/ocelot-ui@0.0.26","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":20400834},"main":"./dist/ocelot-ui.umd.js","type":"module","types":"./dist/index.d.ts","module":"./dist/ocelot-ui.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./tailwind.css":"./tailwind.css"},"gitHead":"2d2548225569b438314c9aded8b7e87dfd719c60","scripts":{"lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","check-types":"vue-tsc --noEmit","publish:npm":"node .build/publish.mjs","build:analyse":"vite build --mode analyze","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ca4bc59-bd87-4be7-bf0c-b17693a5e53e"}},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"shiki":"^4.0.2","remark-gfm":"^4.0.1","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.33","plyr":"^3.8.4","vite":"^8.1.5","eslint":"^10.2.1","qrcode":"^1.5.4","vitest":"^4.1.5","globals":"^17.5.0","postcss":"^8.5.10","vue-tsc":"^3.2.7","storybook":"^10.3.5","stylelint":"^17.9.0","@eslint/js":"^10.0.1","photoswipe":"^5.4.4","playwright":"^1.59.1","typescript":"^6.0.3","tailwindcss":"^4.2.4","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.5","vite-plugin-dts":"^4.5.4","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.4","eslint-plugin-vue":"^10.9.0","typescript-eslint":"^8.59.0","@vitejs/plugin-vue":"^6.0.6","@tanstack/vue-table":"^8.21.3","@vitest/coverage-v8":"^4.1.5","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.5","@storybook/addon-a11y":"^10.3.5","@storybook/addon-docs":"^10.3.5","@storybook/addon-links":"^10.3.5","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.5","@storybook/addon-vitest":"^10.3.5","eslint-plugin-storybook":"^10.3.5","@stylistic/eslint-plugin":"^5.10.0","rollup-plugin-visualizer":"^7.0.1","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.5","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","plyr":"^3.8.4","qrcode":"^1.5.4","photoswipe":"^5.4.4","tailwindcss":"^4.0.0","@tanstack/vue-table":"^8.21.3"},"peerDependenciesMeta":{"plyr":{"optional":true},"qrcode":{"optional":true},"photoswipe":{"optional":true},"@tanstack/vue-table":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.26_1784924370358_0.9394463702285125","host":"s3://npm-registry-packages-npm-production"}},"0.0.27":{"name":"ocelot-ui","version":"0.0.27","keywords":["component library","vue","tailwind"],"author":{"url":"https://www.rxdesign.co.uk","name":"Rick Bairstow","email":"rick@rxdesign.co.uk"},"license":"MIT","_id":"ocelot-ui@0.0.27","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"homepage":"https://github.com/rickbairstow/Ocelot","bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"dist":{"shasum":"201f97c3f20c4266c5840605af2fc978d93b3915","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.27.tgz","fileCount":386,"integrity":"sha512-Wkpo+0c0ZKApRV4Vn7A16axno5WScoBDRX1Ys7eFMnYIYcqxSAVJnaD5JuZ6VLA0W3xWWNJPSyvZ8SqiMOYOIg==","signatures":[{"sig":"MEQCICjJWtKpgwB1+7v9RktfryQGXUPskw1Lri3DznehG1O0AiAHIhq73b3R04TRbRVkyZFqX1yAJxDY4vjn/UwMs6w8tA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/ocelot-ui@0.0.27","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":20400968},"main":"./dist/ocelot-ui.umd.js","type":"module","types":"./dist/index.d.ts","module":"./dist/ocelot-ui.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./tailwind.css":"./tailwind.css"},"gitHead":"7d4d9f5f869eb92ed9736e87a4b9abd47bbb37b3","scripts":{"lint":"npm run eslint && npm run stylelint","test":"vitest","build":"vite build","eslint":"eslint .","preview":"vite preview","lint:fix":"npm run eslint:fix && npm run stylelint:fix","test:run":"vitest run","storybook":"storybook dev -p 6006","stylelint":"stylelint **/*.css **/*.scss","eslint:fix":"eslint . --fix","check-types":"vue-tsc --noEmit","publish:npm":"node .build/publish.mjs","build:analyse":"vite build --mode analyze","stylelint:fix":"stylelint **/*.css **/*.scss --fix","test-storybook":"test-storybook","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ca4bc59-bd87-4be7-bf0c-b17693a5e53e"}},"overrides":{"storybook":"$storybook"},"repository":{"url":"git+https://github.com/rickbairstow/Ocelot.git","type":"git"},"_npmVersion":"11.11.0","description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","directories":{},"_nodeVersion":"24.14.1","dependencies":{"shiki":"^4.0.2","remark-gfm":"^4.0.1","@tabler/icons":"^3.41.1","@floating-ui/dom":"^1.7.6","@tabler/icons-vue":"^3.41.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.33","plyr":"^3.8.4","vite":"^8.1.5","eslint":"^10.2.1","qrcode":"^1.5.4","vitest":"^4.1.5","globals":"^17.5.0","postcss":"^8.5.10","vue-tsc":"^3.2.7","storybook":"^10.3.5","stylelint":"^17.9.0","@eslint/js":"^10.0.1","photoswipe":"^5.4.4","playwright":"^1.59.1","typescript":"^6.0.3","tailwindcss":"^4.2.4","@types/qrcode":"^1.5.6","sass-embedded":"^1.99.0","axe-playwright":"^2.2.2","@faker-js/faker":"^10.4.0","@vitest/browser":"^4.1.5","vite-plugin-dts":"^4.5.4","@eslint/eslintrc":"^3.3.5","@tailwindcss/vite":"^4.2.4","eslint-plugin-vue":"^10.9.0","typescript-eslint":"^8.59.0","@vitejs/plugin-vue":"^6.0.6","@tanstack/vue-table":"^8.21.3","@vitest/coverage-v8":"^4.1.5","eslint-plugin-jsdoc":"^62.9.0","@storybook/vue3-vite":"^10.3.5","@storybook/addon-a11y":"^10.3.5","@storybook/addon-docs":"^10.3.5","@storybook/addon-links":"^10.3.5","@storybook/test-runner":"^0.24.3","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-themes":"^10.3.5","@storybook/addon-vitest":"^10.3.5","eslint-plugin-storybook":"^10.3.5","@stylistic/eslint-plugin":"^5.10.0","rollup-plugin-visualizer":"^7.0.1","stylelint-config-standard":"^40.0.0","@vitest/browser-playwright":"^4.1.5","stylelint-config-standard-scss":"^17.0.0","eslint-plugin-vuejs-accessibility":"^2.5.0"},"peerDependencies":{"vue":"^3.5.0","plyr":"^3.8.4","qrcode":"^1.5.4","photoswipe":"^5.4.4","tailwindcss":"^4.0.0","@tanstack/vue-table":"^8.21.3"},"peerDependenciesMeta":{"plyr":{"optional":true},"qrcode":{"optional":true},"photoswipe":{"optional":true},"@tanstack/vue-table":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ocelot-ui_0.0.27_1784925235813_0.7261606479094356","host":"s3://npm-registry-packages-npm-production"}},"0.0.28":{"name":"ocelot-ui","version":"0.0.28","license":"MIT","author":{"name":"Rick Bairstow","email":"rick@rxdesign.co.uk","url":"https://www.rxdesign.co.uk"},"description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","homepage":"https://github.com/rickbairstow/Ocelot","keywords":["component library","vue","tailwind"],"repository":{"type":"git","url":"git+https://github.com/rickbairstow/Ocelot.git"},"bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"type":"module","main":"./dist/ocelot-ui.umd.js","module":"./dist/ocelot-ui.es.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/ocelot-ui.es.js","require":"./dist/ocelot-ui.umd.js"},"./tailwind.css":"./tailwind.css"},"scripts":{"build":"vite build","build:analyse":"vite build --mode analyze","check-types":"vue-tsc --noEmit","preview":"vite preview","lint":"npm run eslint && npm run stylelint","lint:fix":"npm run eslint:fix && npm run stylelint:fix","eslint":"eslint .","eslint:fix":"eslint . --fix","stylelint":"stylelint **/*.css **/*.scss","stylelint:fix":"stylelint **/*.css **/*.scss --fix","storybook":"storybook dev -p 6006","build-storybook":"storybook build","upgrade-storybook":"npx storybook@latest upgrade","test-storybook":"test-storybook","test":"vitest","test:run":"vitest run","publish:npm":"node .build/publish.mjs"},"peerDependencies":{"@tanstack/vue-table":"^8.21.3","photoswipe":"^5.4.4","plyr":"^3.8.4","qrcode":"^1.5.4","tailwindcss":"^4.0.0","vue":"^3.5.0"},"peerDependenciesMeta":{"@tanstack/vue-table":{"optional":true},"photoswipe":{"optional":true},"plyr":{"optional":true},"qrcode":{"optional":true}},"dependencies":{"@floating-ui/dom":"^1.8.0","@tabler/icons":"^3.45.0","@tabler/icons-vue":"^3.45.0","remark-gfm":"^4.0.1","shiki":"^4.3.1"},"devDependencies":{"@eslint/eslintrc":"^3.3.6","@eslint/js":"^10.0.1","@faker-js/faker":"^10.5.0","@rushstack/eslint-patch":"^1.16.1","@storybook/addon-a11y":"^10.5.4","@storybook/addon-docs":"^10.5.4","@storybook/addon-links":"^10.5.4","@storybook/addon-themes":"^10.5.4","@storybook/addon-vitest":"^10.5.4","@storybook/test-runner":"^0.24.4","@storybook/vue3-vite":"^10.5.4","@stylistic/eslint-plugin":"^5.10.0","@tailwindcss/vite":"^4.3.3","@tanstack/vue-table":"^8.21.3","@types/qrcode":"^1.5.6","@vitejs/plugin-vue":"^6.0.8","@vitest/browser":"^4.1.10","@vitest/browser-playwright":"^4.1.10","@vitest/coverage-v8":"^4.1.10","axe-playwright":"^2.2.2","eslint":"^10.8.0","eslint-plugin-jsdoc":"^63.2.2","eslint-plugin-storybook":"^10.5.4","eslint-plugin-vue":"^10.10.0","eslint-plugin-vuejs-accessibility":"^2.5.0","globals":"^17.7.0","photoswipe":"^5.4.4","playwright":"^1.61.1","plyr":"^3.8.4","postcss":"^8.5.23","qrcode":"^1.5.4","rollup-plugin-visualizer":"^7.0.1","sass-embedded":"^1.100.0","storybook":"^10.5.4","stylelint":"^17.14.1","stylelint-config-standard":"^40.0.0","stylelint-config-standard-scss":"^17.0.0","tailwindcss":"^4.3.3","typescript":"^6.0.3","typescript-eslint":"^8.65.0","vite":"^8.1.5","vite-plugin-dts":"^5.0.3","vitest":"^4.1.10","vue":"^3.5.40","vue-tsc":"^3.3.8"},"overrides":{"storybook":"$storybook"},"gitHead":"73a4fa74a29296f1b4590aa888163beaafbaeb13","_id":"ocelot-ui@0.0.28","_nodeVersion":"24.14.1","_npmVersion":"11.11.0","dist":{"integrity":"sha512-67LFdaxHeNgPkDMJ0X7aKAD56Doi0h4E1FfdOYvMIjnFdU5WJGuE6BkmCz+rfcmt1mQEGMWyfPP8y4T8Ahas5w==","shasum":"79e06c856c320fbbde481896e98413fd1b457de2","tarball":"https://registry.npmjs.org/ocelot-ui/-/ocelot-ui-0.0.28.tgz","fileCount":386,"unpackedSize":20403267,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/ocelot-ui@0.0.28","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDZH0GkxLL0PjCzBut6pAXdByNnZWNXFYNVrE0IuEG1ZwIgKZPnR57oHuPM3oatcFwO/IqrzZoFrUw4N101FMtbqBg="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ca4bc59-bd87-4be7-bf0c-b17693a5e53e"}},"directories":{},"maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ocelot-ui_0.0.28_1784928587219_0.9198311322349275"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-01T19:53:01.294Z","modified":"2026-07-24T21:29:47.810Z","0.0.1":"2026-04-01T19:53:01.562Z","0.0.2":"2026-04-01T20:01:24.296Z","0.0.4":"2026-04-01T20:27:06.053Z","0.0.5":"2026-04-02T13:25:43.628Z","0.0.6":"2026-04-02T13:33:04.213Z","0.0.7":"2026-04-05T20:17:47.251Z","0.0.8":"2026-04-05T22:49:28.077Z","0.0.9":"2026-04-11T13:24:34.214Z","0.0.10":"2026-04-11T13:34:49.320Z","0.0.11":"2026-04-11T14:40:15.640Z","0.0.12":"2026-04-11T15:12:35.355Z","0.0.13":"2026-04-11T15:54:17.915Z","0.0.14":"2026-04-11T16:30:54.052Z","0.0.15":"2026-04-11T16:36:12.199Z","0.0.16":"2026-04-11T16:42:48.324Z","0.0.17":"2026-04-11T23:03:21.565Z","0.0.18":"2026-04-11T23:06:35.292Z","0.0.19":"2026-04-11T23:16:44.282Z","0.0.20":"2026-04-12T11:19:05.056Z","0.0.21":"2026-04-12T14:34:55.312Z","0.0.22":"2026-04-26T10:19:22.787Z","0.0.23":"2026-05-08T20:56:25.732Z","0.0.24":"2026-07-24T17:27:48.201Z","0.0.25":"2026-07-24T19:19:55.081Z","0.0.26":"2026-07-24T20:19:30.648Z","0.0.27":"2026-07-24T20:33:56.031Z","0.0.28":"2026-07-24T21:29:47.489Z"},"bugs":{"url":"https://github.com/rickbairstow/Ocelot/issues"},"author":{"name":"Rick Bairstow","email":"rick@rxdesign.co.uk","url":"https://www.rxdesign.co.uk"},"license":"MIT","homepage":"https://github.com/rickbairstow/Ocelot","keywords":["component library","vue","tailwind"],"repository":{"type":"git","url":"git+https://github.com/rickbairstow/Ocelot.git"},"description":"Ocelot UI (OUI), a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your proj","maintainers":[{"name":"rickrx","email":"rick@rxdesign.co.uk"}],"readme":"# Ocelot UI\n\n[![Netlify Status](https://api.netlify.com/api/v1/badges/cb306552-9864-4937-8051-80c1cb4177a9/deploy-status)](https://app.netlify.com/projects/ocelotui/deploys)\n\n**Ocelot UI (OUI)**, a UI framework built with Vue 3 and Tailwind CSS, is designed to be highly performant, optimized, and accessible. It strikes a balance by providing essential features without being overly opinionated, allowing for flexibility in your projects.\n\nHead to [OcelotUI on Netlify](https://ocelotui.netlify.app) for the Storybook site — this auto-publishes on every PR merge.\n\n![OcelotUi-anim](https://github.com/user-attachments/assets/0d26c2ef-305c-4d5c-b7c2-e784f8d4484e)\n\n---\n\n## Installation\n\n```bash\nnpm install ocelot-ui\n```\n\n**Prerequisites:** Vue 3.5+, Tailwind CSS v4, Node.js 20+\n\nOptional feature dependencies:\n\n```bash\n# Table\nnpm install @tanstack/vue-table\n\n# LightboxImage\nnpm install photoswipe\n\n# Video\nnpm install plyr\n\n# QrCode\nnpm install qrcode\n```\n\nInstall only the packages for the components you actually use. OUI will warn in development if `Table`, `LightboxImage`, `Video`, or `QrCode` is mounted without its matching dependency.\n\nFor example:\n\n- `Table` requires `@tanstack/vue-table`\n- `LightboxImage` requires `photoswipe`\n- `Video` requires `plyr`\n- `QrCode` requires `qrcode`\n\n### 1. Configure Tailwind\n\nImport the OUI Tailwind plugin alongside your Tailwind import. This tells Tailwind to scan OUI components so their utility classes are included in your build:\n\n```css\n/* your main CSS file */\n@import \"tailwindcss\";\n@import \"ocelot-ui/tailwind.css\";\n@custom-variant dark (&:where(.dark, .dark *));\n```\n\n### 2. Import the stylesheet\n\n```js\n// main.js / main.ts\nimport 'ocelot-ui/style.css'\n```\n\nThe stylesheet (`ocelot-ui/style.css`) contains Vue transition styles.\n\n### 3. Import components\n\nUse named imports directly in your components:\n\n```js\nimport { Button, Dialog, Sidebar } from 'ocelot-ui'\n```\n\n### 4. Portal targets\n\n`Dialog`, `Toast`, and `CommandPalette` use Vue Teleport. OUI creates `#portal-target` automatically after mount when it is missing, or you can provide one yourself in `index.html`.\n\n### Table notes\n\n`Table` includes a built-in settings menu for density, column visibility, and pinning. On small screens it can either stay horizontally scrollable or switch rows into stacked cards with `mobileLayout=\"card\"`.\n\n### CommandPalette notes\n\n`CommandPalette` also teleports to `#portal-target`. Register commands with `useCommandPalette()`, then mount the component once near the app root so it can respond to `Ctrl+K` / `Cmd+K`.\n\n### NavigationBar notes\n\n`NavigationBar` includes desktop nav slots, two-level submenu support, and a `#mobile-menu` slot for small-screen navigation. Use `mobileMenuOpen` / `update:mobileMenuOpen` when the host app needs controlled state.\n\n### Forms and RTL\n\nStorybook includes guidance for form validation integration and RTL support. OUI provides accessible form structure but leaves validation rules, touched/submission state, async checks, and server error mapping to the host app or its chosen validation library. Vee-Validate, Zod, native HTML constraints, and server-driven validation should all feed the same `FormField error` contract.\n\n---\n\n## Dark mode\n\nToggle dark mode via the `.dark` class on `<html>`:\n\n```html\n<html class=\"dark\">...</html>\n```\n\nAll components and product pattern stories should be checked under the Storybook dark theme before release. New component stories should use semantic Tailwind colours with `dark:` variants for any text, border, or background colour they introduce.\n\n---\n\n## Bundle analysis\n\nTo inspect the library bundle composition locally, run:\n\n```bash\nnpm run build:analyse\n```\n\nThis generates a treemap report at `dist/bundle-analysis.html`.\n\n---\n\n## Publishing to npm\n\nReleases are handled by the manual `Release Package` GitHub Actions workflow on `main`.\n\nRepository setup:\n\n- Configure npm Trusted Publishing for `release.yml`\n- Use the `npm-release` GitHub Environment for release approval protection\n- Add only trusted maintainers as required reviewers on that environment\n\nWhen running `Release Package`, choose `patch`, `minor`, or `major`. The workflow opens or updates a release PR that bumps `package.json` and `package-lock.json`.\n\nWhen that release PR is merged to `main`, the same workflow installs Playwright, runs linting, runs tests, builds the package, publishes to npm through Trusted Publishing, pushes the release tag, and creates the matching GitHub Release. If the npm version already exists, the workflow skips npm publish and still creates the missing tag/release.\n\nDo not manually bump the package version for normal releases. Let the release workflow do it.\n\n---\n\n## Netlify\n\nOcelotUI's Storybook is hosted on Netlify at https://ocelotui.netlify.app. PRs automatically deploy on merge to `main`.\n","readmeFilename":"README.md"}