{"_id":"@be-enlighten/enspace-sdk-ui","_rev":"15-1bfb96cf1c8bd5a989057b38c77acd37","name":"@be-enlighten/enspace-sdk-ui","dist-tags":{"latest":"0.17.0"},"versions":{"0.9.1":{"name":"@be-enlighten/enspace-sdk-ui","version":"0.9.1","keywords":["enspace","sdk","vue","vue3","components","nuxt-ui"],"license":"MIT","_id":"@be-enlighten/enspace-sdk-ui@0.9.1","maintainers":[{"name":"hardeath950","email":"raaaaul@live.com"}],"homepage":"https://github.com/Enlighten-Brasil/en-sdk#readme","bugs":{"url":"https://github.com/Enlighten-Brasil/en-sdk/issues"},"dist":{"shasum":"e2a0c1a80499eda9ec5c64ed4fe61ff11a28e293","tarball":"https://registry.npmjs.org/@be-enlighten/enspace-sdk-ui/-/enspace-sdk-ui-0.9.1.tgz","fileCount":319,"integrity":"sha512-xfB0AgcdLaPBA2ATPrPQi4/aa9u5fdwNqeyYBl6bDgRUOW9UoGlZFfUPXZFuvbjqvXHPNr7nsBEtJNGpe09ikw==","signatures":[{"sig":"MEUCIEydQKqyg4Gzne687ats3RAH+of2ym8hDWl+ZMmlcPRlAiEApZFleQnkNfAZN7tABKMsj6Mi9OIORWm1Hmk3YgTkNbQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1294172},"main":"./dist/index.js","type":"module","_from":"file:be-enlighten-enspace-sdk-ui-0.9.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./nuxt":{"types":"./dist/nuxt/index.d.ts","import":"./dist/nuxt/index.mjs"},"./style.css":"./dist/enspace-sdk-ui.css"},"scripts":{"test":"vitest run","build":"vite build && tsup","typecheck":"vue-tsc --noEmit"},"_npmUser":{"name":"hardeath950","email":"raaaaul@live.com"},"_resolved":"C:\\Users\\Raul\\AppData\\Local\\Temp\\dd0dff5ae9821fe761c2516c7374db54\\be-enlighten-enspace-sdk-ui-0.9.1.tgz","_integrity":"sha512-xfB0AgcdLaPBA2ATPrPQi4/aa9u5fdwNqeyYBl6bDgRUOW9UoGlZFfUPXZFuvbjqvXHPNr7nsBEtJNGpe09ikw==","repository":{"url":"git+https://github.com/Enlighten-Brasil/en-sdk.git","type":"git"},"_npmVersion":"11.9.0","description":"Vue 3 component library and Nuxt 4 module for the Enspace SDK — dumb base components + entity components wired to the /query data layer.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.4.3","@vueuse/core":"^14.0.0","@be-enlighten/enspace-sdk-schemas":"^0.9.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.239","vue":"^3.5.0","vite":"^7.3.6","pinia":"^4.0.2","vue-tsc":"^3.3.7","@nuxt/ui":"^4.10.0","@nuxt/kit":"^4.0.0","happy-dom":"^20.11.0","@ai-sdk/vue":"3.0.239","@iconify/vue":"^5.0.1","@nuxt/schema":"^4.0.0","@pinia/colada":"^1.4.2","streamdown-vue":"^1.0.29","@vue/test-utils":"^2.4.11","vite-plugin-dts":"^4.5.4","vue-beni-avatar":"^0.3.1","@vitejs/plugin-vue":"^6.0.8","@tanstack/vue-table":"^8.21.3","@be-enlighten/enspace-sdk-vue":"0.9.1","@be-enlighten/enspace-sdk-core":"0.9.1"},"peerDependencies":{"ai":"^6.0.0","vue":"^3.5.0","nuxt":"^4.0.0","pinia":"^2.2.6 || ^3.0.0 || ^4.0.0","@nuxt/ui":"^4.0.0","@nuxt/kit":"^4.0.0","@ai-sdk/vue":"^3.0.0","@pinia/colada":"^1.4.0","streamdown-vue":"^1.0.0","vue-beni-avatar":"^0.3.0","@tanstack/vue-table":"^8.21.3","@be-enlighten/enspace-sdk-vue":"^0.9.1","@be-enlighten/enspace-sdk-core":"^0.9.1"},"peerDependenciesMeta":{"ai":{"optional":true},"nuxt":{"optional":true},"pinia":{"optional":true},"@nuxt/kit":{"optional":true},"@ai-sdk/vue":{"optional":true},"@pinia/colada":{"optional":true},"streamdown-vue":{"optional":true},"vue-beni-avatar":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/enspace-sdk-ui_0.9.1_1786368447593_0.9028844712029442","host":"s3://npm-registry-packages-npm-production"}},"0.9.2":{"name":"@be-enlighten/enspace-sdk-ui","version":"0.9.2","keywords":["enspace","sdk","vue","vue3","components","nuxt-ui"],"license":"MIT","_id":"@be-enlighten/enspace-sdk-ui@0.9.2","maintainers":[{"name":"hardeath950","email":"raaaaul@live.com"}],"dist":{"shasum":"ec1254f13af6e9a1de9556d1f437b0c139d71735","tarball":"https://registry.npmjs.org/@be-enlighten/enspace-sdk-ui/-/enspace-sdk-ui-0.9.2.tgz","fileCount":319,"integrity":"sha512-uovi0mNvss2hmYHu/fVpBAk7lisHWnuSMBt4ERW88dh/19QHQFzoLMAyHfaZmDQvL1xmX50zfqQ9bmZSGIMHKg==","signatures":[{"sig":"MEYCIQDiHk5oKyCv5SwZKd8/nqKdQr1AMZ6DsQKf2JtjK9rVeAIhAMcxrnIWILAJPaI3CHolMiCC7Rzu+iu+23C+7ovNJitZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1291415},"main":"./dist/index.js","type":"module","_from":"file:be-enlighten-enspace-sdk-ui-0.9.2.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./nuxt":{"types":"./dist/nuxt/index.d.ts","import":"./dist/nuxt/index.mjs"},"./style.css":"./dist/enspace-sdk-ui.css"},"scripts":{"test":"vitest run","build":"vite build && tsup","typecheck":"vue-tsc --noEmit"},"_npmUser":{"name":"hardeath950","email":"raaaaul@live.com"},"_resolved":"C:\\Users\\Raul\\AppData\\Local\\Temp\\0d0e43c1f6e72c7ba6eaee8eae1c9e50\\be-enlighten-enspace-sdk-ui-0.9.2.tgz","_integrity":"sha512-uovi0mNvss2hmYHu/fVpBAk7lisHWnuSMBt4ERW88dh/19QHQFzoLMAyHfaZmDQvL1xmX50zfqQ9bmZSGIMHKg==","_npmVersion":"11.9.0","description":"Vue 3 component library and Nuxt 4 module for the Enspace SDK — dumb base components + entity components wired to the /query data layer.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.4.3","@vueuse/core":"^14.0.0","@be-enlighten/enspace-sdk-schemas":"^0.9.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.239","vue":"^3.5.0","vite":"^7.3.6","pinia":"^4.0.2","vue-tsc":"^3.3.7","@nuxt/ui":"^4.10.0","@nuxt/kit":"^4.0.0","happy-dom":"^20.11.0","@ai-sdk/vue":"3.0.239","@iconify/vue":"^5.0.1","@nuxt/schema":"^4.0.0","@pinia/colada":"^1.4.2","streamdown-vue":"^1.0.29","@vue/test-utils":"^2.4.11","vite-plugin-dts":"^4.5.4","vue-beni-avatar":"^0.3.1","@vitejs/plugin-vue":"^6.0.8","@tanstack/vue-table":"^8.21.3","@be-enlighten/enspace-sdk-vue":"0.9.2","@be-enlighten/enspace-sdk-core":"0.9.2"},"peerDependencies":{"ai":"^6.0.0","vue":"^3.5.0","nuxt":"^4.0.0","pinia":"^2.2.6 || ^3.0.0 || ^4.0.0","@nuxt/ui":"^4.0.0","@nuxt/kit":"^4.0.0","@ai-sdk/vue":"^3.0.0","@pinia/colada":"^1.4.0","streamdown-vue":"^1.0.0","vue-beni-avatar":"^0.3.0","@tanstack/vue-table":"^8.21.3","@be-enlighten/enspace-sdk-vue":"^0.9.2","@be-enlighten/enspace-sdk-core":"^0.9.2"},"peerDependenciesMeta":{"ai":{"optional":true},"nuxt":{"optional":true},"pinia":{"optional":true},"@nuxt/kit":{"optional":true},"@ai-sdk/vue":{"optional":true},"@pinia/colada":{"optional":true},"streamdown-vue":{"optional":true},"vue-beni-avatar":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/enspace-sdk-ui_0.9.2_1786388319639_0.47938784931633216","host":"s3://npm-registry-packages-npm-production"}},"0.9.3":{"name":"@be-enlighten/enspace-sdk-ui","version":"0.9.3","keywords":["enspace","sdk","vue","vue3","components","nuxt-ui"],"license":"MIT","_id":"@be-enlighten/enspace-sdk-ui@0.9.3","maintainers":[{"name":"hardeath950","email":"raaaaul@live.com"}],"dist":{"shasum":"2b443f38e042b72ecaf0a2712cad8eaf32286085","tarball":"https://registry.npmjs.org/@be-enlighten/enspace-sdk-ui/-/enspace-sdk-ui-0.9.3.tgz","fileCount":319,"integrity":"sha512-tVsSRFt3RUKA3WBuLBqaw3X5zAU0mpYkyDb5QPvoTmSMvyx6d06NBqEgW2SzYxHQbCEVaYwwuFY5+cWO+A0uDw==","signatures":[{"sig":"MEUCIAvnuPjJ9e+6riAClC6FXvy94PaL6RR891g/Ydw9UHu9AiEAgb+08Tia3KBybih3KXdYbGH80aNmSWbzWnpVEA8ZtP8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1291415},"main":"./dist/index.js","type":"module","_from":"file:be-enlighten-enspace-sdk-ui-0.9.3.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./nuxt":{"types":"./dist/nuxt/index.d.ts","import":"./dist/nuxt/index.mjs"},"./style.css":"./dist/enspace-sdk-ui.css"},"scripts":{"test":"vitest run","build":"vite build && tsup","typecheck":"vue-tsc --noEmit"},"_npmUser":{"name":"hardeath950","email":"raaaaul@live.com"},"_resolved":"C:\\Users\\Raul\\AppData\\Local\\Temp\\6a6a2413064b6c5ccd88600bbdd0a093\\be-enlighten-enspace-sdk-ui-0.9.3.tgz","_integrity":"sha512-tVsSRFt3RUKA3WBuLBqaw3X5zAU0mpYkyDb5QPvoTmSMvyx6d06NBqEgW2SzYxHQbCEVaYwwuFY5+cWO+A0uDw==","_npmVersion":"11.9.0","description":"Vue 3 component library and Nuxt 4 module for the Enspace SDK — dumb base components + entity components wired to the /query data layer.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.4.3","@vueuse/core":"^14.0.0","@be-enlighten/enspace-sdk-schemas":"^0.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.239","vue":"^3.5.0","vite":"^7.3.6","pinia":"^4.0.2","vue-tsc":"^3.3.7","@nuxt/ui":"^4.10.0","@nuxt/kit":"^4.0.0","happy-dom":"^20.11.0","@ai-sdk/vue":"3.0.239","@iconify/vue":"^5.0.1","@nuxt/schema":"^4.0.0","@pinia/colada":"^1.4.2","streamdown-vue":"^1.0.29","@vue/test-utils":"^2.4.11","vite-plugin-dts":"^4.5.4","vue-beni-avatar":"^0.3.1","@vitejs/plugin-vue":"^6.0.8","@tanstack/vue-table":"^8.21.3","@be-enlighten/enspace-sdk-vue":"0.9.3","@be-enlighten/enspace-sdk-core":"0.9.3"},"peerDependencies":{"ai":"^6.0.0","vue":"^3.5.0","nuxt":"^4.0.0","pinia":"^2.2.6 || ^3.0.0 || ^4.0.0","@nuxt/ui":"^4.0.0","@nuxt/kit":"^4.0.0","@ai-sdk/vue":"^3.0.0","@pinia/colada":"^1.4.0","streamdown-vue":"^1.0.0","vue-beni-avatar":"^0.3.0","@tanstack/vue-table":"^8.21.3","@be-enlighten/enspace-sdk-vue":"^0.9.3","@be-enlighten/enspace-sdk-core":"^0.9.3"},"peerDependenciesMeta":{"ai":{"optional":true},"nuxt":{"optional":true},"pinia":{"optional":true},"@nuxt/kit":{"optional":true},"@ai-sdk/vue":{"optional":true},"@pinia/colada":{"optional":true},"streamdown-vue":{"optional":true},"vue-beni-avatar":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/enspace-sdk-ui_0.9.3_1786392309634_0.8601397487169233","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@be-enlighten/enspace-sdk-ui","version":"0.10.0","keywords":["enspace","sdk","vue","vue3","components","nuxt-ui"],"license":"MIT","_id":"@be-enlighten/enspace-sdk-ui@0.10.0","maintainers":[{"name":"hardeath950","email":"raaaaul@live.com"}],"dist":{"shasum":"be6e55f0911d3b770f018097f88799d837cb8d62","tarball":"https://registry.npmjs.org/@be-enlighten/enspace-sdk-ui/-/enspace-sdk-ui-0.10.0.tgz","fileCount":335,"integrity":"sha512-7yCQc5iFNFBbBYoe8ssZn9LhzBJxz0EGD0nGepfo75ezpqD/jH2wsjkYjD41ICj0zaEqj0BomxWUT6gz6Kkkjw==","signatures":[{"sig":"MEQCIHd3IIViSSehu+f7s2miONv9Nd6RLujFbd0zBAg0vHcmAiBibX40Z41EnnzFvHGtxnbaL0VL/z9Pm5Kz2bL+DI4H7A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1381571},"main":"./dist/index.js","type":"module","_from":"file:be-enlighten-enspace-sdk-ui-0.10.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./nuxt":{"types":"./dist/nuxt/index.d.ts","import":"./dist/nuxt/index.mjs"},"./style.css":"./dist/enspace-sdk-ui.css"},"scripts":{"test":"vitest run","build":"vite build && tsup","typecheck":"vue-tsc --noEmit"},"_npmUser":{"name":"hardeath950","email":"raaaaul@live.com"},"_resolved":"C:\\Users\\Raul\\AppData\\Local\\Temp\\e5e770577bcfb866a5f2483eddef26db\\be-enlighten-enspace-sdk-ui-0.10.0.tgz","_integrity":"sha512-7yCQc5iFNFBbBYoe8ssZn9LhzBJxz0EGD0nGepfo75ezpqD/jH2wsjkYjD41ICj0zaEqj0BomxWUT6gz6Kkkjw==","_npmVersion":"11.9.0","description":"Vue 3 component library and Nuxt 4 module for the Enspace SDK — dumb base components + entity components wired to the /query data layer.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.4.3","@vueuse/core":"^14.4.0","@be-enlighten/enspace-sdk-schemas":"^0.10.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.239","vue":"^3.5.41","vite":"^7.3.6","pinia":"^4.0.3","vue-tsc":"^3.3.9","@nuxt/ui":"^4.10.0","@nuxt/kit":"^4.5.2","happy-dom":"^20.11.2","@ai-sdk/vue":"3.0.239","@iconify/vue":"^5.0.1","@nuxt/schema":"^4.5.2","@pinia/colada":"^1.4.2","streamdown-vue":"^1.0.29","@vue/test-utils":"^2.4.11","vite-plugin-dts":"^4.5.4","vue-beni-avatar":"^0.3.1","@vitejs/plugin-vue":"^6.0.8","@tanstack/vue-table":"^8.21.3","@be-enlighten/enspace-sdk-vue":"0.10.0","@be-enlighten/enspace-sdk-core":"0.10.0"},"peerDependencies":{"ai":"^6.0.0","vue":"^3.5.0","nuxt":"^4.5.2","pinia":"^2.2.6 || ^3.0.0 || ^4.0.0","@nuxt/ui":"^4.0.0","@nuxt/kit":"^4.0.0","@ai-sdk/vue":"^3.0.0","@pinia/colada":"^1.4.0","streamdown-vue":"^1.0.0","vue-beni-avatar":"^0.3.0","@tanstack/vue-table":"^8.21.3","@be-enlighten/enspace-sdk-vue":"^0.10.0","@be-enlighten/enspace-sdk-core":"^0.10.0"},"peerDependenciesMeta":{"ai":{"optional":true},"nuxt":{"optional":true},"pinia":{"optional":true},"@nuxt/kit":{"optional":true},"@ai-sdk/vue":{"optional":true},"@pinia/colada":{"optional":true},"streamdown-vue":{"optional":true},"vue-beni-avatar":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/enspace-sdk-ui_0.10.0_1786654164630_0.6777817481839381","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"@be-enlighten/enspace-sdk-ui","version":"0.11.0","keywords":["enspace","sdk","vue","vue3","components","nuxt-ui"],"license":"MIT","_id":"@be-enlighten/enspace-sdk-ui@0.11.0","maintainers":[{"name":"hardeath950","email":"raaaaul@live.com"}],"dist":{"shasum":"8119940bfc294b8ccfd54d49c17356a9353cefce","tarball":"https://registry.npmjs.org/@be-enlighten/enspace-sdk-ui/-/enspace-sdk-ui-0.11.0.tgz","fileCount":411,"integrity":"sha512-E9d+TzAtZiL6mgUKV5j4Ffh/6omg66kqDGeNTsvkzUFsL0PGNrBYf9F/PjAAa45fLfpnlqMn+PjtAXZe9twaBA==","signatures":[{"sig":"MEUCIQDTD6Lse/qClzwQcgqnG1Lg/yexqtYO1/5J3UpeltlLwwIgaQcK3gdCi/PiObBqf6mZiZjYgUnVm6Ser9dkEx6en8I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1599129},"main":"./dist/index.js","type":"module","_from":"file:be-enlighten-enspace-sdk-ui-0.11.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./nuxt":{"types":"./dist/nuxt/index.d.ts","import":"./dist/nuxt/index.mjs"},"./style.css":"./dist/enspace-sdk-ui.css"},"scripts":{"test":"vitest run","build":"vite build && tsup","typecheck":"vue-tsc --noEmit"},"_npmUser":{"name":"hardeath950","email":"raaaaul@live.com"},"_resolved":"C:\\Users\\Raul\\AppData\\Local\\Temp\\75f0d52a5b969fc367b8e2782f9093fd\\be-enlighten-enspace-sdk-ui-0.11.0.tgz","_integrity":"sha512-E9d+TzAtZiL6mgUKV5j4Ffh/6omg66kqDGeNTsvkzUFsL0PGNrBYf9F/PjAAa45fLfpnlqMn+PjtAXZe9twaBA==","_npmVersion":"11.9.0","description":"Vue 3 component library and Nuxt 4 module for the Enspace SDK — dumb base components + entity components wired to the /query data layer.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.4.3","@vueuse/core":"^14.4.0","@be-enlighten/enspace-sdk-schemas":"^0.11.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.239","vue":"^3.5.41","vite":"^7.3.6","pinia":"^4.0.3","vue-tsc":"^3.3.9","@nuxt/ui":"^4.10.0","@nuxt/kit":"^4.5.2","happy-dom":"^20.11.2","@ai-sdk/vue":"3.0.239","@iconify/vue":"^5.0.1","@nuxt/schema":"^4.5.2","@pinia/colada":"^1.4.2","streamdown-vue":"^1.0.29","@vue/test-utils":"^2.4.11","vite-plugin-dts":"^4.5.4","@vitejs/plugin-vue":"^6.0.8","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"0.4.0","@be-enlighten/enspace-sdk-vue":"0.11.0","@be-enlighten/enspace-sdk-core":"0.11.0"},"peerDependencies":{"ai":"^6.0.0","vue":"^3.5.0","nuxt":"^4.5.2","pinia":"^2.2.6 || ^3.0.0 || ^4.0.0","@nuxt/ui":"^4.0.0","@nuxt/kit":"^4.0.0","@ai-sdk/vue":"^3.0.0","@pinia/colada":"^1.4.0","streamdown-vue":"^1.0.0","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"^0.4.0","@be-enlighten/enspace-sdk-vue":"^0.11.0","@be-enlighten/enspace-sdk-core":"^0.11.0"},"peerDependenciesMeta":{"ai":{"optional":true},"nuxt":{"optional":true},"pinia":{"optional":true},"@nuxt/kit":{"optional":true},"@ai-sdk/vue":{"optional":true},"@pinia/colada":{"optional":true},"streamdown-vue":{"optional":true},"@be-enlighten/beni-avatar":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/enspace-sdk-ui_0.11.0_1786723863302_0.24996179126006357","host":"s3://npm-registry-packages-npm-production"}},"0.11.1":{"name":"@be-enlighten/enspace-sdk-ui","version":"0.11.1","keywords":["enspace","sdk","vue","vue3","components","nuxt-ui"],"license":"MIT","_id":"@be-enlighten/enspace-sdk-ui@0.11.1","maintainers":[{"name":"hardeath950","email":"raaaaul@live.com"}],"dist":{"shasum":"de9eaf243c0e891b87f8f8d52f50fc8b2c4447f0","tarball":"https://registry.npmjs.org/@be-enlighten/enspace-sdk-ui/-/enspace-sdk-ui-0.11.1.tgz","fileCount":411,"integrity":"sha512-Un8OyKTDdeKbOk2m7rNz7aGRBnGJuW6VUgG7mZxYZF/d/UsJUXlOWkOgm5DiiXq2NYMtYKnrMRfqMdYT2cgxXA==","signatures":[{"sig":"MEUCIQDR8+r47Tjq9J1V8vJTc8RQ+Lo2bhOrDZ8ltcXgHsl2TwIgeaCxlU4Ef/GbgFbRLJusEuu4Le3c6ovJkP/EeyEKNCw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1599981},"main":"./dist/index.js","type":"module","_from":"file:be-enlighten-enspace-sdk-ui-0.11.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./nuxt":{"types":"./dist/nuxt/index.d.ts","import":"./dist/nuxt/index.mjs"},"./style.css":"./dist/enspace-sdk-ui.css"},"scripts":{"test":"vitest run","build":"vite build && tsup","typecheck":"vue-tsc --noEmit"},"_npmUser":{"name":"hardeath950","email":"raaaaul@live.com"},"_resolved":"C:\\Users\\Raul\\AppData\\Local\\Temp\\9bdb7d15960462ff80995dcde2a8cb2c\\be-enlighten-enspace-sdk-ui-0.11.1.tgz","_integrity":"sha512-Un8OyKTDdeKbOk2m7rNz7aGRBnGJuW6VUgG7mZxYZF/d/UsJUXlOWkOgm5DiiXq2NYMtYKnrMRfqMdYT2cgxXA==","_npmVersion":"11.9.0","description":"Vue 3 component library and Nuxt 4 module for the Enspace SDK — dumb base components + entity components wired to the /query data layer.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.4.3","@vueuse/core":"^14.4.0","@be-enlighten/enspace-sdk-schemas":"^0.11.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.239","vue":"^3.5.41","vite":"^7.3.6","pinia":"^4.0.3","vue-tsc":"^3.3.9","@nuxt/ui":"^4.10.0","@nuxt/kit":"^4.5.2","happy-dom":"^20.11.2","@ai-sdk/vue":"3.0.239","@iconify/vue":"^5.0.1","@nuxt/schema":"^4.5.2","@pinia/colada":"^1.4.2","streamdown-vue":"^1.0.29","@vue/test-utils":"^2.4.11","vite-plugin-dts":"^4.5.4","@vitejs/plugin-vue":"^6.0.8","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"0.4.0","@be-enlighten/enspace-sdk-vue":"0.11.1","@be-enlighten/enspace-sdk-core":"0.11.1"},"peerDependencies":{"ai":"^6.0.0","vue":"^3.5.0","nuxt":"^4.5.2","pinia":"^2.2.6 || ^3.0.0 || ^4.0.0","@nuxt/ui":"^4.0.0","@nuxt/kit":"^4.0.0","@ai-sdk/vue":"^3.0.0","@pinia/colada":"^1.4.0","streamdown-vue":"^1.0.0","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"^0.4.0","@be-enlighten/enspace-sdk-vue":"^0.11.1","@be-enlighten/enspace-sdk-core":"^0.11.1"},"peerDependenciesMeta":{"ai":{"optional":true},"nuxt":{"optional":true},"pinia":{"optional":true},"@nuxt/kit":{"optional":true},"@ai-sdk/vue":{"optional":true},"@pinia/colada":{"optional":true},"streamdown-vue":{"optional":true},"@be-enlighten/beni-avatar":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/enspace-sdk-ui_0.11.1_1786727666655_0.1681821547418949","host":"s3://npm-registry-packages-npm-production"}},"0.11.2":{"name":"@be-enlighten/enspace-sdk-ui","version":"0.11.2","keywords":["enspace","sdk","vue","vue3","components","nuxt-ui"],"license":"MIT","_id":"@be-enlighten/enspace-sdk-ui@0.11.2","maintainers":[{"name":"hardeath950","email":"raaaaul@live.com"}],"dist":{"shasum":"ca198b29b6e9a0ab3b348518ee903f0959e187d8","tarball":"https://registry.npmjs.org/@be-enlighten/enspace-sdk-ui/-/enspace-sdk-ui-0.11.2.tgz","fileCount":411,"integrity":"sha512-Hwq8r3q/QZ1nRSX8J04ZEHM4yFXIkR9URfMvcMZgvUe7c4aDoYBJ1YzFyPb5RbM8cCsTmHSF+MBrtM+mdWiGXg==","signatures":[{"sig":"MEUCIFWh/1cSf9ul0/63HbvTge1jk51nf/sDsMWHVydp0/hkAiEA4sSRC0g2B0qXbSOC1VDoHCoTeFK5pThdZNahPR4XUQU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1602027},"main":"./dist/index.js","type":"module","_from":"file:be-enlighten-enspace-sdk-ui-0.11.2.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./nuxt":{"types":"./dist/nuxt/index.d.ts","import":"./dist/nuxt/index.mjs"},"./style.css":"./dist/enspace-sdk-ui.css"},"scripts":{"test":"vitest run","build":"vite build && tsup","typecheck":"vue-tsc --noEmit"},"_npmUser":{"name":"hardeath950","email":"raaaaul@live.com"},"_resolved":"C:\\Users\\Raul\\AppData\\Local\\Temp\\e63f27a9ff5feb744a0bac8ae5f299d6\\be-enlighten-enspace-sdk-ui-0.11.2.tgz","_integrity":"sha512-Hwq8r3q/QZ1nRSX8J04ZEHM4yFXIkR9URfMvcMZgvUe7c4aDoYBJ1YzFyPb5RbM8cCsTmHSF+MBrtM+mdWiGXg==","_npmVersion":"11.9.0","description":"Vue 3 component library and Nuxt 4 module for the Enspace SDK — dumb base components + entity components wired to the /query data layer.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.4.3","@vueuse/core":"^14.4.0","@be-enlighten/enspace-sdk-schemas":"^0.11.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.239","vue":"^3.5.41","vite":"^7.3.6","pinia":"^4.0.3","vue-tsc":"^3.3.9","@nuxt/ui":"^4.10.0","@nuxt/kit":"^4.5.2","happy-dom":"^20.11.2","@ai-sdk/vue":"3.0.239","@iconify/vue":"^5.0.1","@nuxt/schema":"^4.5.2","@pinia/colada":"^1.4.2","streamdown-vue":"^1.0.29","@vue/test-utils":"^2.4.11","vite-plugin-dts":"^4.5.4","@vitejs/plugin-vue":"^6.0.8","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"0.4.0","@be-enlighten/enspace-sdk-vue":"0.11.2","@be-enlighten/enspace-sdk-core":"0.11.2"},"peerDependencies":{"ai":"^6.0.0","vue":"^3.5.0","nuxt":"^4.5.2","pinia":"^2.2.6 || ^3.0.0 || ^4.0.0","@nuxt/ui":"^4.0.0","@nuxt/kit":"^4.0.0","@ai-sdk/vue":"^3.0.0","@pinia/colada":"^1.4.0","streamdown-vue":"^1.0.0","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"^0.4.0","@be-enlighten/enspace-sdk-vue":"^0.11.2","@be-enlighten/enspace-sdk-core":"^0.11.2"},"peerDependenciesMeta":{"ai":{"optional":true},"nuxt":{"optional":true},"pinia":{"optional":true},"@nuxt/kit":{"optional":true},"@ai-sdk/vue":{"optional":true},"@pinia/colada":{"optional":true},"streamdown-vue":{"optional":true},"@be-enlighten/beni-avatar":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/enspace-sdk-ui_0.11.2_1787057951972_0.6859840906297383","host":"s3://npm-registry-packages-npm-production"}},"0.11.3":{"name":"@be-enlighten/enspace-sdk-ui","version":"0.11.3","keywords":["enspace","sdk","vue","vue3","components","nuxt-ui"],"license":"MIT","_id":"@be-enlighten/enspace-sdk-ui@0.11.3","maintainers":[{"name":"hardeath950","email":"raaaaul@live.com"}],"dist":{"shasum":"e601650477104438de48ed1dad00b5fd095a118e","tarball":"https://registry.npmjs.org/@be-enlighten/enspace-sdk-ui/-/enspace-sdk-ui-0.11.3.tgz","fileCount":411,"integrity":"sha512-gBcV+0LAd507BOkKJrcWO6hHunNzH3WJE0Y7ChvXPOFzouwp0LQJFLKxopRlKJDhTGgx2D57uY4+aw5eNo8Mvg==","signatures":[{"sig":"MEUCIQD4HE3gZHrZbglmytt3jlL/JG5mhh2ChKKosh5RVbmovgIgQRkEJ6q40n+NYBFcJoVGyICyswmv0OEMSAO0s727tHs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1605919},"main":"./dist/index.js","type":"module","_from":"file:be-enlighten-enspace-sdk-ui-0.11.3.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./nuxt":{"types":"./dist/nuxt/index.d.ts","import":"./dist/nuxt/index.mjs"},"./style.css":"./dist/enspace-sdk-ui.css"},"scripts":{"test":"vitest run","build":"vite build && tsup","typecheck":"vue-tsc --noEmit"},"_npmUser":{"name":"hardeath950","email":"raaaaul@live.com"},"_resolved":"C:\\Users\\Raul\\AppData\\Local\\Temp\\62275ad65352bb833b0059b290194ac5\\be-enlighten-enspace-sdk-ui-0.11.3.tgz","_integrity":"sha512-gBcV+0LAd507BOkKJrcWO6hHunNzH3WJE0Y7ChvXPOFzouwp0LQJFLKxopRlKJDhTGgx2D57uY4+aw5eNo8Mvg==","_npmVersion":"11.9.0","description":"Vue 3 component library and Nuxt 4 module for the Enspace SDK — dumb base components + entity components wired to the /query data layer.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.4.3","@vueuse/core":"^14.4.0","@be-enlighten/enspace-sdk-schemas":"^0.11.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.239","vue":"^3.5.41","vite":"^7.3.6","pinia":"^4.0.3","vue-tsc":"^3.3.9","@nuxt/ui":"^4.10.0","@nuxt/kit":"^4.5.2","happy-dom":"^20.11.2","@ai-sdk/vue":"3.0.239","@iconify/vue":"^5.0.1","@nuxt/schema":"^4.5.2","@pinia/colada":"^1.4.2","streamdown-vue":"^1.0.29","@vue/test-utils":"^2.4.11","vite-plugin-dts":"^4.5.4","@vitejs/plugin-vue":"^6.0.8","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"0.4.0","@be-enlighten/enspace-sdk-vue":"0.11.3","@be-enlighten/enspace-sdk-core":"0.11.3"},"peerDependencies":{"ai":"^6.0.0","vue":"^3.5.0","nuxt":"^4.5.2","pinia":"^2.2.6 || ^3.0.0 || ^4.0.0","@nuxt/ui":"^4.0.0","@nuxt/kit":"^4.0.0","@ai-sdk/vue":"^3.0.0","@pinia/colada":"^1.4.0","streamdown-vue":"^1.0.0","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"^0.4.0","@be-enlighten/enspace-sdk-vue":"^0.11.3","@be-enlighten/enspace-sdk-core":"^0.11.3"},"peerDependenciesMeta":{"ai":{"optional":true},"nuxt":{"optional":true},"pinia":{"optional":true},"@nuxt/kit":{"optional":true},"@ai-sdk/vue":{"optional":true},"@pinia/colada":{"optional":true},"streamdown-vue":{"optional":true},"@be-enlighten/beni-avatar":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/enspace-sdk-ui_0.11.3_1787253502283_0.7270142898369498","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"@be-enlighten/enspace-sdk-ui","version":"0.12.0","keywords":["enspace","sdk","vue","vue3","components","nuxt-ui"],"license":"MIT","_id":"@be-enlighten/enspace-sdk-ui@0.12.0","maintainers":[{"name":"hardeath950","email":"raaaaul@live.com"}],"dist":{"shasum":"e207500b55c35a0df8dfcf77bb0764435c60c4c0","tarball":"https://registry.npmjs.org/@be-enlighten/enspace-sdk-ui/-/enspace-sdk-ui-0.12.0.tgz","fileCount":427,"integrity":"sha512-gJOEd7x7qoVyBFSBDFwjzcMqRHeIEfNUjxS8jjiUuGSkAjUmVX0lxdiwslrqohqZOTL2e9PIRsznBBUTn0XP3w==","signatures":[{"sig":"MEUCIDqaG8NsCaq7iI38s95hxSRi9T839vXKdMncM8jYGlYeAiEA+5TJljNguBzveHotWha4VX0OS2bmIHEvxD1mP7FfopM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1691562},"main":"./dist/index.js","type":"module","_from":"file:be-enlighten-enspace-sdk-ui-0.12.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./nuxt":{"types":"./dist/nuxt/index.d.ts","import":"./dist/nuxt/index.mjs"},"./style.css":"./dist/enspace-sdk-ui.css"},"scripts":{"test":"vitest run","build":"vite build && tsup","typecheck":"vue-tsc --noEmit"},"_npmUser":{"name":"hardeath950","email":"raaaaul@live.com"},"_resolved":"C:\\Users\\Raul\\AppData\\Local\\Temp\\8c8c05c585af80d86d43f9a76b25bd35\\be-enlighten-enspace-sdk-ui-0.12.0.tgz","_integrity":"sha512-gJOEd7x7qoVyBFSBDFwjzcMqRHeIEfNUjxS8jjiUuGSkAjUmVX0lxdiwslrqohqZOTL2e9PIRsznBBUTn0XP3w==","_npmVersion":"11.9.0","description":"Vue 3 component library and Nuxt 4 module for the Enspace SDK — dumb base components + entity components wired to the /query data layer.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.4.3","@vueuse/core":"^14.4.0","@be-enlighten/enspace-sdk-schemas":"^0.12.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.239","vue":"^3.5.41","vite":"^7.3.6","pinia":"^4.0.3","vue-tsc":"^3.3.9","@nuxt/ui":"^4.10.0","@nuxt/kit":"^4.5.2","happy-dom":"^20.11.2","@ai-sdk/vue":"3.0.239","@iconify/vue":"^5.0.1","@nuxt/schema":"^4.5.2","@pinia/colada":"^1.4.2","streamdown-vue":"^1.0.29","@vue/test-utils":"^2.4.11","vite-plugin-dts":"^4.5.4","@vitejs/plugin-vue":"^6.0.8","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"0.4.1","@be-enlighten/enspace-sdk-vue":"0.12.0","@be-enlighten/enspace-sdk-core":"0.12.0"},"peerDependencies":{"ai":"^6.0.0","vue":"^3.5.0","nuxt":"^4.5.2","pinia":"^2.2.6 || ^3.0.0 || ^4.0.0","@nuxt/ui":"^4.0.0","@nuxt/kit":"^4.0.0","@ai-sdk/vue":"^3.0.0","@pinia/colada":"^1.4.0","streamdown-vue":"^1.0.0","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"^0.4.1","@be-enlighten/enspace-sdk-vue":"^0.12.0","@be-enlighten/enspace-sdk-core":"^0.12.0"},"peerDependenciesMeta":{"ai":{"optional":true},"nuxt":{"optional":true},"pinia":{"optional":true},"@nuxt/kit":{"optional":true},"@ai-sdk/vue":{"optional":true},"@pinia/colada":{"optional":true},"streamdown-vue":{"optional":true},"@be-enlighten/beni-avatar":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/enspace-sdk-ui_0.12.0_1788461644532_0.9115031593076433","host":"s3://npm-registry-packages-npm-production"}},"0.12.1":{"name":"@be-enlighten/enspace-sdk-ui","version":"0.12.1","keywords":["enspace","sdk","vue","vue3","components","nuxt-ui"],"license":"MIT","_id":"@be-enlighten/enspace-sdk-ui@0.12.1","maintainers":[{"name":"hardeath950","email":"raaaaul@live.com"}],"dist":{"shasum":"2e7c2c1577446ac0009740e7ce8d159532e150c2","tarball":"https://registry.npmjs.org/@be-enlighten/enspace-sdk-ui/-/enspace-sdk-ui-0.12.1.tgz","fileCount":427,"integrity":"sha512-wmjOhVRaKnYDTUdE9P6I+a2owNJux3zNq5IuwVuzgiseHcqvuGhuu9zSm5ndlYUbc0395ZbSDHP3Qt/I17YqvQ==","signatures":[{"sig":"MEYCIQC8bJiZyMrGykZJNkIvSiuksFFwctMGkv8qwfBxAY9oggIhAM7QUpZPV/2aclaH/T4w3hTKFFIBvg0qZOFyEQdAz+XI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1691651},"main":"./dist/index.js","type":"module","_from":"file:be-enlighten-enspace-sdk-ui-0.12.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./nuxt":{"types":"./dist/nuxt/index.d.ts","import":"./dist/nuxt/index.mjs"},"./style.css":"./dist/enspace-sdk-ui.css"},"scripts":{"test":"vitest run","build":"vite build && tsup","typecheck":"vue-tsc --noEmit"},"_npmUser":{"name":"hardeath950","email":"raaaaul@live.com"},"_resolved":"C:\\Users\\Raul\\AppData\\Local\\Temp\\390cb81ec66d82792b70f97106bb1a52\\be-enlighten-enspace-sdk-ui-0.12.1.tgz","_integrity":"sha512-wmjOhVRaKnYDTUdE9P6I+a2owNJux3zNq5IuwVuzgiseHcqvuGhuu9zSm5ndlYUbc0395ZbSDHP3Qt/I17YqvQ==","_npmVersion":"11.9.0","description":"Vue 3 component library and Nuxt 4 module for the Enspace SDK — dumb base components + entity components wired to the /query data layer.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.4.3","@vueuse/core":"^14.4.0","@be-enlighten/enspace-sdk-schemas":"^0.12.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.239","vue":"^3.5.41","vite":"^7.3.6","pinia":"^4.0.3","vue-tsc":"^3.3.9","@nuxt/ui":"^4.10.0","@nuxt/kit":"^4.5.2","happy-dom":"^20.11.2","@ai-sdk/vue":"3.0.239","@iconify/vue":"^5.0.1","@nuxt/schema":"^4.5.2","@pinia/colada":"^1.4.2","streamdown-vue":"^1.0.29","@vue/test-utils":"^2.4.11","vite-plugin-dts":"^4.5.4","@vitejs/plugin-vue":"^6.0.8","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"0.4.1","@be-enlighten/enspace-sdk-vue":"0.12.1","@be-enlighten/enspace-sdk-core":"0.12.1"},"peerDependencies":{"ai":"^6.0.0","vue":"^3.5.0","nuxt":"^4.5.2","pinia":"^2.2.6 || ^3.0.0 || ^4.0.0","@nuxt/ui":"^4.0.0","@nuxt/kit":"^4.0.0","@ai-sdk/vue":"^3.0.0","@pinia/colada":"^1.4.0","streamdown-vue":"^1.0.0","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"^0.4.1","@be-enlighten/enspace-sdk-vue":"^0.12.1","@be-enlighten/enspace-sdk-core":"^0.12.1"},"peerDependenciesMeta":{"ai":{"optional":true},"nuxt":{"optional":true},"pinia":{"optional":true},"@nuxt/kit":{"optional":true},"@ai-sdk/vue":{"optional":true},"@pinia/colada":{"optional":true},"streamdown-vue":{"optional":true},"@be-enlighten/beni-avatar":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/enspace-sdk-ui_0.12.1_1788901112949_0.38874087022377","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"name":"@be-enlighten/enspace-sdk-ui","version":"0.13.0","keywords":["enspace","sdk","vue","vue3","components","nuxt-ui"],"license":"MIT","_id":"@be-enlighten/enspace-sdk-ui@0.13.0","maintainers":[{"name":"hardeath950","email":"raaaaul@live.com"}],"dist":{"shasum":"5559f9ac3f43373c241d3b67f7dd41cc060ae494","tarball":"https://registry.npmjs.org/@be-enlighten/enspace-sdk-ui/-/enspace-sdk-ui-0.13.0.tgz","fileCount":431,"integrity":"sha512-B0aYxBZxvcqHzMrIRMsnZBiLqTS1tlQPr3HAkdkjpexuAP6HelcVAmoLYllqv4JZW0ClMBsoPSb5XNsVBFTYbQ==","signatures":[{"sig":"MEUCIHYXZMg9vpWLMFrqrThydF9cEl48WtQyD4dPsrxtZ7G5AiEAl08VT/6dKN5Ry8i5mTp/u7/ceDsZIodHUroNq4by4GM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1696485},"main":"./dist/index.js","type":"module","_from":"file:be-enlighten-enspace-sdk-ui-0.13.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./base":{"types":"./dist/base.d.ts","import":"./dist/base.js"},"./nuxt":{"types":"./dist/nuxt/index.d.ts","import":"./dist/nuxt/index.mjs"},"./style.css":"./dist/enspace-sdk-ui.css"},"scripts":{"test":"vitest run","build":"vite build && tsup","typecheck":"vue-tsc --noEmit"},"_npmUser":{"name":"hardeath950","email":"raaaaul@live.com"},"_resolved":"C:\\Users\\Raul\\AppData\\Local\\Temp\\e53790462c0a2e4cb7d3beef79bce8f5\\be-enlighten-enspace-sdk-ui-0.13.0.tgz","_integrity":"sha512-B0aYxBZxvcqHzMrIRMsnZBiLqTS1tlQPr3HAkdkjpexuAP6HelcVAmoLYllqv4JZW0ClMBsoPSb5XNsVBFTYbQ==","_npmVersion":"11.9.0","description":"Vue 3 component library and Nuxt 4 module for the Enspace SDK — dumb base components + entity components wired to the /query data layer.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.4.3","@vueuse/core":"^14.4.0","@be-enlighten/enspace-sdk-schemas":"^0.13.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.239","vue":"^3.5.41","vite":"^7.3.6","pinia":"^4.0.3","vue-tsc":"^3.3.9","@nuxt/ui":"^4.10.0","@nuxt/kit":"^4.5.2","happy-dom":"^20.11.2","@ai-sdk/vue":"3.0.239","@iconify/vue":"^5.0.1","@nuxt/schema":"^4.5.2","@pinia/colada":"^1.4.2","streamdown-vue":"^1.0.29","@vue/test-utils":"^2.4.11","vite-plugin-dts":"^4.5.4","@vitejs/plugin-vue":"^6.0.8","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"0.4.1","@be-enlighten/enspace-sdk-vue":"0.13.0","@be-enlighten/enspace-sdk-core":"0.13.0"},"peerDependencies":{"ai":"^6.0.0","vue":"^3.5.0","nuxt":"^4.5.2","pinia":"^2.2.6 || ^3.0.0 || ^4.0.0","@nuxt/ui":"^4.0.0","@nuxt/kit":"^4.0.0","@ai-sdk/vue":"^3.0.0","@pinia/colada":"^1.4.0","streamdown-vue":"^1.0.0","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"^0.4.1","@be-enlighten/enspace-sdk-vue":"^0.13.0","@be-enlighten/enspace-sdk-core":"^0.13.0"},"peerDependenciesMeta":{"ai":{"optional":true},"nuxt":{"optional":true},"pinia":{"optional":true},"@nuxt/kit":{"optional":true},"@ai-sdk/vue":{"optional":true},"@pinia/colada":{"optional":true},"streamdown-vue":{"optional":true},"@be-enlighten/beni-avatar":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/enspace-sdk-ui_0.13.0_1788956080799_0.1383809430660463","host":"s3://npm-registry-packages-npm-production"}},"0.14.0":{"name":"@be-enlighten/enspace-sdk-ui","version":"0.14.0","keywords":["enspace","sdk","vue","vue3","components","nuxt-ui"],"license":"MIT","_id":"@be-enlighten/enspace-sdk-ui@0.14.0","maintainers":[{"name":"hardeath950","email":"raaaaul@live.com"}],"dist":{"shasum":"dff3e37eb73f547c167d0d8dcbe043e9c48cd457","tarball":"https://registry.npmjs.org/@be-enlighten/enspace-sdk-ui/-/enspace-sdk-ui-0.14.0.tgz","fileCount":431,"integrity":"sha512-rWy/tYyqpERcI6jH7PQKleS8JzafvGnyGYwxxi73sPNrj2nBbTBLqWNTDtQt9WxgErW+KQbRVL1VVXEqxDPB9A==","signatures":[{"sig":"MEUCIAFLrsFZxlnfI4Lf95z55Hj9K0INMfADh1NGyxgG8f2yAiEA/UtpokNMuNkRA6hleZJsFbwmCrVz/0V8CpNZ5R3ayb4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCasL5Lymx4CApD7VfSIetk3pOLP1h/I2XDueCND7jWfgIhALH0/RrOjYkmdOxxElEgu2SqEEilnfaN0B9BGg0f2J6F","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1705334},"main":"./dist/index.js","type":"module","_from":"file:be-enlighten-enspace-sdk-ui-0.14.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./base":{"types":"./dist/base.d.ts","import":"./dist/base.js"},"./nuxt":{"types":"./dist/nuxt/index.d.ts","import":"./dist/nuxt/index.mjs"},"./style.css":"./dist/enspace-sdk-ui.css"},"scripts":{"test":"vitest run","build":"vite build && tsup","typecheck":"vue-tsc --noEmit"},"_npmUser":{"name":"hardeath950","email":"raaaaul@live.com"},"_resolved":"C:\\Users\\Raul\\AppData\\Local\\Temp\\87be90c92d97f033d771d6dd04ac8a23\\be-enlighten-enspace-sdk-ui-0.14.0.tgz","_integrity":"sha512-rWy/tYyqpERcI6jH7PQKleS8JzafvGnyGYwxxi73sPNrj2nBbTBLqWNTDtQt9WxgErW+KQbRVL1VVXEqxDPB9A==","_npmVersion":"11.9.0","description":"Vue 3 component library and Nuxt 4 module for the Enspace SDK — dumb base components + entity components wired to the /query data layer.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.6.2","@vueuse/core":"^14.4.0","@be-enlighten/enspace-sdk-schemas":"^0.14.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.239","vue":"^3.5.42","vite":"^7.3.6","pinia":"^4.0.3","vue-tsc":"^3.3.11","@nuxt/ui":"^4.11.1","@nuxt/kit":"^4.5.2","happy-dom":"^20.14.3","@ai-sdk/vue":"3.0.239","@iconify/vue":"^5.0.1","@nuxt/schema":"^4.5.2","@pinia/colada":"^1.4.4","streamdown-vue":"^1.0.32","@vue/test-utils":"^2.5.0","vite-plugin-dts":"^4.5.4","@vitejs/plugin-vue":"^6.0.8","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"0.4.2","@be-enlighten/enspace-sdk-vue":"0.14.0","@be-enlighten/enspace-sdk-core":"0.14.0"},"peerDependencies":{"ai":"^6.0.0","vue":"^3.5.0","nuxt":"^4.5.2","pinia":"^2.2.6 || ^3.0.0 || ^4.0.0","@nuxt/ui":"^4.0.0","@nuxt/kit":"^4.0.0","@ai-sdk/vue":"^3.0.0","@pinia/colada":"^1.4.0","streamdown-vue":"^1.0.0","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"^0.4.2","@be-enlighten/enspace-sdk-vue":"^0.14.0","@be-enlighten/enspace-sdk-core":"^0.14.0"},"peerDependenciesMeta":{"ai":{"optional":true},"nuxt":{"optional":true},"pinia":{"optional":true},"@nuxt/kit":{"optional":true},"@ai-sdk/vue":{"optional":true},"@pinia/colada":{"optional":true},"streamdown-vue":{"optional":true},"@be-enlighten/beni-avatar":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/enspace-sdk-ui_0.14.0_1789150655466_0.7128096853219767","host":"s3://npm-registry-packages-npm-production"}},"0.15.0":{"name":"@be-enlighten/enspace-sdk-ui","version":"0.15.0","keywords":["enspace","sdk","vue","vue3","components","nuxt-ui"],"license":"MIT","_id":"@be-enlighten/enspace-sdk-ui@0.15.0","maintainers":[{"name":"hardeath950","email":"raaaaul@live.com"}],"dist":{"shasum":"6e9347bb762330b438785d610cd15ddb992668fe","tarball":"https://registry.npmjs.org/@be-enlighten/enspace-sdk-ui/-/enspace-sdk-ui-0.15.0.tgz","fileCount":459,"integrity":"sha512-yVPgefU7MtNBKXJ05H2jlFjzD74JOMY75FfE45VfGtzkff3UVbzBoy/njt02+SQ3Di4Fo601ibwuz+rg1Uc1Ew==","signatures":[{"sig":"MEUCIQCxZ/rCrd7h9naZpGyjvAQQoRWGcuF+TyGiFVf8b3s0mAIgOwKkKRuRT6hLAUkp/Vx1yq6lVyb/3eLSCOByBvvfBe4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDgB1zaNd8jdI7Yiv/45dcI62mhEUme21LGvAMLsEpYNgIhAJWq63PtENReHLP94nNRU0noMmOoA6Q5zoGtTTbCnYYg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1815425},"main":"./dist/index.js","type":"module","_from":"file:be-enlighten-enspace-sdk-ui-0.15.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./base":{"types":"./dist/base.d.ts","import":"./dist/base.js"},"./nuxt":{"types":"./dist/nuxt/index.d.ts","import":"./dist/nuxt/index.mjs"},"./style.css":"./dist/enspace-sdk-ui.css"},"scripts":{"dev":"vite build --watch","test":"vitest run","build":"vite build && tsup","typecheck":"vue-tsc --noEmit"},"_npmUser":{"name":"hardeath950","email":"raaaaul@live.com"},"_resolved":"C:\\Users\\Raul\\AppData\\Local\\Temp\\87ab131cd990a4a20e9b3fce250c1fad\\be-enlighten-enspace-sdk-ui-0.15.0.tgz","_integrity":"sha512-yVPgefU7MtNBKXJ05H2jlFjzD74JOMY75FfE45VfGtzkff3UVbzBoy/njt02+SQ3Di4Fo601ibwuz+rg1Uc1Ew==","_npmVersion":"11.9.0","description":"Vue 3 component library and Nuxt 4 module for the Enspace SDK — dumb base components + entity components wired to the /query data layer.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.6.2","@vueuse/core":"^14.4.0","@be-enlighten/enspace-sdk-schemas":"^0.15.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.239","vue":"^3.5.42","vite":"^7.3.6","pinia":"^4.0.3","vue-tsc":"^3.3.11","@nuxt/ui":"^4.11.1","@nuxt/kit":"^4.5.2","happy-dom":"^20.14.3","@ai-sdk/vue":"3.0.239","@iconify/vue":"^5.0.1","@nuxt/schema":"^4.5.2","@pinia/colada":"^1.4.4","streamdown-vue":"^1.0.32","@vue/test-utils":"^2.5.0","vite-plugin-dts":"^4.5.4","@vitejs/plugin-vue":"^6.0.8","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"0.4.2","@be-enlighten/enspace-sdk-vue":"0.15.0","@be-enlighten/enspace-sdk-core":"0.15.0"},"peerDependencies":{"ai":"^6.0.0","vue":"^3.5.0","nuxt":"^4.5.2","pinia":"^2.2.6 || ^3.0.0 || ^4.0.0","@nuxt/ui":"^4.0.0","@nuxt/kit":"^4.0.0","@ai-sdk/vue":"^3.0.0","@pinia/colada":"^1.4.0","streamdown-vue":"^1.0.0","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"^0.4.2","@be-enlighten/enspace-sdk-vue":"^0.15.0","@be-enlighten/enspace-sdk-core":"^0.15.0"},"peerDependenciesMeta":{"ai":{"optional":true},"nuxt":{"optional":true},"pinia":{"optional":true},"@nuxt/kit":{"optional":true},"@ai-sdk/vue":{"optional":true},"@pinia/colada":{"optional":true},"streamdown-vue":{"optional":true},"@be-enlighten/beni-avatar":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/enspace-sdk-ui_0.15.0_1789997405086_0.18444845958132805","host":"s3://npm-registry-packages-npm-production"}},"0.16.0":{"name":"@be-enlighten/enspace-sdk-ui","version":"0.16.0","keywords":["enspace","sdk","vue","vue3","components","nuxt-ui"],"license":"MIT","_id":"@be-enlighten/enspace-sdk-ui@0.16.0","maintainers":[{"name":"hardeath950","email":"raaaaul@live.com"}],"dist":{"shasum":"04b7506944e4d0c740d42558d76898912f1c4503","tarball":"https://registry.npmjs.org/@be-enlighten/enspace-sdk-ui/-/enspace-sdk-ui-0.16.0.tgz","fileCount":459,"integrity":"sha512-J2qL4oglsu4Nu49oOEnCs3YS0FBBbmdPuGfIr+vZloOufd7p5dkXrctjMfc6414Fyvl0Plso0F7ImMoc+I/oXQ==","signatures":[{"sig":"MEYCIQDAkz7Em4Skhq92peO1VAAuckhkVC67Wpb1AQukI7jpDgIhAIxJiyfDqLcgYkiXlHk3D4rX1onWISVE6yZHyqy/D+rx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIF9F5Zp+cK/tddKGC1HU5CP9niAgMjY+x7fUQ6NoqkMpAiAW68wpGm6lmqRXCJUjIP1ySaI+ipaFIACTA0De4JMT7g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1814955},"main":"./dist/index.js","type":"module","_from":"file:be-enlighten-enspace-sdk-ui-0.16.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./base":{"types":"./dist/base.d.ts","import":"./dist/base.js"},"./nuxt":{"types":"./dist/nuxt/index.d.ts","import":"./dist/nuxt/index.mjs"},"./style.css":"./dist/enspace-sdk-ui.css"},"scripts":{"dev":"vite build --watch","test":"vitest run","build":"vite build && tsup","typecheck":"vue-tsc --noEmit"},"_npmUser":{"name":"hardeath950","email":"raaaaul@live.com"},"_resolved":"C:\\Users\\Raul\\AppData\\Local\\Temp\\2ca2c7f228507c0a7f483de5ad045a25\\be-enlighten-enspace-sdk-ui-0.16.0.tgz","_integrity":"sha512-J2qL4oglsu4Nu49oOEnCs3YS0FBBbmdPuGfIr+vZloOufd7p5dkXrctjMfc6414Fyvl0Plso0F7ImMoc+I/oXQ==","_npmVersion":"11.9.0","description":"Vue 3 component library and Nuxt 4 module for the Enspace SDK — dumb base components + entity components wired to the /query data layer.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.6.2","@vueuse/core":"^14.4.0","@be-enlighten/enspace-sdk-schemas":"^0.16.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.239","vue":"^3.5.42","vite":"^7.3.6","pinia":"^4.0.3","vue-tsc":"^3.3.11","@nuxt/ui":"^4.11.1","@nuxt/kit":"^4.5.2","happy-dom":"^20.14.3","@ai-sdk/vue":"3.0.239","@iconify/vue":"^5.0.1","@nuxt/schema":"^4.5.2","@pinia/colada":"^1.4.4","streamdown-vue":"^1.0.32","@vue/test-utils":"^2.5.0","vite-plugin-dts":"^4.5.4","@vitejs/plugin-vue":"^6.0.8","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"0.4.2","@be-enlighten/enspace-sdk-vue":"0.16.0","@be-enlighten/enspace-sdk-core":"0.16.0"},"peerDependencies":{"ai":"^6.0.0","vue":"^3.5.0","nuxt":"^4.5.2","pinia":"^2.2.6 || ^3.0.0 || ^4.0.0","@nuxt/ui":"^4.0.0","@nuxt/kit":"^4.0.0","@ai-sdk/vue":"^3.0.0","@pinia/colada":"^1.4.0","streamdown-vue":"^1.0.0","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"^0.4.2","@be-enlighten/enspace-sdk-vue":"^0.16.0","@be-enlighten/enspace-sdk-core":"^0.16.0"},"peerDependenciesMeta":{"ai":{"optional":true},"nuxt":{"optional":true},"pinia":{"optional":true},"@nuxt/kit":{"optional":true},"@ai-sdk/vue":{"optional":true},"@pinia/colada":{"optional":true},"streamdown-vue":{"optional":true},"@be-enlighten/beni-avatar":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/enspace-sdk-ui_0.16.0_1790250084760_0.027206207140195282","host":"s3://npm-registry-packages-npm-production"}},"0.17.0":{"_id":"@be-enlighten/enspace-sdk-ui@0.17.0","dist":{"shasum":"aaf4d937d350670300bbe63886e6d1420212605a","tarball":"https://registry.npmjs.org/@be-enlighten/enspace-sdk-ui/-/enspace-sdk-ui-0.17.0.tgz","fileCount":515,"integrity":"sha512-1RzteURgcUpbdwnTRxOBw2vUACuI3ttjiD80blqGm2bKoIdVDuS9nf/sSRjw1BdioLuWU2qz3TuWZjCLo5b1Ww==","signatures":[{"sig":"MEYCIQDFV7R/XhzYlt5ImzLPamVb1im6L0Q5A9JHd+UpOS5KOQIhAIFwYih96aJ+iVWz1tXv9v6CMXE45damfbCuGqRDFk9p","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIBl9+MPz67QfkTHkQVn8nm/8PBWF0Hrdpooixw8eE0ygAiBScLN7Q7IDpgUXhMy6DbY6bm1MD/Iot0zvf6a4EhMUmg=="}],"unpackedSize":2169689},"main":"./dist/index.js","name":"@be-enlighten/enspace-sdk-ui","type":"module","_from":"file:be-enlighten-enspace-sdk-ui-0.17.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./base":{"types":"./dist/base.d.ts","import":"./dist/base.js"},"./nuxt":{"types":"./dist/nuxt/index.d.ts","import":"./dist/nuxt/index.mjs"},"./style.css":"./dist/enspace-sdk-ui.css"},"license":"MIT","scripts":{"dev":"vite build --watch","test":"vitest run","build":"vite build && tsup","typecheck":"vue-tsc --noEmit"},"version":"0.17.0","_npmUser":{"name":"hardeath950","email":"raaaaul@live.com"},"keywords":["enspace","sdk","vue","vue3","components","nuxt-ui"],"_resolved":"C:\\Users\\Raul\\AppData\\Local\\Temp\\c0333fa41ba328872ada5d56d898cf9e\\be-enlighten-enspace-sdk-ui-0.17.0.tgz","_integrity":"sha512-1RzteURgcUpbdwnTRxOBw2vUACuI3ttjiD80blqGm2bKoIdVDuS9nf/sSRjw1BdioLuWU2qz3TuWZjCLo5b1Ww==","_npmVersion":"11.9.0","description":"Vue 3 component library and Nuxt 4 module for the Enspace SDK — dumb base components + entity components wired to the /query data layer.","directories":{},"maintainers":[{"name":"hardeath950","email":"raaaaul@live.com"}],"sideEffects":["**/*.css"],"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.6.2","@vueuse/core":"^14.4.0","@be-enlighten/enspace-sdk-schemas":"^0.17.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.239","vue":"^3.5.42","vite":"^7.3.6","pinia":"^4.0.3","vue-tsc":"^3.3.11","@nuxt/ui":"^4.11.1","@nuxt/kit":"^4.5.2","happy-dom":"^20.14.3","@ai-sdk/vue":"3.0.239","@iconify/vue":"^5.0.1","@nuxt/schema":"^4.5.2","@pinia/colada":"^1.4.4","streamdown-vue":"^1.0.32","@vue/test-utils":"^2.5.0","vite-plugin-dts":"^4.5.4","@vitejs/plugin-vue":"^6.0.8","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"0.4.2","@be-enlighten/enspace-sdk-vue":"0.17.0","@be-enlighten/enspace-sdk-core":"0.17.0"},"peerDependencies":{"ai":"^6.0.0","vue":"^3.5.0","nuxt":"^4.5.2","pinia":"^2.2.6 || ^3.0.0 || ^4.0.0","@nuxt/ui":"^4.0.0","@nuxt/kit":"^4.0.0","@ai-sdk/vue":"^3.0.0","@pinia/colada":"^1.4.0","streamdown-vue":"^1.0.0","@tanstack/vue-table":"^8.21.3","@be-enlighten/beni-avatar":"^0.4.2","@be-enlighten/enspace-sdk-vue":"^0.17.0","@be-enlighten/enspace-sdk-core":"^0.17.0"},"peerDependenciesMeta":{"ai":{"optional":true},"nuxt":{"optional":true},"pinia":{"optional":true},"@nuxt/kit":{"optional":true},"@ai-sdk/vue":{"optional":true},"@pinia/colada":{"optional":true},"streamdown-vue":{"optional":true},"@be-enlighten/beni-avatar":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/enspace-sdk-ui_0.17.0_1790373835565_0.5161499619857104"}}},"time":{"created":"2026-08-10T13:27:27.353Z","modified":"2026-09-25T22:03:55.858Z","0.9.1":"2026-08-10T13:27:27.793Z","0.9.2":"2026-08-10T18:58:40.650Z","0.9.3":"2026-08-10T20:05:09.795Z","0.10.0":"2026-08-13T20:49:24.782Z","0.11.0":"2026-08-14T16:11:03.495Z","0.11.1":"2026-08-14T17:14:26.825Z","0.11.2":"2026-08-18T12:59:12.136Z","0.11.3":"2026-08-20T19:18:22.477Z","0.12.0":"2026-09-03T18:54:04.663Z","0.12.1":"2026-09-08T20:58:33.083Z","0.13.0":"2026-09-09T12:14:40.957Z","0.14.0":"2026-09-11T18:17:35.566Z","0.15.0":"2026-09-21T13:30:05.175Z","0.16.0":"2026-09-24T11:41:24.850Z","0.17.0":"2026-09-25T22:03:55.664Z"},"license":"MIT","keywords":["enspace","sdk","vue","vue3","components","nuxt-ui"],"description":"Vue 3 component library and Nuxt 4 module for the Enspace SDK — dumb base components + entity components wired to the /query data layer.","maintainers":[{"name":"hardeath950","email":"raaaaul@live.com"}],"readme":"# @be-enlighten/enspace-sdk-ui\r\n\r\nBiblioteca de componentes Vue 3 do Enspace, sobre Nuxt UI 4 e Tailwind 4.\r\n\r\nDois tipos de componente:\r\n\r\n- **Base** (dumb): só props, slots e emits. Zero data fetching, zero router.\r\n- **Entidade** (wired): consomem a data layer `/query` do `@be-enlighten/enspace-sdk-vue` internamente, com override por props. As regras de domínio do Enspace (owner, membro pendente, self-exclusion) vivem no componente, não na sua app.\r\n\r\nNavegação sempre sai por emits: a app decide a rota.\r\n\r\n## Instalação\r\n\r\n```bash\r\npnpm add @be-enlighten/enspace-sdk-ui\r\n```\r\n\r\nPeers:\r\n\r\n| Peer | Obrigatória? | Para quê |\r\n|---|---|---|\r\n| `vue@^3.5` | sim | runtime dos componentes |\r\n| `@nuxt/ui@^4` | sim | stack de estilo (Nuxt UI 4 + Tailwind 4) |\r\n| `@be-enlighten/enspace-sdk-vue` | sim | composables `/query` dos componentes de entidade |\r\n| `@be-enlighten/enspace-sdk-core` | sim | tipos de domínio na API pública |\r\n| `@tanstack/vue-table@^8` | sim | motor do `EnTable` |\r\n| `pinia`, `@pinia/colada` | opcional | só para componentes wired |\r\n| `streamdown-vue`, `@be-enlighten/beni-avatar` | opcional | componentes de AI |\r\n| `ai`, `@ai-sdk/vue` | opcional | chat de AI com streaming |\r\n| `nuxt`, `@nuxt/kit` | opcional | módulo `/nuxt` |\r\n\r\nA app consumidora precisa do plugin `@nuxt/ui/vite` (Vite) ou do módulo Nuxt UI.\r\n\r\n## Setup\r\n\r\n### 1. `EnApp` na raiz\r\n\r\nOs componentes `En*` precisam do `UApp` do Nuxt UI na raiz (modal, tooltip, toast). O `EnApp` abraça o `UApp` por dentro e provê locale e mensagens globais, então é o único wrapper obrigatório:\r\n\r\n```vue\r\n<script setup lang=\"ts\">\r\nimport { EnApp } from '@be-enlighten/enspace-sdk-ui'\r\n</script>\r\n\r\n<template>\r\n  <EnApp locale=\"pt-BR\">\r\n    <RouterView />\r\n  </EnApp>\r\n</template>\r\n```\r\n\r\n**`locale?: MaybeRefOrGetter<EnUiLocale>`** (default `'pt-BR'`) aceita valor direto, ref ou getter. Com vue-i18n na app, a ponte é direta e não exige peer de vue-i18n no pacote:\r\n\r\n```vue\r\n<script setup lang=\"ts\">\r\nimport { useI18n } from 'vue-i18n'\r\n\r\nconst { locale } = useI18n()\r\n</script>\r\n\r\n<template>\r\n  <EnApp :locale=\"locale\">\r\n    <RouterView />\r\n  </EnApp>\r\n</template>\r\n```\r\n\r\nO locale também é mapeado para o `@nuxt/ui/locale` (`pt-BR` → `pt_br`, `en` → `en`, `es` → `es`) e repassado ao `UApp` interno: um knob controla os textos do pacote e os do Nuxt UI.\r\n\r\n**`messages?: EnUiMessagesOverrides`** sobrescreve textos por locale (`Partial<Record<EnUiLocale, DeepPartial<EnUiMessages>>>`), aplicados por deep-merge sobre o dicionário interno:\r\n\r\n```vue\r\n<EnApp\r\n  :locale=\"locale\"\r\n  :messages=\"{ 'pt-BR': { members: { table: { invite: 'Convidar colegas' } } } }\"\r\n>\r\n```\r\n\r\nResolução do locale em cada componente: prop `locale` → inject do `EnApp` → `'pt-BR'`. Sem `EnApp`, tudo continua funcionando com o fallback. O contexto injetado é exportado (`EnUiContextKey`, tipo `EnUiContext`) para casos avançados.\r\n\r\n**`toaster?: ToasterProps | null`** e **`tooltip?: TooltipProviderProps`** repassam a config do `UApp` interno (posição dos toasts, delay dos tooltips, etc). Tipagem espelha `AppProps` do `@nuxt/ui` — sem perder nada do que o `UApp` aceita:\r\n\r\n```vue\r\n<EnApp :locale=\"locale\" :toaster=\"{ position: 'top-right' }\" :tooltip=\"{ delayDuration: 200 }\">\r\n  <RouterView />\r\n</EnApp>\r\n```\r\n\r\n### 2. CSS\r\n\r\nO build extrai o CSS dos componentes (handle de resize do `EnTable`, regras `contain` de performance) para um arquivo separado, que precisa ser importado uma vez:\r\n\r\n```ts\r\nimport '@be-enlighten/enspace-sdk-ui/style.css'\r\n```\r\n\r\nSem esse import, a feature `resizable` do `EnTable` fica sem o handle visual e as otimizações de `contain` não se aplicam.\r\n\r\n### 3. Registro global (opcional)\r\n\r\nO padrão é importar por nome (`import { EnMembersViewManyTable } from '@be-enlighten/enspace-sdk-ui'`). Para registro global:\r\n\r\n```ts\r\nimport { EnspaceUi } from '@be-enlighten/enspace-sdk-ui'\r\nimport '@be-enlighten/enspace-sdk-ui/style.css'\r\n\r\napp.use(EnspaceUi, { locale: 'pt-BR' }) // opções: `locale` e `messages`, mesma semântica das props do EnApp\r\n```\r\n\r\nO plugin registra todos os componentes públicos, provê o contexto de i18n no nível da app e chama o shim de `NuxtLink`. Ele **não** abraça o `UApp`: o `<EnApp>` na raiz continua necessário.\r\n\r\n**`installNuxtLinkShim(app)`** — componentes do Nuxt UI com `to` (`ULink`, `UButton`) renderizam `<NuxtLink custom>`, que só o Nuxt registra. Em apps Vite + vue-router, o shim registra um `NuxtLink` que delega ao `RouterLink` com o mesmo contrato de slot (`href`, `navigate`, `isActive`). É no-op sem vue-router ou quando `NuxtLink` já existe. O plugin `EnspaceUi` chama o shim automaticamente; com imports nomeados, chame manualmente.\r\n\r\n### 4. Nuxt 4\r\n\r\n```ts\r\nexport default defineNuxtConfig({\r\n  modules: [\r\n    '@be-enlighten/enspace-sdk-vue/nuxt', // data layer, necessário para os componentes de entidade\r\n    '@be-enlighten/enspace-sdk-ui/nuxt',\r\n  ],\r\n})\r\n```\r\n\r\nO módulo auto-importa todos os componentes e injeta o CSS. Opções na chave `enspaceUi`:\r\n\r\n| Opção | Default | Descrição |\r\n|---|---|---|\r\n| `prefix` | `''` | Prefixo dos nomes registrados (`'Ui'` → `<UiEnTable />`). |\r\n| `global` | `false` | Registra tudo globalmente em vez de auto-import sob demanda. Necessário fora de templates Vue (ex.: MDC do `@nuxt/content`); custo: tudo entra no bundle. |\r\n| `dataModuleCheck` | `true` | Avisa no build quando o módulo de dados não está registrado. Desligue em apps que usam só componentes base. |\r\n\r\nO `<EnApp>` na raiz continua necessário no Nuxt.\r\n\r\n### 5. Base-only (sem o grafo de AI)\r\n\r\nO barrel raiz re-exporta estaticamente **todos** os componentes — inclusive os de AI, cujo grafo de deps toca as peers opcionais CJS (`ai`, `streamdown-vue`). Em apps que usam só os componentes base, isso pode quebrar o dev do Vite (os CJS profundos são servidos sem interop CJS→ESM).\r\n\r\nPara esses apps existe o entry `@be-enlighten/enspace-sdk-ui/base` com os quatro componentes base (`EnApp`, `EnLayout`, `EnTable`, `EnKanbanBoard`) e seus tipos — o grafo de AI nunca é importado e as peers opcionais de AI não são necessárias:\r\n\r\n```ts\r\nimport { EnApp, EnTable, type EnTableColumn } from '@be-enlighten/enspace-sdk-ui/base'\r\nimport '@be-enlighten/enspace-sdk-ui/style.css'\r\n```\r\n\r\nApps Nuxt que usam só os componentes base não precisam fazer nada: o módulo `/nuxt` já registra os quatro base pelo entry `./base` (os demais continuam vindo do barrel).\r\n\r\n## Componentes\r\n\r\n| Componente | Grupo | Tipo | Descrição | Props principais | Emits | Slots |\r\n|---|---|---|---|---|---|---|\r\n| `EnApp` | base | infra | Provider raiz: abraça o `UApp` e provê locale/messages globais (ver **Setup**) | `locale?`, `messages?` | — | `default` |\r\n| `EnLayout` | layout | dumb | Shell de layout configurável (7 variants) com sidebar primária, sidebar secundária, inspector e navbar. Controla estrutura e visual em uma prop `variant` | `variant`, `title?`, `side?`, `collapsible?`, `rail?`, `mode?`, `defaultOpen?`, `showNavbarToggle?`, `navbarHeight?` | — | `sidebar-header`, `sidebar-default`, `sidebar-footer`, `sidebar-secondary-header`, `sidebar-secondary-default`, `sidebar-secondary-footer`, `inspector-header`, `inspector-default`, `inspector-footer`, `navbar-leading`, `navbar-title`, `navbar-trailing`, `default` |\r\n| `EnTable` | base | dumb | Listagem padrão Enspace, genérica em `R` (ver detalhes abaixo) | `columns`, `rows`, `loading?`, `selectable?`, `selected?`, `sort?`, `pagination?`, `emptyState?`, `resizable?`, `columnSizing?`, `columnVisibility?`, `columnOrder?`, `virtualize?`, `locale?` | `update:selected`, `page-change`, `sort-change`, `row-click`, `update:columnSizing`, `update:columnVisibility`, `update:columnOrder` | `#cell-{key}`, `#actions`, `#empty`, `#pagination` |\r\n| `EnKanbanBoard` | base | dumb | Board kanban genérico em `R`: agrupa por campo (`groupBy`, dot-path), DnD HTML5 entre colunas com drop zone destacada, colunas ocultáveis/ordenáveis (localStorage ou modo controlado), virtualização por coluna, skeleton, context menu por cartão (abrir/editar/mover/arquivar/lixeira/copiar link), badges de tag, meta de usuários (dumb) e rodapé de datas | `data`, `cardMap`, `groupBy`, `columns?`, `storageKey?`, `primaryKey?`, `defaultColumnSortField?`, `defaultColumnSortDesc?`, `doneStatus?`, `permissions?`, `managedColumns?`, `columnVisibility?`, `columnOrder?`, `showHeaderColumnControls?`, `showSkeleton?`, `cardsLoading?`, `staggerColumnMs?`, callbacks (`onOpenPage?`, `onEdit?`, `onMoveTo?`, `onArchiveCard?`, `onTrashCard?`, `handleCopyExternalLink?`), `locale?` | `drop`, `done-drop`, `card-click`, `archive`, `create`, `context-mouse`, `ready` | — |\r\n| `EnAccountSharedMenu` | Shared | wired | Menu de conta (perfil + logout, itens custom) | `profile?`, `items?`, `collapsed?`, `logoutRedirectUri?`, `locale?` | `logout`, `navigate` | encaminha slots ao dropdown interno |\r\n| `EnAiAgentsViewManyGrid` | ViewMany | wired | Grid de agentes com tabs todos/sistema/workspace, busca por nome/slug e CTA de criar | `locale?` | `select` (`{ action, agent }`), `create` | — |\r\n| `EnAiAgentsViewOneCard` | ViewOne | dumb | Card de agente com avatar BENI temático, badges de source/tipo e menu edit/delete (desabilitado para agentes de sistema) | `agent`, `locale?` | `select` (`{ action, agent }`) | — |\r\n| `EnAiChatsSharedFloat` | Shared | dumb | Widget flutuante de IA: botão BENI draggable (posição persistida) + painel redimensionável com sessão, nova conversa e histórico | `open?`, `onBeforeSend?`, `onNotify?`, `types?`, `walletState?`, `locale?` | `update:open`, `openFullscreen` (`{ chatId, agent }`) | — |\r\n| `EnAiChatsFormsCreate` | Forms | wired | Tela de nova conversa: hero do agente, alertas de wallet, quick chats, composer com upload e seletores de modelo/mode/reasoning. Cria o chat e emite o resultado | `compact?`, `showWalletAlerts?`, `showQuickChats?`, `showFileUpload?`, `showFooter?`, `showAgentSelector?`, `initialPrompt?`, `agentSlug?`, `walletState?`, `types?`, `locale?` | `chatCreated`, `update:agentSlug`, `goToBilling` | `header` (+ `header-left`/`header-center`/`header-right`) |\r\n| `EnAiChatsFormsPrompt` | Forms | dumb | Composer sobre `UChatPrompt`: v-model de texto, preview de arquivos no header, upload à esquerda e footers do caller | `modelValue`, `placeholder`, `status?`, `error?`, `disabled?`, `variant?`, `showFileUpload?`, `files?`, `isUploading?`, `maxrows?`, `rows?`, `compact?`, `locale?` | `update:modelValue`, `submit`, `filesSelected`, `fileRemove`, `stop`, `reload` | `files-preview`, `footer-left`, `footer-right` (scoped) |\r\n| `EnAiChatsSharedDockHeader` | Shared | dumb | Ações do header do dock: histórico, nova conversa, tela cheia e fechar | `creating?`, `sidebarOpen?`, `locale?` | `toggleSidebar`, `newChat`, `fullscreen`, `close` | — |\r\n| `EnAiChatsSharedHeader` | Shared | dumb | Barra de header do chat: avatar BENI à esquerda, seletor de agente ao centro, ações à direita | `beniState`, `beniBodyColor`, `beniBodyColorTo`, `beniEyesColor`, `beniHeadItem?`, `agentsLoading?`, `agentOptions`, `agentDescriptions?`, `selectedAgentSlug?`, `showAgentSelector?`, `locale?` | `selectAgent` | `header-left`, `header-center`, `header-right` |\r\n| `EnAiChatsSharedLoader` | Shared | dumb | Indicador de carregamento do chat (três pontos + rótulo), inline ou overlay com blur | `label?`, `message?`, `overlay?` | — | — |\r\n| `EnAiChatsViewManyList` | ViewMany | wired | Sidebar de histórico de chats: nav \"Nova conversa\"/\"Buscar\" + command palette (`⌘K`), grupos por recência, rename inline e delete com confirmação | `selected?`, `collapsed?`, `searchShortcut?`, `locale?` | `update:selected`, `newChat`, `delete` | — |\r\n| `EnAiChatsViewOneSession` | ViewOne | wired | Conversa ao vivo: mensagens com streaming (reasoning/tool/texto/arquivo), composer com upload, seletores de modelo/mode/reasoning, regenerar/copiar e estado do avatar BENI | `chatId`, `showFooter?`, `compact?`, `agentSlug?`, `initialMode?`, `initialModel?`, `initialReasoning?`, `onBeforeSend?`, `onNotify?`, `locale?` | `update:agentSlug`, `error`, `newChat` | `header` (+ `header-left`/`header-center`/`header-right`) |\r\n| `EnAiChatsControlsModelBadge` | Controls | dumb | Badge transitório quando o backend roteia o request para outro modelo | `from`, `to`, `visionRouted`, `locale?` | — | — |\r\n| `EnAiChatsControlsModelSelect` | Controls | wired | Pill de seleção de modelo: entrada \"modelo padrão\" + modelos agrupados por provider, com ícones de capability e busca | `v-model` (`string \\| null`), `compact?`, `locale?` | `update:modelValue` | — |\r\n| `EnAiChatsControlsModePill` | Controls | dumb | Pill de alternância do modo do agente (Write/Plan). Clique cicla o modo | `modelValue` (`AgentMode`), `locale?` | `update:modelValue` | — |\r\n| `EnAiChatsControlsReasoningPill` | Controls | dumb | Seletor do nível de reasoning (off/low/medium/high) em dropdown com checkbox | `modelValue` (`AiReasoningSetting`), `options`, `locale?` | `update:modelValue` | — |\r\n| `EnAiChatsFilesAvatar` | Files | dumb | Tile de arquivo: thumbnail ou ícone por mime, overlay de status e botão remover no hover | `name`, `type`, `previewUrl`, `status?`, `error?`, `removable?`, `locale?` | `remove` | — |\r\n| `EnAiChatsFilesDragDropOverlay` | Files | dumb | Overlay fullscreen \"solte os arquivos aqui\" durante o drag | `show`, `locale?` | — | — |\r\n| `EnAiChatsFilesPreview` | Files | dumb | Linha de avatares dos arquivos pendentes de envio | `v-model` (`AiChatFileWithStatus[]`), `locale?` | `remove` (+ `update:modelValue`) | — |\r\n| `EnAiChatsFilesUploadButton` | Files | dumb | Botão clipe + input file oculto (multiple; imagens/PDF/CSV/TXT/DOC/XLS) | `disabled?`, `locale?` | `filesSelected` | — |\r\n| `EnBillingFormsCreditRequest` | Forms | wired | Formulário de solicitação de créditos (amount + reason), como modal ou inline | `open?`, `workspace?`, `modal?`, `locale?` | `update:open`, `success` | — |\r\n| `EnBillingSharedWalletCard` | Shared | wired | Card de saldo da carteira do workspace: nome, badge de status, moeda, saldo formatado e CTA de créditos | `workspace?`, `locale?` | `topup` | — |\r\n| `EnBillingViewManyCreditRequests` | ViewMany | wired | Lista de pedidos de crédito: valor, status, motivo, data e cancelamento (só `pending`) | `workspace?`, `locale?` | `cancelled` | — |\r\n| `EnBillingViewManyTransactions` | ViewMany | wired | Histórico paginado de transações da wallet em tabela | `workspace?`, `pageSize?`, `locale?` | — | — |\r\n| `EnCommunicationsFormsComposer` | Forms | dumb | Composer de mensagem/comentário: `v-model:text`, Enter envia (Shift+Enter quebra linha), envio em loading, dica de atalho e slots de extensão | `v-model:text`, `placeholder?`, `ariaLabel?`, `sendLabel?`, `cancelLabel?`, `cancelable?`, `disabled?`, `sending?`, `autofocus?`, `rows?`, `maxrows?`, `showHint?`, `color?`, `locale?` | `submit`, `typing`, `cancel` | `header`, `actions` |\r\n| `EnCommunicationsSharedMessageBubble` | Shared | dumb | Bolha de mensagem/comentário: avatar + autor, timestamp formatado, `own` (direita), `grouped` (consecutiva), `system` (linha central), estado de envio, marcas de editado/removido e ações no hover | `content`, `author`, `avatarText?`, `timestamp?`, `own?`, `grouped?`, `system?`, `status?`, `edited?`, `deleted?`, `locale?` | — | `actions` |\r\n| `EnCommunicationsSharedStatusBadge` | Shared | dumb | Badge de status de thread (`open`/`closed`/`archived`) com cor semântica e ícone | `status`, `size?`, `variant?`, `iconless?`, `locale?` | — | — |\r\n| `EnCommunicationsViewManyComments` | ViewMany | wired | Comentários de um registro: threading de dois níveis client-side (respostas expansíveis), criar/responder, editar e excluir só os próprios (modal de confirmação); canal realtime opt-in | `entity`, `entityReference`, `workspace?`, `comments?`, `loading?`, `members?`, `realtime?`, `disabled?`, `presence?`, `locale?` | `event`, `error` | — |\r\n| `EnCommunicationsViewManyThreads` | ViewMany | wired | Lista de conversas do workspace: busca server-side (`_q` com debounce) e filtros de tipo/status, seleção de linha e CTA \"nova conversa\" delegados ao consumer | `workspace?`, `threads?`, `loading?`, `filters?`, `selectable?`, `selected?`, `disabled?`, `entity?`, `entityReference?`, `presence?`, `locale?` | `select`, `update:selected`, `create` | — |\r\n| `EnCommunicationsViewOneThread` | ViewOne | wired | Conversa ao vivo: transcrição com separadores de dia e agrupamento de autor, auto-scroll, modo campo (ensure obter-ou-criar no mount), status no kebab (reopen/close/archive), canal realtime + \"está digitando…\" | `reference?`, `thread?`, `entity?`, `entityReference?`, `fieldId?`, `title?`, `type?`, `workspace?`, `presence?`, `realtime?`, `showHeader?`, `limit?`, `locale?` | `resolved`, `message-sent`, `status-change`, `event`, `error` | — |\r\n| `EnMembersViewManyTable` | ViewMany | wired | Tabela de membros com busca e ações protegidas (troca de role, remoção); coluna de presença online/offline opt-in | `workspace?`, `members?`, `loading?`, `searchable?`, `presence?`, `resizable?`, `columnVisibility?`, `locale?` | `invite`, `update-role`, `remove` | — |\r\n| `EnMembersFormsCreate` | Forms | wired | Modal de convite (email + role inicial; `owner` nunca é oferecido) | `v-model:open`, `workspace?`, `locale?` | `created`, `cancel` | — |\r\n| `EnMembersSharedPresenceFacepile` | Shared | wired | Facepile de quem está online no workspace: avatar group (`max` + `+N`, \"eu\" primeiro) + popover com nome/email; ponto cinza com tooltip quando vazio | `workspace?`, `max?`, `enabled?`, `locale?` | — | — |\r\n| `EnMembersSharedPresenceIndicator` | Shared | dumb | Ponto de status de presença (online/offline) com aria-label localizado e cores semânticas | `online`, `size?`, `locale?` | — | — |\r\n| `EnNotificationsActionsCommentReply` | Actions | wired | Card de ação para menção em comentário: cita o trecho e responde com comentário filho | `notification`, `locale?` | — | — |\r\n| `EnNotificationsActionsOpenLink` | Actions | dumb | Card de ação genérico para notificações com `link`. Não renderiza nada sem link | `notification`, `locale?` | `open` | — |\r\n| `EnNotificationsActionsTaskCard` | Actions | dumb | Card de ação para notificações de tarefa: nome, transição de status e botão de abrir | `notification`, `locale?` | `open` | — |\r\n| `EnNotificationsActionsThreadReply` | Actions | wired | Card de ação para menção em thread: cita o trecho e responde na thread de origem | `notification`, `locale?` | — | — |\r\n| `EnNotificationsSharedBell` | Shared | wired | Sino com badge de não lidas. Não abre painel: o estado é da app | `count?`, `max?`, `shortcuts?`, `locale?` | `click` | — |\r\n| `EnNotificationsSharedSlideover` | Shared | wired | Painel lateral com as últimas `limit` notificações (marcar lida, dispensar, todas) | `v-model:open`, `limit?`, `locale?` | `navigate`, `dismiss`, `mark-all-read`, `view-all` | `#item` |\r\n| `EnNotificationsViewInbox` | ViewInbox | wired | Inbox completo: lista com busca server-side, abas e teclado + painel de leitura com cards de ação + slideover mobile. Deep-link por prop, navegação por emits | `v-model:selected`, `limit?`, `title?`, `openReference?`, `locale?` | `open-task`, `open-link`, `open-reference-resolved` | `navbar-leading` |\r\n| `EnNotificationsViewManyList` | ViewMany | dumb | Lista estilo inbox: ator, chip de não lida, título/corpo, data compacta, seleção por clique e navegação por ArrowUp/ArrowDown | `notifications`, `v-model` (`NotificationExpanded \\| null`), `locale?` | `update:modelValue` | `item` (scoped) |\r\n| `EnNotificationsViewOneDetail` | ViewOne | wired | Painel de leitura: navbar com ações (marcar lida, dispensar, copiar referência), cabeçalho, corpo e card de ação por `type.key` | `notification`, `locale?` | `close`, `open-task`, `open-link` | — |\r\n| `EnPlansFormsUpgrade` | Forms | wired | Modal de upgrade/downgrade com preview de proration. Upgrade imediato, downgrade agendado para o fim do período | `planCode?`, `workspace?`, `v-model:open`, `locale?` | `success`, `cancel` | — |\r\n| `EnPlansSharedQuotaBars` | Shared | wired | Barras de progresso read-only das cotas do workspace: ícone do produto, badge de modo e used/limit formatados | `workspace?`, `locale?` | — | — |\r\n| `EnPlansViewCompare` | View | wired | Tabela comparativa de planos sobre `UPricingTable`, com seções de cotas inclusas e features | `workspace?`, `locale?` | `select` | — |\r\n| `EnPlansViewManyGrid` | ViewMany | wired | Grade responsiva de cards de plano com banner de downgrade agendado e modo current/upgrade/downgrade por card | `workspace?`, `locale?` | `select`, `cancel-pending` | — |\r\n| `EnPlansViewOneCard` | ViewOne | dumb | Card de plano sobre `UPricingPlan`: preço, features concedidas, quotas no footer e CTA por mode | `plan`, `mode?`, `highlight?`, `locale?` | `select` | — |\r\n| `EnWorkspacesSharedSelector` | Shared | wired | Seletor de workspace ativo (lista cacheada, `setActive` persistido) | `workspace?`, `creatable?`, `collapsed?`, `locale?` | `change`, `create` | — |\r\n\r\nTodo componente com texto embutido aceita a prop `locale` (`'pt-BR' | 'en' | 'es'`) como override pontual. Na prática o locale vem do `<EnApp>`; a prop só é necessária para um componente divergir do resto da app.\r\n\r\n### `EnTable`\r\n\r\nMotor: `UTable` + `@tanstack/vue-table`. A API pública não expõe tipos da lib de tabela.\r\n\r\n- **Colunas declarativas** (`EnTableColumn`): `{ key, label, sortable?, align?, hidden? }`.\r\n- **Seleção em massa**: `selectable` + `v-model:selected` (array de linhas, por referência de objeto). Checkbox no header com estado indeterminado; a seleção é podada quando `rows` muda.\r\n- **Ordenação controlada**: coluna `sortable` renderiza botão no header, o estado vem pela prop `sort` e as mudanças saem por `sort-change`. Quem ordena é o consumer ou o backend.\r\n- **Paginação server-side**: prop `pagination: { page, pageCount, total? }` + `page-change`, ou override completo pelo slot `#pagination`.\r\n- **Resize, visibilidade, ordem e virtualização**, todos opt-in: `resizable` (handle visual + `update:columnSizing`), `columnSizing` (larguras controladas, fecha o round-trip de persistência), `columnVisibility` + `update:columnVisibility`, `columnOrder` + `update:columnOrder` (as colunas estruturais `select`/`actions` não se movem), `virtualize` (padrão `44`/`10` quando ligado).\r\n- **Estados**: `loading` (spinner + `aria-busy`) e vazio via `UEmpty` interno (`emptyState` ou slot `#empty`).\r\n- **A11y**: tabela semântica, `aria-sort`, `aria-label` nos checkboxes, linhas com foco e teclado (Enter/Espaço) quando há listener de `row-click`.\r\n\r\n### Componentes de entidade\r\n\r\n- **Regras de domínio implementadas**: `owner` nunca é oferecido como opção de role (convite e troca) e não pode ser modificado nem removido (o menu vira botão desabilitado com tooltip); membro `pending` não muda de status nem de role; self-exclusion é detectada (remover o próprio usuário fica desabilitado); remoção sempre atrás de modal de confirmação.\r\n- **Erro não é vazio**: componentes wired renderizam estado de erro próprio (ícone, título, descrição e botão de retry). Falha de API nunca cai no empty state.\r\n- **Override controlado**: passar a prop de dados (ex.: `members`) desabilita a query interna, sem fetch desnecessário.\r\n- **Família inbox** (`EnNotificationsView*` + `EnNotificationsActions*`): o `EnNotificationsViewInbox` monta lista, leitura e slideover mobile, e delega aos cards de ação pelo `type.key` da notificação. A busca é server-side com debounce de 300ms. Deep-link é da app: a prop `open-reference` seleciona a notificação e `open-reference-resolved` avisa para limpar a URL.\r\n- **Família communications** (`EnCommunications*`): `EnCommunicationsViewOneThread` liga `/query` (`useThread`/`useThreadMessages`/mutations) e `/realtime` (`useLiveThread` + `useTypingIndicator` no mesmo canal) — mensagens recebidas chegam por invalidação de cache e \"está digitando…\" via relay efêmero; chat de campo (`entity` + `entityReference` + `fieldId`) dispara `useEnsureThread` (obter-ou-criar) automático no mount. Thread `closed`/`archived` não aceita mensagem (o composer vira aviso e o kebab oferece reabrir). `EnCommunicationsViewManyThreads` não assina canal próprio (não existe canal de lista no gateway): a frescura vem da invalidação do Pinia Colada feita pelo detalhe e pelas mutations. `EnCommunicationsViewManyComments` resolve o threading de dois níveis client-side (a lista da API é plana) e restringe editar/excluir ao próprio comentário (join pelo `user` do profile); sem canal de lista de threads, exclusão sempre atrás de modal de confirmação.\r\n- **SSR-safe**: nenhum acesso a `window`/`document` fora de guards.\r\n\r\n## i18n\r\n\r\nDicionário interno pt-BR/en/es com fallback (match exato → prefixo de língua → `pt-BR`), sem peer de `vue-i18n`. O locale global vem do `<EnApp>`; componentes também aceitam a prop `locale` como override pontual. Todo texto pode ser sobrescrito globalmente pela prop `messages` do `EnApp` (deep-merge por locale) ou pontualmente por props e slots (ex.: `emptyState.title`).\r\n\r\n```ts\r\nimport { resolveMessages } from '@be-enlighten/enspace-sdk-ui'\r\n\r\nresolveMessages('es').table.emptyTitle // 'Sin resultados'\r\n```\r\n\r\n## Nomes dos componentes\r\n\r\n`En{Entidade}{Grupo}{Cardinalidade?}{Variante}`\r\n\r\n- **Entidade**: domínio do recurso (`Members`, `Workspaces`, `Account`, `Notifications`, ...).\r\n- **Grupo**: `View`, `Forms` ou `Shared`.\r\n- **Cardinalidade**: `Many` ou `One`, obrigatória em `View` e ausente fora dele.\r\n- **Variante** (opcional): `Table`, `Selector`, `Bell`, `Slideover`, ...\r\n- **Bases**: `En{Nome}` simples (`EnTable`, `EnApp`, `EnLayout`), sempre dumb.\r\n\r\nExemplos: `EnMembersViewManyTable`, `EnWorkspacesSharedSelector`, `EnAccountSharedMenu`, `EnNotificationsSharedBell`.\r\n\r\n## Licença\r\n\r\nMIT.\r\n","readmeFilename":"README.md"}