{"_id":"jsm-tool","_rev":"27-c48203ec2e71ad6f0d759b4160834d32","name":"jsm-tool","dist-tags":{"latest":"2.0.7"},"versions":{"1.0.1":{"name":"jsm-tool","version":"1.0.1","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@125.com"},"license":"MIT","_id":"jsm-tool@1.0.1","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"6d9f14e97b19e4631f63e632080343685dac1b3e","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-1.0.1.tgz","fileCount":5,"integrity":"sha512-rrsLvat9BztR9BVH3pptewzBRqIPZJejfMqhSduDA6UcuD5bszaHtWyub/9xqfbPqX8k7NkEydnaHV2f7NRaEg==","signatures":[{"sig":"MEYCIQC+QWinTbiTDSeBtcDK0d0JohHbXpqInZoGz8Z0B6p5LAIhAJQ8tHQOLAvzg4BF9rn+culJq5urBUmx1IIshRgbbxBf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":5289},"main":"index.js","gitHead":"bc395b084a6061a2799cebf6ccb06a4f933306c9","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"8.19.3","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"16.19.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_1.0.1_1693907779731_0.15628726260192627","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"jsm-tool","version":"1.0.2","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@1.0.2","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"50c23655ee600a70745b0442e6fea9c882a16b66","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-1.0.2.tgz","fileCount":5,"integrity":"sha512-AQQyOLZCikvk2VtU4IM3Fzi3fG991tCBo5M9K9AhxR4HitErlRNj/53h0wvPipc5OLWtwrfCHasdlM8kNeAfmg==","signatures":[{"sig":"MEYCIQDiQMuSvI5ch6x5uI93jMq4vT3BYcCLFxgvv8Jdg6Q9cwIhAPE/1y+FifORT3BI5P8wfAxpzQ8KtlYe8hEg0ZSuly8M","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":5766},"main":"index.js","gitHead":"3ed4db672f5a7b7acc76210795040caa219a4eb3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"8.19.3","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"16.19.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_1.0.2_1693971040755_0.5629331031663249","host":"s3://npm-registry-packages"}},"1.0.3":{"name":"jsm-tool","version":"1.0.3","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@1.0.3","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"7bf004ab667876565477f84ec04a65829840f108","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-1.0.3.tgz","fileCount":5,"integrity":"sha512-ML1FW6+kYwaqKzFvPC58RiAQgK3hPSd4xdZPXwdtdN28PkU0ZWo/DdkUe1hsiw0SYSCLmpHLE6pUER54CX2kzQ==","signatures":[{"sig":"MEYCIQCgnbN0cCHepnqMW/JZF4GSijY08SUW5WqcvGza1Sd/IAIhAJncgFf/5ioXPOxjIRxmcrWW6ekNgt02RsE5eyt7Zh1d","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":5835},"main":"index.js","gitHead":"3ed4db672f5a7b7acc76210795040caa219a4eb3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"8.19.3","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"16.19.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_1.0.3_1693980952691_0.5184552661509174","host":"s3://npm-registry-packages"}},"1.0.4":{"name":"jsm-tool","version":"1.0.4","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@1.0.4","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"9bbbb56fb9eb87680d6ba578f0bbc8c7f1b084ec","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-1.0.4.tgz","fileCount":8,"integrity":"sha512-ztDFjxR07qLsqIX5ACzMNBy9C5elt1Uqx6ci34sNmBWkI3B3TlvVmq+I4eqjrlHx8qZcOUp+Xjydox0RItOlgQ==","signatures":[{"sig":"MEUCICHXcFweO2MvYFfB+SmHqUyEXnTaIpBmraxRj6DlxZqLAiEA1WOaB6+vBbifneoVuMBJgYCDHESFj9j8so5Z+OxKaGU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":15945},"main":"index.js","gitHead":"86d3b9846cdffe93d9f00d730aaffc8f2bde87d3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"8.19.3","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"16.19.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_1.0.4_1694174402814_0.19105369689967655","host":"s3://npm-registry-packages"}},"1.0.5":{"name":"jsm-tool","version":"1.0.5","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@1.0.5","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"a90c65c1b069319ccc17403be3052b3623f38e51","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-1.0.5.tgz","fileCount":8,"integrity":"sha512-ETscb716Lco0ioujqlPkCsiPVxdtDgMeZPJo2Q1DSQWc4djUGvc5OyPWTwgdOmphwCTunxD/hewYrl+4/Bt6JQ==","signatures":[{"sig":"MEUCIQCFzqcg0dxlWkHvXK/sOVRVWYSzYcMaT1xbXc7hJrgnagIgWW6iuXMfrHp50eR9/+Lk33FFdoAYvB/5A44HXHHp6bA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":15907},"main":"index.js","gitHead":"86aa0fbe074a711e0e39651ee18d129de57208f3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"8.19.3","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"16.19.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_1.0.5_1694397796733_0.6023560839241382","host":"s3://npm-registry-packages"}},"1.0.6":{"name":"jsm-tool","version":"1.0.6","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@1.0.6","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"3bf93674cd09f1045365b04752b8cba26c393982","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-1.0.6.tgz","fileCount":8,"integrity":"sha512-1i3dfbYZxE9Ju5FH7Ju4AF8VJgXezg82UFApEZuUKvq5ftdgc+9kGIw0dehzIZO3BjGEy2uLMDW4LAZRe82LvA==","signatures":[{"sig":"MEUCIQC3XAsO+fey1zFjjiVM3PxTfqHp82/J4u416cYq+NnmmAIgYzfr6+x1kBKnSHVZIXjmIeZwkbmFGYvNxp29sml7oss=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":15898},"main":"index.js","gitHead":"6c435fb6c5d231ccab4e997820416cd0a17cad6f","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"8.19.4","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"16.20.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_1.0.6_1694683765548_0.9628066669841293","host":"s3://npm-registry-packages"}},"1.0.7":{"name":"jsm-tool","version":"1.0.7","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@1.0.7","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"be58cbe622b143c986a5c2f40ba0b82caff33eb8","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-1.0.7.tgz","fileCount":8,"integrity":"sha512-WD6dsEYCrROeXH+Sn3yakHHwhHjHLQMmHLXjS7LflyJOAa4/Q+IJnghCjEYGZuP+6IpmWmmABZO/yKVLnvddWg==","signatures":[{"sig":"MEUCIDL3hgME6knnJBAJDSWP/guKn4EJt0LcGCLo/PlHWl8FAiEAn6ClhiSTM4Xus6swucohQjtHxhj3ZR+SC6TZHK6VEIk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":15936},"main":"index.js","gitHead":"e334abbe67e4690b1d3728eecd1dfeadc30b4fc2","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"8.19.4","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"16.20.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_1.0.7_1694685942465_0.7401055815288975","host":"s3://npm-registry-packages"}},"1.0.8":{"name":"jsm-tool","version":"1.0.8","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@1.0.8","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"87612891080970cb21e254cbae04c55ac3e4c4a4","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-1.0.8.tgz","fileCount":8,"integrity":"sha512-IM/46U/vhkx/0YV5goKAeiDDGRc3DYFC4q71ktpfW9uiy18NWVi0CVwRvsZu/NL7Fb9UCxkDJtTM/iGn7F8rYA==","signatures":[{"sig":"MEQCIFXKwM10bK6xbYBTFa7Ly4qggIEjIWapBB62F0dCATg5AiAjC5ceKcJm9DKjhSG6bWvLH5DyLWORPBlVSqzqBH8wYw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":16077},"main":"index.js","gitHead":"ec07316edf5ac0f08c190bae50fcd89ec5bb94fa","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"8.19.4","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"16.20.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_1.0.8_1694747771669_0.19718104883446652","host":"s3://npm-registry-packages"}},"1.0.9":{"name":"jsm-tool","version":"1.0.9","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@1.0.9","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"1c8f60d7de25bf6da9504b2a67f84bd317b7839b","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-1.0.9.tgz","fileCount":8,"integrity":"sha512-Wdenda+zKRkzkSRH8FX5fkiH4ICTjS4RUfK2Kw5b0kULXrOAt/Dtgd3cXZDHvU6Clu36Enxp7OirvniJ3hj87w==","signatures":[{"sig":"MEQCIAMSHk+GVGO9hvOmDuRpQPIDQrys3Yq13SbLidqZNVtLAiAmWrAEAMS51z84iuF77WB2ta9GMQ0GoSYhDz2ry5eTUA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":16072},"main":"index.js","gitHead":"0ecb70a86e34fe37ab770d0a6800e1202a0689cc","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"8.19.4","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"16.20.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_1.0.9_1694770780970_0.2951854264974676","host":"s3://npm-registry-packages"}},"1.0.10":{"name":"jsm-tool","version":"1.0.10","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@1.0.10","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"1ba77876e8ee9904ea4622dc2acaa6db55d11d84","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-1.0.10.tgz","fileCount":8,"integrity":"sha512-k1C3JFX0B3Kk1Q59mHg/9ljrlMgqqq5ZudxSMY1DjvIT5RRiXCTbxwg4zjegSpbEV9OnSrTRGU9eYW2AjjgSSw==","signatures":[{"sig":"MEUCIQCgnxbYeZLuQ6AVdiSRzIvveXs5vIC4gjnjuT1MEocoVAIgOm5GnKiPWmK4kp8LcLU2fnPblZDNF4u9AXKn1QzjDr0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":16197},"main":"index.js","gitHead":"0ecb70a86e34fe37ab770d0a6800e1202a0689cc","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"8.19.4","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"16.20.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_1.0.10_1694779583585_0.1297049214839956","host":"s3://npm-registry-packages"}},"1.0.11":{"name":"jsm-tool","version":"1.0.11","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@1.0.11","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"ca1c95a382ef261556fef7fca683a7eb801af088","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-1.0.11.tgz","fileCount":8,"integrity":"sha512-xl17l0saQMEAhufSoPl+NNVAQxTIYeJqSad8fmrGmyArtjH1TDrHdH/Kp9oknN4si07JpjJx/PiPoI3LXRyWXA==","signatures":[{"sig":"MEUCIQC/NnIqKhckBqtAQRJMbzBG5gAXPxsIH2vxggG50MXJDwIgQELWsypAKARgj/AVSbFo/XmRiN1rcMD/sxt2DwuWjl8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":16554},"main":"index.js","gitHead":"2b0dc6d600b5d64671aff131c4543b3c3a31a4b9","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"8.19.4","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"16.20.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_1.0.11_1695020656000_0.5014590199646554","host":"s3://npm-registry-packages"}},"1.0.12":{"name":"jsm-tool","version":"1.0.12","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@1.0.12","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"337d5205739b4863d770f8271097584934b46e10","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-1.0.12.tgz","fileCount":8,"integrity":"sha512-HRE0fQu8tMYjlAT7u93G51krASnAqNa5ZVL+AypYBq//j9WZ7C5+mZEfrLr6sTtF1f4uwZLA5egJ6mDIkjXFqA==","signatures":[{"sig":"MEQCIHrolbIS8xeqxVVeWgC7s+RWZGtiVryCeEsQYlibz/3JAiBUSu3GR5rGq75oWiEDLFTZPkhWsbiiluNaY9wOOapfkQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":16492},"main":"index.js","gitHead":"e63c4ba73ef3227bcd5efd10585e108590e5bf3e","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"8.19.4","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"16.20.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_1.0.12_1698891361574_0.24023400664099492","host":"s3://npm-registry-packages"}},"1.0.13":{"name":"jsm-tool","version":"1.0.13","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@1.0.13","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"663d850eeed5125be7ad918b132a210b52c442a7","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-1.0.13.tgz","fileCount":8,"integrity":"sha512-vhLEmkB0p8YV3qwJKgqvfIOH+HGX6w+SAJXZdvC5P5JvamkhQJOvenaOz5ApT18DhyweQGYOtjmOERsz9Vblpg==","signatures":[{"sig":"MEYCIQDO5CcbfZhkx9cggIbdtrVLhD13xIwS7oLf0CC9ryfXmgIhAKgfiqKO+LdsuG7NRNeXCRFT7vCvvR7at9A+spZzOYCt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":16482},"main":"index.js","gitHead":"b0dd6be68c899f57dd3e05b90b01f93be4b76eca","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"8.19.4","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"16.20.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_1.0.13_1698892541087_0.6065226196110958","host":"s3://npm-registry-packages"}},"1.0.14":{"name":"jsm-tool","version":"1.0.14","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@1.0.14","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"314078c575547224e15a4011f2427afc6deae0f9","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-1.0.14.tgz","fileCount":8,"integrity":"sha512-+QTRv9RjzjOZB3zKhjKm9WHqlBLdnT88Hj/surJcuiE6I4ve51I1astV63p2WHCeaLcIPOLH2hHZbSfHujKf5g==","signatures":[{"sig":"MEYCIQCTgACoyi+C5LSZO7AFkb8XvuC/cojMqmL+QIr41yPFdQIhAO7Wyjxj0pOPTABDQ4FWZsELcWlEg0agQKF8CrOhePk0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":17047},"main":"index.js","gitHead":"07f9ed76d1e33b2c144e146a1379ec24621fbc79","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"8.19.4","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"16.20.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_1.0.14_1732611866509_0.6441839218732535","host":"s3://npm-registry-packages"}},"1.0.15":{"name":"jsm-tool","version":"1.0.15","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@1.0.15","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"7ba79c7b16a3fb46075cc3eb2399a44ded1397c0","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-1.0.15.tgz","fileCount":8,"integrity":"sha512-Dq474d+hZIilHueTSMbIaM5O/xdxLdMI6Se46yMD+ieEne/L9kevghoVRke7+M6qoU7rh/y0aaco+LVLidJeFw==","signatures":[{"sig":"MEUCIGXuaheaNcsxRj7iKWjtNCO83kYqkAOm1MrESjt1dk0XAiEAryvIXn8XHjJrAIeDkusx4AzsCo7HCR0NSuHtUkg4Xtg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":17044},"main":"index.js","gitHead":"7bcdb177074617d8180a49d7e47da17f442bebca","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"8.19.4","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"16.20.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_1.0.15_1732851447631_0.09702644875544753","host":"s3://npm-registry-packages"}},"1.0.16":{"name":"jsm-tool","version":"1.0.16","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@1.0.16","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"7aa81145fdac954b859921c797f7f4ed826638bd","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-1.0.16.tgz","fileCount":9,"integrity":"sha512-ArbbK742qTUYn3+vbHXa3fMmCc11eRdwdA4/3QHjMmDHgYJGt8HsxwN8vZcyS3OIVarh7Rg9ZHlpmmd9YDK4Ow==","signatures":[{"sig":"MEQCIAWCOAlH2p69hHU64HBR2aph6QkOZOyODH3in31J81dHAiAqjLYL652gB2YS2xTQxd9bk0k1fOZrgkFMdokFFCgQAQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22202},"main":"index.js","gitHead":"a64673e2e2cfe15cadbbbd98c16148f57aadda4a","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"8.19.4","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"16.20.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_1.0.16_1732851690845_0.578305437755072","host":"s3://npm-registry-packages"}},"1.0.17":{"name":"jsm-tool","version":"1.0.17","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@1.0.17","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"8c795a1b92810168910de18a8bf86c0bb20ad7e1","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-1.0.17.tgz","fileCount":10,"integrity":"sha512-uMZqHpbiAh736p0agOeel5f3TXIXUFo+aV/z1xbUbIAzYN1Nvb2JoKNJIt4muWyDhtaLcarwL/FajjxNqeaSMw==","signatures":[{"sig":"MEUCIBW0DHA53RCDHWidr8INotoWZX21AO/6uouaAnUY1N0UAiEA+FaSndynyGBXye2ER1AtQNZ3XnO7dlfeN0SYQ96imiw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24213},"main":"index.js","gitHead":"feaa2fdc668b862bd8c7936fd15e5c39ac6f17cf","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"8.19.4","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"16.20.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_1.0.17_1742380749546_0.39825038145914426","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"jsm-tool","version":"2.0.0","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@2.0.0","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"1322cb0804c378eca53c26a59fe96574b7c326b1","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-2.0.0.tgz","fileCount":12,"integrity":"sha512-dpsFyIHFlyH35FsDgfFa6PCuscHOxcuKZLO6naEwDW4x5/xjKaTONS/adQr8U0ne+U3umLOIfKh3M1Yg+LrjxA==","signatures":[{"sig":"MEYCIQCdCGicyTjPQeOY8pEmPE+vrxhlzhPsRdEo3n8WYuQkjgIhAPQppKeAERaXKDKLDCyS8jWwQZKUAPoyNBcu60snrO/w","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":30884},"main":"index.js","gitHead":"c945d12e5c42547ea028d8250b6f7f96765dd705","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"10.5.0","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"20.12.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_2.0.0_1756093072890_0.7400704847899886","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"jsm-tool","version":"2.0.1","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@2.0.1","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"f34dd130fb45ed9f19b5e72d5cc9163b494c9efb","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-2.0.1.tgz","fileCount":14,"integrity":"sha512-IpsSqKhMf63xEVQjkOWAHKYQ8JgeLbHVrGUvQ0t9jmpWcHcWHsrdgMJsZcaZ/SfsR8kk7gvYKQPyosMND73Mfg==","signatures":[{"sig":"MEYCIQDKL93G1Di2eV3HNUfGH9q5cZ3R+CVUmy5sEulqtfvylAIhAMWfaMrqZjESeSR63GfKLoBR2zMb2jEvD7Ti2vIpdvzt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":34146},"main":"index.js","gitHead":"4c6d4626a12cb56ae27a39a3deb4685b948aa34c","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"10.5.0","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"20.12.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_2.0.1_1756449111614_0.020356802849110567","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"jsm-tool","version":"2.0.2","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@2.0.2","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"2020f99895b31655208895416ecaffc15fa7ea7b","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-2.0.2.tgz","fileCount":14,"integrity":"sha512-RHdLzpAvwy1kkXR+q+vPWixT2dRgxOL7yHZ2L25Kd5HICAkpODscrzLHCtRjZ0ed6wCRU2nb7QeqblmydGGKvQ==","signatures":[{"sig":"MEUCIQCIZZHmxt7KH5dYNSmB/CDYfY4Cfc4V7bRU2XtIIzq5IAIgJgVeUGS7ikW0h2vlbxTZjSjMyOjsnW8eTTC3gNT3CfI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":34689},"main":"index.js","gitHead":"3d880954dc738f56474208dc0e2095f77bf15b71","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"10.5.0","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"20.12.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_2.0.2_1760410962417_0.9197973662526182","host":"s3://npm-registry-packages-npm-production"}},"2.0.3":{"name":"jsm-tool","version":"2.0.3","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@2.0.3","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"4ae7666e06cac7da376ec6e46467b85a772f6938","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-2.0.3.tgz","fileCount":14,"integrity":"sha512-wND/19I2lvrSUQlqnE2DAfYFMtUZPR0DdtAUufhS/J6OEZ1JU8kfRgEbjgf54QE8PcuH2uxw/S83T/azr6D38w==","signatures":[{"sig":"MEYCIQDjY+0+eI+2W1K0tQ3Xh9cCzUajsj7QBb6PAkXOmmnW8gIhANLzAk89yrk/46P6FELScmcNLkBRTF0a+SQ2qlWbtt8P","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":34725},"main":"index.js","gitHead":"71c7e7cb810cd8f0ce9f53f629dce1206399f8aa","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"10.5.0","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"20.12.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_2.0.3_1777023200967_0.0013989777203329279","host":"s3://npm-registry-packages-npm-production"}},"2.0.4":{"name":"jsm-tool","version":"2.0.4","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@2.0.4","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"70940085fd66f009cd15540d333f9a9c80cbc427","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-2.0.4.tgz","fileCount":14,"integrity":"sha512-Z8mQU0K/EVuFieDcjHJyrlPHevKKVLhEUd14DaOxrqR/4By79YP23QURvFAs8bMU/cM/BhtbsfJfH57ldoNIig==","signatures":[{"sig":"MEUCIB+fRe5ccv44uzSHnXSsV+6M/0SottInmRSIgk1HMTIJAiEA/CW2bZpRg18E8/JuCH3lDun6YdvyIx1iBItCbWqlybs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":34709},"main":"index.js","gitHead":"016bfc682988dbb39ddfb0b3d9faf27072353fdc","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"10.5.0","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"20.12.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_2.0.4_1777256180295_0.7169665064580231","host":"s3://npm-registry-packages-npm-production"}},"2.0.5":{"name":"jsm-tool","version":"2.0.5","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@2.0.5","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"ec402e6666aa8a5b9dc663869dd7e901c02e4b89","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-2.0.5.tgz","fileCount":14,"integrity":"sha512-2xWhQZ+fYiyH5/6JerRx9n0SfxMAOK1lOLP8iFCcwdxFJyXNhl/asSc3xTAf3JvlqbCpVw434Jis5HZgwTZ4ZA==","signatures":[{"sig":"MEUCIQCYHOlW9f34y+UyTIBJCTeeQa4TJL99XY+Bc9JM8+RoBgIgIvLLTNvcMbCAPaMWFTszbzy3ATYtW42HnWzSdQ8ZYyk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":35098},"main":"index.js","gitHead":"fbb500f62908ced9c221257322abc6f9569876c0","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"10.5.0","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"20.12.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_2.0.5_1778482125714_0.2055962184028184","host":"s3://npm-registry-packages-npm-production"}},"2.0.6":{"name":"jsm-tool","version":"2.0.6","keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@2.0.6","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"bin":{"jsm":"bin/jsm.js"},"dist":{"shasum":"2b195fb6ce377bd79f161394bef6c06b3229e9df","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-2.0.6.tgz","fileCount":14,"integrity":"sha512-hyXlovysmuc4jpyYDhCpJxbGR+VOlvDsFbuLcAQEqa5xT/9CB5Z0uHgCLFf5MzL62kH5ILUjJI0iDWdxBe9Hbg==","signatures":[{"sig":"MEYCIQDK4H1e0k4PGnBmkUG0zYEuaTLPw9i1DtXOcWI+2IB6IwIhAOKZvWTus9dyvLgDQMD9CxOd3z6VVho3FBUjKA3K0sm+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":35223},"main":"index.js","gitHead":"f7ee3641cac09b26abcd088da0a4f42df159e837","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"_npmVersion":"10.5.0","description":"jsm client for jsm frame,use to generate some front ts or js code","directories":{},"_nodeVersion":"20.12.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsm-tool_2.0.6_1779677907354_0.186572385319409","host":"s3://npm-registry-packages-npm-production"}},"2.0.7":{"name":"jsm-tool","version":"2.0.7","description":"jsm client for jsm frame,use to generate some front ts or js code","main":"index.js","bin":{"jsm":"bin/jsm.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["jsm","jsm-tool","jsm-client"],"author":{"name":"longzhili2005@126.com"},"license":"MIT","_id":"jsm-tool@2.0.7","gitHead":"b0f5603c0f8cb94b2c7fa55652e19e79b3dbe627","_nodeVersion":"20.12.1","_npmVersion":"10.5.0","dist":{"integrity":"sha512-irG8ikI5acrNo2/zOTjPb0rsur6rAyQDlYifWI7pB70hxBX0Yte0j92Kmn1Pszq4KveMwyNCxb526yjw+kfdew==","shasum":"f5accf9b5d5f46f3dbae069e9607272d6de1fd86","tarball":"https://registry.npmjs.org/jsm-tool/-/jsm-tool-2.0.7.tgz","fileCount":14,"unpackedSize":35317,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQC80wc5muv5EMT6zp8XF5RIihS4ob2YnHHIs+SZ3BlTeAIgWdahDIUIbmE/rD78h2nD5lgga+T7BOCIw/KLDzzULHI="}]},"_npmUser":{"name":"longzhili","email":"longzhili2005@126.com"},"directories":{},"maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/jsm-tool_2.0.7_1784624253926_0.3880378091438319"},"_hasShrinkwrap":false}},"time":{"created":"2023-09-05T09:56:19.730Z","modified":"2026-07-21T08:57:34.262Z","1.0.0":"2023-09-04T02:55:08.263Z","1.0.1":"2023-09-05T09:56:19.963Z","1.0.2":"2023-09-06T03:30:40.906Z","1.0.3":"2023-09-06T06:15:52.862Z","1.0.4":"2023-09-08T12:00:03.105Z","1.0.5":"2023-09-11T02:03:16.923Z","1.0.6":"2023-09-14T09:29:25.758Z","1.0.7":"2023-09-14T10:05:42.697Z","1.0.8":"2023-09-15T03:16:11.870Z","1.0.9":"2023-09-15T09:39:41.225Z","1.0.10":"2023-09-15T12:06:23.754Z","1.0.11":"2023-09-18T07:04:16.198Z","1.0.12":"2023-11-02T02:16:01.753Z","1.0.13":"2023-11-02T02:35:41.334Z","1.0.14":"2024-11-26T09:04:26.647Z","1.0.15":"2024-11-29T03:37:27.782Z","1.0.16":"2024-11-29T03:41:31.004Z","1.0.17":"2025-03-19T10:39:09.756Z","2.0.0":"2025-08-25T03:37:53.075Z","2.0.1":"2025-08-29T06:31:51.842Z","2.0.2":"2025-10-14T03:02:42.621Z","2.0.3":"2026-04-24T09:33:21.181Z","2.0.4":"2026-04-27T02:16:20.439Z","2.0.5":"2026-05-11T06:48:45.865Z","2.0.6":"2026-05-25T02:58:27.506Z","2.0.7":"2026-07-21T08:57:34.130Z"},"author":{"name":"longzhili2005@126.com"},"license":"MIT","keywords":["jsm","jsm-tool","jsm-client"],"description":"jsm client for jsm frame,use to generate some front ts or js code","maintainers":[{"name":"longzhili","email":"longzhili2005@126.com"}],"readme":"### 插件介绍\n+ jsm-spring-boot-starter 2.2.0 开始提供了前端插件jsm-tool, 用于生成前端api对应的TS或者JS代码。<br>\n+ 解决问题:\n  1. 少写代码，基于后台自动生成代码，特别是TS可以少很多types对象定义\n  2. 字段名直接映射到前端，减少前后台对接字段时，眼花导致的调试工作量\n  3. 字段注释直接映射到前端，开发工具可清楚看到每个API和以及出入参数的说明\n\n### 安装\nnpm安装\n``` shell\nnpm install jsm-tool -D\n```\nyarn安装\n``` shell\nyarn add jsm-tool -D\n```\n### 配置package.json\n安装成功后在package.json中 scripts中添加如下代码\n``` json lines\n    \"jsm:init\": \"jsm init genLib --client-type uni\", //初始化 并生成的ajax-lib\n    \"jsm:genLib\": \"jsm genLib --client-type uni\", //已有项目中使用 生成的ajax-lib\n    \"jsm:gen\": \"jsm genApi\"\n```\n>注：client-type 支持 uni wx js, 默认js\n>注：jsm:genLib 和 jsm:gen 只需要执行一次。为了安全，重复执行不会覆盖已生成的文件。ajax-lib需要安装axios\n\n### 初始化配置\n配置好package.json后，执行如下命令完成初始化配置\n``` shell\nnpm run jsm:init\n```\n执行完成后会在项目目录下生成jsm.config.json,内容如下\n``` json lines\n{\n    \"apiDir\": \"src/api\",   //生成的API目录，可自行修改\n    \"apiModelDir\": \"./model\",  //生成的ApiModel目录，可自行修改（TS）\n    \"ajaxLibPath\": \"../../axios/index\", //本项目中的ajax库路径，通常是需要修改的\n    \"ajaxLibName\": \"axios\", //本项目中的ajax库别名，可自行修改\n    \"override\": true, //如果文件已经存在，是否覆盖\n    \"lang\": \"ts\",  //生成的ts脚本或者js脚本\n    \"apis\": [   //多个api服务配置在这个里面\n        {\n            \"api\": \"http://localhost:8080/base-api\", //远程api的服务名，通常是需要修改的\n            \"dir\": \"base-api\", //对应本地目录名，建议与服务名一致\n            \"baseUri\": \"base-api\" //API的基础URI,支持字符串\"base-api\"或者代码(import.meta.env.VITE_BASE_URL), 通常是需要修改的\n        }\n    ]\n}\n```\n### 生成代码\n配置好jsm.config.json后，执行如下命令完成API到前端代码的自动生成,\n>注: 需要对应API服务,启用swagger, jsm.swagger.enable = true\n``` shell\nnpm run jsm:gen\n```\n生成后的目录结构如下\n```\nsrc\n├── App.vue\n├── api\n│   ├── base-api\n│   │   ├── AreaApi.ts\n│   │   ├── HelloApi.ts\n│   │   ├── PermissionApi.ts\n│   │   ├── RoleApi.ts\n│   │   ├── UserApi.ts\n│   │   ├── UserInfoApi.ts\n│   │   └── model\n│   │       ├── AreaApiModel.ts\n│   │       ├── HelloApiModel.ts\n│   │       ├── PermissionApiModel.ts\n│   │       ├── RoleApiModel.ts\n│   │       ├── UserApiModel.ts\n│   │       └── UserInfoApiModel.ts\n│   └── oauth-api\n│       ├── HelloApi.ts\n│       ├── OauthApi.ts\n│       ├── WxMpApi.ts\n│       ├── WxSnsApi.ts\n│       ├── WxSnsMenuApi.ts\n│       └── model\n│           ├── HelloApiModel.ts\n│           ├── OauthApiModel.ts\n│           ├── WxMpApiModel.ts\n│           ├── WxSnsApiModel.ts\n│           └── WxSnsMenuApiModel.ts\n```\n生成后的 API样例\n``` java\n/**\n * @description User登录获取图形验证码API notes:根据filename生成验证码\n * @Path参数\n * @param key,String,否,,\n * @响应Body UserApiModel.CaptchaResp\n * @param result,FileVo,否,响应结果,\n * @param code,String,是,1001表示成功，其它参照错误代码表,\n * @param message,String,是,响应码对应描述,\n * @return UserApiModel.CaptchaResp\n */\nexport const captcha = (key: string) => {\n    return axios.get(`${baseUrl}/v1/user/captcha/${key}`)\n}\n/**\n * @description User修改密码\n * @请求Body UserApiModel.ChangePwdReqBody\n * @param password,String,是,密码,\n * @param newPassword,String,是,新密码,\n * @响应Body UserApiModel.ChangePwdResp\n * @param result,Integer,否,响应结果,\n * @param code,String,是,1001表示成功，其它参照错误代码表,\n * @param message,String,是,响应码对应描述,\n * @return UserApiModel.ChangePwdResp\n */\nexport const changePwd = (reqBody: model.ChangePwdReqBody) => {\n    return axios.put(`${baseUrl}/v1/user/change-pwd`, reqBody)\n}\n```\n\n生成后的 API Model样例\n``` java\n/**\n * @description ChangePwdReqBody\n * @param password,string,是,密码,\n * @param newPassword,string,是,新密码,\n */\nexport type ChangePwdReqBody = {\n    password: string\n    newPassword: string\n}\n/**\n * @description ChangePwdResp\n * @param result,number,否,响应结果,\n * @param code,string,是,1001表示成功，其它参照错误代码表,\n * @param message,string,是,响应码对应描述,\n */\nexport type ChangePwdResp = {\n    result?: number\n    code: string\n    message: string\n}\n```\n\n### 额外说明\n1. 前端在使用过程中如有什么问题或建议可以提出来讨论\n2. 框架只是解决大部分的问题，如有特殊情况，可自己写代码处理，并不会限制到你写代码的方式","readmeFilename":"README.md"}