{"_id":"@aaron1994/vue-component-decorator","_rev":"7-6c50a858b3a2f4b7c121517b5b9b8a60","name":"@aaron1994/vue-component-decorator","dist-tags":{"latest":"1.0.7"},"versions":{"1.0.0":{"name":"@aaron1994/vue-component-decorator","version":"1.0.0","keywords":["vue3","class component","decorator","typescript"],"author":{"name":"AaronChan1994"},"license":"MIT","_id":"@aaron1994/vue-component-decorator@1.0.0","maintainers":[{"name":"aaron1994","email":"tech_aaron@foxmail.com"}],"homepage":"https://github.com/AaronChan1994/vue-component-decorator","bugs":{"url":"https://github.com/AaronChan1994/vue-component-decorator/issues"},"dist":{"shasum":"d8494665b16c87bbacd9bc4026dba4fc25287755","tarball":"https://registry.npmjs.org/@aaron1994/vue-component-decorator/-/vue-component-decorator-1.0.0.tgz","fileCount":100,"integrity":"sha512-SmPgLbnq4+rvZk+ldJMVCgNVqLspPLqXbdB3DOGd8+keybgtzXCYnYHXKEm7sqzMKS0Z66P47vpjM+RSx9prgQ==","signatures":[{"sig":"MEYCIQCAS7UPSJWP6FhPbf1x6pVKnFBhhxjdS4zC2CMg54EquQIhAM1oEyiE+MMlQpxtiIX1IjtlaC9wEmPAjt+bwSAJz+P8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138431},"main":"dist/index.js","types":"./dist/index.d.ts","module":"dist/esm/index.js","gitHead":"b2d53f40ba0c7f3d6e93faa5f368eedd683aaa94","scripts":{"test":"mocha -r ts-node/register test/index.ts","build":"npm run build:cjs && npm run build:esm","build:cjs":"tsc","build:esm":"tsc -outDir dist/esm -module ES6"},"_npmUser":{"name":"aaron1994","email":"tech_aaron@foxmail.com"},"repository":{"url":"git+ssh://git@github.com/AaronChan1994/vue-component-decorator.git","type":"git"},"_npmVersion":"8.19.4","description":"Vue3 class-style component decorator.","directories":{},"_nodeVersion":"16.20.0","dependencies":{"vue":"^3.2.37","vue-router":"^4.1.6","lodash.kebabcase":"^4.1.1"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.6","jsdom":"^20.0.0","mocha":"^10.0.0","eslint":"^8.35.0","ts-node":"^10.8.1","typescript":"latest","@types/chai":"^4.3.1","@types/node":"^17.0.41","@types/mocha":"^9.1.1","jsdom-global":"^3.0.2","@vue/test-utils":"^2.0.2","@types/lodash.kebabcase":"^4.1.6","@typescript-eslint/parser":"^5.54.0","@typescript-eslint/eslint-plugin":"^5.54.0"},"peerDependencies":{"vue":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-component-decorator_1.0.0_1683960729711_0.6670887844415918","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"@aaron1994/vue-component-decorator","version":"1.0.1","keywords":["vue3","class component","decorator","typescript"],"author":{"name":"AaronChan1994"},"license":"MIT","_id":"@aaron1994/vue-component-decorator@1.0.1","maintainers":[{"name":"aaron1994","email":"tech_aaron@foxmail.com"}],"homepage":"https://github.com/AaronChan1994/vue-component-decorator","bugs":{"url":"https://github.com/AaronChan1994/vue-component-decorator/issues"},"dist":{"shasum":"a4c8d8a2a0ff58aa3dc438bcd7d9b60897366377","tarball":"https://registry.npmjs.org/@aaron1994/vue-component-decorator/-/vue-component-decorator-1.0.1.tgz","fileCount":100,"integrity":"sha512-7qTqDAhV+WgsdaFJifZksvzrowq+4w39Qmn3KUQa0bvsQTBsWwJhIgMuMuTOU0mAsqhnscBP5Kj06PUVzyB38A==","signatures":[{"sig":"MEUCIDx+7xH0Ec4SDz5LFtFCUHvrY7d1Lx5U3zpz+YynQrGSAiEAmUjLoN5PC6+5/YlnyEPNVlMrPAtg7xYA5nFwpyAadO4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":140243},"main":"dist/index.js","types":"./dist/index.d.ts","module":"dist/esm/index.js","gitHead":"5bf22a8492d9488f06bb779576445bd4da1edd10","scripts":{"test":"mocha -r ts-node/register test/index.ts","build":"npm run build:cjs && npm run build:esm","build:cjs":"tsc","build:esm":"tsc -outDir dist/esm -module ES6"},"_npmUser":{"name":"aaron1994","email":"tech_aaron@foxmail.com"},"repository":{"url":"git+ssh://git@github.com/AaronChan1994/vue-component-decorator.git","type":"git"},"_npmVersion":"8.19.4","description":"Vue3 class-style component decorator.","directories":{},"_nodeVersion":"16.20.0","dependencies":{"vue":"^3.2.37","vue-router":"^4.1.6","lodash.kebabcase":"^4.1.1"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.6","jsdom":"^20.0.0","mocha":"^10.0.0","eslint":"^8.35.0","ts-node":"^10.8.1","typescript":"latest","@types/chai":"^4.3.1","@types/node":"^17.0.41","@types/mocha":"^9.1.1","jsdom-global":"^3.0.2","@vue/test-utils":"^2.0.2","@types/lodash.kebabcase":"^4.1.6","@typescript-eslint/parser":"^5.54.0","@typescript-eslint/eslint-plugin":"^5.54.0"},"peerDependencies":{"vue":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-component-decorator_1.0.1_1683963814180_0.5605469622725228","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"@aaron1994/vue-component-decorator","version":"1.0.2","keywords":["vue3","class component","decorator","typescript"],"author":{"name":"AaronChan1994"},"license":"MIT","_id":"@aaron1994/vue-component-decorator@1.0.2","maintainers":[{"name":"aaron1994","email":"tech_aaron@foxmail.com"}],"homepage":"https://github.com/AaronChan1994/vue-component-decorator","bugs":{"url":"https://github.com/AaronChan1994/vue-component-decorator/issues"},"dist":{"shasum":"9e2de5bd0ecfcc1178659b97b3ef1da2e458fb51","tarball":"https://registry.npmjs.org/@aaron1994/vue-component-decorator/-/vue-component-decorator-1.0.2.tgz","fileCount":100,"integrity":"sha512-D6mcbLvYCbVupAokwmjL+hKMtsFWlnk8f6t/oQffwHKRqq7jn5OagezWvgVlskZ7+90iqf3IHumPeSd/12o4YQ==","signatures":[{"sig":"MEQCIAQcayC6SjJWsVtsgzanEfyFiC7BoyqVdxqDURfsMQ+bAiBQ9IdmD95DlbvOLr9wbWkFsEpKZuUgZHLmeMbn8Uvtdg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":140462},"main":"dist/index.js","types":"./dist/index.d.ts","module":"dist/esm/index.js","gitHead":"6273af9650fb32127c51d313785b1b392c2f2e1c","scripts":{"test":"mocha -r ts-node/register test/index.ts","build":"npm run build:cjs && npm run build:esm","build:cjs":"tsc","build:esm":"tsc -outDir dist/esm -module ES6"},"_npmUser":{"name":"aaron1994","email":"tech_aaron@foxmail.com"},"repository":{"url":"git+ssh://git@github.com/AaronChan1994/vue-component-decorator.git","type":"git"},"_npmVersion":"8.19.4","description":"Vue3 class-style component decorator.","directories":{},"_nodeVersion":"16.20.0","dependencies":{"vue":"^3.2.37","vue-router":"^4.1.6","lodash.kebabcase":"^4.1.1"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.6","jsdom":"^20.0.0","mocha":"^10.0.0","eslint":"^8.35.0","ts-node":"^10.8.1","typescript":"latest","@types/chai":"^4.3.1","@types/node":"^17.0.41","@types/mocha":"^9.1.1","jsdom-global":"^3.0.2","@vue/test-utils":"^2.0.2","@types/lodash.kebabcase":"^4.1.6","@typescript-eslint/parser":"^5.54.0","@typescript-eslint/eslint-plugin":"^5.54.0"},"peerDependencies":{"vue":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-component-decorator_1.0.2_1684191933809_0.2528310632173678","host":"s3://npm-registry-packages"}},"1.0.3":{"name":"@aaron1994/vue-component-decorator","version":"1.0.3","keywords":["vue3","class component","decorator","typescript"],"author":{"name":"AaronChan1994"},"license":"MIT","_id":"@aaron1994/vue-component-decorator@1.0.3","maintainers":[{"name":"aaron1994","email":"tech_aaron@foxmail.com"}],"homepage":"https://github.com/AaronChan1994/vue-component-decorator","bugs":{"url":"https://github.com/AaronChan1994/vue-component-decorator/issues"},"dist":{"shasum":"9e4585b3efc1480b2f87cfb42b3ff2fee4da69e7","tarball":"https://registry.npmjs.org/@aaron1994/vue-component-decorator/-/vue-component-decorator-1.0.3.tgz","fileCount":100,"integrity":"sha512-oBn+wa38nAOZvMHgzzniY9zdp+ynyoQpGYA46kpqbbIuRP+fYaX7HORM0327BBiqioYxpooTEiVlg2LTz45jYw==","signatures":[{"sig":"MEUCIQDy/xN4X5NKT126/Z8Z8b9PCptVy2gC65INoBhDKGua5gIgDPzA0zt97d1V+NItiA+jjV+xsmlomG0yy+/GLrlmbEs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":145846},"main":"dist/index.js","types":"./dist/index.d.ts","module":"dist/esm/index.js","gitHead":"85790b755eb954f1bb84407d36239d129b67744e","scripts":{"test":"mocha -r ts-node/register test/index.ts","build":"npm run build:cjs && npm run build:esm","build:cjs":"tsc","build:esm":"tsc -outDir dist/esm -module ES6"},"_npmUser":{"name":"aaron1994","email":"tech_aaron@foxmail.com"},"repository":{"url":"git+ssh://git@github.com/AaronChan1994/vue-component-decorator.git","type":"git"},"_npmVersion":"8.19.4","description":"Vue3 class-style component decorator.","directories":{},"_nodeVersion":"16.20.2","dependencies":{"vue":"^3.2.37","vue-router":"^4.1.6","lodash.kebabcase":"^4.1.1"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.6","jsdom":"^20.0.0","mocha":"^10.0.0","eslint":"^8.35.0","ts-node":"^10.8.1","typescript":"latest","@types/chai":"^4.3.1","@types/node":"^17.0.41","@types/mocha":"^9.1.1","jsdom-global":"^3.0.2","@vue/test-utils":"^2.0.2","@types/lodash.kebabcase":"^4.1.6","@typescript-eslint/parser":"^5.54.0","@typescript-eslint/eslint-plugin":"^5.54.0"},"peerDependencies":{"vue":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-component-decorator_1.0.3_1698022972958_0.32309725505469045","host":"s3://npm-registry-packages"}},"1.0.4":{"name":"@aaron1994/vue-component-decorator","version":"1.0.4","keywords":["vue3","class component","decorator","typescript"],"author":{"name":"AaronChan1994"},"license":"MIT","_id":"@aaron1994/vue-component-decorator@1.0.4","maintainers":[{"name":"aaron1994","email":"tech_aaron@foxmail.com"}],"homepage":"https://github.com/AaronChan1994/vue-component-decorator","bugs":{"url":"https://github.com/AaronChan1994/vue-component-decorator/issues"},"dist":{"shasum":"18a0e5cb8ed2cd2e6f36311efc5688bd6434b331","tarball":"https://registry.npmjs.org/@aaron1994/vue-component-decorator/-/vue-component-decorator-1.0.4.tgz","fileCount":98,"integrity":"sha512-0Ste1hNgvRnpAFxI9L3TR48rnJYMlUpi9dDQaBUOZuouWmcRsEoHcRHPvF98GhVRByfu8pAnVYkYmU5xucJfXA==","signatures":[{"sig":"MEQCIEGCmiSZiO3Ha6W54Lus3GM5yMOCq0KmtrRHsqUjvOycAiBr/mb1psNF+bG1ybTqwkGTKpo1VnoBKXx/YzXzUSKLgw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":144346},"main":"dist/index.js","types":"./dist/index.d.ts","module":"dist/esm/index.js","gitHead":"d3e11b86255ebc5d8dc539afbb04a635330af30f","scripts":{"test":"mocha -r ts-node/register test/index.ts","build":"npm run build:cjs && npm run build:esm","build:cjs":"tsc","build:esm":"tsc -outDir dist/esm -module ES6"},"_npmUser":{"name":"aaron1994","email":"tech_aaron@foxmail.com"},"repository":{"url":"git+ssh://git@github.com/AaronChan1994/vue-component-decorator.git","type":"git"},"_npmVersion":"8.19.4","description":"Vue3 class-style component decorator.","directories":{},"_nodeVersion":"16.20.2","dependencies":{"vue":"^3.2.37","vue-router":"^4.1.6","lodash.kebabcase":"^4.1.1"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.6","jsdom":"^20.0.0","mocha":"^10.0.0","eslint":"^8.35.0","ts-node":"^10.8.1","typescript":"latest","@types/chai":"^4.3.1","@types/node":"^17.0.41","@types/mocha":"^9.1.1","jsdom-global":"^3.0.2","@vue/test-utils":"^2.0.2","@types/lodash.kebabcase":"^4.1.6","@typescript-eslint/parser":"^5.54.0","@typescript-eslint/eslint-plugin":"^5.54.0"},"peerDependencies":{"vue":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-component-decorator_1.0.4_1699738006210_0.9420221709012746","host":"s3://npm-registry-packages"}},"1.0.5":{"name":"@aaron1994/vue-component-decorator","version":"1.0.5","keywords":["vue3","class component","decorator","typescript"],"author":{"name":"AaronChan1994"},"license":"MIT","_id":"@aaron1994/vue-component-decorator@1.0.5","maintainers":[{"name":"aaron1994","email":"tech_aaron@foxmail.com"}],"homepage":"https://github.com/AaronChan1994/vue-component-decorator","bugs":{"url":"https://github.com/AaronChan1994/vue-component-decorator/issues"},"dist":{"shasum":"ca37d3ab6ada1a4c48bb53e608dc1338f37daccd","tarball":"https://registry.npmjs.org/@aaron1994/vue-component-decorator/-/vue-component-decorator-1.0.5.tgz","fileCount":98,"integrity":"sha512-Y3Cu3cDlgSidEzU4jnBWU+Olb9VY7eOm84ccOEsEoQXwSI5v2QeQMn1UEUfICLmZkQArYWxUoHYrYtlADCS3kQ==","signatures":[{"sig":"MEUCIB6vlY3XD8bvNlMuinZk4OBJu8vV6kQreoXr2CF8lWLgAiEA8zeQ2ac2CqKnx5e5P0XJOxIuMDPc2KmDJI4wYP32AmI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":145554},"main":"dist/index.js","types":"./dist/index.d.ts","module":"dist/esm/index.js","gitHead":"059915446b3924622b06eb71d0a3a7a99fb9a9ea","scripts":{"test":"mocha -r ts-node/register test/index.ts","build":"npm run build:cjs && npm run build:esm","build:cjs":"tsc","build:esm":"tsc -outDir dist/esm -module ES6"},"_npmUser":{"name":"aaron1994","email":"tech_aaron@foxmail.com"},"repository":{"url":"git+ssh://git@github.com/AaronChan1994/vue-component-decorator.git","type":"git"},"_npmVersion":"8.19.4","description":"Vue3 class-style component decorator.","directories":{},"_nodeVersion":"16.20.2","dependencies":{"vue":"^3.2.37","vue-router":"^4.1.6","lodash.kebabcase":"^4.1.1"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.6","jsdom":"^20.0.0","mocha":"^10.0.0","eslint":"^8.35.0","ts-node":"^10.8.1","typescript":"latest","@types/chai":"^4.3.1","@types/node":"^17.0.41","@types/mocha":"^9.1.1","jsdom-global":"^3.0.2","@vue/test-utils":"^2.0.2","@types/lodash.kebabcase":"^4.1.6","@typescript-eslint/parser":"^5.54.0","@typescript-eslint/eslint-plugin":"^5.54.0"},"peerDependencies":{"vue":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-component-decorator_1.0.5_1699740583203_0.2725483420077546","host":"s3://npm-registry-packages"}},"1.0.6":{"name":"@aaron1994/vue-component-decorator","version":"1.0.6","keywords":["vue3","class component","decorator","typescript"],"author":{"name":"AaronChan1994"},"license":"MIT","_id":"@aaron1994/vue-component-decorator@1.0.6","maintainers":[{"name":"aaron1994","email":"tech_aaron@foxmail.com"}],"homepage":"https://github.com/AaronChan1994/vue-component-decorator","bugs":{"url":"https://github.com/AaronChan1994/vue-component-decorator/issues"},"dist":{"shasum":"11c14d9a08d3625c24668f35a92e38c41f376b80","tarball":"https://registry.npmjs.org/@aaron1994/vue-component-decorator/-/vue-component-decorator-1.0.6.tgz","fileCount":98,"integrity":"sha512-VMLUCuG8lVbVpSlcqGH8WvjMEmgyBnmtmwe2lD0o1qt/x+4EUzXErsqwgwSb0DBiYFa4POAIKEcPc8xRT66fIA==","signatures":[{"sig":"MEUCIBRyxJ+YXr0pEUpUGrbeu+hJxhw4EdQuFLKI+RNlgmQRAiEA0eJB9bGbxkZmQiOPTFKb7rV6f4ZcD1qRmUI9CeamRUo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":145962},"main":"dist/index.js","types":"./dist/index.d.ts","module":"dist/esm/index.js","gitHead":"9811be0a0ce79b4e7bf61c16e0548667abc9f527","scripts":{"test":"mocha -r ts-node/register test/index.ts","build":"npm run build:cjs && npm run build:esm","build:cjs":"tsc","build:esm":"tsc -outDir dist/esm -module ES6"},"_npmUser":{"name":"aaron1994","email":"tech_aaron@foxmail.com"},"repository":{"url":"git+ssh://git@github.com/AaronChan1994/vue-component-decorator.git","type":"git"},"_npmVersion":"8.19.4","description":"Vue3 class-style component decorator.","directories":{},"_nodeVersion":"16.20.2","dependencies":{"vue":"^3.2.37","vue-router":"^4.1.6","lodash.kebabcase":"^4.1.1"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.6","jsdom":"^20.0.0","mocha":"^10.0.0","eslint":"^8.35.0","ts-node":"^10.8.1","typescript":"latest","@types/chai":"^4.3.1","@types/node":"^17.0.41","@types/mocha":"^9.1.1","jsdom-global":"^3.0.2","@vue/test-utils":"^2.0.2","@types/lodash.kebabcase":"^4.1.6","@typescript-eslint/parser":"^5.54.0","@typescript-eslint/eslint-plugin":"^5.54.0"},"peerDependencies":{"vue":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-component-decorator_1.0.6_1699741821219_0.340492828639122","host":"s3://npm-registry-packages"}},"1.0.7":{"name":"@aaron1994/vue-component-decorator","version":"1.0.7","description":"Vue3 class-style component decorator.","keywords":["vue3","class component","decorator","typescript"],"author":{"name":"AaronChan1994"},"homepage":"https://github.com/AaronChan1994/vue-component-decorator","repository":{"type":"git","url":"git+ssh://git@github.com/AaronChan1994/vue-component-decorator.git"},"license":"MIT","main":"dist/index.js","module":"dist/esm/index.js","scripts":{"test":"mocha -r ts-node/register test/index.ts","build":"npm run build:cjs && npm run build:esm","build:cjs":"tsc","build:esm":"tsc -outDir dist/esm -module ES6"},"peerDependencies":{"vue":"^3.0.0"},"dependencies":{"lodash.kebabcase":"^4.1.1","vue":"^3.2.37","vue-router":"^4.1.6"},"devDependencies":{"@types/chai":"^4.3.1","@types/lodash.kebabcase":"^4.1.6","@types/mocha":"^9.1.1","@types/node":"^17.0.41","@typescript-eslint/eslint-plugin":"^5.54.0","@typescript-eslint/parser":"^5.54.0","@vue/test-utils":"^2.0.2","chai":"^4.3.6","eslint":"^8.35.0","jsdom":"^20.0.0","jsdom-global":"^3.0.2","mocha":"^10.0.0","ts-node":"^10.8.1","typescript":"latest"},"types":"./dist/index.d.ts","gitHead":"8fef90c7d2c2030c85455ec61516551ecdc3ce64","bugs":{"url":"https://github.com/AaronChan1994/vue-component-decorator/issues"},"_id":"@aaron1994/vue-component-decorator@1.0.7","_nodeVersion":"16.20.2","_npmVersion":"8.19.4","dist":{"integrity":"sha512-WFJNoWH/jX4iyBQt/MpXC+EUsA3O530MtTyHIM2pdzsri2nqA5TW7hy4WZ9JXXvH7OD/QuXIA6j5sGoRPb2/+g==","shasum":"c42b61b4b3625535a1028611920f21c67fadfa84","tarball":"https://registry.npmjs.org/@aaron1994/vue-component-decorator/-/vue-component-decorator-1.0.7.tgz","fileCount":98,"unpackedSize":150493,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCwYs6w6vlsNACG5yHPM2d6W7fkSb9d8/SKAzkJqh2MXAIhAM76nq03kuhm8Dp3FDCjY0etKCru86yMCLbW3Iq4OIN5"}]},"_npmUser":{"name":"aaron1994","email":"tech_aaron@foxmail.com"},"directories":{},"maintainers":[{"name":"aaron1994","email":"tech_aaron@foxmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-component-decorator_1.0.7_1723608140025_0.16159476241368442"},"_hasShrinkwrap":false}},"time":{"created":"2023-05-13T06:52:09.658Z","modified":"2024-08-14T04:02:20.363Z","1.0.0":"2023-05-13T06:52:09.892Z","1.0.1":"2023-05-13T07:43:34.341Z","1.0.2":"2023-05-15T23:05:34.008Z","1.0.3":"2023-10-23T01:02:53.251Z","1.0.4":"2023-11-11T21:26:46.390Z","1.0.5":"2023-11-11T22:09:43.376Z","1.0.6":"2023-11-11T22:30:21.445Z","1.0.7":"2024-08-14T04:02:20.209Z"},"bugs":{"url":"https://github.com/AaronChan1994/vue-component-decorator/issues"},"author":{"name":"AaronChan1994"},"license":"MIT","homepage":"https://github.com/AaronChan1994/vue-component-decorator","keywords":["vue3","class component","decorator","typescript"],"repository":{"type":"git","url":"git+ssh://git@github.com/AaronChan1994/vue-component-decorator.git"},"description":"Vue3 class-style component decorator.","maintainers":[{"name":"aaron1994","email":"tech_aaron@foxmail.com"}],"readme":"# vue-component-decorator\n\nDo the same work\nlike [vue-class-component](https://github.com/vuejs/vue-class-component),  [vue-property-decorator](https://github.com/kaorun343/vue-property-decorator), [vue-facing-decorator](https://github.com/facing-dev/vue-facing-decorator).\n\n* Class style component decorator for vue 3.\n* Snakecase naming style.\n* Support @watch like [vue-facing-decorator](https://github.com/facing-dev/vue-facing-decorator).\n* Support @model like [vue-facing-decorator](https://github.com/facing-dev/vue-facing-decorator).\n* Support `mixins` any ES class.\n\nThis readme refers to [vue-facing-decorator](https://github.com/facing-dev/vue-facing-decorator)\nand [vue-class-component](https://github.com/vuejs/vue-class-component), thank you.\n\n-----------------\n\n# Installation\n\n``\nnpm i @aaron1994/vue-component-decorator\n``\n\n# Usage\n\n``` typescript\n@component()\nclass Component {\n\n  /**\n   * member of data\n   * @link https://cn.vuejs.org/api/options-state.html#data\n   */\n  public foo = 'foo';\n\n  /**\n   * member of methods\n   * @link https://cn.vuejs.org/api/options-state.html#methods\n   */\n  public bar() {\n    return this.foo + 'bar';\n  }\n\n  /**\n   * declare props\n   * @link https://cn.vuejs.org/api/options-state.html#props\n   */\n  @prop({\n    type: Number, default: 0, required: true,\n    validator: (value) => {\n      return value >= 0;\n    },\n  })\n  public declare prop: number;\n\n  /**\n   * declare watch\n   * @link https://cn.vuejs.org/api/options-state.html#watch\n   */\n  @watch('foo', { immediate: true, deep: true })\n  public onFooChange(val: string, old: string) {\n\n  }\n\n  /**\n   * computed getter\n   * @link https://cn.vuejs.org/api/options-state.html#computed\n   */\n  public get computedFoo() {\n    return this.foo;\n  }\n\n  /**\n   * computed setter\n   * @link https://cn.vuejs.org/api/options-state.html#computed\n   */\n  public set computedFoo(val) {\n    this.foo = val;\n  }\n\n   /**\n   * declare provide with options\n   * @link https://cn.vuejs.org/guide/components/provide-inject.html#provide\n   */\n  @provide('foo', 'provideFoo')\n  public declare provided: string;\n\n   /**\n   * declare inject\n   * @link https://cn.vuejs.org/guide/components/provide-inject.html#inject\n   */\n  @inject()\n  public declare injected: string;\n\n  /**\n   * declare vmodel = prop + auto $emit on set\n   * @link https://cn.vuejs.org/guide/components/v-model.html\n   */\n  @model()\n  public declare vmodel: string;\n\n  /**\n   * declare foo = this.$refs.fooRef\n   * @link https://cn.vuejs.org/api/built-in-special-attributes.html#ref\n   */\n  @ref({ from: 'fooRef' })\n  public declare refEl: HTMLElement;\n\n}\n```\n\n# Documentation\n\nThe documentation is not ready yet. But you can see `test` file.\n","readmeFilename":"readme.md"}