{"_id":"glede-server","_rev":"45-2c013c242841c22e538f4d152216b933","name":"glede-server","dist-tags":{"latest":"1.1.16"},"versions":{"1.0.0":{"name":"glede-server","version":"1.0.0","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.1.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"ac525699014ed1d7fa49b0e95cba5ad8efc01b6f","_id":"glede-server@1.0.0","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-8Ksiacl6chpqNz5qhyMOPZmReq2pLQoPiMANkD+plm8NWz44wZG7+NGj0IVYgk7RV6hKW8ILHJgBWGkcObafRg==","shasum":"90e3caaf8cf8963f63f95533d0d4a9b33a02a13e","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.0.tgz","fileCount":37,"unpackedSize":155726,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHBUZkCa3rY89Kl81OxwkPmpTnHqeQy9MXd655LAYe5QAiEA664H9+CsRSc6bE3/XSmh0ipjvwK8sPyuwCsMB9oksQc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiv2i8ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp+sxAAnWOsT4SCME6AJ5zTfwpqq+KC4NbHTBfe2aw8hPhTd+HDIfgH\r\ngw+vOvLZobSEGQ+sKWoFOcnSasNQqPk244kVJH6i+Hy3tYRXq3143F+lWA8L\r\nQfGJVqPCOepEGritTghF1vl1NzFhTGmn7frfjwXnqb6Ss8bdbjjXvR2XUTXq\r\nglXxoqJHxpaY5BuBSEa5SBuuMxL93s1DnjGS2hzdHOTb9Sv1zCWXWWCUcYzL\r\n2IEPSNs7/LPdQc5IPJsRI4wzLrBH5UeBaPCZLnpB/te0O0auq+gum+kM3Fxk\r\nxfqKCqetOSFSxtKNBIkkB+nLhE002yS6dz2loEsZQtsBoD1/fDzokMn2PSj2\r\nX+3h1ZM1Flm0SJ3tXTevnZS7xc0MZEr2b851Ka1Lmcg6Zp+M76cPiVq4p1qp\r\n0NyzDWuVCDMK6auw2n69xYQME0uJD37ac0RZ5sMoE27JPWUzFBqj0Ke/MbIs\r\nl8a21iHBb6dWVBsys13kTvd/LvnYrAnfmh2wpMzXSKEM6sUjRdRcOcQ/X0a/\r\nosZixW5r1Hbryu7MzQ+t7rM/3sI+Eoa5Urz221zsz5YxvHQ4y0AN1X0GL/84\r\nXTPZIJ2vtxRtEXGnAjcU7CdfgUzwdbUeJktbzay1Ky26dscXGHIViRRyqwXV\r\nUlRRhuVwIH7g482SlvHgrBrfMpzXOeDv51g=\r\n=ttHS\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.0_1656711355804_0.04755255365384037"},"_hasShrinkwrap":false},"1.0.1":{"name":"glede-server","version":"1.0.1","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.1.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"1c8fd14b498e1dfff993c773bfc25ef5bb750df5","_id":"glede-server@1.0.1","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-zDzg5GU43yctUjr58qQMRNfyqe7FYfaO6vgbDampKvYULGAklP7dohzaweJa1zcDUK85RpTciPkHPzpM+jHbKA==","shasum":"f395fe091b28f36854af051944e0ddcf0cdf2aa2","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.1.tgz","fileCount":37,"unpackedSize":155794,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICKvbShyacdyNq82kx02flFNphGGEcs8dOhWhULKZTszAiA4xfzSSz37PMuhefRDP3IjiktjZz4K7F5TVoQvO2Ss5A=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiv2vtACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpGBQ//bjjAr2SFJjma2BVbMVIdqP66nzi39uau9d8rZF0oWLagYRtO\r\nDoDhsMLpP0Ko9/Czg3h/TTUJpt3d37m8LjKz6Zf+c46TqA569kn/CREnT3GI\r\ns/pWGP6Im3ixSCLE+uBXXBxUfXq5KZ9UNIlitzOOuje8goZeXGbrpiYKnxwP\r\nxo10YhSB4UWvquLFHkFVaOh/scLm8hSdaSD/gsrOkfiqRrzsZVteOrXhQjm3\r\nsx6W2MfKN4JSnHTXAF1E6gB1OL28JvwMYbOJL7GKGSs0Z5Ueuf8PF1CuBne2\r\ng7Nlgdr3/22TdZ2M6sGG0jGs26wLX/h2lWuuLhg/zUYO0SMkVXydMhb7A1LM\r\nfQ1VfdJ/eV1tnMxaI32rlJdeo0H8VTibq0Gz0sxzACAzmqAgP9+Eb2y6MOwo\r\n1GJvUBZk43MF6Kry2u1nLAij39pQTbPcihz5PFR4Ml7VgmogxnXHX1cbtTuC\r\ntnj6+DU0SLvYw1tIBP/iAmboeiFOzedaZuYglGCvWQUf114kKChPUVunu/E8\r\n7qTaTjyxXYWDR0NgbXkHaYOvYCp44WbiP3PS8RLpOmiynW2j8Qzr3R1uyzaf\r\nAihtSQDQJlEw49Du13kgYSuL2dNmQ5fF58G+PYEiN17OqoAoQJ/8jl0W7Ih3\r\n77VspP4KfCK8tZYF6YzA9c3wTTFS8oBIHUw=\r\n=BZJk\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.1_1656712172930_0.15551961348167254"},"_hasShrinkwrap":false},"1.0.2":{"name":"glede-server","version":"1.0.2","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.1.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"9e0469d27f594ba6473337de29c6ff839583e87c","_id":"glede-server@1.0.2","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-+2SXJelMzmnNMI0O7VxzpCkAMvDKZwgp/FzfajPQ0rsePJMjNXahn1C/97LMg55B2wcJ308f9OPrRvPehjLEvA==","shasum":"28e298814f355ce625d7a8d747689a355db35dfe","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.2.tgz","fileCount":37,"unpackedSize":155794,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAq7B9+1yaiIOd6TKq6loMExGGjk9Mx4L+7Tf1LcS6hbAiEA0UHtP0Wyz1b0PwZ+ch1GLl4DhMMV9jOHEfunDf+GuLE="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiwsqOACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpn/A//WWmtFw6u5OnZ1uNZUCUA286xHh0OFU6+iDRecUO+jnWlMWF5\r\n+B8kODUUWz1AKjKbsIXDhnEqgbNxT83sOUEctUM4RLMgH+A1E2tMxEAEGT1r\r\ndpRpYMnbjiJf6xISiJTydCc5zefyhsM00Vkt1HR+rGiIiMQH9fCaDUKoxF0U\r\nJQ9t2FjTox5+Z2i50HAKBOhkiKB4MApcD5dxCpBOWUUZ01Of1tY+V7Oy1aRs\r\nvqHLFjL2fGVf5JZnFR1Stw/I864HsZrzfa6iRPXgchiJVTg9Uj9AVjZ8nvNN\r\nZ/aHwhBIN0LypL63rdL8eXd8IE5YwW82hIy6i75o22t3qly0huBOqVFlj7Fr\r\nsGz1I+IiFDhos37AIsmC+AUbePgRy2X2w2QnfRt1CIwIfyudl/bM8RjOKL7A\r\nJWaXxOdKfeCz/FcApJCVVBOGe9AIJl6JllOl0Ch1U2N8v/djy0xOJLvNSInQ\r\nom9yF7NNzXfFMykj5zqhDR1n5rDkGPs81AgIDQLzHsMd/++WYSDduj05XsDJ\r\nXhYRRzqE+FpMVYABGKuulfuVuVqD0yaxbDXbPtY0pIVZRkSQs7cL2MBL5rgY\r\nMlSLzZ1OZG7gVXzKeMlf3DkRKjwd2ijrUmS0gFHy/scfAyg/dukV4HoE6EM3\r\nu/HipkPv85RxqNi1H3nQumhj1FuD5JCIRak=\r\n=PKE2\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.2_1656933006426_0.53200478287036"},"_hasShrinkwrap":false},"1.0.3":{"name":"glede-server","version":"1.0.3","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.1.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"cd9b3c9df62b7d7af1389042e4d0675cf8dabe01","_id":"glede-server@1.0.3","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-NUYJ5pidgh8nvxhO2nDpoQxgREDn5g9kwgSZ+syuj7et/Gdj3zKsni1Ex1XJCBHWZTuqyufl6KJJ2KGRq/Ip/w==","shasum":"181ff0f21e2b218aec949f750d78d6d486935724","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.3.tgz","fileCount":37,"unpackedSize":156499,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDUotj0Bow3JJzFmeCTGw3GAhC6dtjz+QRJjpy13CrzQAIhANacXHUE/yaHOriZ8yNh863482zmm39QaqXXVUZMtHip"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiw+JcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpOXhAAkoyQKac8lteAh8vK250QPf6g9pXuW1mRdpE+fk3Vx4AkbI1G\r\nntHljxGyEPqIEFpDh8wLdu+1PfaCDsKKTljwOy13HBv8qBIy4AIcOL/rIyTa\r\nV89oFIOW7gpNiZB+PXPjFQQLm/xcR+BT7DHZ6LW/mDkII2h3vwc/GDuKRn2C\r\nXg27i0eev1NHqogYD06M1t3EMVJ/s+i3WXIs0Jprb4ze+KY1tDqjqlr4lj6N\r\nOKg9dYGxSUq3TQNJIaqllCRjBXDs1TLg4l2v6EcjVZsmghGtbSILEvexI+CF\r\n+O2XAZ8iw2yRQ+mcNHWEonBDPNE3CC8umtsx/bNVzfNsD9QA2bfz8qmPvgNi\r\npWUToaeGkx3zEgyzHBg0kvh1bg+AP9zVo+w8X7A44Sh/7xsXl/eknOGukAEp\r\nn1OeHKQWsK9aV4uIYU4T/ETXFUnMZB5olEVk3tzj+QdhcFPr5cWGvWQ96Nho\r\nsxpRzysC3zB3QpN3Fmex18BEg67fjPUqXZyse80BRoGDa3lAoNW86D4/8NXh\r\nnAcuFRzQFRwlqCfzn+BRodQy2BkckTPAL4UePXjNnrWdO6/JcgPUAmb63QBA\r\ncAUtMA9r2/5sarrAXmxhJ/eTVTTBDOpAKoLcKixC/+fVtlfyp40t+e9l0rCc\r\nzxHcaIvfaxwSmg1qbq45E7MLcaFXotjUMgI=\r\n=u0F9\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.3_1657004636631_0.14746515585327358"},"_hasShrinkwrap":false},"1.0.4":{"name":"glede-server","version":"1.0.4","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.1.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"bee90b140f1bf1addd60fcf024d72c4cc139da53","_id":"glede-server@1.0.4","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-IFBwA9L42mZxnVfM4pUjWTrDMtijulT2XqF6CO/CzldQ8LqYGUKDIWNagnQxI5S6lKSwfASU2VnbVUeG0EUOUA==","shasum":"96f0d428d768e9b7c276071132e6f522396c794e","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.4.tgz","fileCount":37,"unpackedSize":156610,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC+/Xkj2adou1u1fZT6lwE4j1NCYpgplaJNDeBha6v9tgIhAOAWMWPNDLwqup/wUaiFy1kKU+OiKmc1KIymLfEvIkxi"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiw+VrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqFfw/6AvRY0qG7tW6IcMTUThBlFv+vFVQ856DSrl6kRFLxGAi3OL2s\r\na42nFw1QEfOC5zFJChZfG7AmaWQ2yJW4S7sedZsilpL0jcJL7Rnb9qoGvvZw\r\nC+5DNEx1AlfnS0FRtVe25K0Xsod2B4e5PzrdDFg87NDd/TdnILIgCqfAokYT\r\nOCywoQ0FsGt+aiNPSeNWGhguo4yWxd/js81uArUggRe8RE3K08e0HqtGHAQw\r\n7Ht4qNzo+W9Hyqz0ZklNYdc58O5pLV9vC44wP4QQTzoyQf4+JJJxxa4S74bf\r\nwFqrOC08+C4zDxprCpVgV7v0tFrmG4eoGR6HJ3Ki/aVcBOk6sgHI69DO3gl3\r\nWRFhtHJNfRlRa29y1pRtSAQahwhZHXW14EYlYI56sy+HcKvbbu7dZdQyb/Gi\r\nwLwJxKkFtiVrfbFVY8Cv1RlvqJ6pVg21jTnHJTL79ysSXSGSzFo7gmXqK5QG\r\nRBUAIt512hje45akijV1z15iyPASDAT9PKhYINOFf38f6epWLplzQH2JY1Yb\r\n6Qq8lI3QJ1ukN0LYOTCKAhktcIrITegBzuyuunBVwSnak8TvZ5NQb6gr5CwR\r\nf0O6kLzgpI+Yp1+ZkVhQufTqYSuJS78QbyBm260os/5havGg4Cq+/OK2lOe+\r\n7O18sj+8DVCKEBsw55wBzbHRfGKItsQrpjs=\r\n=ECAD\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.4_1657005418842_0.7477134898063946"},"_hasShrinkwrap":false},"1.0.5":{"name":"glede-server","version":"1.0.5","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.1.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"9bc0234545385bc00ab7643d7c602e544a7410b7","_id":"glede-server@1.0.5","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-bhBOOicamOR3Mv+aYUaJ3iUnDKCkDkTOZ6CIXViTH2OjCFRUePgWVEaHBYeQHwDzb+X9oLICCCkh1hgroi2Esw==","shasum":"96fa8b2a03dcde0a4faec5ea31f1938b017eac87","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.5.tgz","fileCount":37,"unpackedSize":156707,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGiDFtk4wWEIUdpO026D3WC5ew8hGByZTRSR9zXcoXW6AiBE/6o6yalsk7kyXJbbnjrqrci25YYbxeDSlVpUBRXm8w=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJixAAEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrngQ//UfR0u2vzSQ46Tvs95jA7rUii/D91f8KED43qviwmY0CHBNQe\r\nH21M+TKciQKpn86820D8qqH2qExAT1WaNvLAgpI7+B/LeCeZ1/9im5N64EnB\r\n6918jmeZV8tqn63r09bhqHIc9goILUXrGvPQzdSPG9M8+g/U3xCZxvnir+q2\r\nkSgsSmSWN2BKOFD2u0EGlG2eRyt/0TJUw/aKrrAq/72dXV77cTgzOaNI/h2+\r\nA+uyUw/Hb/Rox9B1VS/7rQsDaRVUDCwRShJ6B7RFauK6sak731YhBIrg07Cd\r\nrJZlVXBwHG96aXnZuAs/0U8IwiuRQVa5vDM04GRMXNmtfGvs2OXwCbF/49r0\r\nzd/TQK5EzbkOn9RxQ/2B9PiVDXlMn8/tvZrtrcc8aMEeJznu2GEC/KnEIM2z\r\nfsAwHJYYOdhtW3UaRnn8NPJmJ9TxZSNBqq7kNgLZqRLKVwAspg8+9BZs6wqs\r\nUj8E7ODMiC1AKqq161oqqncMod4rAKFv/Un+12hvnxeQfwMGR5DBpHC9OWJ3\r\nm3DQstiSCAojvODYLuEF52+9JiM192tmiEeLD/m/VUYmbamUGfpO8ESa9GGb\r\nsyStkpwO3p3z3tuUZ4PY5fsxeJDWMBlOFiEMalCIWxdPmHqC+0pkL5GyKtDP\r\nCsVK9onr3aZkwCh2wvHDMSDi6vodMyU8RXU=\r\n=naFI\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.5_1657012228690_0.05126331279682028"},"_hasShrinkwrap":false},"1.0.6":{"name":"glede-server","version":"1.0.6","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.1.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"8edb67f9d3a7f7df6bb88cc0cf35bae32ad942cb","_id":"glede-server@1.0.6","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-DQ7HLB8HUj32HYG6aKn84F8Ve0UsVKvCPxMTu0kxq9/O//dcI8meEEpQSi73B/ZBUBIbskXVO70GyKsCvJotzQ==","shasum":"9c2fce422eca17326d62a5fce4dc0a1030cb688c","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.6.tgz","fileCount":37,"unpackedSize":156707,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDqn5PSluTW1SadzPfnS1Z5OMlCnsd9+iA6C8KEF2UuwAiAdRDs0+/6whGWDx1EWJbGZnvwe/wB8bhLzwr/S3VViUw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJixFFnACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqwnhAAkGNkbHStVo3pK4Kt7reKtpwjeb9cNmHYVnWugs64Ci6w8W9r\r\nsZ4le5kKJIJNryeFiQxY+inQkM7bvyCqT8pAGUaYwUA4tQZEY41XKzQ0Qkek\r\nYrIvMscUfneTWHusuJuKqxcut489XXig1qf38X0nvgFo7+xVtslye8D1p2aY\r\n/00c5C+1YGy4BSSOO8kMQe38u1chC3EmbiYqj7R+afoRl1LPsz2rObUqCgMr\r\nPUvqewHutgbu/B5EzcqDCg3AqqQf08+JJkwlrlC1ssqZt4PL7wxNrwWMKsjv\r\nGgpMlJFxxj4nVC1YiClMOYwO6vPbTwoFdW82jkU8pX33YIlYCpnvPL+OpuM7\r\nVTtXUSgI9PtHgQdiV7wCdwM0rDwbcY8m8Q6v1TuGqpwk0zptu6MvZIoGnGov\r\nqqsF8dB6LLEKfGu5i8jNN/mSAVdL1Upmw8gh+ipc16KSmTG8lrQW6V+JVHo/\r\nvepjpC48TI1rTA2LvnCBUo4xv0XmiTHabRT39FH9APyrIG2zihqUlrPVZQX3\r\npZ2z5sK6VFyycuNNOQbEziR9AtLY4n6o7xmckvAqvecVupRrz7cIWpS1o9K4\r\ngmUgk1k8dUrZiZrko2R+OerHMETBuwBxn/2o0sj6pIN2YmGtR0eN75JUjxsw\r\nB6UBgaX/+pXEW44yYJUoO817bhWYbTcd6sk=\r\n=l3Wz\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.6_1657033063288_0.2838432708029668"},"_hasShrinkwrap":false},"1.0.7":{"name":"glede-server","version":"1.0.7","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.1.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"d1dc7c5d8b9328f93c1eb1575fd131a63f577919","_id":"glede-server@1.0.7","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-kvPP+PB1G9t562fa8/69prDkz7FItwPcdb7pyhgqskG9YpBs10Ey1qoEqUyNebYviS8KP/c63mz0+nh2n6wg7A==","shasum":"de8fd662e0c579a8396e0843f4391187e14515d0","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.7.tgz","fileCount":37,"unpackedSize":156530,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG8KjTNeK3VKeRZuYcubYvgxZqkc1uxbpU1uMdgSWT0pAiBNeBLxQEcnpsgYDMyvpr6/2NwXp8N40025wzjqQWjzxg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJixohTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqJxA/+Oj2fgyzLjWuHTq0EawaJG9M8UEXDmTZk0dVrVObnPy3UOx8T\r\n26uclVCIlm5T141laFPXb63GW39qmZ3TgrXkXyY92hkD3AmPA18lixM/vpou\r\neUFTyg711Zuct+9D1B3cjv+zlgqlUD2fuQ40PSPu2vaNExFv5aEMiIUuBtVa\r\nhPDS/mA1kB8s47eI/4XTq8tPXzZBbDQ/88HBA30Xjnpo28plhAZ3L0RZpVUU\r\nzo7LeH9EyGPwX1iS4hTB0oTJnna4rYl7IPG8dttHxbPIW/KgKDBzaGpzQwph\r\nRinTg7ZBozbvpvwZiFWDwlk4qepOcLT+7JSAZ311t7rEenSy8XRYbuy3rftr\r\n7EQ9OR5RNy3Rkm5Wmu3lVAbTGiyTiSwBO7CsAzTAtqLqyL28QWJxZyeliWo5\r\nIMvHyCPXWk0OH6wyxYkea3jD1XSYC3nEZvUxX6UA/Fg7x3ckRdvL3EcZuH4B\r\ny4QOeEwPkyHNGy0jfVwgvrfDYLLrn/k8BwpnbAcr2A1jPpnnqGN0kNo63iQ+\r\nMafT06BVXWzXUygpuUWLelDyzIZnyf/PEb3e6WA/8C200dGugNYacw3+pytH\r\nlsH189Gx98N3FFFnERgJkEMwg0bxALQuI8BKI5xIQfQNhfHXd6NPkAC6hSxq\r\nGjNIdh52Syc5R4mPpkIf6YslKKuvqn249x0=\r\n=hFOo\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.7_1657178194972_0.3845020258515244"},"_hasShrinkwrap":false},"1.0.8":{"name":"glede-server","version":"1.0.8","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.1.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"2c367927238d8a98d1754787c15ac2ac46028259","_id":"glede-server@1.0.8","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-hhyJqhSJeb3gNcoHs81CXG0xF0po1HkFw8EeGJH0NTjfrAAsISyVN1PDTI6L/dMOvyBGqd+JVwWy325z9fRMwQ==","shasum":"aad61ace8fd8555e50f97ac38007ea64b2f40526","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.8.tgz","fileCount":37,"unpackedSize":156902,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCDl0ecOd2JuPvMOzXRwlezr2GuB83TmWHIhRxSOP3IUgIgJOKD+a5xALAA58rDvSsfiShmnGEngD715G1FNGXDQmM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJixpFcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrlFA//YM0hPhjblQhS8JmprIO1iUKNe/WwL7Feuyy3j25ojync8xyA\r\nc7eTan6W2D74mWkxdXYomPzZ4fKYXgFsaVuUEaU42byONQfl5MYt6VZXznP1\r\nudAKCqZJS+XCh/ipf5ZfljKwc/GKFxlt9dZ+YsnitWrxVYS00IZKTLRrUrfE\r\n2JETVi85ccFd8flIfkRVuPc8oMdky8BeCMgPP+J3o+gyXXWlfGRWsjVfI4Z5\r\nCM1DOwWpLT9KeP+MV1bfztgMTzwtMKOllNZzOafqagjsRiMW7Ems4eihz6sz\r\no9QZDhCZr5klI/jk+MA0QB0T1WxxXc4x3p9tAt+z8x1+3h/9jbsmwYCIrfKW\r\n7hweh/AqHvIEse3yBVY3xE0bhBtkiEsNUkFre5AjUSmNfIzyoAEbf+0Gq9XH\r\n9CPPc3Of7qcW826wNNsbLz1SFN2BMxCXRaTXRWsiuPXZFbmnnUPl6RhL7JTE\r\nBKbgpE13ZN5CtXkQxh1tp+tgBSAcq7Jv5CzGGmszjMotr1rcEczo4XF3sPm2\r\nUkmQ+6r1Inu/R9iDQfGo0nOSIEqJnqN88V9CKeJ3ET/9VIA1iEGIqUYckjiX\r\nk/e4U2FM5i8TJpZSwc4WSj4JAzsouuRpSbimyWVuZXoDPS55brMR8G5HCa9k\r\nvgffz9r3dB/2IevFSbCT/UMt53qtA9yq4Ks=\r\n=I8c7\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.8_1657180508549_0.7237889992901236"},"_hasShrinkwrap":false},"1.0.9":{"name":"glede-server","version":"1.0.9","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.3.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"08a6c5b79f9b8e237ab6a7e7aaee72ae98db48fa","_id":"glede-server@1.0.9","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-E+iOJIkZJmNr3MS6pzcX6Ncvh1XP2Queg5vX+7+GkkGi8CQWoB1iaORg3TOvelDqgWRLEzA4+0WGXf6aZ60WpA==","shasum":"711aff72c64e9af4431bd5b37552c1b924c250ab","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.9.tgz","fileCount":37,"unpackedSize":132664,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD1Q3ufeQcWyZev44uy3bMpSwi0jn3vuBKAOMQO6Ot1wQIhAKlnk/dmWrnGexCagZ6xbC2oJ8sAyADZnrHXibyrud5W"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi2arSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoJHQ//XYXzmLDfVXFPe8PRq/wOHYnilzztHgcaivkzylUOI2MOywWw\r\nrJMWDVDQaa3SM2b3UDkl+vhVellzSbO21KcT0jIHXwOAUyoPc/XRlQCxU6cN\r\n6VEvXISGnv82TwvuKP2yOBWc6yfClqrb0k+UOcR16FM3Mm7J114zQDmBOQUO\r\nFIcqpHDRKx3Sr+igNdVz3yIWPai3s76fC215vo6llZJ8NYJ/PQ1APFNsuB+t\r\nvOG//M8jJ+6sggVNi+N0hlLTbBlWAwZmu3N+qB6qg58ICf1Eiw+/xMfDbnHP\r\nWojYH07CNt11ZWvr1xXWDlF4iQvNJB9AoGYHQ14wOeUcf7fyWMA1CwdIpXo1\r\nA0n/bkDJPbmzvpKyuG/IWy0YaW+L9128hCMekv9UdkVKidLeZdICfHpubja6\r\n5/Q6nUiQwZ/30xMOTwjesjsdV01xgb6RMNhuTJIhwkEGpL+dgPMIsn75IK1d\r\nO3zFBYEOvXBpRPErzYwEPEg0aWlsjOwOVVcbxxKv8K4Qvt1YgAiVRusc37bK\r\nbb2izzcTC1+O4PgKV5wltvMxxesQZYC3u92c86nbx922JuU7CpoXO5ZxUWjQ\r\nZWcL0bTE1WK1ZKMio27V2C44Y9gqz654KjOqpAGLXQ7SRV3YeAcR1cBWb4ek\r\nMyYlwHsBd3/s4o6ChNDEmRVzoWKYj4wFmrM=\r\n=/flo\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.9_1658432210751_0.1685238763239143"},"_hasShrinkwrap":false},"1.0.10":{"name":"glede-server","version":"1.0.10","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.3.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"08a6c5b79f9b8e237ab6a7e7aaee72ae98db48fa","_id":"glede-server@1.0.10","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-siVbjhIy9BVQK6OeuefzBXVjLTQHZgbwllVzYCvgopmZIxOjDfBQUtcL/pb9czgshCdAqk85GVmQv6W6oQ1guA==","shasum":"82b976b3e07d16094a384e6cc2ee5f8c3fbfd9f4","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.10.tgz","fileCount":37,"unpackedSize":132663,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF4TfH2mqKmmkf6b/IKAe0mfAMngtpWmo0+wKQJvFsneAiEAgcvVDIWUYYisBPBnpPJ+9wJbAX7IdyGE8PIZCnu6Wwc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi2a6MACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo8ig/+J4DoUWqAZDqrshozLTuWsjRxGE18kwhKrWSiHyHYQLiHDqtO\r\nWwIKWqddKgmlRAUa3RHfstpLLz7hib6afATUR5pz0LhgwGnqP1LvRSOo/56R\r\n00MpEY9Uz7y/55lBxDgFWFPkNJkBKv+u+84UF56woRXy0/bnSrFKQyBtFNrl\r\nVJo9giBhAm3ygczPOknlrVRqqh1XNANJUbOu83lSSrvf84TtsoiO/SwsuDyO\r\nrMhTD4eSvdcv8oF9mEBKxCTgrpsI+xmeRhvgLfph0dH2MjydPDAkFnhQtMwt\r\nZkazZfK+KUq3PXgC7uvvCfovpX+5Wsjx3pkakGBQErER5mcjOPL020SlOmGj\r\nJo7QNyF5bNiUmyydx8LY6aQInXo5Ms9ZnugTtPVhLvBhoMFhiuw36RvFsXA+\r\nao1TuDGw+DbzkVe15UkSu5/8vLgiWOnOQoC41AqYXYpJ7Y8AlWjT8X13kl3k\r\nTp8gcsBwi4Q/ptvMvRqUTJyzvrugJRxYWnFnBGM8tI8y2jKCAhLLOLzAtW+4\r\nE9w0lUxtEs8w1gTFYg4c3KCLRA9A9yHsPv+onryEUYsi6hOpPM8GV6LDy4kU\r\n4+RVlV3cgD1PcBwJ3GbCk3vxonABJk7iLsFoM8R2RDf44BgsI6g3gGbejF1r\r\npBO9+kVWLj1Ob5hVEGiAASkvFgKb+uyOs3w=\r\n=k/NW\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.10_1658433164491_0.725346678003959"},"_hasShrinkwrap":false},"1.0.11":{"name":"glede-server","version":"1.0.11","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.3.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"dd48517b421a3358ee27eb864745e26c76038c64","_id":"glede-server@1.0.11","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-i1knysWzHfBjVqdjSAlm5nUioL/bO7ocYJ5z7moLyyJ+Xhbz2k26I8zCh0pWLVnf6R7DCc4upnzRm+dNTXANmA==","shasum":"d9afc68b3c58613e96d0d7a1dc49c22c5e6acd6a","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.11.tgz","fileCount":37,"unpackedSize":132588,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE+c8H0jIoBXw823f/VGDHqYYhv+XPKtXm++s6bTuV3wAiB5QL2tBMnzHWO5sU4RjhlrUswwwouiwXaLTUKRDC8bRw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjjLhvACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp8vw//Q6PtCWQUOfNuK7xkAn2UBqZuNz3PbRH6myOxMqyXT1oUvVJO\r\nSur1XVVbeJ+vi0A9EOm9+5J3Zrh7mzO8PoUT2GndB/UYpeCq8SfHOgylb6IU\r\ni5ho/Yk9sLPnKhcFmprVChsHpY5/VqwfVL+9I/VXdWE6If45I6E2XUsQRbGc\r\n6vMjsEpV2uX9Dkf4xleNPL4jstoFtjIADguuyqD8dUBDasY9m2anQISJCWXs\r\n9rbBkL+rOm7otE76zvi+wEmeALaoGRCFbInGMa3q4BXIcdKrWJ5RGlG9757m\r\nePEMKJjutEwfjh6KAgNOy6nDBhKGuOZjXsjpI2xzNdnWwJYBNyVEK8Jcxpfk\r\n51u3gA7E5iYBDe1HVmz504VxI9+j5LrARMJH9Vx3S/3RjYEaMqGLXfMfSv4Q\r\nCGr14l+VTw2+mMIDuF6WNcT0AtXpNqfLkjHiQgDJFrgxM6Mjm73QhwXsMBAf\r\n9QUi1bnNy0sp7Mp/+rX4gq7AEU97ZVQQqtIEJuj3EzAMsWafHUvvrLFMrKUI\r\nGlvR5YPUwZKMzdbYvliAA5RzNcWd0avwhbn0XyiX01Uwz7Lxv/KJB9vI5JCK\r\nxyk7HPAkIv/amfM+zbu2eomfo3VPPrYdYqNuFykyOFF/msgDl3xo0HxrjJ6Z\r\nLDdB0bx1ZvO2LhLr6pegbf+dQtWGAmSS/68=\r\n=/ty6\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.11_1670166639408_0.3895199879876816"},"_hasShrinkwrap":false},"1.0.12":{"name":"glede-server","version":"1.0.12","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.3.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"88064e67e40311bfa57dd39f7ba052b02337e884","_id":"glede-server@1.0.12","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-E5lP9J69Bo1wjv6Zp6+23r6S2Jkm9i9LddnetTCpkZR+/kHZ9JDho1B2vCsp7kJeHuz5O+mOvHHNYUIhmpOkOg==","shasum":"8ed0616f235e4adcc42492a318200b479d3a5aca","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.12.tgz","fileCount":37,"unpackedSize":133001,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBAoQ8IpI+cIedlSLPiOV4SSTv5i3mZTVcm6ZvXJwBuBAiB0wQKJ2lusE44h1BUx6KuEKfR/2xbQ3A07QT1Pd6tGAw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjjMDtACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqsmhAAg1mZ1CrJEcgcAq9wEKOB9KizaJanaVV2xtBQ6DgagjTe86U+\r\nTNJppOGnC1p8vkwOhNh6U6frvLmxVwztDD1o1cg2xxztCpYviYxgu72UCWNl\r\nu2PNIwsOzlWj/+hcOu45pyy2UYWUYc2+8TR8iNpzNwlVwWsBrxpWy8ZMybut\r\nX8b6ls/e6MpmHnHcqcYlByDzQ2DZDGavFqX2ugkHVfqCuZ4MJxvi/l89/G6E\r\nCMkK9byqAk8GIVhNlFMjX2G5GZb5HNGFBo8cXNuCkYWm3XRenHEKD+aOaQAs\r\nnda0xdtUW1D70tOBbOKizhj62XOJqYJ9shRAzyafchsNj8vPT5XsdhrQPaX/\r\niwjIbTW5HDpgub3AXHYUhoRpcOi9GB7wpbRI47CY3Y5cDLGD23V95llTOj99\r\npF5TirwUlS6AP34KXrxOjzjqXbvdZBS5RSjjQRfKCvv83o4Vwf7p5lbNQIEg\r\noiF0enjpbTYa4xPm5SCKcFQgEakARINDSYwdUWWfl9sSfUzsYdgVe7yIGpga\r\n/TgXN2QepUteawFtK5XYOrf+2uTGPrk4shyb5AuCxy1TwsE2/JudXhgZWBX6\r\nNX9AD/Kmn8gSj0k75oFZ6odwQ0MRcFJ3MRCq7wvDJ/tvxKc4/U1qI1JKFODf\r\nOOa7SOwAVQocb/wNNII0H3HgJuG8r8Oavz4=\r\n=XeCn\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.12_1670168813163_0.4886238544102117"},"_hasShrinkwrap":false},"1.0.13":{"name":"glede-server","version":"1.0.13","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.3.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"8501048a1b4a2038b2823993e116d06bbd2df48f","_id":"glede-server@1.0.13","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-m2jMgzyCGJPpyWKCqbLI5WKyZpZdjyxWUF+waySIAT3H5zlugyA3tcw1y/uPTobxCkjZYepByIqPqdSmrWjeew==","shasum":"c2ea09064850019e75c286930f0c36d2e623515f","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.13.tgz","fileCount":37,"unpackedSize":133001,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBo8HT6Qu9Bq4urDKJzwBm0PLb6Jh7jY7+1Dl3Kd9vNXAiEAxNjzs8bvyUSmnc4kC9VfWeavJuRcH6cm1MvlmHP3ETw="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjjMmQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpmoA/6ArGNTlCGUlZQSSptYRC7zYIOFcyR6u9+hSPsbYcetYeHn6sh\r\nYxpLhkrkrtG14iG9VGsOvqdmf6nykid+HRqE1o7wwafALs+SbzGh7L2lS+be\r\nfQY7Ge/hYXEYHDIy2d1wQYdz8Rndwmf6eR4bD+y5NY4HGkPkFh5BIAMMcgD3\r\n6R3rGvJY6ATIzYwgfEE6DAb3X+i/w3pnSnCo4K6g0DX60t+y49e5dntiFAOy\r\nT9L/spf1XQV/w70ISTkQw7s3gTSyGG+xkF9r0eOYq6UnbslNMwGZTp87jEKE\r\npeql+YmD1wp3AKhD2g9l5nkC9HWBuUKS39bLwq9hsf5d1JNznYwvY8qxNR8T\r\nuQGVztysWY58WimA9/8P2nldSpAXGZccr8hWQLkVgBG/bmM9MOT7ayuvzH5t\r\n5m0yg66mDNZ5RaOkaJb7AhkmyshnEryRYEJfIzqN7+zSZ4qtxmmTu/gfDqO6\r\nuYVaLx4PC8CTowX12MUn/g/CW9221/xZzLXi8k/vSiO0O5xsqOTxDDfn2gj1\r\nEM4QhZOLvH+vPh49wFXsedCYP+vypokVSi6Jkx0HgvhhiDcNeiBpq/A1a0nO\r\nNNEVTMGetrkibG5j3+gqW2XRjB8YxfXNWJvVtA4eRKpq3+QMmUBI6D37v0Uf\r\n79wxYSHBLii+HZgOns/PMsE7un0nF6CkyYk=\r\n=3EPf\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.13_1670171024368_0.23373559906366181"},"_hasShrinkwrap":false},"1.0.14":{"name":"glede-server","version":"1.0.14","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.3.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"8501048a1b4a2038b2823993e116d06bbd2df48f","_id":"glede-server@1.0.14","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-8mbZqFmaCW1rArj9kUWBA8JPk94EfmirORUSM65yd1iPuuJPGOLBL+dEsYJz1ccBVHMBokpk14mhEAYVZqFNQg==","shasum":"1547edabf7b7e979015d371a3e4188b55eb404f3","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.14.tgz","fileCount":37,"unpackedSize":133019,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQChbNeiUxBJbymOiEjfT2lHEmNnludLSxw22c520JGZiwIgeO+YbPVmSs4oX4Vl7EaL22/tNQP0l6n5E83YuOOoPjI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjlJ+PACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq4sg/7BEdZh15PEePLvx9OfXGqjpynBVxM1hbCRAjRSg0g59RfhljS\r\nr559XxDynzOgwssOtWVxH1m5VC8IqkeLiLIEmILX7LT1boxAPVVlUXSELdQj\r\nDnObZvapCX6gLDfV8cdB0YxEna7HsOwapXHoInXMikWYD2qv8ZFAgSDSZuW6\r\n/lyDq1MSV0TWZzqgj8OgU+wSSRDc/51to8jYIlg+vP233g9wM9t4jRunQ5by\r\nKEzyrDRBj1wLxe0xPxB39UqIgmqpJxhU05raahHoEdkluDVNAaanGZc+CDsQ\r\n8H0g1/wPbYfIlvY5hsRJo9LxiXpW+sY0Myy1qfNel2QUPhcyO5wsDHejPYhN\r\nlYH818OTZmxPDE4ZYwRWAKwqtPSBloK3YarOoitcpsbVV6RuskTfARuruokk\r\n8W0MfZku4xjQJVMilSI4dByacq5uQJkKRWmxZjLTbnItnmk7SwA/4PWBgC88\r\nGlChWSYzMY+9kP0Q1ss4C6KElUnC2/qj9+br9ROFrv4gaUQlpsZokG/CHChM\r\nZxZqFDVDrJk2FNrtonOkFpgQLs6z1LFexD4lq9IGcroG8omJpywomgYxCc4S\r\ni7Nyoj4+6pB27PLdfRC6qlb715+x2ZrqBi2xNDN/XwPQ2Z+riQLXOpYHlA9E\r\ncc2MDXdVsjxhkLbBB22deYRVU3wl0NAJZh0=\r\n=nfAV\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.14_1670684559005_0.8983489944574294"},"_hasShrinkwrap":false},"1.0.15":{"name":"glede-server","version":"1.0.15","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.3.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"052bca0cf1034b91455f9d9a46ce74f9aefaa8cb","_id":"glede-server@1.0.15","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-INEPJp3CnVevQ0g7X35xE/Ip4fIWPvQ3kfpdkbaH1lMBgBT37EEYcc8/Jg74X0Vwx0ZKiTh+Hr70PaYR7AQI+w==","shasum":"73a94d6bc9b141fa19ac508123817e0369d6a637","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.15.tgz","fileCount":37,"unpackedSize":133207,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGW9xAo/c3RJf9YfA4nwTAQnAqbI+CV/7yoWMa3zjy3eAiEAlEwYn9Z3DRhLvrnxenJqE9DLjwyAjHCqe4PD/Q+4QxE="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjleXyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqKeA//WUA3LnzGwLhvfPN7Yu9afd0fvauxjVeAs8+FfJkVBTMLiS0k\r\n44zpc63AFxBkxn2Xg1SwYguUOC+KDwq1+GDVtfSH04USO5OYiLn4V1+8TCFI\r\ncSsl/Gzb2gTQT/L0L2V+yVqwzR2DIwvKE1N2q0KX/UKe1tAlr8dxFvNF1hfj\r\n/f73gLLAtimh2v8zMZdySqbXBuHhccBv5BI8k3c977lQTM5rOJlEQrjZrePv\r\nlEDUZuRLHEhcp3d2I9NpT4OavSsOEBP4LI8AsTFWhWNHmUFtrLqw8W1YHA7w\r\nzJSwTe2La8z9r+c60QkzBAiCuoT/+2iYS6IUuYzt4Lsvp/nqIb4xZQuZT4Bx\r\nQ4H7CjWs78A9lBfW2U/fhKN4akk1l7Uj1+7jMxEn5Tybt0WqlH5JWQP4gKY6\r\nYMZ7IQ1zHzPieRSukxGaCbaqmvSXvVqtfh8f/zNv7PVSpolOAu53wL6LlTtN\r\nCyyS8BrooW2wHO+JLTJdhhKsF+ToUtcvppvCziC2w+sZMQnXFjcdro1U0eN5\r\nNj9aE+AIUal6axaI1+4WE0TloiAY6z0r06+iRSH1eARoDBJsEa5wPQ+pvZMo\r\nnx84svzcl4w7VbPWDa2ClQ1L5Y6bWx+8KvkVWmWpluGck4o9J0zaDB6uxCNh\r\nUbRFaWFLupZYv6Z7CCzq7V/l4SvgdQRxOaU=\r\n=DND/\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.15_1670768114045_0.942024689060631"},"_hasShrinkwrap":false},"1.0.16":{"name":"glede-server","version":"1.0.16","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.3.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"96433ba9b65c3f2ee042c069c368467f8ad50819","_id":"glede-server@1.0.16","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-efeT2YTMACIJmMZhlI5BOLuKr0TQeHsX7iMgpcWbzVaDavftU3HndC2X5wx+17kR0rFaOwitgNlxKNWWpjbHvw==","shasum":"5a021a621013d1b459811d17c10e1a75fb25728f","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.16.tgz","fileCount":37,"unpackedSize":134870,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDt/pTXKwwi1W+O5a5xr4orqCioyQ+ZNYPZEpnqdbAwsgIhALNqV+vQLbaSZDbuggY+M3Bqb6ZJ2W0i2hE+JxqMCD1Q"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjlz3QACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoyIQ/7BQwhk9mdXuG3ZxxGM8B8MHQfUrVJY1eBmEdy7jfX/lONurAj\r\n0Sh2voGaTrNU6KCdAyclniptYbd/KKuc7rEChryEKqEiCxa49rzfeyWdd+tI\r\nZNYsapueqWHsIUzajfL1pDiybPe/74yaCv1ZE6mjmIBLY+Ep0hZGQs5D07Fc\r\ngcecy8DL+z9U+ChsA2HNBPRmpjOw83zjKLatAtCdJ4cDerC9u9nVwyNorIpe\r\nGsE0bVhcnlYoWywKHH1Bx2vjrG1TpRT9/AZZYIh2wiFmj7nFmIO8FAAqNXaz\r\nqdU4BYXwNAAX1SahteaLmi2T7MFnZ6JUMRMfjIiu0AYbbmnBLj1wTR47teB4\r\nZ1wSgUk5ou9KxTukXVJ6zVvjDx9smam6SfhnwfFP87gYI+FfQWJj4QgtQbf1\r\np5qlODm1I2BmvGMkAWOqfeZ83JH5LWr8q6i+/wlvlnV3Wt8OtK2gzpzKFs9b\r\nUosIhCoOFcY2RJpPzEEAzQpOSijgdUIPSeL1RJPK5C3A8UADwTcxN8lV8Nbj\r\n33T9TQJL3s+dI61KD9BppS61A16jDMImdeh/sIHKoROBdrHAGfiD+BbEeEsX\r\nf0ubckEdLfUTO9Lp/alwsNQ57IO76snF8TBlph5sg43oLpcHFcPBU9R8ilM5\r\n9L5sjqX+XUmLNhqLZGitMQuwaG/2vZnptRI=\r\n=l1Jw\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.16_1670856143879_0.6028222031814099"},"_hasShrinkwrap":false},"1.0.17":{"name":"glede-server","version":"1.0.17","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.3.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"5b2c40303519485549c8d93a187b81488dbb9899","_id":"glede-server@1.0.17","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-dTFdBGCrESGftVYXlHa05myotb119euAoReJ8YMBExaBpZEx0apt3fSehSliyVDoFF9WFhzOI0SjEzGXWLE1vw==","shasum":"5345420258d96a5cf237334494b2d4bb87e37fe3","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.17.tgz","fileCount":37,"unpackedSize":134759,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICoihKsDcPnmVVrzHty/RhI1B/SEgboGqe8zZhIcyf3eAiBnzihkl1IOEUbOEAsN/5Z5JjZu0V9H9s1jPXF4TaAsFQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjl2XhACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrSnA/9GEr0GQwQ1eqMMq4evTn6+AJZjAPCMyrUbDbf+n2j698eKhgA\r\nqXEpuHEbs9X0YsG/8/PDOPJRyKz5MrN3k2O99rAGqdncx67hHgCL9HKYtgjQ\r\n2al3P2HmobtxHm+6hVNv+nVXOb7aFnft2mWtH7aMD3bLU6wpo0qAyfpdzZR0\r\nsRacx5DTec9iONCFsfG1EIrkqKJ9o3MdDFv+4wBnMZ+JCrHayo8nk68L8XFl\r\nTdw7PP+7uBfA3m4bYJgw3voDUJG0bYjGLfHNMEGMn5kkkbSuSgeDAZlZ1bfI\r\nGemEhb1Qzvvs/PWkkWeILRXD4wUEAMlkUgOU/un+N7La3W5fe6sSLmnwGQB/\r\nnIUxo+mF3cQ0ahe39Tb8X+y/7EyiWUyqXQ5o4UtQfPw1j8wcTB1Vch6cJC8R\r\ntnYLJ+8DcucIBP6ScyVvac9KIgp2xhSPTxOTJgwaMW32wR10XdiUltQnr1yg\r\nDN8Aza9gB/bTUCMHVfluTXN5z2yHKnLWhqnCRnuq38m5G6OqdVosbXdQ02/W\r\nGiWjy3r7ir1zzEje4oJHxTmBfAsr0O63C1MeOvnZpQkPtxrNx1N0j0DtImE2\r\nVcow/57L1pf87X/XXuxmcdQIWXKpS5C/WTTGQkxC3LxZPM9dyR2P1gvgDbTQ\r\nwVGxArg8r0CxSrzG8PdI7w1rHKuyL23znOk=\r\n=I/zy\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.17_1670866401806_0.9017217705790612"},"_hasShrinkwrap":false},"1.0.18":{"name":"glede-server","version":"1.0.18","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^7.4.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.3.0","ioredis":"^5.1.0","mongoose":"^6.4.1","nodemailer":"^6.7.5"},"devDependencies":{"tsx":"^3.6.0"},"gitHead":"d46c4ee5ce7af8965219338cf8b02ebdfbe8136d","_id":"glede-server@1.0.18","_nodeVersion":"16.18.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-uxvzFkgtPRc7TPHhlFBMbUZeGRsQDzfTEEnUyxFWcwq/ia8Pzo8fCzZL+lR7osKleygIL0GGSw2l0uhy5JFRDw==","shasum":"bbcd6ffaa64e6bbf969ff64777b3858591e6ba7f","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.0.18.tgz","fileCount":51,"unpackedSize":153247,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDm1W8jQyT1UGT5ebdSn/u0Hpy1re33D6jnQhSNwqNVTAIgBTckWOyrGOHQJk6EDMURx7sPJ6GGTXJ4QmcoRcrpP3E="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkCEZhACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqinw/+JOoiQ6yDVk7CWUujtdF/9JhBBCidJZAs+dXt4zN1VZV76NL9\r\n1BKdtUxODZKevF1+JlXi4vyYcAsHgPJJR7SU97CiN9IcK2Soxxhydpm3i6Qs\r\n6ANvT2HXsf2RHVnzXWCjbgNlu2Skd58a/g9B878SvLZSAwixkPWJ7k/4Uham\r\n3/A2iILwrIw8ZF2Cw4qjur7jg868lnEin5qzlc77+DEoyEiqLMk/8uGswjJ2\r\ntrRHrCW1e/dYdZmlKX0d5AI7d4zMt+d3e5+qc/4TIhKy8SiZne5gceZVBkUD\r\nE+igiSupsVaITu9ApBoYpoeRlCdABuxpJj/V10Lk4rpzh8OeLroi156yQA5M\r\n8OIEtVO1a5yy9zygm2T7gVFQY9R3qUlvyFj6bHduDa1iT5XFNmN80OHua6SG\r\nx7cdf9l3eeGN6K2FSnV4VcPJkd/MWZ8kZiNgbsQ7Z3/5UZs6zTCI1ih8lRov\r\n9sMfpulKYEd3dhgS/RKrlgiG6cmY6aJLmFZNJcJTjB74vt6uMTxRpjGA5fPX\r\nl5lW9M6kT+Md4aamlIDln1HAVx9UbztiQzuZnIX3r2vu4T53lhsW0P1jDyyC\r\nZ5JW9w6PB+VQ55CtlPQKtuQTnpBtp0S64zS52Zvisdj/vQL8AdgCN0ZwYeo2\r\nepkIlS8oRAcT/aA92vvJX0jQfPQC/8bEO+o=\r\n=H285\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.0.18_1678263905535_0.6482284396053795"},"_hasShrinkwrap":false},"1.1.0":{"name":"glede-server","version":"1.1.0","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.0","gitHead":"4a2b2c639503326dd09b24ffaff72de552c2e006","_nodeVersion":"18.18.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-roDq+LHjgK/kCrxwWFgLQ3BakAKuOU1+1xsZktXl1r6cjQQ9ZJoPbxDkfCXmwGRz/kamQMBzVXIGhAysquwMzA==","shasum":"74691aeaeb5cc85b3b5a34a786fd7c83d1a9e29d","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.0.tgz","fileCount":51,"unpackedSize":149720,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFroiassiMLHNmp7vyFZbRIbdwbIfpkwJGjaVcJrRGr6AiBW277XufQTu/PNOC05DHgjHE63LxwxnIeZMG3gE706Pw=="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.0_1698656270337_0.3751191855756477"},"_hasShrinkwrap":false},"1.1.1":{"name":"glede-server","version":"1.1.1","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.1","gitHead":"4a2b2c639503326dd09b24ffaff72de552c2e006","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-4ytMGT5A9fxN3lrQdiLsXMKAE72YXy5NxbNAKu+S9ehIVyTx8GU9tIB5EksYLM8OcguydiSShpU6w8dIXHG3Og==","shasum":"6062f046a40524c2e7b83f866278d5348ee899fb","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.1.tgz","fileCount":51,"unpackedSize":149975,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCgM3yRLmJSrNM5n01QMXYaIw4BHwRsrJ6/IG31YY/GRAIgTpzqIiLbWSeBt6bAmaYqG3h65jEY2ctGphsR4JC8IJo="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.1_1701678713815_0.3046160537713476"},"_hasShrinkwrap":false},"1.1.2":{"name":"glede-server","version":"1.1.2","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.2","gitHead":"7579a3c55ee209d88a5b7716038b50818bda9e56","_nodeVersion":"20.10.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-SYD+Jltx/SYNQrbwdA2DEouZ7Zg6xaddE488TVS1sw3DPRYLnRvKPMfMsCSsSujZ3ZfhRjFfkRrJe7GSCGu4aA==","shasum":"80375f1356fc36fc08159afdb3e4c67f6c0b58da","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.2.tgz","fileCount":57,"unpackedSize":193832,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICdvvT3SX2lx/LrQqIzoCoeF2aU5cXoCe2GIgHcZI8OQAiEAhfEuXsxNHjpk28m9mdrctmENWqIVEci8XK8BwFGcbVs="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.2_1702205102705_0.5338932311068265"},"_hasShrinkwrap":false},"1.1.3":{"name":"glede-server","version":"1.1.3","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.3","gitHead":"1635ac8e2aca9faeb41027c2a6132944181d38f3","_nodeVersion":"20.10.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-BF/nA5PDukLyvi3mLbA+vTbyLMjNbCpqFgJZLaG9CZQTv9hwyqDgsUvlmDe+q1hhgxe4dmuOnmTot6lphljOaQ==","shasum":"396e181f86e34be2c815c70ba3de809b5fc369a0","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.3.tgz","fileCount":57,"unpackedSize":193608,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFRsExNSkglhDeRofBEFsO2PaRbWfen/Ne8Gs7LjDax9AiEAvOqsWFTDVfj3p558Pnv9XiR3u988wFLx48Rx1+sl2OI="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.3_1702209180409_0.9246116431399483"},"_hasShrinkwrap":false},"1.1.3-docs.1":{"name":"glede-server","version":"1.1.3-docs.1","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.3-docs.1","gitHead":"8953d702f27d313dc9da5d97f273f148c3873f0b","_nodeVersion":"20.10.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-KUpYsd6LKv9B34SsWyDuYl9Y0HKrK9rrK+JHifSxtyKrFV+l4qTis9u5uS4d77H8EWhdGivSIz7qh3Jv7DFryg==","shasum":"4383c0aa4083cb06b9430f75301ac4d20a9bc3d7","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.3-docs.1.tgz","fileCount":57,"unpackedSize":193615,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDaSPE2hGDrdSVK8fdTRF0z9X+C0NEHAw0bpbp0x5/88wIgGGaiVTaAtj6xKFBwM8cSC9c7BNcedMX7gIq+smL82XY="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.3-docs.1_1702214495321_0.32474352812150586"},"_hasShrinkwrap":false},"1.1.3-docs.2":{"name":"glede-server","version":"1.1.3-docs.2","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.3-docs.2","gitHead":"979af266e603b45ec7736c7822a4679b61f5634b","_nodeVersion":"20.10.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-ibJVBJ9NuTXFQdJtnTB26vkHPwD16d1iBWhTPfma6lHaI4L9t37m7rVlDHyIc1fmr/DXOZGt4KR/mkz/jKDIqw==","shasum":"19b104c673cf248a775145b7438d2f56f0264025","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.3-docs.2.tgz","fileCount":57,"unpackedSize":195069,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDDn+MTDEi2m5lRxCMP2VGKy6I62P5MGZnWSAo7XCsUVAiAa+qxKTpDxWZb8r5Y1WTsxxURpGGVnxPaSLgYI2kIFdw=="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.3-docs.2_1702218197544_0.7106154808735121"},"_hasShrinkwrap":false},"1.1.4":{"name":"glede-server","version":"1.1.4","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.4","gitHead":"855d8d0d786d0a1993e1d736ec55ed7a9e1290f6","_nodeVersion":"20.10.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-Ovk09yRWekoXT20F4DnHHvAZZ6788BvzvaDd/6v8SdbiRldSDcAoqcRl6lAoIL10ifcAUhUAdIUWm+Ca6TiKfA==","shasum":"53fb3762187eeccf4a9163a4f56081c3e5236067","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.4.tgz","fileCount":57,"unpackedSize":195098,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDs8nhIxY3V7/xMYkFmsCIyaUnq59k08Nu9qO8in2FhGAIgXADcXUkIB/e69SP0aFImPGUtBnALOYAxR6+LIvxLbMQ="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.4_1702974516451_0.28800665300031425"},"_hasShrinkwrap":false},"1.1.5":{"name":"glede-server","version":"1.1.5","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.5","gitHead":"ffc197bec6761378987500518eacab3e48499001","_nodeVersion":"20.10.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-TznmNZdRbbxNseGLacMALpNGQHYWBc7WkrK0YdUNumkUU7NZJ1rD5l+l+qF8Zzmk2RUG/e1/H2uJAZbxkjEExQ==","shasum":"c91bcf70e1b908ff27325e4b37014f6c2b3c8889","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.5.tgz","fileCount":57,"unpackedSize":195170,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCAr5/lA6le+BbowbcPLpe5Ox5snm+KXityQZ/0gdShPAIhALrrHAIV1gOqaz7KbTdZrAWtePKGFNjegapHHM9ig6ba"}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.5_1702979725473_0.7863034675314569"},"_hasShrinkwrap":false},"1.1.5-doc.1":{"name":"glede-server","version":"1.1.5-doc.1","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.5-doc.1","gitHead":"7b65003fb70bebd1e297a63a5489a63595dc8e61","_nodeVersion":"20.10.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-o9HxndqtO2yZdIsmvxycamE8G9ToLqXuymMhJbYKJme2JFWk66usvcdUjRsipPUbPBpN9yiXpShRwPd2xN0oDg==","shasum":"abafe7bcf19ac62623257cc131c03649f96409d7","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.5-doc.1.tgz","fileCount":57,"unpackedSize":195248,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBJxWG9K0V2DzcC/myKssE/mqCKNAqEA6zjDOZBF6IDuAiAp+D4JrmB4kNe5U199GaYoU3s0LiG+hb4doDD+3e/1tQ=="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.5-doc.1_1702980963198_0.24716808604986773"},"_hasShrinkwrap":false},"1.1.6":{"name":"glede-server","version":"1.1.6","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.6","gitHead":"7b65003fb70bebd1e297a63a5489a63595dc8e61","_nodeVersion":"20.10.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-OnN+7MojVNqSOlfgtGf7d3Vkck8yLFyv3n/yPZURFWVWN21l76x5ZYSzQRHerr2ZOEupFRlBeKGq8PCPZh1S2A==","shasum":"ef03f489e8a273bb41600b0d0f277b43c3aee580","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.6.tgz","fileCount":57,"unpackedSize":195642,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBWYXLjgqrWbrLAKUxNGH4UhvCS2BlXvpv5kR2AUaoMFAiBCaWCfg+zraC2pJjgVFj38LKO2molk+2cYMp5m0/U7WA=="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.6_1702995832832_0.8024155976854619"},"_hasShrinkwrap":false},"1.1.7":{"name":"glede-server","version":"1.1.7","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.7","gitHead":"d2eef5f1f0d4be809f766dea58ede32c94958c39","_nodeVersion":"20.10.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-cUKbH53ijpxQYyehmdP667PFCEszOeIO3REjrDFOnR1jrR8W4GukjZnWOzzSChhu9yCt7E95Fwy81M/6Cbvmuw==","shasum":"ce48373b9f74388703aa92c6a24e3c032eacd245","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.7.tgz","fileCount":57,"unpackedSize":195643,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE5q2jEkyDoKbM5StWR1IyLc8kZt4cQxAWkrvZkFYe/ZAiEAui/s2S73MCDOCt7M6vZM617hz65bo5f6zkzeXZEFIGc="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.7_1702998921063_0.3273244894071423"},"_hasShrinkwrap":false},"1.1.8":{"name":"glede-server","version":"1.1.8","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@types/pg":"^8.11.5","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7","pg":"^8.11.5"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.8","gitHead":"f29e4008f4eb8811d24061b36fc251fa1a78640a","_nodeVersion":"20.11.1","_npmVersion":"10.2.4","dist":{"integrity":"sha512-5RJU8yn+jQx6ivtVVP/PqQWkAT5d6j6k20ISbtkMZveISl7drrDWnVYKdAhVHthVsY+H0fTvFcTE8yXeWsKVDw==","shasum":"0bc947a55b52d403bc665755f6bd839a5115009d","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.8.tgz","fileCount":57,"unpackedSize":198553,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCVn5ZkEbywZk+BlU+BTinbXFAT+Hp26IM53aBOKSwpiAIhAMhfoThuzy4TsZYdgD+e65/6vD9TvWDLOCqaFnw5NG8Y"}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.8_1714213772800_0.0934501905547469"},"_hasShrinkwrap":false},"1.1.9":{"name":"glede-server","version":"1.1.9","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@types/pg":"^8.11.5","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7","pg":"^8.11.5"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.9","gitHead":"aa771b5839ac8221598fce8d344deac1af7c1167","_nodeVersion":"20.12.2","_npmVersion":"10.5.0","dist":{"integrity":"sha512-iVx+bEanq9sfR40VRoS0LNn/748IYXx22hZvTH+lx3NQbhuhGCDknOInlPNUOJjtU5D63FP6qaL0cMFKwPtB3w==","shasum":"d7d15f7a532cbd2a016a6706882c017f652a5b58","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.9.tgz","fileCount":57,"unpackedSize":199166,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD1IMEIh+jr0jP+ry5Qkt0s32rLyoe0UCpFyTjhYcu8fQIhAKBO3xU47Etc1um+Tf3fseZNZ+7TztkuI2R0+GJ/oflE"}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.9_1714645455136_0.6909085215746773"},"_hasShrinkwrap":false},"1.1.10":{"name":"glede-server","version":"1.1.10","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@types/pg":"^8.11.5","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7","pg":"^8.11.5"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.10","gitHead":"aa771b5839ac8221598fce8d344deac1af7c1167","_nodeVersion":"20.12.2","_npmVersion":"10.5.0","dist":{"integrity":"sha512-a3Y/C/yoiKIE4LSSprtCQ9N33/n+J5hkX4hluLCmr+zZnmyNVdCBAMZenkROr9jd/mumVN+fZz1QHRFZ4/5GXQ==","shasum":"294c1f186da5c5bd4aabe70f7e7e801c01bf89cb","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.10.tgz","fileCount":57,"unpackedSize":199167,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC3b3/SHRikhCGsTsh4492IkZ0LE7F3E0Ir2ASoJvyJOAIhAKPp9MnSrT6vvZe4gGlLzFKRpcbJlSE6QpQbT658ukfj"}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.10_1714742775888_0.9367944309664609"},"_hasShrinkwrap":false},"1.1.11":{"name":"glede-server","version":"1.1.11","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@types/pg":"^8.11.5","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7","pg":"^8.11.5"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.11","gitHead":"353df2a3227e01e76169462b9c84412e1d3f2152","_nodeVersion":"20.12.2","_npmVersion":"10.5.0","dist":{"integrity":"sha512-aqTBEoPw7nIqpiiswKM91RgCsjn59XKFu6kYE3MvhazKhy4q/9PxzzVp1wZSnqVf1D5XipoF4M+H5EUNJMUWqA==","shasum":"ad6c2ccad9ba0fdc70ec0760af2fb9421d578fdc","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.11.tgz","fileCount":57,"unpackedSize":199166,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFd5iAhKPXAxwxGXs7Zgs+kGoWxRtG9qdO0zR4cNcXpSAiAxxRAhsX6dHGxfLzidBV6E3VE4N5erN6JwJUWdVEnp3A=="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.11_1714752538507_0.23143370311336398"},"_hasShrinkwrap":false},"1.1.11-doc.1":{"name":"glede-server","version":"1.1.11-doc.1","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@types/pg":"^8.11.5","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7","pg":"^8.11.5"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.11-doc.1","gitHead":"341a6c119e0c1130186e06e997f4ad4713703cd0","_nodeVersion":"20.12.2","_npmVersion":"10.5.0","dist":{"integrity":"sha512-nFOixV6UtgtP90gZFzI80iSZqYIO1AK1uY00CUl5JzTp983xqMbFUZ2xPs2R2Gbzbxex8KuuXO9ZGX50l7NS/Q==","shasum":"5eb55250ff07a48352bc526491aac9f93dcee7c2","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.11-doc.1.tgz","fileCount":58,"unpackedSize":200964,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE0Cbrr/swUj8xNM8Y4lnfR37ZiAay++eQIEwaWgBT1mAiAWSczzHzcEK+/2bOvwdTBkPskk7orisvARJKBKbeg3cQ=="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.11-doc.1_1714754139024_0.5394358836729709"},"_hasShrinkwrap":false},"1.1.11-doc.2":{"name":"glede-server","version":"1.1.11-doc.2","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@types/pg":"^8.11.5","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7","pg":"^8.11.5"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.11-doc.2","gitHead":"03b4ca1be1cd2027fbf4c1e725c8e3f86c859f33","_nodeVersion":"20.12.2","_npmVersion":"10.5.0","dist":{"integrity":"sha512-66weFrfZM4WWqRaLhYJN8FgCknb5d2QVkbFVZWGWI1PkYZh3RF0agLDwSvHm9p4rzV9Wb+LMZmtlKarIaarw0Q==","shasum":"0f0cfc7420263618e9e7969213494d01968298bf","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.11-doc.2.tgz","fileCount":56,"unpackedSize":257131,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEUgmXruyL6ilsoKY+bqjifiET2yg8aoXHDG66cW+YoZAiEAlQ4abCo/VT/8a5TNxmObV0Y7NIFm1HJc8ZuwV1vlEC4="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.11-doc.2_1714755546069_0.15730832516236837"},"_hasShrinkwrap":false},"1.1.12-doc.1":{"name":"glede-server","version":"1.1.12-doc.1","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@types/pg":"^8.11.5","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7","pg":"^8.11.5"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.12-doc.1","gitHead":"c8f0e4855ebc764f6607d55d936eddd4cd25b88a","_nodeVersion":"20.12.2","_npmVersion":"10.5.0","dist":{"integrity":"sha512-nEQQ7JREQU/7qlSdI5Y8T/IzxM4QXa3Gh9lQvxZbdIVOxxmbrDxgqNblj3sy+sx43c8ycY+KTGzm1mAp6nNh/w==","shasum":"2ab4fa8553c180455634c8e765473d1ddb736dc9","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.12-doc.1.tgz","fileCount":56,"unpackedSize":257182,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGY5kA2/5i8YNcd8y5HKGUghFDAlnQSHg2D9KvPpDA52AiEAtw2mR1RQ+9sdtpT73WGQPn3bNDahPaLa0UlCnfD1Xws="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.12-doc.1_1714806187324_0.41352131858751884"},"_hasShrinkwrap":false},"1.1.13":{"name":"glede-server","version":"1.1.13","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@types/pg":"^8.11.5","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","fastify-multer":"^2.0.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7","pg":"^8.11.5"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.13","gitHead":"cb2d88a91e6c40cc285cc9a478bde3f6ebe71045","_nodeVersion":"20.12.2","_npmVersion":"10.5.0","dist":{"integrity":"sha512-x1czxeTUcbsaUWmhMf3b7zsWxe4RhjFUrlZhzrb2EDEP8jCE7U8gyF2g80TjZrqJwgdqQgXQhqqJ9xI0QJdlCA==","shasum":"1a561a68b033b155625fda2d7385ad07751c813f","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.13.tgz","fileCount":58,"unpackedSize":266751,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEewUpeBpkmBKt/az7yJ7dMevv6PUeaMetYgaZhrd8l8AiAU/M8m6V6uYgCGVULEf2JtRI1/fgNRxZ5QO64HvsKKyg=="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.13_1715161717342_0.6183838956827414"},"_hasShrinkwrap":false},"1.1.13-doc.1":{"name":"glede-server","version":"1.1.13-doc.1","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"index.ts","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@types/pg":"^8.11.5","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","fastify-multer":"^2.0.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7","pg":"^8.11.5"},"devDependencies":{"tsx":"^3.14.0"},"_id":"glede-server@1.1.13-doc.1","gitHead":"cb2d88a91e6c40cc285cc9a478bde3f6ebe71045","_nodeVersion":"20.12.2","_npmVersion":"10.5.0","dist":{"integrity":"sha512-IKpRXwtDRlRAyG87v3pO6b8r9SLNC+Ka20k1I+yLXaVkqvIDenfihwZxc1gwY9KT10iNT6gwPPHzY2SejcdJ5w==","shasum":"1666150a2bb361a706a83cc540bbcf272e714e90","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.13-doc.1.tgz","fileCount":58,"unpackedSize":266830,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDu959E3K0ZWkYJSXlLMNhHN8P52o1bSHiWZegYpbg0gAIgLWMsyNGoMjsWCr6uiqAH3DzQk61tZAQfK6UgsWvM0qE="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.13-doc.1_1715216357998_0.6865185622831591"},"_hasShrinkwrap":false},"1.1.13-doc.2":{"name":"glede-server","version":"1.1.13-doc.2","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"dist/index.js","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app","build":"tsc --project package.config.json"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@types/pg":"^8.11.5","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","fastify-multer":"^2.0.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7","pg":"^8.11.5"},"devDependencies":{"tsx":"^4.9.3"},"_id":"glede-server@1.1.13-doc.2","gitHead":"cb2d88a91e6c40cc285cc9a478bde3f6ebe71045","_nodeVersion":"20.12.2","_npmVersion":"10.5.0","dist":{"integrity":"sha512-bfvyDgLCS9+Q4UhlpbqpuxRWb9KQZNbJ7Yyj09AV4m0mZqHToKiY6LOnRS94QgGvZ5M22/EX3HzU0Mo+E6zhxg==","shasum":"c561cf853e7139f67bcd50634370865bf4bd734b","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.13-doc.2.tgz","fileCount":80,"unpackedSize":275838,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGNyji5V6U+CLL3DUFk3/K7HKvK+4BtvVU7yWSwP46WPAiBB1CuRepH6YnzJCrHJ9oZtsp2xm9/CYJCK2tGN5C6aSA=="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.13-doc.2_1715222757841_0.34568863042194664"},"_hasShrinkwrap":false},"1.1.13-doc.3":{"name":"glede-server","version":"1.1.13-doc.3","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"dist/index.js","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"start":"tsx watch tests/app","build":"tsc --project package.config.json"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@types/pg":"^8.11.5","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","fastify-multer":"^2.0.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nodemailer":"^6.9.7","pg":"^8.11.5"},"devDependencies":{"tsx":"^4.9.3"},"_id":"glede-server@1.1.13-doc.3","gitHead":"52310a4eaf41be69f5197e3450ed1885a4075c67","_nodeVersion":"20.12.2","_npmVersion":"10.5.0","dist":{"integrity":"sha512-N115kdc250csPjE3IhIFwIRCs6OK4fNOrt8nwPo+xkhRD2SzAsGNTG6yTadlEMCOQdcFHzBb+IKTJSvtgAlSuQ==","shasum":"11b770bfaf92a557dabdddadd1f0e0d9e30966a9","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.13-doc.3.tgz","fileCount":26,"unpackedSize":119066,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHovPm/uscKPgp/Mw8b+PstqEt0CQzMXOMcKLdvcCojhAiA+QStMxHaePK5sZ6MILuoZ8A2wFOpg6GjgVMDnsUpJUA=="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.13-doc.3_1715225561233_0.19205206080882875"},"_hasShrinkwrap":false},"1.1.14":{"name":"glede-server","version":"1.1.14","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"dist/index.js","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"build":"tsc --project package.config.json"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@types/pg":"^8.11.5","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","fastify-multer":"^2.0.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nanoid":"^5.0.7","nodemailer":"^6.9.7","pg":"^8.11.5"},"devDependencies":{"tsx":"^4.9.3"},"_id":"glede-server@1.1.14","gitHead":"812a526f8a6fafde948a37bcc0a25fcee4a82430","_nodeVersion":"20.12.2","_npmVersion":"10.5.0","dist":{"integrity":"sha512-el4/MtH/Fcm8KbaKnG2puoHRdjz1DuZFc+qjiexacQGkvm+7agHOyIQQW2WkVoh9pnASMQRv/xYFhiTW+EYb0A==","shasum":"1e62a83cebd03558cc36ca9496f9655061ef2108","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.14.tgz","fileCount":26,"unpackedSize":119434,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD71mngTLnAEBqKIQ014HmMNpoDkcsqHzRUVlPvT1te6wIgMpweaqsJbticC4pq0WVmxJfsNs/8jOoCM8dns+hXL+o="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.14_1715239951897_0.9990580591008151"},"_hasShrinkwrap":false},"1.1.15":{"name":"glede-server","version":"1.1.15","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"dist/index.js","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"build":"tsc --project package.config.json"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@types/pg":"^8.11.5","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","fastify-multer":"^2.0.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nanoid":"^5.0.7","nodemailer":"^6.9.7","pg":"^8.11.5"},"devDependencies":{"tsx":"^4.9.3"},"_id":"glede-server@1.1.15","gitHead":"1e5b90ecd8a98f978cf992e786f963cff8041078","_nodeVersion":"20.12.2","_npmVersion":"10.5.0","dist":{"integrity":"sha512-Kib2EWtSM0PnXqcfB+dFghVNNI5eY1FoiJj9ePrwjGxbxgZBYmPwj+g2yd6vm/iCy+hCgdWCsQchFfz/M3RzqA==","shasum":"56c943782dd98ab8e6282c0cf6b17d8388275988","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.15.tgz","fileCount":26,"unpackedSize":119514,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDW7mRu2p9Y40xlLKr9n1RvWzpU0uW9IDCH2QGkXF7Z1AIhALuJ9iy5LoQDd4QV1MVOq8zTLXlrD9lGSTTgTeLSJiKf"}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.15_1715701335049_0.9991454515992986"},"_hasShrinkwrap":false},"1.1.16":{"name":"glede-server","version":"1.1.16","description":"Web业务服务器","author":{"name":"Perfumere","email":"1061393710@qq.com"},"main":"dist/index.js","types":"types/export.d.ts","engines":{"node":">=16.15.0"},"homepage":"https://github.com/philuo/glede-server","bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"keywords":["fastify","glede","glede-server"],"scripts":{"build":"tsc --project package.config.json"},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"@fastify/swagger":"^8.12.0","@types/pg":"^8.11.5","@yuo/ip2region":"^1.0.3","@yuo/node-cron":"^1.0.2","fastify":"^4.24.3","fastify-multer":"^2.0.3","ioredis":"^5.3.2","mongoose":"^7.6.3","nanoid":"^5.0.7","nodemailer":"^6.9.7","pg":"^8.11.5"},"devDependencies":{"tsx":"^4.9.3"},"_id":"glede-server@1.1.16","gitHead":"3821a2fe46b51d72cc33348708ab49ed2bd0749b","_nodeVersion":"20.12.2","_npmVersion":"10.5.0","dist":{"integrity":"sha512-urQrTk6m3bRRjzuDuV1xU7UB0oEzxY1w9zNZF9vC1IQsONzUv2RToIpxKrcQItdlTeuhY7q9wzitW/VpPiHx2w==","shasum":"fcc95bb4ad98b309293e1e4bf964c1aa230502ff","tarball":"https://registry.npmjs.org/glede-server/-/glede-server-1.1.16.tgz","fileCount":26,"unpackedSize":119514,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFX0kPWJ8ScJkEdmL/wmb/QQJpw5qX+6Ce42F4sn90ggAiA6VC0NXsjy3u5iM/ZHFHmIssgFqhLMfK0jVxQUkMUTHw=="}]},"_npmUser":{"name":"fc1061393710","email":"1061393710@qq.com"},"directories":{},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/glede-server_1.1.16_1716611819530_0.6302073659554772"},"_hasShrinkwrap":false}},"time":{"created":"2022-07-01T21:35:55.739Z","1.0.0":"2022-07-01T21:35:56.049Z","modified":"2024-05-25T04:36:59.911Z","1.0.1":"2022-07-01T21:49:33.117Z","1.0.2":"2022-07-04T11:10:06.565Z","1.0.3":"2022-07-05T07:03:56.856Z","1.0.4":"2022-07-05T07:16:59.130Z","1.0.5":"2022-07-05T09:10:28.878Z","1.0.6":"2022-07-05T14:57:43.452Z","1.0.7":"2022-07-07T07:16:35.163Z","1.0.8":"2022-07-07T07:55:08.757Z","1.0.9":"2022-07-21T19:36:50.952Z","1.0.10":"2022-07-21T19:52:44.681Z","1.0.11":"2022-12-04T15:10:39.575Z","1.0.12":"2022-12-04T15:46:53.358Z","1.0.13":"2022-12-04T16:23:44.557Z","1.0.14":"2022-12-10T15:02:39.200Z","1.0.15":"2022-12-11T14:15:14.276Z","1.0.16":"2022-12-12T14:42:24.086Z","1.0.17":"2022-12-12T17:33:21.955Z","1.0.18":"2023-03-08T08:25:05.884Z","1.1.0":"2023-10-30T08:57:50.540Z","1.1.1":"2023-12-04T08:31:53.999Z","1.1.2":"2023-12-10T10:45:02.916Z","1.1.3":"2023-12-10T11:53:00.587Z","1.1.3-docs.1":"2023-12-10T13:21:35.616Z","1.1.3-docs.2":"2023-12-10T14:23:17.834Z","1.1.4":"2023-12-19T08:28:36.631Z","1.1.5":"2023-12-19T09:55:25.711Z","1.1.5-doc.1":"2023-12-19T10:16:03.441Z","1.1.6":"2023-12-19T14:23:53.058Z","1.1.7":"2023-12-19T15:15:21.266Z","1.1.8":"2024-04-27T10:29:32.971Z","1.1.9":"2024-05-02T10:24:15.294Z","1.1.10":"2024-05-03T13:26:16.086Z","1.1.11":"2024-05-03T16:08:58.708Z","1.1.11-doc.1":"2024-05-03T16:35:39.197Z","1.1.11-doc.2":"2024-05-03T16:59:06.291Z","1.1.12":"2024-05-04T06:53:26.448Z","1.1.12-doc.1":"2024-05-04T07:03:07.497Z","1.1.13":"2024-05-08T09:48:37.566Z","1.1.13-doc.1":"2024-05-09T00:59:18.218Z","1.1.13-doc.2":"2024-05-09T02:45:58.092Z","1.1.13-doc.3":"2024-05-09T03:32:41.399Z","1.1.14":"2024-05-09T07:32:32.201Z","1.1.15":"2024-05-14T15:42:15.180Z","1.1.16":"2024-05-25T04:36:59.690Z"},"maintainers":[{"name":"fc1061393710","email":"1061393710@qq.com"}],"description":"Web业务服务器","homepage":"https://github.com/philuo/glede-server","keywords":["fastify","glede","glede-server"],"author":{"name":"Perfumere","email":"1061393710@qq.com"},"bugs":{"url":"https://github.com/philuo/glede-server","email":"developer@philuo.com"},"license":"MIT","readme":"# GledeServer\n\n## 打包\n\n```\n# 打开文件.npmrc注释掉下面这行, 以便使用镜像快速下载依赖\n<!-- registry=https://registry.npmjs.org -->\n\n# 全局下载Typescript打包依赖\nnpm install -g typescript tsc\n\n# 下载GledeServer打包依赖\nnpm install\n\n# 执行打包\nnpm run build\n```\n\n## 单例模式\n\n目前单个项目中只能创建一个Server实例, 暂时无mono-repo的需求。\n\n若后续使用mono-repo, 则考虑新增配置 `basePath: ''`, \n路由注册、日志记录、文档校验、数据库等操作基于`basePath`\n\n当前文档支持不全, `tests` 目录下有一些基础示例, 另外`d.ts`有些描述，\n若您有任何疑问可联系邮箱 `1061393710@qq.com`\n\n## 基于配置启动\n\n[配置类型描述: GledeServerOpts](./types/index.d.ts)\n\n[JSON配置案例: app.json](./tests/configs/app.json)\n\n**推荐！**[TS配置案例: app-config.ts](./tests/configs/app-config.ts)\n\n配置中的服务驱动配置以及环境环境请您自定义。\n\n[服务器日志信息](./tests/logs/error.log) / \n[注册路由状态树](./tests/logs/routers.txt) /\n[api文档](./tests/logs/apis.json)  ([导入Apifox工具查看](https://www.apifox.cn/help/app/import/swagger/))\n\n## Benchmark\n\n⚡️ `3~4x faster than` [Express](https://github.com/expressjs/express)\n\n`MacOS; Intel-i5 2.9GHz; Memory-DDR4 32 GB`\n\n![压测数据](https://mall.yinzuo.cn/fsfUrl/group1/M00/8B/48/CgCFGWY8Nd6AAXX0AACwP4jFASM649.png)\n\n```ts\n// types/index.d.ts 有详细的描述,手写配置会覆盖conf文件中的对应字段\n// 优先级：代码中手写配置 > conf字段文件配置\ninterface GledeServerOpts {\n    // ...\n}\n\n// app.ts\nimport { Server } from 'glede-server';\n\nServer({ conf: 'configs/app.json' }, (err, address) => {\n    if (err) {\n        console.log(err);\n    }\n    else {\n        console.log(`GledeServer is running at ${address}`);\n    }\n});\n```\n\n## 模版目录结构\n\n- 在您的项目目录下执行 `npm install glede-server` 后参考本项目的`tests`目录创建即可\n- 注意引包时使用 `import {...} from 'glede-server';`\n- 注意引用类型使用 `import type {...} from 'glede-server';`\n\n```\n├── app.ts                      // 服务器启动入口\n├── configs                     // 服务器配置\n│   ├── app-config.ts           // 服务器配置文件 支持ts和json格式, 可配置多个用于区分运行时环境\n│   ├── app.json\n│   └── lua                     // lua脚本目录\n│       ├── index.ts            // lua脚本导出口\n│       └── statList.lua        // 自定义redis lua脚本\n├── tsconfig.json               // ts编译配置\n├── types                       // ts类型描述\n│   ├── server.d.ts             // 默认: /// <reference types=\"glede-server/types\" />\n│   └── redis-lua.ts            // 拓展redis指令类型描述\n├── controllers                 // DAO, 数据操作对象\n│   └── cat.ts\n├── demos                       // 基础使用方式\n├── crons                       // 定时事务\n│   └── test.ts\n├── logs                        // 日志目录\n│   ├── apis.json               // 配置开启swagger, 在运行时执行生成覆盖接口文档\n│   ├── error.log               // 必须存在, 初始化启动需要手动创建\n│   └── routers.txt             // 最新的路由信息, 服务器的路由树\n└── routers                     // 接口目录\n    ├── api\n    ├── common\n    └── openapi\n```\n\n## 路由类\n\n```ts\nimport { GledeRouter, Get, Post } from 'glede-server';\n\nexport class Router extends GledeRouter {\n    // 注意方法不要使用箭头函数\n    // 1. 依赖原型处理逻辑; 2. 注入依赖工具方便处理请求\n\n    getAllUser(this: GledeThis, data: GledeReqData) {\n        // doSomething.\n\n        if (noPass) {\n            return {\n                // 1 客户端参数校验未通过, 业务无需关心\n                // >= 2 自定义\n                code: 2,\n                data: null,\n                msg: '描述错误原因'\n            };\n        }\n\n        // 以下情景等价于返回 {code:0, data: null}\n        // 1. 无return语句\n        // 2. return null\n        // 3. return;\n        // 4. return undefined\n\n        return {\n            code: 0, // 0 处理成功\n            data: {\n                // ...\n            }\n        };\n    }\n}\n```\n\n## [通用方法](./types/index.d.ts)\n\n- [GledeThis](./types/index.d.ts)\n\n- [GledeUtil](./types/export.d.ts)\n\n- [GledeStaticUtil](./types/export.d.ts)\n\n- [Schema](./types/export.d.ts)\n\n- [Model](./types/export.d.ts)\n\n- [ObjectId](./types/export.d.ts)\n\n## 路由注册\n\n### 注册不带前缀的路由\n\n非index文件或目录会保持大小写被记录到路由中，例如示例中`./api/user/index.ts`中`user`会被注册到 /api/user/$subpath。一下示例中index是不会注册到路由中的，若注册`/index`则需装饰器完成需求：@Get('/index')。\n\n`routers/open?api|common/index/index.ts`\n\n`routers/open?api|common/index.ts`\n\n### 严格注册模式\n\n- 除 '/' 路由外，是否携带 / 需注册不同的 `RouterHandler`\n\n`@Get('')` 和 `@Get('/')`监听的是不同的路由,\n\n`localhost:3020/user`和`localhost:3020/user/` 是不同的路由\n\n```ts\n// 目录: routers/api/post\nimport { Post } from '../controllers';\nimport { GledeUtil, Get, GledeRouter } from 'glede-server'\n\nexport default class extends GledeRouter {\n    /**\n     * 删除动态\n     */\n    @Get('/del/:id', { schema: schema.delPost })\n    @NeedAuth('user')\n    async delPost(this: GledeThis, data: GledeReqData) {\n        // Token鉴权通过, 这里可以看到用户身份\n        const { token, payload } = this.getToken();\n        console.log(payload.role, payload.uid, payload.exp);\n\n        // 指定身份 root 0 | super 1 | admin 2 可下架用户文章\n        // const ROLE_USER = 3; 参考类型描述文件 getToken 方法\n        if (payload.role < ROLE_USER) {\n            Post.deleteOne({ postId: data.params.id });\n        }\n\n        // 非管理员, 只能删除自己的文章\n        else {\n            Post.deleteOne({ postId: data.params.id });\n        }\n    }\n}\n```\n\n## 最佳实践\n\n- 为了您能便捷使用GledeServer的装饰器, `装饰器`和`GledeRouter`被挂在了全局变量`GSD`上。\n- 日志打印、数据库模型、高复用代码块儿等挂载到`global`上或`统一导出`在GledeServer初始化前或其他合适时机执行一次。具体操作参考`tests/app.ts & tests/components/service`\n\n\n```ts\n// ./routers/api/xx\nexport class Router extends GSD.GledeRouter {\n  @GSD.Get('/test')\n  test(this: GledeThis, data: GledeReqData) {\n    // do sth\n  }\n}\n```\n\n## 装饰器介绍\n\n### 方法装饰器\n\n> 将Handler装载至路由\n\n- `@Get(url: string, { schema?: GledeGetSchema, version?: string })`\n- `@Post(url: string, { schema?: GledePostSchema, version?: string })`\n\n### 跨域装饰器\n\n> 设置需要跨域的域名、方法、是否允许携带cookie\n\n- `@Cors(origin: string | string[], method: string, credential?: boolean)`\n\n### 鉴权装饰器\n\n> 身份鉴权(noauth | user | admin | super | root), 是否允许Handler处理\nDefault: noauth\n\n- `@NeedAuth(role: string)`\n\n### 验签装饰器\n\n> 签名验证, 是否允许Handler处理\n\n- `@NeedSign()`\n\n```ts\n/**\n * 1. 客户端 摘要过程\n */\n\n// 通过登陆等鉴权接口拿到 'MTcwMjE0MTE0Mzg5M183ODk4.BGZh4oyyHMWAWkiVSJptV5yNb7w'\n\n// 切割取第二部分缓存\nconst signKey = 'BGZh4oyyHMWAWkiVSJptV5yNb7w';\n\n// 切割取第一部分, 需要随请求报文发送到服务端\nconst content = 'MTcwMjE0MTE0Mzg5M183ODk4';\n\n// 要发送的报文体\nconst payload = JSON.stringify({ name: 'Kitty' });\n\n// 同服务端约定的本项目的key\nconst baseKey = '007';\n\n// 请求方法 uppercase\nconst method = 'POST' as 'POST' | 'GET';\n\n// /开头的url上的query\nconst query = '/?test=001';\n\n// 一个空格分割method 和 query\nconst head = method + ' ' + query;\n\nfunction stringify(content) {\n  if (method === 'GET') {\n    return '';\n  }\n  if (method === 'POST') {\n    return typeof content === 'string' ? content : JSON.stringify(content);\n  }\n\n  return '';\n}\n\nfunction getSign(head, payload) {\n  return content + '.' + sha1(signKey + baseKey + head + stringify(payload));\n}\n\nfunction sendRequest() {\n  return fetch('http://localhost:3020/?test=001', {\n    method: 'POST',\n    headers: {\n      signature: getSign(head, payload)\n    },\n    body: stringify(payload)\n  }).then(res => res.json());\n}\n\nsendRequest().then(res => {\n  console.log(res);\n});\n```\n\n## 数据库操作\n\n[mongoose 操作文档](https://mongoosejs.com/docs/api/model.html)\n\n### 定义数据模型\n\n> 📢 参考DEMO: ./tests/controllers/cat.ts <br>\n> cat 对应了数据库中的集合名称 cats, 起名字要使用单数！否则需要指定集合名字\n\n```ts\nimport { Model } from '@/index';\n\n// 模型数据结构\nconst CatSchema = {};\n\n// 模型自定义\nconst CatOpts = {\n    // 指定集合名, 此时集合链接到了cat, 默认是cats\n    collection: 'cat',\n\n    // 添加便捷方法, 注意不要使用箭头函数！\n    // 可以这样使用：Cat.findByName('^cool').then(res => {});\n    statics: {\n        findByName(name: string) {\n            return this.find({ name: new RegExp(name, 'i') });\n        }\n    }\n};\n\nexport default Model('cat', CatSchema, CatOpts);\n```\n\n### 操作数据模型\n\n```ts\nimport Cat from '@/tests/controllers/cat';\n\n// 1. 在Cat表中插入一条数据, 后面Demo默认包裹在try-catch中\ntry {\n    await Cat.create({\n        // 插入数据格式必须是CatSchema中定义, 否则字段会被忽略\n    });\n}\ncatch (err) {/* Handle Error */}\n\n// 2. 在Cat表中查找一条数据, 随便找一只名叫 cool_xx 且小于2岁的🐱\n// 非常不推荐正则, 除非搜索过滤等场景。一般在任何语言中的实现都是最慢最耗性能的模式匹配。\n// 不过有的语言实现了正则的缓存, 可能在某些场景下会快。尽量不用吧！\nCat.findOne({\n    name: new RegExp('^cool_', 'i'),\n    age: { $lt: 2 }\n});\n\n// 3. 在Cat表中找到一条匹配的数据，删除\nCat.deleteOne({});\n\n// 4. 在Cat表中找到所有可以匹配删除的数据\nCat.deleteMany({});\n\n// 5. 在Cat表中找到数据并更新, upsert默认为false, 设置为true不存在就插入\n// 注意原子操作, filter, { $set: { name: '小小明' } }, options\nCat.updateOne({ name: '明' }, { $set: { name: '小明' } }, { upsert: true });\nCat.updateOne({ name: '小明' }, {}, { upsert: true });\n\n// 所有男生, 分数 +1\nCat.updateMany({ sex: 'male' }, { $inc: { score: 1 } });\n\n// 6. 多种操作, 一次通信。性能upup!\n// [https://mongoosejs.com/docs/api/model.html#model_Model.bulkWrite]\nCat.bulkWrite([\n  {\n    insertOne: {\n      document: {\n        name: 'Eddard Stark',\n        title: 'Warden of the North'\n      }\n    }\n  },\n  {\n    updateOne: {\n      filter: { name: 'Eddard Stark' },\n      update: { title: 'Hand of the King' }\n    }\n  },\n  {\n    deleteOne: {\n      filter: { name: 'Eddard Stark' }\n    }\n  }\n]).then(({ insertedCount, modifiedCount, deletedCount }) => {\n    // 1 1 1\n    console.log(insertedCount, modifiedCount, deletedCount);\n});\n```\n\n## 默认记录错误日志\n\n- 默认记录日志, 需要创建对应的目录路径\n- 根目录创建文件: logs/error.log\n\n## 请求需通过Schema校验\n\n- 手动创建Schema\n- [Schema校验采用Ajv6](https://github.com/fastify/docs-chinese/blob/master/docs/Validation-and-Serialization.md)\n\n```ts\n// 新建或修改路由文件\n// mkdir routers/${api | openapi}/${router | routerDir/index.ts}\n// api|openapi目录下存放路由可以是ts文件或目录, 文件内和目录内的Schema定义可相互引用\n// 示例 /routers/api/user/index.ts\nimport { getAllUsersSchema, getAllUsersSchemaV2 } from './schema';\n\nexport Router extends GledeRouter {\n    // version是接口的版本用于线上并行, 可选：默认 '', 如果出现版本区分可填写 v1, v2, ...\n    // schema是参数的拦截校验, 必选：1. 客户端字段安全拦截 2. 增加序列化的性能10%~15% 3. 生成接口文档协同开发\n    // match: /api/v1/:id\n    @Get('/:id', { version: 'v1', schema: getAllUsersSchema }) @Cors()\n    getAllUsers(this: GledeThis, data: GledeReqData): GledeResData {\n        return {\n            code: 0,\n            data: {\n                // ...\n            }\n        }; \n    }\n\n    @Get('/:id', { version: 'v2', schema: getAllUsersSchemaV2 })\n    @Post('/:id', { schema})\n    @NeedAuth('super') @Cors('https://philuo.com', 'GET,POST')\n    getAllUsersV2(this: GledeThis, data: GledeReqData): GledeResData {\n        return {\n            code: 0,\n            data: {\n                // ...\n            }\n        };\n    }\n}\n```\n\n## 集成功能\n\n### 自定义日志输出\n\n```ts\n// @/utils/log.ts\nimport { GledeStaticUtil } from 'glede-server';\nimport { join } from 'path';\n\nexport const logger = new GledeStaticUtil.Logger({\n    // 输出位置, 默认[1]输出到日志文件; [0]输出到控制台, [0, 1]输出到控制台和文件\n    target: [1],\n    // 日志输出的目录, 默认存储在运行node的路径下的logs路径下\n    // !import 注意服务运行中不可以删除 dir目录\n    dir: join(__dirname, 'logs'),\n    // 日志文件名 默认 glede-server.log 如果开启轮转会自动补充后缀\n    // !import 注意服务运行中不可以删除 filename文件, 其他轮转生成的文件可以移动或删除\n    filename: 'glede-server.log',\n    // 日志轮转, 到期生成新的日志文件格式如下 20231210-1411-03-glede-server.log\n    interval: '30d',\n    // 日志大小, 超限生成新的日志文件格式如下 20231210-1411-03-glede-server.log\n    size: '10M',\n    // 控制单个文件大小, 注意开启压缩再使用 超过限制后旧文件会被压缩\n    // maxSize: '10M',\n    // 是否开启压缩, 默认关闭 不允许设置false, 关闭不设置该属性即可\n    // compress: true\n    // 最多保留的最近的日志文件和压缩包数量, 默认全部保留不设置即可\n    // maxFiles: 30\n});\n\nlogger.error('123'); // level === 0\nlogger.warn('123');  // level === 1\nlogger.info('123');  // level === 2\nlogger.log('123', 2);   // 仅输出到控制台, 不干扰日志文件(level可选默认2 INFO级别)\n```\n\n### Token签发与验证\n\n- 实现分发（sign, unsign）\n\n- 实现校验（verify）\n\n```\nif not 过期 -> if not 快过期 -> if match 身份 -> if not 是否篡改 -> if not blklist -> ok\nelse fail -> else -> else fail -> else fail -> else fail\n             if ok then blklist and return data with new token\n             if not ok then fail\n```\n\n\n### 数据库驱动\n\n- `mongoose`\n\n- `ioredis`\n\n### 区域检测\n\n[@yuo/ip2region](https://github.com/philuo/ip2region)\n\n### SMTP邮件发送\n\n[nodemailer](https://www.npmjs.com/package/nodemailer)\n\n### 黑名单\n\n- `ip blklist`\n\n`判黑条件：超管手动添加 / 时间段频率 / 单日访问次数`\n\n- `token blklist`\n\n`判黑条件：超管手动添加 / 即将过期且验证通过的Token`\n\n### 定时任务\n\n[@yuo/node-cron](https://github.com/philuo/node-cron)\n\n\n### 定时任务\n\n- 黑名单持久化\n\n前期直接覆盖磁盘文件\n后面要开线程做去重, 并且可能需要分片\n\n- 邮件通知警告\n\n`触发条件: 程序判定新增IP黑名单`\n","readmeFilename":"README.md"}