{"_id":"@layoutkit/el-layoutkit","_rev":"27-28a055d8d4bff1bd169ccfc8ee609a97","name":"@layoutkit/el-layoutkit","dist-tags":{"latest":"0.1.25"},"versions":{"0.1.9":{"name":"@layoutkit/el-layoutkit","version":"0.1.9","_id":"@layoutkit/el-layoutkit@0.1.9","maintainers":[{"name":"layoutkit","email":"wangfangchano@gmail.com"}],"dist":{"shasum":"cd23961287fb3aa4462bcfaeb6e50c90d805b204","tarball":"https://registry.npmjs.org/@layoutkit/el-layoutkit/-/el-layoutkit-0.1.9.tgz","fileCount":4,"integrity":"sha512-Mo8auLi8mD3hCIqJSC3IUcIXLNVqBn1riHkVmP7ftlkyLiQmrS/d9fgQDRtBkCYko5LpluVcPEujmtt2nToNvg==","signatures":[{"sig":"MEUCIANwqaKstCwdlGvVpiLX6hFvSp2si070wQv/ZoFxMLm3AiEA5mgGOcK/fRgHZse4WroyQws/VE7m1+LnOHjZDOAH5Zk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":309426},"main":"dist/el-layoutkit.cjs.js","type":"module","module":"dist/el-layoutkit.es.js","exports":{".":{"import":"./dist/el-layoutkit.es.js","require":"./dist/el-layoutkit.cjs.js"}},"scripts":{"dev":"vite","build":"vite build","clean":"rm -rf dist"},"_npmUser":{"name":"layoutkit","email":"wangfangchano@gmail.com"},"_npmVersion":"10.9.2","directories":{},"_nodeVersion":"22.15.0","dependencies":{"crypto-js":"^4.2.0","@layoutkit/el-layoutkit":"^0.1.4"},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.63.0","vite":"^5.0.0","@vitejs/plugin-vue":"^5.0.0","@vitejs/plugin-vue-jsx":"^5.0.0"},"peerDependencies":{"vue":"^3.2.0","element-plus":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/el-layoutkit_0.1.9_1764223140148_0.8825555877991411","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"@layoutkit/el-layoutkit","version":"0.1.10","_id":"@layoutkit/el-layoutkit@0.1.10","maintainers":[{"name":"layoutkit","email":"wangfangchano@gmail.com"}],"dist":{"shasum":"96c90e9083802f209d711f83c46f226a4df7f544","tarball":"https://registry.npmjs.org/@layoutkit/el-layoutkit/-/el-layoutkit-0.1.10.tgz","fileCount":4,"integrity":"sha512-qheFercmvDvzOBLzWCf1FVFGIcSR1lEO65w/gbzxBFDE08Gl+iTkcMBOaCftGkrpyUps+B/tj7uRagFa9h+aXg==","signatures":[{"sig":"MEUCIQD2oWRr5Zqwdy7pxi8LKhtV4M16kgF3mWvO9u2g9ritgQIgZwC2HnWYFe/pZhPg/EBU0QzwLIf610Gg7ceVQotmhIk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":309335},"main":"dist/el-layoutkit.cjs.js","type":"module","module":"dist/el-layoutkit.es.js","exports":{".":{"import":"./dist/el-layoutkit.es.js","require":"./dist/el-layoutkit.cjs.js"}},"scripts":{"dev":"vite","build":"vite build","clean":"rm -rf dist"},"_npmUser":{"name":"layoutkit","email":"wangfangchano@gmail.com"},"_npmVersion":"10.9.2","directories":{},"_nodeVersion":"22.15.0","dependencies":{"crypto-js":"^4.2.0","@layoutkit/el-layoutkit":"^0.1.4"},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.63.0","vite":"^5.0.0","@vitejs/plugin-vue":"^5.0.0","@vitejs/plugin-vue-jsx":"^5.0.0"},"peerDependencies":{"vue":"^3.2.0","element-plus":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/el-layoutkit_0.1.10_1764225780078_0.9425202285656953","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"@layoutkit/el-layoutkit","version":"0.1.11","_id":"@layoutkit/el-layoutkit@0.1.11","maintainers":[{"name":"layoutkit","email":"wangfangchano@gmail.com"}],"dist":{"shasum":"ffa348248e7d60e296822a20303475673092d9de","tarball":"https://registry.npmjs.org/@layoutkit/el-layoutkit/-/el-layoutkit-0.1.11.tgz","fileCount":4,"integrity":"sha512-PnY8+ALnyq9V1/1zHp8Gdl6VIlzgFGvNKp52DpUtVAOx+JMb6jUEJ2aHStdtvKPtNhgnMgj54cuZMW4jI3H+2Q==","signatures":[{"sig":"MEUCIQCAyInaOkiJMhBS3sg6FWvRPDGTyeMvMUV82Ab95euuHwIgQBxNyk/5oalWNf8F07jdSggpKD1pysbo3Dd8wt6Tglg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":309459},"main":"dist/el-layoutkit.cjs.js","type":"module","module":"dist/el-layoutkit.es.js","exports":{".":{"import":"./dist/el-layoutkit.es.js","require":"./dist/el-layoutkit.cjs.js"}},"scripts":{"dev":"vite","build":"vite build","clean":"rm -rf dist"},"_npmUser":{"name":"layoutkit","email":"wangfangchano@gmail.com"},"_npmVersion":"10.9.2","directories":{},"_nodeVersion":"22.15.0","dependencies":{"crypto-js":"^4.2.0","@layoutkit/el-layoutkit":"^0.1.4"},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.63.0","vite":"^5.0.0","@vitejs/plugin-vue":"^5.0.0","@vitejs/plugin-vue-jsx":"^5.0.0"},"peerDependencies":{"vue":"^3.2.0","element-plus":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/el-layoutkit_0.1.11_1764230857257_0.04462066495386452","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"@layoutkit/el-layoutkit","version":"0.1.12","_id":"@layoutkit/el-layoutkit@0.1.12","maintainers":[{"name":"layoutkit","email":"wangfangchano@gmail.com"}],"dist":{"shasum":"3ebee305fff1cb8f252bace2a7a1ee7c45470d66","tarball":"https://registry.npmjs.org/@layoutkit/el-layoutkit/-/el-layoutkit-0.1.12.tgz","fileCount":4,"integrity":"sha512-nGtQjALv5zAus9xFkV1nJJBJIXWjcfIbfOly7FPA1V+wTTVfvl2s63p6WsRcU94yBXKydYM6AUcwpAY5349KtA==","signatures":[{"sig":"MEUCIQDhbB+AVEC8bEnTPFt6f24I2f1I5HgUsqB3H/xm0xCsrQIgXAYjpeQ36PzubUkj826ufD/vH2cgTV5g8lZsCiROBfg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":309417},"main":"dist/el-layoutkit.cjs.js","type":"module","module":"dist/el-layoutkit.es.js","exports":{".":{"import":"./dist/el-layoutkit.es.js","require":"./dist/el-layoutkit.cjs.js"}},"scripts":{"dev":"vite","build":"vite build","clean":"rm -rf dist"},"_npmUser":{"name":"layoutkit","email":"wangfangchano@gmail.com"},"_npmVersion":"10.9.2","directories":{},"_nodeVersion":"22.15.0","dependencies":{"crypto-js":"^4.2.0","@layoutkit/el-layoutkit":"^0.1.4"},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.63.0","vite":"^5.0.0","@vitejs/plugin-vue":"^5.0.0","@vitejs/plugin-vue-jsx":"^5.0.0"},"peerDependencies":{"vue":"^3.2.0","element-plus":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/el-layoutkit_0.1.12_1764230918182_0.5938804480509439","host":"s3://npm-registry-packages-npm-production"}},"0.1.13":{"name":"@layoutkit/el-layoutkit","version":"0.1.13","_id":"@layoutkit/el-layoutkit@0.1.13","maintainers":[{"name":"layoutkit","email":"wangfangchano@gmail.com"}],"dist":{"shasum":"3869cab9e5de3bc4a83d74fbc8574a5420bbcc7c","tarball":"https://registry.npmjs.org/@layoutkit/el-layoutkit/-/el-layoutkit-0.1.13.tgz","fileCount":5,"integrity":"sha512-31xtO+Hp6uzwo30oLw8lbuITWo3sJ+yPPjp29XmgcgoI60qtpR4gCWG777bKbZUo84U7kjdWcRtWmS16xwBQqg==","signatures":[{"sig":"MEQCICahqtJv6WFXOBcPROBMGmcy1jfMdi8WezJrJlEIbjJEAiAR9JgmztdFRXRo75UkhL3EhZfla00ByAuE7TX3cxEH6w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":325023},"main":"dist/el-layoutkit.cjs.js","type":"module","module":"dist/el-layoutkit.es.js","exports":{".":{"import":"./dist/el-layoutkit.es.js","require":"./dist/el-layoutkit.cjs.js"}},"gitHead":"7547abb1802271a474f80e265b4bcd20dcd9e76b","scripts":{"dev":"vite","build":"vite build","clean":"rm -rf dist"},"_npmUser":{"name":"layoutkit","email":"wangfangchano@gmail.com"},"_npmVersion":"10.9.2","description":"`@layoutkit/el-layoutkit` 是一个基于elementplus ui的工厂函数，用于生成页面基础配置对象，提供表格、表单、对话框、工具栏、消息提示等功能，常用于后台管理系统页面。","directories":{},"_nodeVersion":"22.15.0","dependencies":{"crypto-js":"^4.2.0","@layoutkit/el-layoutkit":"^0.1.4"},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.63.0","vite":"^5.0.0","@vitejs/plugin-vue":"^5.0.0","@vitejs/plugin-vue-jsx":"^5.0.0"},"peerDependencies":{"vue":"^3.2.0","element-plus":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/el-layoutkit_0.1.13_1764662003641_0.7660681685828443","host":"s3://npm-registry-packages-npm-production"}},"0.1.14":{"name":"@layoutkit/el-layoutkit","version":"0.1.14","_id":"@layoutkit/el-layoutkit@0.1.14","maintainers":[{"name":"layoutkit","email":"wangfangchano@gmail.com"}],"dist":{"shasum":"27635af6e32e7acac891e09944dd7997bd1ed77a","tarball":"https://registry.npmjs.org/@layoutkit/el-layoutkit/-/el-layoutkit-0.1.14.tgz","fileCount":5,"integrity":"sha512-Eyfcs/tAe8H5tUZhcvYoZO6oig+CG+LF3LfUrqhTsWDgbSDZWwKYGdRlTY4a6QbEi94GHSgnaGMvM4qCHB+hCQ==","signatures":[{"sig":"MEUCIQD7we60nvIDir9NbipJYdKkYD6NwzhDdQUrtdQd8q++BAIgFB8gFloainMmUe/wo8f43mVVLo0re7ixcXCcvgTKVHM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":324763},"main":"dist/el-layoutkit.cjs.js","type":"module","module":"dist/el-layoutkit.es.js","exports":{".":{"import":"./dist/el-layoutkit.es.js","require":"./dist/el-layoutkit.cjs.js"}},"gitHead":"7547abb1802271a474f80e265b4bcd20dcd9e76b","scripts":{"dev":"vite","build":"vite build","clean":"rm -rf dist"},"_npmUser":{"name":"layoutkit","email":"wangfangchano@gmail.com"},"_npmVersion":"10.9.2","description":"`@layoutkit/el-layoutkit` 是一个基于elementplus ui的工厂函数，用于生成页面基础配置对象，提供表格、表单、对话框、工具栏、消息提示等功能，常用于后台管理系统页面。","directories":{},"_nodeVersion":"22.15.0","dependencies":{"crypto-js":"^4.2.0","@layoutkit/el-layoutkit":"^0.1.4"},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.63.0","vite":"^5.0.0","@vitejs/plugin-vue":"^5.0.0","@vitejs/plugin-vue-jsx":"^5.0.0"},"peerDependencies":{"vue":"^3.2.0","element-plus":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/el-layoutkit_0.1.14_1764663953744_0.9032154508456895","host":"s3://npm-registry-packages-npm-production"}},"0.1.15":{"name":"@layoutkit/el-layoutkit","version":"0.1.15","_id":"@layoutkit/el-layoutkit@0.1.15","maintainers":[{"name":"layoutkit","email":"wangfangchano@gmail.com"}],"dist":{"shasum":"723cbfe1716106622ca3385ca74eb46bd61bea5f","tarball":"https://registry.npmjs.org/@layoutkit/el-layoutkit/-/el-layoutkit-0.1.15.tgz","fileCount":5,"integrity":"sha512-+TxdMtSjttPklmOlaHpVBqb+OOoaIW9+MOLAQEOUUajT0VawcxnY59ttv7OIxuYpTd+uO/4DK7rSxrL69RmyVw==","signatures":[{"sig":"MEUCIQDROtRlppxEhZue8eRxDHyo6d7tc/Uv4mSlcUC1kMhfEwIgFdJQC/7qQ6CdwCung5ukA+4FEGBepwa5yuOlJbFMwY4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":330170},"main":"dist/el-layoutkit.cjs.js","type":"module","module":"dist/el-layoutkit.es.js","exports":{".":{"import":"./dist/el-layoutkit.es.js","require":"./dist/el-layoutkit.cjs.js"}},"gitHead":"7547abb1802271a474f80e265b4bcd20dcd9e76b","scripts":{"dev":"vite","build":"vite build","clean":"rm -rf dist"},"_npmUser":{"name":"layoutkit","email":"wangfangchano@gmail.com"},"_npmVersion":"10.9.2","description":"`@layoutkit/el-layoutkit` 是一个基于elementplus ui的工厂函数，用于生成页面基础配置对象，提供表格、表单、对话框、工具栏、消息提示等功能，常用于后台管理系统页面。","directories":{},"_nodeVersion":"22.15.0","dependencies":{"crypto-js":"^4.2.0","@layoutkit/el-layoutkit":"^0.1.4"},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.63.0","vite":"^5.0.0","@vitejs/plugin-vue":"^5.0.0","@vitejs/plugin-vue-jsx":"^5.0.0"},"peerDependencies":{"vue":"^3.2.0","element-plus":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/el-layoutkit_0.1.15_1764828387643_0.887035961007894","host":"s3://npm-registry-packages-npm-production"}},"0.1.16":{"name":"@layoutkit/el-layoutkit","version":"0.1.16","_id":"@layoutkit/el-layoutkit@0.1.16","maintainers":[{"name":"layoutkit","email":"wangfangchano@gmail.com"}],"dist":{"shasum":"aad4d492def2c6e86998bd6b0ef1799bafecf721","tarball":"https://registry.npmjs.org/@layoutkit/el-layoutkit/-/el-layoutkit-0.1.16.tgz","fileCount":5,"integrity":"sha512-JOjVuH/qrH/DU1GI17poAGuErylJ+kl1Vu0gHuizW1Io708EqWXdNj0tifuuYn40/E7SOhcksdeZ99GBZ+KbkQ==","signatures":[{"sig":"MEQCIBXsrVMf75N3KX/AFKu4/V2NOmu9kcWZyfZZgla9PxIuAiAihlZnkFFxSRnoO+MgQTnCDoVJsNBCbErsbUzMdb060Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":334602},"main":"dist/el-layoutkit.cjs.js","type":"module","module":"dist/el-layoutkit.es.js","exports":{".":{"import":"./dist/el-layoutkit.es.js","require":"./dist/el-layoutkit.cjs.js"}},"gitHead":"229bb2ff53a7d0a82ea37d1b60fc08f16d001940","scripts":{"dev":"vite","build":"vite build","clean":"rm -rf dist"},"_npmUser":{"name":"layoutkit","email":"wangfangchano@gmail.com"},"_npmVersion":"10.9.2","description":"`@layoutkit/el-layoutkit` 是一个基于elementplus ui的工厂函数，用于生成页面基础配置对象，提供表格、表单、对话框、工具栏、消息提示等功能，常用于后台管理系统页面。","directories":{},"_nodeVersion":"22.15.0","dependencies":{"crypto-js":"^4.2.0","@layoutkit/el-layoutkit":"^0.1.4"},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.63.0","vite":"^5.0.0","@vitejs/plugin-vue":"^5.0.0","@vitejs/plugin-vue-jsx":"^5.0.0"},"peerDependencies":{"vue":"^3.2.0","element-plus":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/el-layoutkit_0.1.16_1764836677560_0.9948971569606238","host":"s3://npm-registry-packages-npm-production"}},"0.1.17":{"name":"@layoutkit/el-layoutkit","version":"0.1.17","_id":"@layoutkit/el-layoutkit@0.1.17","maintainers":[{"name":"layoutkit","email":"wangfangchano@gmail.com"}],"dist":{"shasum":"1ae9069ae39249ce00b3c0e9a7a90a88b5f87bca","tarball":"https://registry.npmjs.org/@layoutkit/el-layoutkit/-/el-layoutkit-0.1.17.tgz","fileCount":5,"integrity":"sha512-ot9eCJmhAR9LpXewV/TPIk+tnSjJyNixSrqAOQDBxQNuRGmaG5UtdbLXMB373AIvwLn/FcnD4I+/2vXS/66OQw==","signatures":[{"sig":"MEYCIQDuEQ2ywIbih2tzWHE0UV3pkN1aOglL6rWOJsXUJcxg7QIhAIfyKrj57DMnkKerGr1dq8l4SlnSEVB+nSSveH+Z+23q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":334683},"main":"dist/el-layoutkit.cjs.js","type":"module","module":"dist/el-layoutkit.es.js","exports":{".":{"import":"./dist/el-layoutkit.es.js","require":"./dist/el-layoutkit.cjs.js"}},"gitHead":"229bb2ff53a7d0a82ea37d1b60fc08f16d001940","scripts":{"dev":"vite","build":"vite build","clean":"rm -rf dist"},"_npmUser":{"name":"layoutkit","email":"wangfangchano@gmail.com"},"_npmVersion":"10.9.2","description":"`@layoutkit/el-layoutkit` 是一个基于elementplus ui的工厂函数，用于生成页面基础配置对象，提供表格、表单、对话框、工具栏、消息提示等功能，常用于后台管理系统页面。","directories":{},"_nodeVersion":"22.15.0","dependencies":{"crypto-js":"^4.2.0","@layoutkit/el-layoutkit":"^0.1.4"},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.63.0","vite":"^5.0.0","@vitejs/plugin-vue":"^5.0.0","@vitejs/plugin-vue-jsx":"^5.0.0"},"peerDependencies":{"vue":"^3.2.0","element-plus":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/el-layoutkit_0.1.17_1764914003536_0.8659302106475881","host":"s3://npm-registry-packages-npm-production"}},"0.1.18":{"name":"@layoutkit/el-layoutkit","version":"0.1.18","_id":"@layoutkit/el-layoutkit@0.1.18","maintainers":[{"name":"layoutkit","email":"wangfangchano@gmail.com"}],"dist":{"shasum":"dd0b1da9661eef42d83a6f3c6f7275792da6fa56","tarball":"https://registry.npmjs.org/@layoutkit/el-layoutkit/-/el-layoutkit-0.1.18.tgz","fileCount":5,"integrity":"sha512-I01viPMRF1UrmEOfnvQRihOW1BuoaV+8+KjRbuFoP4iuLhVcnRLIEPqBwqRqfnYC1bCdKM7aHf5AtCQdLwVJuQ==","signatures":[{"sig":"MEUCIQDhodbbYq37oN3z0CCQ6AFRDUPXY7H1KP+H6ZAmyblanAIgDMTc+DuMA8za6c51S4B366q4LRWra1I4oMNKBRVtTIw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":335685},"main":"dist/el-layoutkit.cjs.js","type":"module","module":"dist/el-layoutkit.es.js","exports":{".":{"import":"./dist/el-layoutkit.es.js","require":"./dist/el-layoutkit.cjs.js"}},"gitHead":"eeadc1a8aa0c09139915a0aba57752bfa93be316","scripts":{"dev":"vite","build":"vite build","clean":"rm -rf dist"},"_npmUser":{"name":"layoutkit","email":"wangfangchano@gmail.com"},"_npmVersion":"10.9.2","description":"`@layoutkit/el-layoutkit` 是一个基于elementplus ui的工厂函数，用于生成页面基础配置对象，提供表格、表单、对话框、工具栏、消息提示等功能，常用于后台管理系统页面。","directories":{},"_nodeVersion":"22.15.0","dependencies":{"crypto-js":"^4.2.0","@layoutkit/el-layoutkit":"^0.1.4"},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.63.0","vite":"^5.0.0","@vitejs/plugin-vue":"^5.0.0","@vitejs/plugin-vue-jsx":"^5.0.0"},"peerDependencies":{"vue":"^3.2.0","element-plus":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/el-layoutkit_0.1.18_1765177948845_0.9557130168208376","host":"s3://npm-registry-packages-npm-production"}},"0.1.19":{"name":"@layoutkit/el-layoutkit","version":"0.1.19","_id":"@layoutkit/el-layoutkit@0.1.19","maintainers":[{"name":"layoutkit","email":"wangfangchano@gmail.com"}],"dist":{"shasum":"9f390bbb5b0cc9ec4bfaeca82058133e899861ed","tarball":"https://registry.npmjs.org/@layoutkit/el-layoutkit/-/el-layoutkit-0.1.19.tgz","fileCount":5,"integrity":"sha512-qoWUc+QbhvN52awkfWabWv6/KfXvLZBWONfF0MBcBwycVps3AnyaVjxGQUqSiq4Ai4fQ0Kjxiy7AQudyFjqZyQ==","signatures":[{"sig":"MEYCIQCgbLTupmTnoa96vUEDCNPNPcv4iBVtgxVfI2SvaMIayQIhAJGhs3A8K0T84L1979s2Fnu0DRe8iOKh0VbN/SQi/YBk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":335238},"main":"dist/el-layoutkit.cjs.js","type":"module","module":"dist/el-layoutkit.es.js","exports":{".":{"import":"./dist/el-layoutkit.es.js","require":"./dist/el-layoutkit.cjs.js"}},"gitHead":"54131c69989122ef570543eb9f8fc0faca7720d3","scripts":{"dev":"vite","build":"vite build","clean":"rm -rf dist"},"_npmUser":{"name":"layoutkit","email":"wangfangchano@gmail.com"},"_npmVersion":"10.9.2","description":"`@layoutkit/el-layoutkit` 是一个基于elementplus ui的工厂函数，用于生成页面基础配置对象，提供表格、表单、对话框、工具栏、消息提示等功能，常用于后台管理系统页面。","directories":{},"_nodeVersion":"22.15.0","dependencies":{"crypto-js":"^4.2.0"},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.63.0","vite":"^5.0.0","@vitejs/plugin-vue":"^5.0.0","@vitejs/plugin-vue-jsx":"^5.0.0"},"peerDependencies":{"vue":"^3.2.0","element-plus":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/el-layoutkit_0.1.19_1765439325632_0.7539535635574555","host":"s3://npm-registry-packages-npm-production"}},"0.1.20":{"name":"@layoutkit/el-layoutkit","version":"0.1.20","_id":"@layoutkit/el-layoutkit@0.1.20","maintainers":[{"name":"layoutkit","email":"wangfangchano@gmail.com"}],"dist":{"shasum":"49e5c1c531259f6f84c1c924dbc713a73ce20072","tarball":"https://registry.npmjs.org/@layoutkit/el-layoutkit/-/el-layoutkit-0.1.20.tgz","fileCount":5,"integrity":"sha512-S5eMNxlIfaqd/Z9gNugv020l5oIo2zivs+4UKLsWKCvDGfXe2TJPKPFk3odwy7toXeKr8yXkP8AMh3paNPo1rQ==","signatures":[{"sig":"MEYCIQDXqiOVGWLeM938BCj02xdjK4L/irr50Oxcjt0l0botLwIhAMacnKdXnvpGJ9HDsvlGljaBODB+9zlqOmsCrJWyqP2S","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":335241},"main":"dist/el-layoutkit.cjs.js","type":"module","module":"dist/el-layoutkit.es.js","exports":{".":{"import":"./dist/el-layoutkit.es.js","require":"./dist/el-layoutkit.cjs.js"}},"gitHead":"54131c69989122ef570543eb9f8fc0faca7720d3","scripts":{"dev":"vite","build":"vite build","clean":"rm -rf dist"},"_npmUser":{"name":"layoutkit","email":"wangfangchano@gmail.com"},"_npmVersion":"10.9.2","description":"`@layoutkit/el-layoutkit` 是一个基于elementplus ui的工厂函数，用于生成页面基础配置对象，提供表格、表单、对话框、工具栏、消息提示等功能，常用于后台管理系统页面。","directories":{},"_nodeVersion":"22.15.0","dependencies":{"crypto-js":"^4.2.0"},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.63.0","vite":"^5.0.0","@vitejs/plugin-vue":"^5.0.0","@vitejs/plugin-vue-jsx":"^5.0.0"},"peerDependencies":{"vue":"^3.2.0","element-plus":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/el-layoutkit_0.1.20_1765444625532_0.041414001221880214","host":"s3://npm-registry-packages-npm-production"}},"0.1.21":{"name":"@layoutkit/el-layoutkit","version":"0.1.21","_id":"@layoutkit/el-layoutkit@0.1.21","maintainers":[{"name":"layoutkit","email":"wangfangchano@gmail.com"}],"dist":{"shasum":"09014bbbf4a492ade701010422b89514607d8d73","tarball":"https://registry.npmjs.org/@layoutkit/el-layoutkit/-/el-layoutkit-0.1.21.tgz","fileCount":5,"integrity":"sha512-WrhkgTLH+pVpm8c593/dL45qOPTyO8kG/8EeAA+w4cs1Jrn6oEXmznkLJ0px1WLRLBTFydTNKVR0vn1otSgiaQ==","signatures":[{"sig":"MEQCID3d+rwrXrBlSWG1f71RVFY5t6TNgL/RimvnH/l/efstAiAdEFMNkgq2gdj4E/CdW5EMvksuCYa3SF4pxg5rjCPJEw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":336004},"main":"dist/el-layoutkit.cjs.js","type":"module","module":"dist/el-layoutkit.es.js","exports":{".":{"import":"./dist/el-layoutkit.es.js","require":"./dist/el-layoutkit.cjs.js"}},"gitHead":"54131c69989122ef570543eb9f8fc0faca7720d3","scripts":{"dev":"vite","build":"vite build","clean":"rm -rf dist"},"_npmUser":{"name":"layoutkit","email":"wangfangchano@gmail.com"},"_npmVersion":"10.9.2","description":"`@layoutkit/el-layoutkit` 是一个基于elementplus ui的工厂函数，用于生成页面基础配置对象，提供表格、表单、对话框、工具栏、消息提示等功能，常用于后台管理系统页面。","directories":{},"_nodeVersion":"22.15.0","dependencies":{"crypto-js":"^4.2.0"},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.63.0","vite":"^5.0.0","@vitejs/plugin-vue":"^5.0.0","@vitejs/plugin-vue-jsx":"^5.0.0"},"peerDependencies":{"vue":"^3.2.0","element-plus":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/el-layoutkit_0.1.21_1765522680662_0.9937218128301284","host":"s3://npm-registry-packages-npm-production"}},"0.1.22":{"name":"@layoutkit/el-layoutkit","version":"0.1.22","_id":"@layoutkit/el-layoutkit@0.1.22","maintainers":[{"name":"layoutkit","email":"wangfangchano@gmail.com"}],"dist":{"shasum":"77692aec8d4b4658390b0d8897f3e723e3c976f6","tarball":"https://registry.npmjs.org/@layoutkit/el-layoutkit/-/el-layoutkit-0.1.22.tgz","fileCount":5,"integrity":"sha512-CaWaKNfMR+kgbPT5xizRmln5NJNvzt0bdlSFXYVITx3qJxmHwOTK60lwgEK+k00pykD9jq9ZzvtHQ4mvHAlJ/Q==","signatures":[{"sig":"MEUCIQCbpzKyiJhQqrEkjPUo2XUTj/k2K7SKrQNeLpXgiYvs1AIgcTKcNAKUyjLuStmuSUVM5Lyu82++QbYxgyaeRU8aqUc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":336308},"main":"dist/el-layoutkit.cjs.js","type":"module","module":"dist/el-layoutkit.es.js","exports":{".":{"import":"./dist/el-layoutkit.es.js","require":"./dist/el-layoutkit.cjs.js"}},"gitHead":"631ef61c08d6af0377365cbe55c3274f6cb234fd","scripts":{"dev":"vite","build":"vite build","clean":"rm -rf dist"},"_npmUser":{"name":"layoutkit","email":"wangfangchano@gmail.com"},"_npmVersion":"10.9.2","description":"`@layoutkit/el-layoutkit` 是一个基于elementplus ui的工厂函数，用于生成页面基础配置对象，提供表格、表单、对话框、工具栏、消息提示等功能，常用于后台管理系统页面。","directories":{},"_nodeVersion":"22.15.0","dependencies":{"crypto-js":"^4.2.0"},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.63.0","vite":"^5.0.0","@vitejs/plugin-vue":"^5.0.0","@vitejs/plugin-vue-jsx":"^5.0.0"},"peerDependencies":{"vue":"^3.2.0","element-plus":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/el-layoutkit_0.1.22_1765782434151_0.3538959415800902","host":"s3://npm-registry-packages-npm-production"}},"0.1.23":{"name":"@layoutkit/el-layoutkit","version":"0.1.23","_id":"@layoutkit/el-layoutkit@0.1.23","maintainers":[{"name":"layoutkit","email":"wangfangchano@gmail.com"}],"dist":{"shasum":"bed3a23e6ddf3ee413aa8e9e5ee418c410e6ebbd","tarball":"https://registry.npmjs.org/@layoutkit/el-layoutkit/-/el-layoutkit-0.1.23.tgz","fileCount":5,"integrity":"sha512-g+JRP0RC4PnK4rBtNIAdnuXbHkqMfgShkkv+UFbdQ2jPl1A/CWd1DvbOvaoBm7XOdSqkCDqGgGsTbS0ogY59SA==","signatures":[{"sig":"MEYCIQC+UlA4il3BFtnoJwSmfJM7PZe1gWSz6z++yH6ZS4hBvgIhAMhXb7AUcJx4c0zYdCm+VybknakU1G9VZlY0Dlpjuk6+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":336437},"main":"dist/el-layoutkit.cjs.js","type":"module","module":"dist/el-layoutkit.es.js","exports":{".":{"import":"./dist/el-layoutkit.es.js","require":"./dist/el-layoutkit.cjs.js"}},"gitHead":"9bc5e167a57246382c64d694049389141b7726c2","scripts":{"dev":"vite","build":"vite build","clean":"rm -rf dist"},"_npmUser":{"name":"layoutkit","email":"wangfangchano@gmail.com"},"_npmVersion":"10.9.2","description":"`@layoutkit/el-layoutkit` 是一个基于elementplus ui的工厂函数，用于生成页面基础配置对象，提供表格、表单、对话框、工具栏、消息提示等功能，常用于后台管理系统页面。","directories":{},"_nodeVersion":"22.15.0","dependencies":{"crypto-js":"^4.2.0"},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.63.0","vite":"^5.0.0","@vitejs/plugin-vue":"^5.0.0","@vitejs/plugin-vue-jsx":"^5.0.0"},"peerDependencies":{"vue":"^3.2.0","element-plus":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/el-layoutkit_0.1.23_1765873828390_0.5836606731698182","host":"s3://npm-registry-packages-npm-production"}},"0.1.24":{"name":"@layoutkit/el-layoutkit","version":"0.1.24","_id":"@layoutkit/el-layoutkit@0.1.24","maintainers":[{"name":"layoutkit","email":"wangfangchano@gmail.com"}],"dist":{"shasum":"4d7eabf272de98d41b579c0d6f1d08daa9a1ad6b","tarball":"https://registry.npmjs.org/@layoutkit/el-layoutkit/-/el-layoutkit-0.1.24.tgz","fileCount":5,"integrity":"sha512-y7do/KN8RN6HZT5K8fnY9hzKW4bk2SCtXnv/qtubpPffsmIEANGRGer94yaGlaGpA6hPIj07x1IcZIELVAOx6w==","signatures":[{"sig":"MEUCIQCjqz8QE5GgeWZGyGnVqzf6s/kS+jdzajpPmGhuVowZPwIgDNoHTCAtwx0gX1a/sK0WnnrRakdc2qcn6j84h4G071o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":336457},"main":"dist/el-layoutkit.cjs.js","type":"module","module":"dist/el-layoutkit.es.js","exports":{".":{"import":"./dist/el-layoutkit.es.js","require":"./dist/el-layoutkit.cjs.js"}},"gitHead":"d81b5c3b1dede46a7296e3a1419e6862289c5d5e","scripts":{"dev":"vite","build":"vite build","clean":"rm -rf dist"},"_npmUser":{"name":"layoutkit","email":"wangfangchano@gmail.com"},"_npmVersion":"10.9.2","description":"`@layoutkit/el-layoutkit` 是一个基于elementplus ui的工厂函数，用于生成页面基础配置对象，提供表格、表单、对话框、工具栏、消息提示等功能，常用于后台管理系统页面。","directories":{},"_nodeVersion":"22.15.0","dependencies":{"crypto-js":"^4.2.0"},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.63.0","vite":"^5.0.0","@vitejs/plugin-vue":"^5.0.0","@vitejs/plugin-vue-jsx":"^5.0.0"},"peerDependencies":{"vue":"^3.2.0","element-plus":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/el-layoutkit_0.1.24_1765874812569_0.8369953284588374","host":"s3://npm-registry-packages-npm-production"}},"0.1.25":{"name":"@layoutkit/el-layoutkit","version":"0.1.25","main":"dist/el-layoutkit.cjs.js","module":"dist/el-layoutkit.es.js","type":"module","exports":{".":{"import":"./dist/el-layoutkit.es.js","require":"./dist/el-layoutkit.cjs.js"}},"scripts":{"dev":"vite","build":"vite build","clean":"rm -rf dist"},"peerDependencies":{"element-plus":"^2.3.0","vue":"^3.2.0"},"devDependencies":{"@vitejs/plugin-vue":"^5.0.0","@vitejs/plugin-vue-jsx":"^5.0.0","sass":"^1.63.0","vite":"^5.0.0"},"dependencies":{"crypto-js":"^4.2.0"},"_id":"@layoutkit/el-layoutkit@0.1.25","gitHead":"d81b5c3b1dede46a7296e3a1419e6862289c5d5e","description":"`@layoutkit/el-layoutkit` 是一个基于elementplus ui的工厂函数，用于生成页面基础配置对象，提供表格、表单、对话框、工具栏、消息提示等功能，常用于后台管理系统页面。","_nodeVersion":"22.15.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-lvw4qVZAbMEb6E/S3gxucw659Bt15+c+Aj3XVvRPbH0rXMt9U2EnNc8LPLbV5BO5trJ+0i02Bt6clyzh23h/iA==","shasum":"811a47f38252401b5dac21839420b2fa2bac4f79","tarball":"https://registry.npmjs.org/@layoutkit/el-layoutkit/-/el-layoutkit-0.1.25.tgz","fileCount":5,"unpackedSize":336924,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCpT2PD/4xl3yeEILVN8JMfeKGr8t8ASH6YCw8plSemNQIgP+9X8K950k0DTsWjRvmQhLSQW1IB+lB6WeWS6rMizdw="}]},"_npmUser":{"name":"layoutkit","email":"wangfangchano@gmail.com"},"directories":{},"maintainers":[{"name":"layoutkit","email":"wangfangchano@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/el-layoutkit_0.1.25_1766037167442_0.6872942316425099"},"_hasShrinkwrap":false}},"time":{"created":"2025-11-27T05:59:00.075Z","modified":"2025-12-18T05:52:47.783Z","0.1.0":"2025-11-26T06:06:07.600Z","0.1.1":"2025-11-26T07:04:09.547Z","0.1.2":"2025-11-26T07:12:06.412Z","0.1.3":"2025-11-26T07:15:36.691Z","0.1.4":"2025-11-26T07:52:38.340Z","0.1.6":"2025-11-27T03:18:54.449Z","0.1.5":"2025-11-27T03:21:14.573Z","0.1.7":"2025-11-27T05:49:28.501Z","0.1.9":"2025-11-27T05:59:00.349Z","0.1.10":"2025-11-27T06:43:00.251Z","0.1.11":"2025-11-27T08:07:37.439Z","0.1.12":"2025-11-27T08:08:38.366Z","0.1.13":"2025-12-02T07:53:23.829Z","0.1.14":"2025-12-02T08:25:54.003Z","0.1.15":"2025-12-04T06:06:27.863Z","0.1.16":"2025-12-04T08:24:37.760Z","0.1.17":"2025-12-05T05:53:23.700Z","0.1.18":"2025-12-08T07:12:29.025Z","0.1.19":"2025-12-11T07:48:45.797Z","0.1.20":"2025-12-11T09:17:05.764Z","0.1.21":"2025-12-12T06:58:00.809Z","0.1.22":"2025-12-15T07:07:14.302Z","0.1.23":"2025-12-16T08:30:28.540Z","0.1.24":"2025-12-16T08:46:52.736Z","0.1.25":"2025-12-18T05:52:47.580Z"},"description":"`@layoutkit/el-layoutkit` 是一个基于elementplus ui的工厂函数，用于生成页面基础配置对象，提供表格、表单、对话框、工具栏、消息提示等功能，常用于后台管理系统页面。","maintainers":[{"name":"layoutkit","email":"wangfangchano@gmail.com"}],"readme":"# @layoutkit/el-layoutkit\r\n\r\n`@layoutkit/el-layoutkit` 是一个基于elementplus ui的工厂函数，用于生成页面基础配置对象，提供表格、表单、对话框、工具栏、消息提示等功能，常用于后台管理系统页面。\r\n\r\n# 安装（Installation）\r\n```\r\nnpm install @layoutkit/el-layoutkit@latest\r\n```\r\n\r\n# 导出内容总览\r\n以下是该包对外全部导出的内容列表：\r\n## 一、组件（Components）\r\n| 组件名                   | 说明                         |\r\n| --------------------- | -------------------------- |\r\n| **LayoutDialog**      | 弹窗包装组件，支持动态内容加载、缓存、按钮自定义等  |\r\n| **LayoutPage**        | 页面级布局组件，用于表格 + 工具栏 + 分页等场景 |\r\n| **LayoutForm**        | 动态表单组件，根据配置自动渲染表单项         |\r\n| **DialogContentSlot** | Dialog 内容插槽扩展组件            |\r\n| **FormItemSlot**      | 表单项插槽扩展组件                  |\r\n| **ColumnItemSlot**    | 表格列插槽扩展组件                  |\r\n\r\n使用方式：\r\n```\r\nimport { LayoutDialog, LayoutPage, LayoutForm } from '@layoutkit/el-layoutkit'\r\n```\r\n## 二、Hooks & Store\r\n\r\n### useConfig\r\n用于管理动态配置，包括表单配置、表格列、过滤器、工具栏等。\r\n\r\n**导入：**\r\n```js\r\nimport { useConfig } from '@layoutkit/el-layoutkit'\r\n```\r\n\r\n### useDialog\r\n全局对话框管理，用于打开、关闭、设置标题、注册按钮事件以及异步加载组件（支持缓存）。\r\n\r\n**导入：**\r\n```js\r\nimport { useDialog } from '@layoutkit/el-layoutkit'\r\n```\r\n\r\n### useForm\r\n表单逻辑封装，包含动态表单生成、校验、提交、格式化等能力。\r\n\r\n**导入：**\r\n```js\r\nimport { useForm } from '@layoutkit/el-layoutkit'\r\n```\r\n\r\n### userMessage\r\n基于 Element Plus 的消息封装，提供更简单的全局提示调用方式。\r\n\r\n**导入：**\r\n```js\r\nimport { userMessage } from '@layoutkit/el-layoutkit'\r\n```\r\n\r\n## 三、枚举类型（Enums）\r\n| 枚举                     | 作用                                     |\r\n| ---------------------- | -------------------------------------- |\r\n| **FilterEnum**         | 页面筛选器类型（input / select / date 等）       |\r\n| **FilterOperatorEnum** | 筛选器操作符（=、like、between 等）               |\r\n| **FormEnum**           | 表单项类型定义（input、textarea、select、radio 等） |\r\n\r\n示例：\r\n```js\r\nimport { FormEnum } from '@layoutkit/el-layoutkit'\r\n\r\nif (field.type === FormEnum.SELECT) { ... }\r\n```\r\n\r\n\r\n# 快速开始（Usage）\r\n\r\n* 需要在项目中使用权限管理按钮等需要在main.js中设置\r\n```js\r\napp.config.globalProperties.$layoutkitPerEnabled = true\r\n```\r\n* 如果开启权限，需要注入权限数据至store中\r\n```js\r\nimport { store } from '@layoutkit/el-layoutkit'\r\n\r\n# 需要登录系统后加载权限数据时设置\r\napi.getPers().then(res => {\r\n  store.set(res.data)   // 请在登录系统后调用这个方法设置数据，数据格式要求未字符串数组\r\n})\r\n\r\n```\r\n* 后端有自己的筛选数据格式时，支持重写数据格式， items只有筛选有内容时才有数据，默认未空数组\r\n```js\r\napp.config.globalProperties.$layoutkitBuildDataFunc = (items) => { return items }\r\n```\r\n* items数据结构\r\n```js\r\n[{\r\n  field: '',              // 字段名\r\n  fieldOperator: '=',     // 查询类型\r\n  value: ''               // 查询值\r\n}]\r\n```\r\n\r\n# 参考示例\r\n\r\n```js\r\n<template>\r\n    <div>\r\n        <LayoutPage :table=\"table\" :filter=\"filter\" :toolbar=\"toolbar\" :tablebar=\"tablebar\" :dialog=\"dialog\" />\r\n        <!--表格列示例-->\r\n        <ColumnItemSlot name=\"name1\">\r\n          <template #default=\"{ attrs }\">\r\n            <el-tag type='info' v-if=\"attrs.gender === 0\">男</el-tag>\r\n            <el-tag type='primary' v-if=\"attrs.gender === 1\">女</el-tag>\r\n          </template>\r\n        </ColumnItemSlot>\r\n        <!--表单项示例-->\r\n        <FormItemSlot name=\"name2\">\r\n          <!--emit：其中包含update更新方法-->\r\n          <!--fieldAttr：表单字段属性-->\r\n          <!--data：表单数据-->\r\n          <template #default=\"{ data, fieldAttr, emit }\">\r\n            <el-select v-model=\"data.gender\"\r\n              @change=\"(e) => emit('update', data.gender)\">\r\n              <el-option label=\"男\" value=\"0\" />\r\n              <el-option label=\"女\" value=\"1\" />\r\n          </el-select>\r\n          </template>\r\n        </FormItemSlot>\r\n        <!--Dialog 显示内容示例-->\r\n        <DialogContentSlot name=\"name3\">\r\n            <span>测试</span>\r\n        </DialogContentSlot>\r\n    </div>\r\n</template>\r\n\r\n<script setup>\r\n  import {\r\n    LayoutPage, useConfig, FormEnum,\r\n    DialogContentSlot, FormItemSlot, ColumnItemSlot\r\n  } from '@layoutkit/el-layoutkit'\r\n  const { table, tablebar, filter, toolbar, form, dialog, message } = useConfig()\r\n\r\n  // 注册表单\r\n  const userForm = form.register()\r\n  userForm.setRow()\r\n    .setColumn('name', col => col.setLabel('年龄'))\r\n    .setColumn('age', col => col.setLabel('年龄').setType(FormEnum.INPUT_NUMBER).onRequire())\r\n  // 插槽示例\r\n  userForm.setRow().\r\n    .setColumn('gender', col => col.setLabel('性别').setComponent('name2'))\r\n\r\n  // 筛选部分\r\n  filter.register('name', '姓名')\r\n  filter.register('age', '年龄')\r\n\r\n  // dialog\r\n  const userDialog = dialog.register()\r\n              .setAttr({ width: '600px' })\r\n              .setBtn('保存', async (currentDialog, componentRef) => {\r\n                  try {\r\n                      // 表单验证\r\n                      await componentRef.valid()  \r\n                      // 调用接口\r\n                      const formData = componentRef.formData\r\n                      formData.id \r\n                        ? await api.addUser(componentRef.formData) \r\n                        : await api.updateUser(componentRef.formData)\r\n                      currentDialog.hide()\r\n                      message.success('保存成功')\r\n                      table.reload()\r\n                  } catch (e) {\r\n                      console.log('表单校验未通过', e)\r\n                  }\r\n              }, 'primary')\r\n\r\n  // 工具栏\r\n  toolbar.register('添加').setAttr({ type: 'success' }).on(async () => {\r\n      userForm.setData({ name: '', age: 0 })\r\n      userDialog.setTitle('添加用户').setForm(userForm).show()\r\n  })\r\n\r\n  // 工具栏, 测试dialog内容插槽\r\n  toolbar.register('测试dialog内容插槽').on(async () => {\r\n      dialog.register('测试dialog内容插槽').setComponent('name3').show()\r\n  })\r\n\r\n  // table工具栏\r\n  tablebar.register('编辑').on((item) => {\r\n      userForm.setData(item)\r\n      userDialog.setTitle('编辑用户').setForm(userForm).show()\r\n  })\r\n\r\n  // 表格加载\r\n  table.setColumn('name', '姓名')\r\n  table.setColumn('age', '年龄')\r\n  table.setColumn('gender', '性别').setTemplate((item) => {\r\n    return {\r\n      component: 'name1',\r\n      props: {\r\n        gender: item.gender\r\n      }\r\n    }\r\n  })\r\n  table.registerLoader(async (pageInfo, pageParams) => {\r\n    const res = await api.getUsers({\r\n        pageNum: page.index,\r\n        pageSize: page.size,\r\n        data: pageParams\r\n    })\r\n    return { records: res.list, total: res.total }\r\n  })\r\n</script>\r\n```\r\n---\r\n\r\n# API 文档（API）\r\n## 1. table（表格）\r\n\r\n`table` 提供表格数据、列、分页、加载事件等操作。\r\n\r\n### 方法\r\n#### `registerLoader(fn: Function)`\r\n\r\n注册表格加载函数。\r\n\r\n```js\r\ntable.registerLoader(async ({ index, size }, queryParams) => {\r\n  return await api.getData({ index, size, ...queryParams })\r\n})\r\n```\r\n\r\n#### `setColumn(field: string, label: string)`\r\n添加表格列，支持链式调用, label字段选填。\r\n\r\n```js\r\ntable.setColumn('name', '姓名').setAttr({ width: 150 }).setTemplate((row) => row.name)\r\n```\r\n* `setAttr(attrs: object)`\r\n  设置列的属性，属性字段参考elementplus column api 属性\r\n* `setTemplate(template: Function)`\r\n  重写列的内容，支持返回一般内容以及使用组件返回\r\n  ```js\r\n  # 使用外部引入的组件\r\n  table.setColumn('field', 'nickname').setTemplate((item) => {\r\n        return ''\r\n        // or\r\n        return {\r\n            component: ElTag, // 传入的组件\r\n            content: item, // 组件显示内容\r\n            props: {}    // 透传属性\r\n        }\r\n    })\r\n\r\n  # 使用插槽组件\r\n  <template>\r\n    <ColumnItemSlot name=\"testSlot\">\r\n      <template #default=\"{ attrs }\">\r\n          <span>{{ attrs.nickname }}</span>\r\n      </template>\r\n  </ColumnItemSlot>\r\n  </template>\r\n\r\n  <scipt setup>\r\n  table.setColumn('nickname', 'nickname').setTemplate((item) => {\r\n      return ''\r\n      // or\r\n      return {\r\n          component: 'testSlot', // ColumnItemSlot的name\r\n          props: {\r\n            nickname: item.nickname\r\n          }    // 透传属性\r\n      }\r\n  })\r\n  </script>\r\n  ```\r\n\r\n#### `setPageSize(size: number)`\r\n设置分页大小。\r\n\r\n#### `setPageOptions(options: array)`\r\n设置分页选项。\r\n\r\n#### `enableTree()`\r\n启用树结构表格。\r\n\r\n#### `disabledDefaultCloumn()`\r\n禁用默认列。\r\n\r\n#### `setDefaultColumnType(type)`\r\n设置默认列类型，值：'default' | 'selection' | 'index' | 'expand'\r\n\r\n#### `setRowKey(dataKey: string)`\r\n数据行的字段。\r\n\r\n#### `setParentKey(dataKey: string)`\r\n树结构表格数据行的父级字段。\r\n\r\n#### `reload()`\r\n重新加载表格，并将分页页码重置为 1。\r\n\r\n---\r\n\r\n## 2. filter（表格筛选）\r\n\r\n`filter` 提供筛选字段注册。\r\n\r\n### 属性\r\n\r\n| 属性     | 类型          | 说明       |\r\n| ------ | ----------- | -------- |\r\n| `data` | ReadonlyRef | 当前筛选字段配置 |\r\n\r\n### 方法\r\n\r\n#### `register(field: string, label: string)`\r\n注册筛选字段，返回字段对象，可链式设置属性, label字段选填。\r\n\r\n```js\r\nfilter.register('name', '姓名')\r\n  .setFieldType(FilterEnum.TEXT)\r\n  .setPlaceholder('请输入姓名')\r\n```\r\n\r\n#### 字段方法\r\n\r\n| 方法                               | 说明                     |\r\n| -------------------------------- | ---------------------- |\r\n| `setOptions(options: Array)`     | 设置下拉选项，自动切换为 SELECT 类型       |\r\n| `setFieldType(type: FilterEnum)` | 设置字段类型，参考包中FilterEnum枚举       |\r\n| `setDefaultValue(val: any)`      | 设置默认值, 同时设置值, 重置时生效         |\r\n| `setValue(val: any)`             | 设置值                  |\r\n| `setOperator(operator: FilterOperatorEnum)`  | 设置查询操作符，参考包中FilterOperatorEnum枚举              |\r\n| `setPlaceholder(text: string)`   | 设置输入提示                 |\r\n| `onRequire()`   | 开启筛选必须输入验证                 |\r\n\r\n#### `registerBuildDataFunc(fn: Function)`\r\n单页面可以重写筛选数据结构，此方法优先级高于全局$layoutkitBuildDataFunc方法。\r\n\r\n```js\r\nfilter.registerBuildDataFunc((items) => { return items })\r\n```\r\n\r\n---\r\n\r\n## 3. toolbar（页面工具栏）\r\n\r\n`toolbar` 提供顶部工具栏注册和操作。\r\n\r\n### 属性\r\n\r\n| 属性        | 类型          | 说明        |\r\n| --------- | ----------- | --------- |\r\n| `actions` | ReadonlyRef | 当前注册的动作列表 |\r\n\r\n### 方法\r\n\r\n#### `register(label: string)`\r\n注册动作按钮，返回链式操作对象。\r\n\r\n```js\r\ntoolbar.register('新增')\r\n  .setAttr({ type: 'success', icon: 'Plus' })\r\n  .enabledPer('add')\r\n  .on(() => {\r\n    console.log('点击新增')\r\n  })\r\n```\r\n* `enabledPer(id)`\r\n  启用权限设置权限id\r\n* `setAttr({})`\r\n  设置属性，例如： { type: 'info', icon: 'Plus' }\r\n* `on(fn: Function)`\r\n  注册后提供的点击事件\r\n\r\n---\r\n\r\n## 4. tablebar（表格工具栏）\r\n\r\n用法和 `toolbar` 类似，但针对表格操作按钮。\r\n\r\n### 属性\r\n\r\n| 属性         | 类型          | 说明               |\r\n| ---------- | ----------- | ---------------- |\r\n| `title`    | String      | 工具栏标题            |\r\n| `width`    | String      | 工具栏宽度            |\r\n| `align` | String      | 'right'、 'left'、'center'，默认：center |\r\n| `position` | String      | 'right' 或 'left' |\r\n| `actions`  | ReadonlyRef | 当前按钮列表           |\r\n\r\n### 方法\r\n\r\n#### `register(label: string)`\r\n注册动作按钮，返回链式操作对象。\r\n\r\n```js\r\ntoolbar.register('编辑')\r\n  .setAttr({ type: 'primary', icon: 'Edit' })\r\n  .enabledPer('edit')\r\n  .hide((item) => item.status === 1)\r\n  .on(() => {\r\n    console.log('点击新增')\r\n  })\r\n```\r\n\r\n* `enabledPer(id)`\r\n  启用权限设置权限id\r\n* `setAttr({})`\r\n  设置属性，例如： { type: 'info', icon: 'Plus' }\r\n* `hide(fn: Function)`\r\n  注册后提供回调方法，用于显示和隐藏此动作按钮, fn需返回true or false\r\n* `on(fn: Function)`\r\n  注册后提供的点击事件\r\n\r\n#### `setTitle(title: string), setWidth(width: string), setAlign(align: string), setPosition(position: string)`\r\n不使用setAttr的情况下可以单独设置这几个属性。\r\n\r\n#### `setAttr(attrs: { })` \r\n支持设置title、width、align、position。\r\n\r\n---\r\n\r\n## 5. dialog（弹窗管理）\r\n\r\n### register(title)\r\n\r\n注册一个弹窗实例，返回链式操作对象。\r\n\r\n#### 属性\r\n\r\n| 属性 | 类型 | 说明 |\r\n|------|------|------|\r\n| `title` | string | 弹窗标题 |\r\n| `width` | string | 弹窗宽度（默认 `'50%'`） |\r\n| `fullscreen` | boolean | 是否全屏 |\r\n| `draggable` | boolean | 是否可拖拽 |\r\n| `withCancel` | boolean | 是否自动添加取消按钮 |\r\n| `_actions` | Array | 内部动作按钮存储 |\r\n| `actions` | Array | 动作按钮，自动生成取消按钮（如需） |\r\n\r\n#### 链式方法\r\n\r\n| 方法 | 参数 | 返回值 | 说明 |\r\n|------|------|--------|------|\r\n| `setTitle(title)` | string | 当前对象 | 设置标题 |\r\n| `setAttr(attrs)` | object | 当前对象 | 批量设置属性，如 title、width、fullscreen、draggable、withCancel、aliginCenter |\r\n| `setBtn(label, command, type, icon)` | string, Function, string, string | 当前对象 | 添加或覆盖按钮 |\r\n| `setComponent(comp, propsData)` | Component/Object/Function | 当前对象 | 设置弹窗组件及 propsData，支持异步 |\r\n| `setForm(propsData)` | Object/Function | 当前对象 | 快速设置表单组件 |\r\n| `show()` | - | 当前对象 | 显示弹窗并设置 dialog.instance |\r\n| `hide()` | - | 当前对象 | 隐藏弹窗 |\r\n| `destroy()` | - | - | 销毁弹窗，清空数据，重置 loading |\r\n\r\n#### 动作按钮对象\r\n\r\n| 属性 | 类型 | 说明 |\r\n|------|------|------|\r\n| `label` | string | 按钮文本 |\r\n| `icon` | string | 图标 |\r\n| `type` | string | 类型，默认 `'info'` |\r\n| `command` | Function | 点击回调 |\r\n\r\n#### 使用示例\r\n\r\n```js\r\n// 创建，使用表单的话，参考下节表单相关内容\r\nconst myDialog = dialog.register('')\r\n  .setAttr({ width: '600px', fullscreen: false, draggable: true })\r\n  .setBtn('保存', async () => {\r\n      await saveUser(formMap.get('userForm').data)\r\n  }, 'primary')\r\n  .setForm({ name: '张三', age: 18 })\r\n// 新增示例\r\nmyDialog.setTitle('新增用户').setForm({ }).show()\r\n// 编辑示例\r\nmyDialog.setTitle('用户信息').setForm({ name: '张三', age: 21 }).show()\r\n```\r\n\r\n---\r\n\r\n## 6. formMap（表单管理）\r\n## 属性\r\n\r\n### list\r\n\r\n* 类型: `readonly(Array)`\r\n* 描述: 当前所有注册表单的列表（只读）。\r\n\r\n### register(id = '')\r\n\r\n* 类型: `function`\r\n* 描述: 注册一个新的表单实例。\r\n* 参数:\r\n\r\n  * `id` (可选): 表单唯一标识，不是必须传入。\r\n* 返回值: 注册的表单对象。\r\n\r\n#### 表单对象方法\r\n\r\n* `setRow()` - 创建一个新行，返回 `rowApi`。\r\n\r\n  ##### rowApi 方法\r\n\r\n  * `setColumn(field, callback, label = '')` - 在当前行创建一列。\r\n\r\n    * `label`: 表单项标签。\r\n    * `field`: 表单数据字段名。\r\n    * `callback`: 可选，接收 `columnApi` 对象，可直接在回调中修改列属性。\r\n    * 返回值:\r\n\r\n      * 如果有 `callback`，返回 `rowApi`，可继续调用 `setColumn`。\r\n      * 否则返回 `columnApi`，用于链式调用。\r\n\r\n  ##### columnApi 方法\r\n\r\n  * `setLabel(label)` - 设置显示标签。\r\n  * `setOptions(options)` - 设置选项列表, 传入的类型需要动态刷新的情况，传入ref对象。\r\n  * `setType(type)` - 设置字段类型 (FormEnum)。\r\n  * `setPlaceholder(text)` - 设置占位符文本。\r\n  * `onRequire()` - 设置必填字段。\r\n  * `setAttr(attrs)` - 批量设置字段属性。\r\n  * `setComponent(comp)` - 使用自定义组件。\r\n    ```js\r\n    # comp组件编写要求\r\n    # 参数接收，会传入整个表单的对象，解析需要处理的即可；\r\n    # 例如表单对象为：{ name：'', icon: '' }\r\n    defineProps({\r\n      icon: String   \r\n    })\r\n    # 回传需要定义\r\n    const emit = defineEmits(['update'])\r\n    # 修改的值需要回传\r\n    const iconValue = ref('')\r\n    emit('update', iconValue.value)\r\n    ```\r\n  * `hide(fn)` - 组件隐藏回调方法。\r\n  * `on(fn)` - 组件事件。\r\n  * `change(fn)` - 组件改变回调，例如：\r\n    ```js\r\n    form.setRow().setColumn('nickname', col => col\r\n      .setLabel('昵称')\r\n      .setType(FormEnum.SELECT)\r\n      .setOptions(optionArr)\r\n      .change((item, fieldAttr) => {\r\n          fieldAttr.multiple = item.questionType === 1\r\n      })\r\n      .onRequire())\r\n    ```\r\n* `setColumn()` - 链式继续创建列。\r\n  ```js\r\n  const testForm = formMap.register('userForm')\r\n  testForm.setRow()\r\n      .setColumn('name', col => col.setLabel('姓名').setPlaceholder('请输入姓名').onRequire())\r\n      .setColumn('gender', col => col.setLabel('性别').setType(FormEnum.SELECT).setOptions([{label:'男', value:'M'}, {label:'女', value:'F'}]))\r\n  ```\r\n* `setData(formData)` - 设置整个表单的数据。\r\n  ```js\r\n  testForm.setData({ name: 'Bob', gender: 'M' })\r\n  ```\r\n\r\n* `formData` - 表单实例返回数据，详见参考示例\r\n\r\n\r\n完整示例\r\n\r\n```js\r\nconst { formMap, FormEnum } = createBaseConfig()\r\n\r\n// 注册表单\r\nconst userForm = formMap.register('userForm')\r\n\r\n// 创建行列\r\nuserForm.setRow()\r\n    .setColumn('name', col => col.setLabel('姓名').setPlaceholder('请输入姓名').onRequire())\r\n    .setColumn('gender', col => col.setLabel('性别').setType(FormEnum.SELECT).setOptions([{label:'男', value:'M'}, {label:'女', value:'F'}]))\r\n\r\n// 设置表单数据\r\nuserForm.setData({ name: 'Alice', gender: 'F' })\r\n\r\n// 获取克隆副本\r\nconst clonedForm = formMap.get('userForm')\r\nclonedForm.setData({ name: 'Bob' })\r\n```\r\n\r\n---\r\n\r\n## 7. keyMap（全局 key 注册管理）\r\n\r\n用于存储和获取权限、表单、对话框等 key 映射。\r\n\r\n### 方法\r\n\r\n| 方法                           | 说明       |\r\n| ---------------------------- | -------- |\r\n| `registerPer(key, value)`    | 注册权限 key |\r\n| `getPer(key)`                | 获取权限 key |\r\n\r\n---\r\n\r\n## 8. message（消息提示与弹窗）\r\n\r\n### 消息提示\r\n\r\n```js\r\nmessage.success('操作成功')\r\nmessage.error('操作失败')\r\nmessage.info('信息提示')\r\nmessage.warning('警告提示')\r\n```\r\n\r\n### 弹窗提示\r\n\r\n```js\r\nawait message.confirm('确定删除吗？')\r\nawait message.notify('操作完成', '提示')\r\n```\r\n\r\n---\r\n\r\n## 9. 枚举对象\r\n\r\n### FormEnum\r\n\r\n```ts\r\nFormEnum = {\r\n  INPUT_TEXT: 'input_text',\r\n  INPUT_TEXTAREA: 'input_textarea',\r\n  INPUT_NUMBER: 'input_number',\r\n  DATE_PICKER: 'date_picker',\r\n  TIME_PICKER: 'time_picker',\r\n  RADIO_BUTTON: 'radio',\r\n  CHECKBOX: 'checkbox',\r\n  SELECT: 'select',\r\n  MULTI_SELECT: 'multi_select',\r\n  TOGGLE_BUTTON: 'toggle',\r\n  SEGMENTED: 'segmented'\r\n}\r\n```\r\n\r\n### FilterEnum\r\n\r\n```ts\r\nFilterEnum = {\r\n    TEXT: 'text',\r\n    NUMBER: 'number',\r\n    SELECT: 'select',\r\n    DATE: 'date',\r\n    DATE_RANGE: 'daterange',\r\n    SWITCH: 'switch',\r\n}\r\n```\r\n\r\n### FilterOperatorEnum\r\n\r\n```ts\r\nFilterOperatorEnum = {\r\n  EQUAL: \"=\",              // 等于\r\n  NOT_EQUAL: \"!=\",         // 不等于\r\n  GREATER: \">\",            // 大于\r\n  LESS: \"<\",               // 小于\r\n  GREATER_EQUAL: \">=\",     // 大于等于\r\n  LESS_EQUAL: \"<=\",        // 小于等于\r\n  IS_NULL: \"isNull\",       // IS NULL\r\n  IS_NOT_NULL: \"isNotNull\",// IS NOT NULL\r\n  LIKE: \"like\",            // LIKE\r\n  NOT_LIKE: \"notLike\",     // NOT LIKE\r\n  IN: \"in\",                // IN\r\n  NOT_IN: \"notIn\",         // NOT IN\r\n  OR: \"or\",                // OR\r\n}\r\n```\r\n\r\n---\r\n\r\n","readmeFilename":"README.md"}