{"_id":"@cst-ui/nano-buttons","_rev":"20-d67724d4eea11119b4da1020516dd11b","name":"@cst-ui/nano-buttons","dist-tags":{"latest":"0.6.2"},"versions":{"0.1.0":{"name":"@cst-ui/nano-buttons","version":"0.1.0","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.1.0","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"27ddf67bd2c07b9784c8c18d5621df8417b468f2","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.1.0.tgz","fileCount":17,"integrity":"sha512-19q+t/EtYNfb+YqTG5WyYctYZzWYERQHBrY/0MkG90SeCcA8elWxb3hujzWwj/j7dCOGK6RcP3+tqN1CWLoGPg==","signatures":[{"sig":"MEQCIGqDxnTzh4PYfGIPXp3o2DCMrSKzimJyKQ2JzEJ0ZedTAiAPv+ZsCfdqJEbyAYBgdg4L7mq+ygtIXCvYHYaDE7IbSA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":126552},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./style.css":"./dist/style.css"},"gitHead":"91b4def0e1309acd772ea3fe47ba72a3c37a89b8","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","typecheck":"vue-tsc -p tsconfig.build.json --noEmit"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"11.12.1","description":"Nano themed Vue 3 button components based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4"},"peerDependencies":{"vue":"^3.5.13","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.1.0_1778658305048_0.7261267303091379","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@cst-ui/nano-buttons","version":"0.1.1","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.1.1","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"4c4c0e7586bfa761cbae59749f995b0e0c256318","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.1.1.tgz","fileCount":18,"integrity":"sha512-c5Itj9VyqBNv922ADzAxDrxPg17FrmWfdf0PDdLv0wtRSfqlnmQj3+0QEYvB51kXwRgGBWT4rjP0bbW/NMClmw==","signatures":[{"sig":"MEYCIQCEi4Y8zES9S36/bvdMFoDPSFwdNPk93JnLgJLEO3dnWAIhANBgpfBwUfW0Tkg4CGUIYoBgcewmJrwx+UMItso92xMl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":139382},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./style.css":"./dist/style.css"},"gitHead":"246d6e83218f5c50e7aa9549282b7b54c355ae25","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","typecheck":"vue-tsc -p tsconfig.build.json --noEmit"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"11.12.1","description":"Nano themed Vue 3 button components based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4"},"peerDependencies":{"vue":"^3.5.13","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.1.1_1779082255510_0.23605797183880273","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@cst-ui/nano-buttons","version":"0.1.2","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.1.2","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"7438e9c32cb7da70c045d58c4cbc9bc6a8ce98d0","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.1.2.tgz","fileCount":19,"integrity":"sha512-mPuTl5JvYYonFYBdX28MjQ22oQo8JJhtscztgm2xSBGRQneYsy6YCm6Wv/dRza1HhMULIuGi49ZqGjzPqLMUMg==","signatures":[{"sig":"MEUCICzwOx449ZoYYNp0itII0l0+corFiL+dnFwJJbmMLKvXAiEAlpFPxTbRL1pgf7I772O4QsK8OJMzt2bwBAis9QGMl8w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":152087},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./style.css":"./dist/style.css"},"gitHead":"0f2e36a5ce9047a90aa2726a12f7b95648cf9413","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","typecheck":"vue-tsc -p tsconfig.build.json --noEmit"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"11.12.1","description":"Nano themed Vue 3 button components based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4"},"peerDependencies":{"vue":"^3.5.13","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.1.2_1779083989850_0.17249585079743945","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@cst-ui/nano-buttons","version":"0.2.0","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.2.0","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"fb98878489b0d65bc4f7418d7dde00ccff34d697","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.2.0.tgz","fileCount":32,"integrity":"sha512-1QGabuT1x6MqWgO3EAFojNy9yrqnKXE+x+r7wbuVCE9247LbtFVt9o/aRmxH//6GoGHjKWvgPECjwBrRWtpphw==","signatures":[{"sig":"MEQCIEPQJ8KA1uUPYY6YNiXVTqfqXXd1ujIzpIrJ+9Oc9hsKAiBmr6/z+Vz05x8XOzpi3UOSHBcCd+f0g7TjvkjguxfWgQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":173140},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./style.css":"./dist/style.css","./dialog-tabs":{"types":"./dist/dialog-tabs/index.d.ts","import":"./dist/dialog-tabs/index.mjs","require":"./dist/dialog-tabs/index.cjs"}},"gitHead":"34f2ad31ee12d802ae60acc108594ee324185f38","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","docs:dev":"vite --config docs/vite.config.ts --host 0.0.0.0","typecheck":"vue-tsc -p tsconfig.build.json --noEmit","docs:build":"vite build --config docs/vite.config.ts","docs:preview":"vite preview --config docs/vite.config.ts --host 0.0.0.0"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"11.12.1","description":"Nano themed Vue 3 button components and dialog tab helpers based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.15.0","typesVersions":{"*":{"dialog-tabs":["dist/dialog-tabs/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","vue-router":"^4.4.5","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4","@element-plus/icons-vue":"2.3.2"},"peerDependencies":{"vue":"^3.5.13","vue-router":"^4.4.5","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.2.0_1779952427457_0.40700083152843414","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@cst-ui/nano-buttons","version":"0.2.1","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.2.1","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"018527cad2cd913602e4274a2f5659146fb96eae","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.2.1.tgz","fileCount":35,"integrity":"sha512-23I9aSz2DhxWw1d7tNghtmqwFP8weOeWzX7iJPSG67Z8JffgLgKwB2pLHMPEj6NrNzBtyellbWQoJ67InT9+ZA==","signatures":[{"sig":"MEUCIFzo7mDYpQ3h5N+9xB6E6UUBGEH9lU4ciAMAc0L9DuinAiEA2+gdxmF2ihMKLdGJnCldSEJRhJUmhe9MmBbsOu0cHZk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":175125},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./buttons":{"types":"./dist/buttons/index.d.ts","import":"./dist/buttons/index.mjs","require":"./dist/buttons/index.cjs"},"./style.css":"./dist/style.css","./dialog-tabs":{"types":"./dist/dialog-tabs/index.d.ts","import":"./dist/dialog-tabs/index.mjs","require":"./dist/dialog-tabs/index.cjs"}},"gitHead":"ce29468628de89618da3957d101c7f91602065d0","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","docs:dev":"vite --config docs/vite.config.ts --host 0.0.0.0","typecheck":"vue-tsc -p tsconfig.build.json --noEmit","docs:build":"vite build --config docs/vite.config.ts","docs:preview":"vite preview --config docs/vite.config.ts --host 0.0.0.0"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"11.12.1","description":"Nano themed Vue 3 button components and dialog tab helpers based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.15.0","typesVersions":{"*":{"buttons":["dist/buttons/index.d.ts"],"dialog-tabs":["dist/dialog-tabs/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","vue-router":"^4.4.5","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4","@element-plus/icons-vue":"2.3.2"},"peerDependencies":{"vue":"^3.5.13","vue-router":"^4.4.5","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.2.1_1779954871771_0.29665090074200595","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@cst-ui/nano-buttons","version":"0.2.2","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.2.2","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"563d5e9cd11560f542e1d4c5e983020d07b1e962","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.2.2.tgz","fileCount":35,"integrity":"sha512-0bmiVUn2PLUT3zqjhwhy3LhlxJ8dJJNfOnJBI5ECFh5uBWfgCxwSfIWyzfus7qeBx/sLSyi1kRsBExq2wP2hjg==","signatures":[{"sig":"MEYCIQC61su37oqUvya7GrxxyQ131tV3oqgTdB6DhXR3UEFlGgIhANcsAmxqkvIOXi9KCYpfEblIZB8FSoSbH/MzRFC7WrNw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":178274},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./buttons":{"types":"./dist/buttons/index.d.ts","import":"./dist/buttons/index.mjs","require":"./dist/buttons/index.cjs"},"./style.css":"./dist/style.css","./dialog-tabs":{"types":"./dist/dialog-tabs/index.d.ts","import":"./dist/dialog-tabs/index.mjs","require":"./dist/dialog-tabs/index.cjs"}},"gitHead":"416f93dd170fd86e4898d8a3183bd6c23b6fa1d0","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","docs:dev":"vite --config docs/vite.config.ts --host 0.0.0.0","typecheck":"vue-tsc -p tsconfig.build.json --noEmit","docs:build":"vite build --config docs/vite.config.ts","docs:preview":"vite preview --config docs/vite.config.ts --host 0.0.0.0"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"11.12.1","description":"Nano themed Vue 3 button components and dialog tab helpers based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.15.0","typesVersions":{"*":{"buttons":["dist/buttons/index.d.ts"],"dialog-tabs":["dist/dialog-tabs/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","vue-router":"^4.4.5","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4","@element-plus/icons-vue":"2.3.2"},"peerDependencies":{"vue":"^3.5.13","vue-router":"^4.4.5","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.2.2_1779956276070_0.3363228289455724","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@cst-ui/nano-buttons","version":"0.2.3","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.2.3","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"9a38143d9f77c664e86aa796f568cac5afaba37d","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.2.3.tgz","fileCount":37,"integrity":"sha512-vkdXcUaOSbBYPhtxVqIhee7ww1lsTb8LTcjkZIxZzYddGp0HKNxzRavOzQvVXWb+b+MkGMd6ux/85xI4JRRJBA==","signatures":[{"sig":"MEUCIQCJDA41YjIb5Y+j5Egb3HmBuXoySysblpz3tCf9bEs5xAIgFYgorOxF5UpF8wcgM5IZ0vs+1llv78GgE/QX7yofbUc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":180905},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./buttons":{"types":"./dist/buttons/index.d.ts","import":"./dist/buttons/index.mjs","require":"./dist/buttons/index.cjs"},"./style.css":"./dist/style.css","./dialog-tabs":{"types":"./dist/dialog-tabs/index.d.ts","import":"./dist/dialog-tabs/index.mjs","require":"./dist/dialog-tabs/index.cjs"}},"gitHead":"90eb9f7776ade906011c1c87ba53794651e80314","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","docs:dev":"vite --config docs/vite.config.ts --host 0.0.0.0","typecheck":"vue-tsc -p tsconfig.build.json --noEmit","docs:build":"vite build --config docs/vite.config.ts","docs:preview":"vite preview --config docs/vite.config.ts --host 0.0.0.0"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"11.12.1","description":"Nano themed Vue 3 button components and dialog tab helpers based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.15.0","typesVersions":{"*":{"buttons":["dist/buttons/index.d.ts"],"dialog-tabs":["dist/dialog-tabs/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","vue-router":"^4.4.5","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4","@element-plus/icons-vue":"2.3.2"},"peerDependencies":{"vue":"^3.5.13","vue-router":"^4.4.5","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.2.3_1779958858724_0.5411494422824896","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@cst-ui/nano-buttons","version":"0.3.0","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.3.0","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"44854fcd5df2ec68f3bb9811cc915793947be33b","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.3.0.tgz","fileCount":42,"integrity":"sha512-/XUAioGtn4etuIvV5p2mlGQVMoMluULX1xzzrgalMowAKs1GgnQPZu3Q/Rio81/b1cXuiAPbrkiVzdjT+9UXkQ==","signatures":[{"sig":"MEUCIF1OhieJbpBnvrxF0+ZiDaDx+eComtnYBvJa8/EaI9vHAiEA+B9RCBn7RrWzBQyc4/Ztx/TgIsJdCjrDpQjWn7Po6I4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":195810},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./table":{"types":"./dist/table/index.d.ts","import":"./dist/table/index.mjs","require":"./dist/table/index.cjs"},"./buttons":{"types":"./dist/buttons/index.d.ts","import":"./dist/buttons/index.mjs","require":"./dist/buttons/index.cjs"},"./style.css":"./dist/style.css","./dialog-tabs":{"types":"./dist/dialog-tabs/index.d.ts","import":"./dist/dialog-tabs/index.mjs","require":"./dist/dialog-tabs/index.cjs"}},"gitHead":"39979f267a406e7a7756a4ca85d28b28cde7e213","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","docs:dev":"vite --config docs/vite.config.ts --host 0.0.0.0","typecheck":"vue-tsc -p tsconfig.build.json --noEmit","docs:build":"vite build --config docs/vite.config.ts","docs:preview":"vite preview --config docs/vite.config.ts --host 0.0.0.0"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"11.12.1","description":"Nano themed Vue 3 button, table, pagination, and dialog tab components based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.15.0","typesVersions":{"*":{"table":["dist/table/index.d.ts"],"buttons":["dist/buttons/index.d.ts"],"dialog-tabs":["dist/dialog-tabs/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","vue-router":"^4.4.5","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4","@element-plus/icons-vue":"2.3.2"},"peerDependencies":{"vue":"^3.5.13","vue-router":"^4.4.5","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.3.0_1782096445795_0.6196763875150642","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@cst-ui/nano-buttons","version":"0.3.1","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.3.1","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"f700b7e0d0f1ade8f5dec84b3e8c1aec6bfc3c97","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.3.1.tgz","fileCount":42,"integrity":"sha512-XYWjE3SKtcJC1n1eC0cwiICq/RFVrZIeDAupnVERiSoYiZrXsSYMv4E/jEx1BKgEv0ihwDN/3P+fcKV2vvwbjg==","signatures":[{"sig":"MEUCIDy8jU2YaIkviNYiZhqUqPpWK0SQnvaCbWsGF6wv4DNNAiEA2NzOvPe4GZClzZxDpujSjUNl8eeIjzzo9JAuKZXpUuI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":195903},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./table":{"types":"./dist/table/index.d.ts","import":"./dist/table/index.mjs","require":"./dist/table/index.cjs"},"./buttons":{"types":"./dist/buttons/index.d.ts","import":"./dist/buttons/index.mjs","require":"./dist/buttons/index.cjs"},"./style.css":"./dist/style.css","./dialog-tabs":{"types":"./dist/dialog-tabs/index.d.ts","import":"./dist/dialog-tabs/index.mjs","require":"./dist/dialog-tabs/index.cjs"}},"gitHead":"39979f267a406e7a7756a4ca85d28b28cde7e213","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","docs:dev":"vite --config docs/vite.config.ts --host 0.0.0.0","typecheck":"vue-tsc -p tsconfig.build.json --noEmit","docs:build":"vite build --config docs/vite.config.ts","docs:preview":"vite preview --config docs/vite.config.ts --host 0.0.0.0"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"11.12.1","description":"Nano themed Vue 3 button, table, pagination, and dialog tab components based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.15.0","typesVersions":{"*":{"table":["dist/table/index.d.ts"],"buttons":["dist/buttons/index.d.ts"],"dialog-tabs":["dist/dialog-tabs/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","vue-router":"^4.4.5","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4","@element-plus/icons-vue":"2.3.2"},"peerDependencies":{"vue":"^3.5.13","vue-router":"^4.4.5","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.3.1_1782096853422_0.9132854598480167","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@cst-ui/nano-buttons","version":"0.3.2","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.3.2","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"50290c0f41b64aeca69f13a1e748d7d20468fc47","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.3.2.tgz","fileCount":42,"integrity":"sha512-RDJWrbJalxveI2m4vBodAOyIM9foCvsocFMfWjMuxLvDmJAu0zOyAw+I7WBQ5TPCg7WyeEzapTxpK8O8WO6kMw==","signatures":[{"sig":"MEYCIQDUhUa8HNvvGzMDGy6omKn/Um0KCAuhuugzs1L9k6cp+gIhAPyaJQz9gDV0sE3j5yTZ72uajC1+7B9oEsS7cJ65lmqZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":197082},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./table":{"types":"./dist/table/index.d.ts","import":"./dist/table/index.mjs","require":"./dist/table/index.cjs"},"./buttons":{"types":"./dist/buttons/index.d.ts","import":"./dist/buttons/index.mjs","require":"./dist/buttons/index.cjs"},"./style.css":"./dist/style.css","./dialog-tabs":{"types":"./dist/dialog-tabs/index.d.ts","import":"./dist/dialog-tabs/index.mjs","require":"./dist/dialog-tabs/index.cjs"}},"gitHead":"39979f267a406e7a7756a4ca85d28b28cde7e213","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","docs:dev":"vite --config docs/vite.config.ts --host 0.0.0.0","typecheck":"vue-tsc -p tsconfig.build.json --noEmit","docs:build":"vite build --config docs/vite.config.ts","docs:preview":"vite preview --config docs/vite.config.ts --host 0.0.0.0"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"11.12.1","description":"Nano themed Vue 3 button, table, pagination, and dialog tab components based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.15.0","typesVersions":{"*":{"table":["dist/table/index.d.ts"],"buttons":["dist/buttons/index.d.ts"],"dialog-tabs":["dist/dialog-tabs/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","vue-router":"^4.4.5","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4","@element-plus/icons-vue":"2.3.2"},"peerDependencies":{"vue":"^3.5.13","vue-router":"^4.4.5","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.3.2_1782097411830_0.6589329895163574","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@cst-ui/nano-buttons","version":"0.3.3","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.3.3","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"b47606a7e6a8b9cf1c4c2766f27784aed92887bb","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.3.3.tgz","fileCount":42,"integrity":"sha512-hE3lSO1owIj4FtbvDSK8xR0yE9t1Fp7VoV3oN/v+RnAFaX35wzFihuA3IpQNcJkIjMP3cAeD7uygTcs2PEY6pA==","signatures":[{"sig":"MEUCIH+6ifAGn69dkLVCIoO5+zpf6XLfsCvhyIPG7GzrYINtAiEAnzoANwvImk4hNaVZK1OzujW/hUoK445m42q3f2soj4c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":197164},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./table":{"types":"./dist/table/index.d.ts","import":"./dist/table/index.mjs","require":"./dist/table/index.cjs"},"./buttons":{"types":"./dist/buttons/index.d.ts","import":"./dist/buttons/index.mjs","require":"./dist/buttons/index.cjs"},"./style.css":"./dist/style.css","./dialog-tabs":{"types":"./dist/dialog-tabs/index.d.ts","import":"./dist/dialog-tabs/index.mjs","require":"./dist/dialog-tabs/index.cjs"}},"gitHead":"d87a52547a2a54eb00aded07dac5b1f260af84a0","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","docs:dev":"vite --config docs/vite.config.ts --host 0.0.0.0","typecheck":"vue-tsc -p tsconfig.build.json --noEmit","docs:build":"vite build --config docs/vite.config.ts","docs:preview":"vite preview --config docs/vite.config.ts --host 0.0.0.0"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"11.12.1","description":"Nano themed Vue 3 button, table, pagination, and dialog tab components based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.15.0","typesVersions":{"*":{"table":["dist/table/index.d.ts"],"buttons":["dist/buttons/index.d.ts"],"dialog-tabs":["dist/dialog-tabs/index.d.ts"]}},"_hasShrinkwrap":false,"packageManager":"pnpm@10.33.0","devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","vue-router":"^4.4.5","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4","@element-plus/icons-vue":"2.3.2"},"peerDependencies":{"vue":"^3.5.13","vue-router":"^4.4.5","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.3.3_1782105118323_0.3555635784424709","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@cst-ui/nano-buttons","version":"0.4.0","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.4.0","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"c8bdcfaef29a1a4782e1e1731cda477702a16848","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.4.0.tgz","fileCount":42,"integrity":"sha512-DipVKzchlEUfylTBdU5Vox7wcv/sn8MD8LpuMlVPuj81EOxzHMa3qDn3ekPwn6xx85ZAMcTVZUR/ZQBQO3SfpA==","signatures":[{"sig":"MEYCIQD7shEUYpHa1ZhSGG/4fhLFkirg9yrD4JMcUSgrXcp4NgIhAJprjKFeRwdZ/ujNehBz2GqHSAV91nZ9shXcP4E/NTHm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":200417},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./table":{"types":"./dist/table/index.d.ts","import":"./dist/table/index.mjs","require":"./dist/table/index.cjs"},"./buttons":{"types":"./dist/buttons/index.d.ts","import":"./dist/buttons/index.mjs","require":"./dist/buttons/index.cjs"},"./style.css":"./dist/style.css","./dialog-tabs":{"types":"./dist/dialog-tabs/index.d.ts","import":"./dist/dialog-tabs/index.mjs","require":"./dist/dialog-tabs/index.cjs"}},"gitHead":"3d536450c7429ad6f6f175904c779662f73746d3","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","docs:dev":"vite --config docs/vite.config.ts --host 0.0.0.0","typecheck":"vue-tsc -p tsconfig.build.json --noEmit","docs:build":"vite build --config docs/vite.config.ts","docs:preview":"vite preview --config docs/vite.config.ts --host 0.0.0.0"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"10.9.4","description":"Nano themed Vue 3 button, table, pagination, and dialog tab components based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"22.21.1","typesVersions":{"*":{"table":["dist/table/index.d.ts"],"buttons":["dist/buttons/index.d.ts"],"dialog-tabs":["dist/dialog-tabs/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","vue-router":"^4.4.5","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4","@element-plus/icons-vue":"2.3.2"},"peerDependencies":{"vue":"^3.5.13","vue-router":"^4.4.5","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.4.0_1785998719637_0.4959089466799331","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@cst-ui/nano-buttons","version":"0.4.1","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.4.1","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"3eece7522d822efe1df2d11b936f32e7a345d088","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.4.1.tgz","fileCount":42,"integrity":"sha512-Bo/QECrT/cX7KND9kIZUaEW628lmDBFKXXdQn/WUwKg9Mf01VyZgpAyUwYFzXREnlizbyJvgv7z6MXyCNaI4Zw==","signatures":[{"sig":"MEUCIQDs8hIbwTAmCVnqPcO1HBDhnnNodLpesyuXw30v3RDOtQIgLlqc61iGkLrK0UwGiYrUTt9KRgpAEXk8hZqGyUjmBj4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":200417},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./table":{"types":"./dist/table/index.d.ts","import":"./dist/table/index.mjs","require":"./dist/table/index.cjs"},"./buttons":{"types":"./dist/buttons/index.d.ts","import":"./dist/buttons/index.mjs","require":"./dist/buttons/index.cjs"},"./style.css":"./dist/style.css","./dialog-tabs":{"types":"./dist/dialog-tabs/index.d.ts","import":"./dist/dialog-tabs/index.mjs","require":"./dist/dialog-tabs/index.cjs"}},"gitHead":"59ff7b53363f90b09a47c111c0b1a7a8bd5849d6","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","docs:dev":"vite --config docs/vite.config.ts --host 0.0.0.0","typecheck":"vue-tsc -p tsconfig.build.json --noEmit","docs:build":"vite build --config docs/vite.config.ts","docs:preview":"vite preview --config docs/vite.config.ts --host 0.0.0.0"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"10.9.4","description":"Nano themed Vue 3 button, table, pagination, and dialog tab components based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"22.21.1","typesVersions":{"*":{"table":["dist/table/index.d.ts"],"buttons":["dist/buttons/index.d.ts"],"dialog-tabs":["dist/dialog-tabs/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","vue-router":"^4.4.5","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4","@element-plus/icons-vue":"2.3.2"},"peerDependencies":{"vue":"^3.5.13","vue-router":"^4.4.5","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.4.1_1785999920341_0.2555614348855375","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"@cst-ui/nano-buttons","version":"0.4.2","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.4.2","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"6bd1b7634d5eff2c035f790d4f99ce1bf82e2982","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.4.2.tgz","fileCount":42,"integrity":"sha512-zN7Hf8HcXJdhePdX92hUQ4ewRuOpdXkZaaFGmmOFGRyr/ATnIRMViZVU5Fo+3WZ1RFubIcjeNpyCmdHHOLMWqw==","signatures":[{"sig":"MEYCIQCaxpXDRcWgQU1OxnathBs3GqdvieJsUqvpXQI2edGGxAIhAKYCV6U6H1Iq/bhiv5MiJjzJAoKyTDMVkDOK3qlbXkkC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":200417},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./table":{"types":"./dist/table/index.d.ts","import":"./dist/table/index.mjs","require":"./dist/table/index.cjs"},"./buttons":{"types":"./dist/buttons/index.d.ts","import":"./dist/buttons/index.mjs","require":"./dist/buttons/index.cjs"},"./style.css":"./dist/style.css","./dialog-tabs":{"types":"./dist/dialog-tabs/index.d.ts","import":"./dist/dialog-tabs/index.mjs","require":"./dist/dialog-tabs/index.cjs"}},"gitHead":"78cf64fc3236672426d58025a6a42df357928c02","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","docs:dev":"vite --config docs/vite.config.ts --host 0.0.0.0","typecheck":"vue-tsc -p tsconfig.build.json --noEmit","docs:build":"vite build --config docs/vite.config.ts","docs:preview":"vite preview --config docs/vite.config.ts --host 0.0.0.0"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"10.9.4","description":"Nano themed Vue 3 button, table, pagination, and dialog tab components based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"22.21.1","typesVersions":{"*":{"table":["dist/table/index.d.ts"],"buttons":["dist/buttons/index.d.ts"],"dialog-tabs":["dist/dialog-tabs/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","vue-router":"^4.4.5","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4","@element-plus/icons-vue":"2.3.2"},"peerDependencies":{"vue":"^3.5.13","vue-router":"^4.4.5","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.4.2_1786000458960_0.10468749754239948","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@cst-ui/nano-buttons","version":"0.5.0","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.5.0","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"6801518a0955873ca1b013680bf5bc540a1e2be1","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.5.0.tgz","fileCount":44,"integrity":"sha512-PJ/h2D3jb/+wapj2JDvTLdCDvF1STCxKw77dXrwiJrou0RtKNpbss/L72ONzGs74W8JtQLYM2uwQRSnJ/uizng==","signatures":[{"sig":"MEQCIHJtd7CscAc1asIFDHkLjN1ggwuNVVDSSp4FYcC5dnNZAiBKbe22C0TXwZutPzg6RAJsE9/qLMc6PEDBvyGwjhz4DQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222828},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./table":{"types":"./dist/table/index.d.ts","import":"./dist/table/index.mjs","require":"./dist/table/index.cjs"},"./buttons":{"types":"./dist/buttons/index.d.ts","import":"./dist/buttons/index.mjs","require":"./dist/buttons/index.cjs"},"./style.css":"./dist/style.css","./dialog-tabs":{"types":"./dist/dialog-tabs/index.d.ts","import":"./dist/dialog-tabs/index.mjs","require":"./dist/dialog-tabs/index.cjs"}},"gitHead":"eb2086068a05b5868850c74d6fa1286188c4c15c","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","docs:dev":"vite --config docs/vite.config.ts --host 0.0.0.0","typecheck":"vue-tsc -p tsconfig.build.json --noEmit","docs:build":"vite build --config docs/vite.config.ts","docs:preview":"vite preview --config docs/vite.config.ts --host 0.0.0.0"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"10.9.4","description":"Nano themed Vue 3 button, table, pagination, and dialog tab components based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"22.21.1","typesVersions":{"*":{"table":["dist/table/index.d.ts"],"buttons":["dist/buttons/index.d.ts"],"dialog-tabs":["dist/dialog-tabs/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","vue-router":"^4.4.5","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4","@element-plus/icons-vue":"2.3.2"},"peerDependencies":{"vue":"^3.5.13","vue-router":"^4.4.5","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.5.0_1786003299208_0.9598913145696275","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"@cst-ui/nano-buttons","version":"0.5.1","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.5.1","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"334246e54bf4f06affa22c23b02a2c5ed0d73782","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.5.1.tgz","fileCount":44,"integrity":"sha512-evL/qM5yRCqOvdcwXnkl0RFFwgRLYu5ClUJ0e/f91hi/BSXGhjIUsZbMhKpqTPzwIK5rJ2KEckTTXnwOWaGD/g==","signatures":[{"sig":"MEUCICeNt9V/n6YuGLmX+V0nRfw6iw7xZp5iliY1W8pJqZg7AiEA+LAVahxs0Q9BU7+6KQ6x6fTj7zm/934KwsHYZPl80aA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222797},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./table":{"types":"./dist/table/index.d.ts","import":"./dist/table/index.mjs","require":"./dist/table/index.cjs"},"./buttons":{"types":"./dist/buttons/index.d.ts","import":"./dist/buttons/index.mjs","require":"./dist/buttons/index.cjs"},"./style.css":"./dist/style.css","./dialog-tabs":{"types":"./dist/dialog-tabs/index.d.ts","import":"./dist/dialog-tabs/index.mjs","require":"./dist/dialog-tabs/index.cjs"}},"gitHead":"0e52e904a3e7a197a9cfd8fe855a8b9b8f58e63b","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","docs:dev":"vite --config docs/vite.config.ts --host 0.0.0.0","typecheck":"vue-tsc -p tsconfig.build.json --noEmit","docs:build":"vite build --config docs/vite.config.ts","docs:preview":"vite preview --config docs/vite.config.ts --host 0.0.0.0"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"10.9.4","description":"Nano themed Vue 3 button, table, pagination, and dialog tab components based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"22.21.1","typesVersions":{"*":{"table":["dist/table/index.d.ts"],"buttons":["dist/buttons/index.d.ts"],"dialog-tabs":["dist/dialog-tabs/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","vue-router":"^4.4.5","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4","@element-plus/icons-vue":"2.3.2"},"peerDependencies":{"vue":"^3.5.13","vue-router":"^4.4.5","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.5.1_1786007537770_0.41603051225326104","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"@cst-ui/nano-buttons","version":"0.5.2","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.5.2","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"810f7f8227619355159dd33b848357fe7269c3da","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.5.2.tgz","fileCount":44,"integrity":"sha512-NUo6DseGWWobHTo5Lz0UldS3XZC+6iQya2g+WSfYLdIeq5J+earjHS5IJZV1r05+uQoyq1zO/u380ZoPtiEiGw==","signatures":[{"sig":"MEQCIGcj0TOaCyFUUs2BZ+TKO1rzMbuZHAJQfx81KJ3sNfpWAiBnb1ymjVEzsuA6zXRCqDOXDn61mpzIma4OvFvub8iHvg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":227918},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./table":{"types":"./dist/table/index.d.ts","import":"./dist/table/index.mjs","require":"./dist/table/index.cjs"},"./buttons":{"types":"./dist/buttons/index.d.ts","import":"./dist/buttons/index.mjs","require":"./dist/buttons/index.cjs"},"./style.css":"./dist/style.css","./dialog-tabs":{"types":"./dist/dialog-tabs/index.d.ts","import":"./dist/dialog-tabs/index.mjs","require":"./dist/dialog-tabs/index.cjs"}},"gitHead":"c892ab2351da903a3be9a6b17811859fbe95b4df","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","docs:dev":"vite --config docs/vite.config.ts --host 0.0.0.0","typecheck":"vue-tsc -p tsconfig.build.json --noEmit","docs:build":"vite build --config docs/vite.config.ts","docs:preview":"vite preview --config docs/vite.config.ts --host 0.0.0.0"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"10.9.4","description":"Nano themed Vue 3 button, table, pagination, and dialog tab components based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"22.21.1","typesVersions":{"*":{"table":["dist/table/index.d.ts"],"buttons":["dist/buttons/index.d.ts"],"dialog-tabs":["dist/dialog-tabs/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","vue-router":"^4.4.5","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4","@element-plus/icons-vue":"2.3.2"},"peerDependencies":{"vue":"^3.5.13","vue-router":"^4.4.5","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.5.2_1786073338103_0.08806695724132019","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@cst-ui/nano-buttons","version":"0.6.0","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.6.0","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"e035676bbd28c5ab1c27344d1651be4583573a64","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.6.0.tgz","fileCount":49,"integrity":"sha512-8yZioCpoeVi2b323X2nxWQZqPyc2SU3hE5EnbSEKzkF6G1eAE+NmomGf0SmeJ00UCIQ5izkfO4pVbcfJ/8ELig==","signatures":[{"sig":"MEUCIAWokh+e7/ewkv3SngMO7j2t70O9WMYWQDD1JECEhRLnAiEAsBzhbkINXnZuz9L2Bdncutnjudzn6AGFlmEKcFWDeGE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":292180},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./table":{"types":"./dist/table/index.d.ts","import":"./dist/table/index.mjs","require":"./dist/table/index.cjs"},"./buttons":{"types":"./dist/buttons/index.d.ts","import":"./dist/buttons/index.mjs","require":"./dist/buttons/index.cjs"},"./style.css":"./dist/style.css","./dialog-tabs":{"types":"./dist/dialog-tabs/index.d.ts","import":"./dist/dialog-tabs/index.mjs","require":"./dist/dialog-tabs/index.cjs"}},"gitHead":"e3ebf82b76246932d244f7705d08a796b14c0668","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","docs:dev":"vite --config docs/vite.config.ts --host 0.0.0.0","typecheck":"vue-tsc -p tsconfig.build.json --noEmit","docs:build":"vite build --config docs/vite.config.ts","docs:preview":"vite preview --config docs/vite.config.ts --host 0.0.0.0"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"10.9.4","description":"Nano themed Vue 3 button, table, pagination, and dialog tab components based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"22.21.1","typesVersions":{"*":{"table":["dist/table/index.d.ts"],"buttons":["dist/buttons/index.d.ts"],"dialog-tabs":["dist/dialog-tabs/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","vue-router":"^4.4.5","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4","@element-plus/icons-vue":"2.3.2"},"peerDependencies":{"vue":"^3.5.13","vue-router":"^4.4.5","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.6.0_1786439864882_0.5166293407806533","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"@cst-ui/nano-buttons","version":"0.6.1","license":"UNLICENSED","_id":"@cst-ui/nano-buttons@0.6.1","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"dist":{"shasum":"6d5f719692e95a19b0e3ac62c6aaeceb1dcb0d65","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.6.1.tgz","fileCount":50,"integrity":"sha512-nfG8126pSJ4OG+BEoPZZiD+KPdRH8AFJblBjLp/L4jEbNXFzN1pWA/1keepurIKYdHgS/EpeAIZKrMglqEmMqw==","signatures":[{"sig":"MEUCIQCLyyiuDB4uVja1ZNOBEs+8NSK2FODUlihiFOJPB10nPAIgc4o7XjfHEN+KdLbXSKG0XEFlLdnvc87etvySKOMLTo0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":304617},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./table":{"types":"./dist/table/index.d.ts","import":"./dist/table/index.mjs","require":"./dist/table/index.cjs"},"./buttons":{"types":"./dist/buttons/index.d.ts","import":"./dist/buttons/index.mjs","require":"./dist/buttons/index.cjs"},"./style.css":"./dist/style.css","./dialog-tabs":{"types":"./dist/dialog-tabs/index.d.ts","import":"./dist/dialog-tabs/index.mjs","require":"./dist/dialog-tabs/index.cjs"}},"gitHead":"3b28482c44889bb85fa11eee2d78bca23dddca41","scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","docs:dev":"vite --config docs/vite.config.ts --host 0.0.0.0","typecheck":"vue-tsc -p tsconfig.build.json --noEmit","docs:build":"vite build --config docs/vite.config.ts","docs:preview":"vite preview --config docs/vite.config.ts --host 0.0.0.0"},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"_npmVersion":"10.9.4","description":"Nano themed Vue 3 button, table, pagination, and dialog tab components based on Element Plus.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"22.21.1","typesVersions":{"*":{"table":["dist/table/index.d.ts"],"buttons":["dist/buttons/index.d.ts"],"dialog-tabs":["dist/dialog-tabs/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.9","vue-tsc":"2.1.6","typescript":"^5.6.3","vue-router":"^4.4.5","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4","@element-plus/icons-vue":"2.3.2"},"peerDependencies":{"vue":"^3.5.13","vue-router":"^4.4.5","element-plus":"^2.8.5"},"_npmOperationalInternal":{"tmp":"tmp/nano-buttons_0.6.1_1786502348516_0.3129898654218872","host":"s3://npm-registry-packages-npm-production"}},"0.6.2":{"name":"@cst-ui/nano-buttons","version":"0.6.2","description":"Nano themed Vue 3 button, table, pagination, and dialog tab components based on Element Plus.","license":"UNLICENSED","type":"module","main":"./dist/index.cjs","module":"./dist/index.mjs","types":"./dist/index.d.ts","typesVersions":{"*":{"dialog-tabs":["dist/dialog-tabs/index.d.ts"],"buttons":["dist/buttons/index.d.ts"],"table":["dist/table/index.d.ts"]}},"sideEffects":["*.css"],"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./buttons":{"types":"./dist/buttons/index.d.ts","import":"./dist/buttons/index.mjs","require":"./dist/buttons/index.cjs"},"./dialog-tabs":{"types":"./dist/dialog-tabs/index.d.ts","import":"./dist/dialog-tabs/index.mjs","require":"./dist/dialog-tabs/index.cjs"},"./table":{"types":"./dist/table/index.d.ts","import":"./dist/table/index.mjs","require":"./dist/table/index.cjs"},"./style.css":"./dist/style.css"},"scripts":{"build":"vite build && vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly","docs:dev":"vite --config docs/vite.config.ts --host 0.0.0.0","docs:build":"vite build --config docs/vite.config.ts","docs:preview":"vite preview --config docs/vite.config.ts --host 0.0.0.0","typecheck":"vue-tsc -p tsconfig.build.json --noEmit"},"peerDependencies":{"element-plus":"^2.8.5","vue":"^3.5.13","vue-router":"^4.4.5"},"devDependencies":{"@element-plus/icons-vue":"2.3.2","@types/node":"^18.11.3","@vitejs/plugin-vue":"^5.1.4","typescript":"^5.6.3","vite":"^5.4.9","vue-router":"^4.4.5","vue-tsc":"2.1.6"},"_id":"@cst-ui/nano-buttons@0.6.2","gitHead":"87370a5a59f9e12d2594d35d950901bc15ba77da","_nodeVersion":"22.21.1","_npmVersion":"10.9.4","dist":{"integrity":"sha512-vSti5BDj04JtpIdC1KoMzG4N2JK4Bjyn+/emSNdnkQU0VdIwD+ZqQNo6aFjZjWUFhW0w+e8TMo0FZ82svX558g==","shasum":"081b0bf7ecd3e15ba67ee585afcb7cc1345cbeea","tarball":"https://registry.npmjs.org/@cst-ui/nano-buttons/-/nano-buttons-0.6.2.tgz","fileCount":50,"unpackedSize":311442,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFhakcSOGOsD/QY//Jw6tVqmloSp6L6IMxVlIqeFS/4AAiBEdKdHmd1rpdbCPBO5+a1qMstjr/IhL4FIn2bgiZEvtA=="}]},"_npmUser":{"name":"amiyadajunpeng","email":"3312139223@qq.com"},"directories":{},"maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/nano-buttons_0.6.2_1786504344465_0.3440237873017693"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-13T07:45:04.971Z","modified":"2026-08-12T03:12:24.815Z","0.1.0":"2026-05-13T07:45:05.215Z","0.1.1":"2026-05-18T05:30:55.665Z","0.1.2":"2026-05-18T05:59:50.000Z","0.2.0":"2026-05-28T07:13:47.585Z","0.2.1":"2026-05-28T07:54:31.922Z","0.2.2":"2026-05-28T08:17:56.213Z","0.2.3":"2026-05-28T09:00:58.854Z","0.3.0":"2026-06-22T02:47:25.937Z","0.3.1":"2026-06-22T02:54:13.565Z","0.3.2":"2026-06-22T03:03:31.972Z","0.3.3":"2026-06-22T05:11:58.468Z","0.4.0":"2026-08-06T06:45:19.792Z","0.4.1":"2026-08-06T07:05:20.454Z","0.4.2":"2026-08-06T07:14:19.151Z","0.5.0":"2026-08-06T08:01:39.360Z","0.5.1":"2026-08-06T09:12:17.988Z","0.5.2":"2026-08-07T03:28:58.246Z","0.6.0":"2026-08-11T09:17:45.016Z","0.6.1":"2026-08-12T02:39:08.662Z","0.6.2":"2026-08-12T03:12:24.617Z"},"license":"UNLICENSED","description":"Nano themed Vue 3 button, table, pagination, and dialog tab components based on Element Plus.","maintainers":[{"name":"amiyadajunpeng","email":"3312139223@qq.com"}],"readme":"# @cst-ui/nano-buttons\r\n\r\nNano 项目公共前端组件库，基于 Vue 3 和 Element Plus 封装。\r\n\r\n这个包用于统一提供 Nano 系列按钮、表格、分页组件，并通过子入口提供弹窗标签页化的公共能力。模板中统一使用横线法组件名，例如 `<nano-button>`，不再保留旧命名。\r\n\r\n## 入口说明\r\n\r\n包内能力按子入口拆分，按钮、表格和弹窗标签页可以分开引入：\r\n\r\n```ts\r\n// 兼容旧按钮入口\r\nimport NanoButtons from '@cst-ui/nano-buttons'\r\n\r\n// 明确的按钮入口\r\nimport NanoButtons from '@cst-ui/nano-buttons/buttons'\r\n\r\n// 弹窗标签页入口\r\nimport { createNanoDialogTabs } from '@cst-ui/nano-buttons/dialog-tabs'\r\n\r\n// 表格与分页入口\r\nimport { CstTable, CstPagination } from '@cst-ui/nano-buttons/table'\r\n```\r\n\r\n## 在线文档\r\n\r\n组件效果、安装方式、使用示例和 API 说明见在线文档：\r\n\r\nhttps://nano-buttons-docs.netlify.app/\r\n\r\n文档站不注入 `nano.web` 或其他宿主主题变量，只加载 Element Plus 与本组件包，因此预览效果就是业务项目零主题配置安装后的默认效果。主题覆盖方式在下方对应章节单独说明，不改变在线示例的基准外观。\r\n\r\n## 安装\r\n\r\n```bash\r\npnpm add @cst-ui/nano-buttons\r\n```\r\n\r\n## 注册方式\r\n\r\n安装包只需要执行一次。按钮、表格和弹窗标签页是独立模块，可以分别注册或按需引入；公共样式只需要引入一次：\r\n\r\n```ts\r\nimport { createApp } from 'vue'\r\nimport App from './App.vue'\r\nimport NanoButtons from '@cst-ui/nano-buttons'\r\nimport CstTableComponents from '@cst-ui/nano-buttons/table'\r\nimport '@cst-ui/nano-buttons/style.css'\r\n\r\nconst app = createApp(App)\r\n\r\napp.use(NanoButtons)\r\napp.use(CstTableComponents)\r\napp.mount('#app')\r\n```\r\n\r\n按钮插件也提供明确的平级子入口，旧入口继续兼容：\r\n\r\n```ts\r\nimport NanoButtons from '@cst-ui/nano-buttons/buttons'\r\n```\r\n\r\n只使用某个表格组件时，不需要全局注册：\r\n\r\n```ts\r\nimport { CstPagination, CstTable } from '@cst-ui/nano-buttons/table'\r\n```\r\n\r\n弹窗标签页需要业务项目提供 router、registry、打开模式和 tabAdapter，具体注册方式见下方“弹窗标签页”。\r\n\r\n## 组件列表\r\n\r\n模板中统一使用横线法：\r\n\r\n```vue\r\n<nano-button />\r\n<nano-add-button />\r\n<nano-text-add-button />\r\n<nano-move-button />\r\n<nano-import-button />\r\n<nano-export-button />\r\n<nano-edit-button />\r\n<nano-manage-button />\r\n<nano-confirm-button />\r\n<nano-confirmed-button />\r\n<nano-interrupt-button />\r\n<nano-complete-button />\r\n<nano-send-button />\r\n<nano-reset-button />\r\n<nano-delete-button />\r\n<nano-freeze-button />\r\n<nano-unfreeze-button />\r\n<nano-submit-button />\r\n<nano-cancel-button />\r\n<nano-back-top-button />\r\n<cst-table />\r\n<cst-pagination />\r\n```\r\n\r\n## 使用示例\r\n\r\n固定语义按钮直接使用对应组件：\r\n\r\n```vue\r\n<nano-add-button />\r\n<nano-import-button />\r\n<nano-export-button />\r\n<nano-send-button />\r\n<nano-reset-button />\r\n<nano-confirm-button />\r\n<nano-confirmed-button />\r\n<nano-interrupt-button />\r\n<nano-complete-button />\r\n<nano-delete-button />\r\n<nano-freeze-button />\r\n<nano-unfreeze-button />\r\n<nano-submit-button>保存</nano-submit-button>\r\n<nano-cancel-button>取消</nano-cancel-button>\r\n```\r\n\r\n确认、中断、完成分别使用 Element Plus Icons 的 `Check`、`CircleClose`、`CircleCheck` 图标，并用主色、危险色、成功色区分操作语义。三个组件支持与删除按钮一致的气泡确认能力：\r\n\r\n```vue\r\n<nano-confirm-button confirm-title=\"确定确认选中记录吗？\" @confirm=\"onConfirm\">\r\n  批量确认\r\n</nano-confirm-button>\r\n<nano-interrupt-button confirm-title=\"确定中断选中记录吗？\" @confirm=\"onInterrupt\">\r\n  批量中断\r\n</nano-interrupt-button>\r\n<nano-complete-button confirm-title=\"确定完成选中记录吗？\" @confirm=\"onComplete\">\r\n  批量完成\r\n</nano-complete-button>\r\n```\r\n\r\n确认成功后，业务状态更新为已确认，并通过 `v-if / v-else` 把确认按钮切换为 `NanoConfirmedButton`。确认完成按钮保持相同的 `Check` 图标和尺寸，固定使用 success 主题禁用色且不可点击：\r\n\r\n```vue\r\n<nano-confirm-button\r\n  v-if=\"row.IS_ACK === 'N'\"\r\n  confirm-title=\"确定确认吗？\"\r\n  @confirm=\"onConfirmRow(row)\"\r\n/>\r\n<nano-confirmed-button v-else />\r\n```\r\n\r\n传入默认插槽时可用于批量操作栏：`<nano-confirmed-button>确认完成</nano-confirmed-button>`。组件的禁用文字、背景和边框跟随宿主亮暗主题变化。\r\n\r\n不传默认插槽时，三个组件仅显示图标，适合表格操作列。图标按钮内置默认 `aria-label`，业务也可以传入最终显示语义进行覆盖：\r\n\r\n```vue\r\n<nano-confirm-button aria-label=\"确认\" confirm-title=\"确定确认吗？\" @confirm=\"onConfirm\" />\r\n<nano-interrupt-button aria-label=\"中断\" confirm-title=\"确定中断吗？\" @confirm=\"onInterrupt\" />\r\n<nano-complete-button aria-label=\"完成\" confirm-title=\"确定完成吗？\" @confirm=\"onComplete\" />\r\n```\r\n\r\n发送按钮默认使用 `Promotion` 图标、主色和“发送”文案；重置按钮默认使用 `RefreshLeft` 图标、次级浅色和“重置”文案：\r\n\r\n```vue\r\n<nano-send-button @click=\"onSend\" />\r\n<nano-reset-button @click=\"onReset\" />\r\n```\r\n\r\n删除按钮默认与普通按钮一致，直接触发 `click`。传入 `confirm-title` 后会启用气泡确认，并在用户确认或取消时分别触发 `confirm`、`cancel`：\r\n\r\n```vue\r\n<nano-delete-button\r\n  :confirm-title=\"$t('common.sureDelete')\"\r\n  :confirm-button-text=\"$t('common.confirm')\"\r\n  :cancel-button-text=\"$t('common.cancel')\"\r\n  @confirm=\"onDeleteConfirm\"\r\n  @cancel=\"onDeleteCancel\"\r\n/>\r\n```\r\n\r\n`NanoConfirmButton`、`NanoInterruptButton`、`NanoCompleteButton`、`NanoDeleteButton`、`NanoFreezeButton` 和 `NanoUnfreezeButton` 都支持 `confirm-title`、`confirm-button-text`、`cancel-button-text` 以及 `confirm`、`cancel` 事件。三个文案属性接收最终显示文本，国际化由业务项目调用 `$t()` 后传入。启用确认时，业务操作应绑定 `confirm`，不要绑定 `click`。\r\n\r\n冻结按钮使用 EMS 现有的红色 `Hide` 图标样式，解冻按钮使用配套的绿色 `View` 图标样式。默认直接触发 `click`；传入 `confirm-title` 后启用确认框，并在确认时触发 `confirm`：\r\n\r\n```vue\r\n<nano-freeze-button\r\n  :confirm-title=\"$t('common.sureFreeze')\"\r\n  @confirm=\"onFreeze(row)\"\r\n/>\r\n<nano-unfreeze-button\r\n  :confirm-title=\"$t('common.sureUnfreeze')\"\r\n  @confirm=\"onUnfreeze(row)\"\r\n/>\r\n```\r\n\r\n两个组件都继承 Element Plus Button 的 `loading`、`disabled` 等属性，并支持与删除按钮相同的确认/取消文案和事件；传入默认插槽时可以显示业务文案，不传时保持表格操作列的图标按钮样式。\r\n\r\n不在固定语义里的普通按钮，统一使用 `<nano-button>`：\r\n\r\n```vue\r\n<nano-button icon=\"Refresh\">刷新</nano-button>\r\n<nano-import-button>导入</nano-import-button>\r\n<nano-export-button :loading=\"exporting\">导出</nano-export-button>\r\n```\r\n\r\n## 表格与分页\r\n\r\n`CstPagination` 是独立分页组件，只负责展示分页状态和发送变更事件，不请求接口、不处理业务数据。默认显示总数、每页条数、页码和前往指定页；服务端分页页面可以直接接入现有查询方法：\r\n\r\n```vue\r\n<CstPagination\r\n  :current-page=\"page.currentPage\"\r\n  :page-size=\"page.pageSize\"\r\n  :page-count=\"page.pageCount\"\r\n  :page-sizes=\"page.pageSizes\"\r\n  @update:current-page=\"onCurrentPageUpdate\"\r\n  @update:page-size=\"onPageSizeUpdate\"\r\n/>\r\n```\r\n\r\n分页激活态和按钮主色共同使用宿主项目的 `--color-brand-primary`。业务项目覆盖一次该 token，按钮和分页会同步跟随主题变化。\r\n\r\n按钮包内置了与 `nano.web` 一致的亮暗禁用色兜底，并且只作用于 `.nano-button`，不会改动宿主原生 Element Plus Button。宿主可以通过 `--button-disabled-text / bg / border` 覆盖通用禁用态，也可以通过 `--button-primary-disabled-*`、`--button-success-disabled-*`、`--button-warning-disabled-*`、`--button-danger-disabled-*`、`--button-info-disabled-*` 覆盖语义禁用态；`secondary`、`import`、`export` 同样支持对应的 `--button-<variant>-disabled-*`。未覆盖时使用 Nano 兜底，`html.dark` 下自动切换为暗色兜底，悬停、按下不再切换交互色。\r\n\r\n`CstTable` 组合了 Element Plus Table 和 `CstPagination`，默认对传入的完整数组做前端分页。列定义和其他表格属性继续按照 Element Plus Table 使用：\r\n\r\n```vue\r\n<CstTable\r\n  :data=\"rows\"\r\n  :default-page-size=\"10\"\r\n>\r\n  <el-table-column prop=\"name\" label=\"名称\" />\r\n  <el-table-column prop=\"status\" label=\"状态\" />\r\n</CstTable>\r\n```\r\n\r\n只需要表格、不需要分页时关闭分页：\r\n\r\n```vue\r\n<CstTable :data=\"rows\" :pagination=\"false\">\r\n  <el-table-column prop=\"name\" label=\"名称\" />\r\n</CstTable>\r\n```\r\n\r\n## 依赖说明\r\n\r\n`vue`、`element-plus` 和 `vue-router` 是 peer dependencies，需要由使用方项目提供。\r\n\r\n## 弹窗标签页\r\n\r\n弹窗标签页能力用于把原本的弹窗按开关切换成系统 tab 页，同时保留原弹窗模式。公共包只负责打开模式、上下文缓存、保存结果通知、关闭回来源页和 `NanoDialogTabPage` 页面壳；业务项目负责注册页面、请求数据和保存业务。\r\n\r\n### 入口安装\r\n\r\n在应用入口安装插件：\r\n\r\n```ts\r\nimport { createNanoDialogTabs } from '@cst-ui/nano-buttons/dialog-tabs'\r\n\r\napp.use(createNanoDialogTabs({\r\n  router,\r\n  parentRouteName: 'layout',\r\n  registry: dialogRegistry,\r\n  mode: () => DIALOG_OPEN_MODE,\r\n  translate: key => i18n.global.t(key),\r\n  tabAdapter: {\r\n    getTabs: () => tabStore.tabsOption,\r\n    getCurrentIndex: () => tabStore.currentIndex,\r\n    setCurrentIndex: index => tabStore.SET_TAB(index),\r\n    deleteTab: index => tabStore.DELETE_TAB(index),\r\n  },\r\n}))\r\n```\r\n\r\n### SqlTable 解耦接入\r\n\r\nSqlTable 等独立组件不直接导入 `dialog-tabs`。独立组件只定义 adapter 接口和注入 key，由 nano.web 在项目层导入公共包并注入实现：\r\n\r\n```ts\r\nconst {\r\n  dialogAdapter,\r\n  pageAdapter,\r\n} = createSqlTableNanoDialogAdapters({\r\n  router,\r\n  parentRouteName: 'layout',\r\n  mode: () => DIALOG_OPEN_MODE,\r\n})\r\n\r\napp.provide(sqlTableDialogAdapterKey, dialogAdapter)\r\napp.provide(sqlTableDialogPageAdapterKey, pageAdapter)\r\n```\r\n\r\n这样 SqlTable 可以独立维护和复用，nano.web 仍能为它启用弹窗 tab 化能力。\r\n\r\n### 注册页面\r\n\r\n在业务项目维护弹窗注册表：\r\n\r\n```ts\r\nexport const dialogRegistry = {\r\n  userEdit: {\r\n    suffix: '/edit',\r\n    title: 'dialog.user.edit',\r\n    component: async () => await import('@/views/user/components/edit-page.vue'),\r\n    props: {\r\n      mode: 'edit',\r\n    },\r\n  },\r\n}\r\n```\r\n\r\n### 打开弹窗或 tab\r\n\r\n原页面统一使用 `openDialog`。开关为 `dialog` 时走 `openModal`，开关为 `tab` 时打开注册页面：\r\n\r\n```ts\r\nimport { useDialogOpen } from '@cst-ui/nano-buttons/dialog-tabs'\r\n\r\nconst { openDialog } = useDialogOpen()\r\n\r\nopenDialog({\r\n  key: 'userEdit',\r\n  routeSuffix: `/edit/${row.id}`,\r\n  routePatternSuffix: '/edit/:id',\r\n  context: {\r\n    id: row.id,\r\n  },\r\n  openModal: () => {\r\n    data.showEdit = true\r\n  },\r\n})\r\n```\r\n\r\n### tab 页面\r\n\r\ntab 页面用 `NanoDialogTabPage` 统一标题、内容滚动、底部操作区和上下文失效兜底：\r\n\r\n```vue\r\n<template>\r\n  <NanoDialogTabPage\r\n    :title-key=\"pageTitleKey\"\r\n    :loading=\"loading\"\r\n    :expired=\"expired\"\r\n    @close=\"closeCurrentDialogTab\"\r\n  >\r\n    <UserEditForm\r\n      :item=\"item\"\r\n      variant=\"page\"\r\n      @cancel=\"closeCurrentDialogTab\"\r\n      @save-ok=\"onSaveOk\"\r\n    />\r\n  </NanoDialogTabPage>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { NanoDialogTabPage, useDialogPage } from '@cst-ui/nano-buttons/dialog-tabs'\r\n\r\nconst {\r\n  route,\r\n  dialogContext,\r\n  closeCurrentDialogTab,\r\n  emitSavedAndClose,\r\n} = useDialogPage<{ id?: string }>('dialog.user.edit')\r\n\r\nconst id = computed(() => dialogContext.value?.id ?? route.params.id)\r\n\r\nconst onSaveOk = () => {\r\n  emitSavedAndClose('userEdit', { id: id.value })\r\n}\r\n</script>\r\n```\r\n\r\n### 保存后刷新来源页\r\n\r\n来源页可以监听保存结果并刷新列表：\r\n\r\n```ts\r\nimport { onDialogResult } from '@cst-ui/nano-buttons/dialog-tabs'\r\n\r\nonMounted(() => {\r\n  const remove = onDialogResult((result) => {\r\n    if (result.key === 'userEdit' && result.type === 'saved')\r\n      loadList()\r\n  })\r\n\r\n  onUnmounted(remove)\r\n})\r\n```\r\n\r\n### 使用建议\r\n\r\n1. 路由上的业务主键只放可被正常访问的 ID，不放敏感数据。\r\n2. `context` 只作为临时上下文，页面刷新后可能失效，页面应提供兜底提示或根据路由主键重新查数据。\r\n3. 标题传多语言 key，不在公共模块里写死业务文案。\r\n4. 保存成功统一用 `emitSavedAndClose` 通知来源页刷新。\r\n\r\n## 维护与发布\r\n\r\n包维护、版本发布和权限交接说明见 [MAINTAINING.md](./MAINTAINING.md)。\r\n\r\n文档站本地开发：\r\n\r\n```bash\r\npnpm docs:dev\r\n```\r\n\r\n文档站构建：\r\n\r\n```bash\r\npnpm docs:build\r\n```\r\n\r\n更新线上文档时，重新构建后将 `docs-dist/` 上传到 Netlify。若 Netlify 站点或域名发生变化，请同步修改本文档中的在线文档链接。\r\n","readmeFilename":"README.md"}