{"_id":"@goldenapple/acl","_rev":"47-f405851bc07aec476f4aaeecc4ee1823","name":"@goldenapple/acl","dist-tags":{"latest":"2.21.0"},"versions":{"1.0.3":{"name":"@goldenapple/acl","version":"1.0.3","_id":"@goldenapple/acl@1.0.3","maintainers":[{"name":"eisekson","email":"ksa541@gmail.com"},{"name":"ruro","email":"p26763067@gmail.com"}],"dist":{"shasum":"7be7b5f18268275d3d237b9f2dbf5d67c9728301","tarball":"https://registry.npmjs.org/@goldenapple/acl/-/acl-1.0.3.tgz","fileCount":29,"integrity":"sha512-fVE4wKISEXA7v9g4Rx1JZnNdl0nscou2m/L0aMDWTgO3E+P1khlDfAvjCweeLwqJdPlRxaAVHOjf2zBeVMyfEg==","signatures":[{"sig":"MEYCIQCjnetCynmE13I2IxGKS5J3QkFpgMzQkizhpGYTHn7xYgIhAN0+cespTuUgKMBDnkjFXLXqDXwS9qQhGuG45feynLnF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114602,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdsbHwCRA9TVsSAnZWagAAQTIQAIo1p9HZ9P3tGNGlvWDb\n0eaet9ANyu5wNKbvUPtED3jKcNmrRbR5ZiB35vjYCs8/fqVUs3ZTDZ3v7Ic2\nvj7UTdFi36tAGd5QnPPwGEJIhCNh53cj/tK9XyWUOtavpMxQ6wndhOfIfoTV\nug164sXAl9zf16NvDD3hunjn7ZEJVbIphO5CT9PT+Sa2MadCky5LaGrPNhfZ\nMFu/dZkDpljpHEIpJALzupIJcyBTGGEKC1Wqyv03T05WnF/pUyHo1A27fzg5\nkgMhGPKCIQ42/3oGaXxM6q58LwCJzoWE40kug8DoZZuFRvX/KwNjW2eDNNqz\nnZcpBc1/ka7QpFvFM4heAPFOR4z/lxzPBKLGdkmwob1U2whvf9UnadhEJw45\nw9X2dVX/ppo4VlSHRL6x8jhJfq9f76B4rOCnYUQtkfFszp0J428Zzf/Y+YWJ\nuwKAmf+oVNq5tVHGHxJ+prd0ouEau1S3z1GA3BHpSYKt9ayYUaindCdtMRyD\ni5m6Ku3OgRx7WJmoddcaXN2iSl3uhstDncwPTnqVQyflFPawE1+7JoEtgYJ5\nUaHZHh603D+FYH8YMacR9rg6/x7lPqrYiLnhp3ZnHDNBm/rxcetQHobJXcqL\nAHx0ZWZo6nEdVsijCjW81OsG3VAVVIwOY1XhV8PKrg9kBpH9AeDy5iFBLs8/\nkzyc\r\n=Oh13\r\n-----END PGP SIGNATURE-----\r\n"},"esm5":"esm5/goldenapple-acl.js","main":"bundles/goldenapple-acl.umd.js","fesm5":"fesm5/goldenapple-acl.js","es2015":"fesm2015/goldenapple-acl.js","module":"fesm5/goldenapple-acl.js","esm2015":"esm2015/goldenapple-acl.js","typings":"goldenapple-acl.d.ts","_npmUser":{"name":"ruro","email":"p26763067@gmail.com"},"fesm2015":"fesm2015/goldenapple-acl.js","metadata":"goldenapple-acl.metadata.json","_npmVersion":"6.4.1","description":"路由守衛，Service為必須，Guard、Directive視用途而定","directories":{},"sideEffects":false,"_nodeVersion":"10.15.1","dependencies":{"tslib":"^1.9.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^8.2.11","@angular/common":"^8.2.11"},"_npmOperationalInternal":{"tmp":"tmp/acl_1.0.3_1571926512180_0.571085340011968","host":"s3://npm-registry-packages"}},"1.1.1":{"name":"@goldenapple/acl","version":"1.1.1","_id":"@goldenapple/acl@1.1.1","maintainers":[{"name":"eisekson","email":"ksa541@gmail.com"},{"name":"inanebbs","email":"inanebbs@gmail.com"},{"name":"ruro","email":"p26763067@gmail.com"}],"dist":{"shasum":"cb44b030a4014d93f41d44b0c2e452f090d9c75e","tarball":"https://registry.npmjs.org/@goldenapple/acl/-/acl-1.1.1.tgz","fileCount":29,"integrity":"sha512-0j8klcZ3c01BSwuGN/AW6zB2BiQYDCYAr5MSxvn5iSdp45yP6odKb3NIZOz469EdgI6KtLa/8sdv8NoOzawXGg==","signatures":[{"sig":"MEQCIARHJ5or1xOcychs2Au5xXOl5F6wQBV3CSc0LiT+SEC6AiAMCo0d3qfp9kyGj+Pkr3p6CVLPpo2sK/6NVRz/pPwxpg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125149,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+GHzCRA9TVsSAnZWagAA/1AQAIPuVLc1hiTBKIgo0GsI\nkf9xQGxLP8Th7BQik/NWFTQnc4Qx5aXJoLYftyhpnUXwoVhp6wugTN9qylCl\nWxAe7L5e08tDA4d9Q+rMr01gP2ghjvBg46LckR/ozBmgzjXLHm9gYF/HBAAj\ncob9LdHJFXZ3x0IznvgMwEce5170zR0gaebnnpKQXlvMk/SL4ODMf5QCVf93\nvChICAj+qcK0sZTwG7YOlzvPLfnguxujEHSNbz8u+A0bONurGW8DXR430bJf\n0I5NQRL0UUfFN7BWVHxKJTyvsvz0nyYDFfKK7kW+Ko0DDzWLIOQ4csH/Umkg\nwINEMX9bPkZh0qfB7JpBhftPmLrvyGfhNQ2BBdUdX4zMfe3IZfLhvVZ2wNyD\npEvGIDawv/DCy9X5kK+3bOJTgLqjo3U+KbDTpZ6rA7Opr9PMQgqfAQZgrsKH\nBoX9zXw4tnPyK5sYM434LSb4fRvwWd0ap6TjZA7gJIWcEHw5IDn9IKQEcxIS\nMZcluRRoPsH0g2fxFLDUaKVOHF/oi0eDUutrZj8w2+hJinZjHp8il9iqzvV5\nCTXZkHjpLi8RPjU2LURx+6pRqb7ZMjSu/+fq5fCOe3Y8Hv8FSkM3t6ThXoZa\nQGR0gUah3Gd3ubnXXISvsDp26ZkDlqsgMYpDXU++ICr9dRXDGf+5XYJZGLjH\nqAxv\r\n=YOTb\r\n-----END PGP SIGNATURE-----\r\n"},"esm5":"esm5/goldenapple-acl.js","main":"bundles/goldenapple-acl.umd.js","fesm5":"fesm5/goldenapple-acl.js","es2015":"fesm2015/goldenapple-acl.js","module":"fesm5/goldenapple-acl.js","esm2015":"esm2015/goldenapple-acl.js","typings":"goldenapple-acl.d.ts","_npmUser":{"name":"ruro","email":"p26763067@gmail.com"},"fesm2015":"fesm2015/goldenapple-acl.js","metadata":"goldenapple-acl.metadata.json","_npmVersion":"6.9.0","description":"路由守衛，Service為必須，Guard、Directive視用途而定","directories":{},"sideEffects":false,"_nodeVersion":"10.16.0","dependencies":{"tslib":"^1.9.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^8.2.11","@angular/common":"^8.2.11"},"_npmOperationalInternal":{"tmp":"tmp/acl_1.1.1_1576559091144_0.36425095340896285","host":"s3://npm-registry-packages"}},"2.0.9":{"name":"@goldenapple/acl","version":"2.0.9","_id":"@goldenapple/acl@2.0.9","maintainers":[{"name":"eisekson","email":"ksa541@gmail.com"},{"name":"inanebbs","email":"inanebbs@gmail.com"},{"name":"ruro","email":"p26763067@gmail.com"}],"dist":{"shasum":"59314d5c6f87520eb914c542b0136a2345beaaed","tarball":"https://registry.npmjs.org/@goldenapple/acl/-/acl-2.0.9.tgz","fileCount":29,"integrity":"sha512-E3TQ5KnyfSm5rDs0PQwftTd32mdHyuJDAO7TTwqe8z/TvVtqAKCglUUDsVYdtkcVIDpWjYwNOD66wS91/ukf8g==","signatures":[{"sig":"MEUCIQCc/+nWufg4v1aYfV6qnP3p11h4ZQdhLZkN/ZIIuawUogIgWEnJmF8iTwLq9PlFUA8CYOJY5msUYEuWmGnlzjoghV8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":215159,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJelZOaCRA9TVsSAnZWagAA+koQAIRDip26+hGGCCOPYAgo\nKVLv0GPgxvlIJlbzNr6DLsEhgXJw0oU1rs/nNLQ6WNKmzo0Q5zKciHGEwThF\nZRUupioZuGvHgexryjD9+c4C8paIJAH8J27C56CD3ZcOLPGdtE2rILxESPZZ\neqO+XB7gKLLGWU0fFOwLZZkJl4cDLUGcHyRh0OacDv8+vGRGX/JtG5TM9Pmy\n7g9Tn8koSgqBtIFPxKdaMyAigjZbSGMwYC274MnGzSq0Ua3GpnmtYtug/fvT\n9fJw0w7qFY47yWvfH5OoYiLzhxsxGwJSMqf/DjF6/iE6Mi2oCN5hKMldMzYD\nwUiSLO71WGmOU+NlSoHf8EvLUgLU0wsKANr2btmkjBjhKlaJL9U0dKv5qjhI\nUFE+h2RhTUpaI7QY0moj3UJpd3ZzEJJS15JXKFnlqRPyT75yGPBH1zk7LRq1\n5GpfCJf6DKKgGbrwf40QHh4Uw4PeeRIJwkhCyp/b+mRwO6p4c7hl3NscARIn\nZseD8FIKqptPW03YTPWkObeio74xitlp0w5Tjx2z8jHywiNNzgCvTfxRmxoM\ntJwlRA6fTiTLcJNR2u3jtdus2XBLY8iCq1Mj8HnARS/CFr1KMHSvCsFnkt7R\nanUHmT7yzFRScq75D4RX0r9pJhgNlwYA087LHHVZLZarW2Jvg43upkfqhUpW\nmbPD\r\n=VMQO\r\n-----END PGP SIGNATURE-----\r\n"},"esm5":"esm5/goldenapple-acl.js","main":"bundles/goldenapple-acl.umd.js","fesm5":"fesm5/goldenapple-acl.js","es2015":"fesm2015/goldenapple-acl.js","module":"fesm5/goldenapple-acl.js","esm2015":"esm2015/goldenapple-acl.js","typings":"goldenapple-acl.d.ts","_npmUser":{"name":"ruro","email":"p26763067@gmail.com"},"fesm2015":"fesm2015/goldenapple-acl.js","metadata":"goldenapple-acl.metadata.json","_npmVersion":"6.4.1","description":"路由守衛，Service為必須，Guard、Directive視用途而定","directories":{},"sideEffects":false,"_nodeVersion":"10.15.1","dependencies":{"tslib":"^1.9.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^8.2.11","@angular/common":"^8.2.11"},"_npmOperationalInternal":{"tmp":"tmp/acl_2.0.9_1586860953509_0.36506345861262335","host":"s3://npm-registry-packages"}},"2.1.0":{"name":"@goldenapple/acl","version":"2.1.0","_id":"@goldenapple/acl@2.1.0","maintainers":[{"name":"shih-sian","email":"a3434398434@gmail.com"},{"name":"inanebbs","email":"inanebbs@gmail.com"},{"name":"ruro","email":"p26763067@gmail.com"},{"name":"eisekson","email":"ksa541@gmail.com"}],"dist":{"shasum":"18e7a6f28748cac47bbecf9466bb7a7603eb87cc","tarball":"https://registry.npmjs.org/@goldenapple/acl/-/acl-2.1.0.tgz","fileCount":21,"integrity":"sha512-cLpgVJ6AiWcZRJNLy7Zwc00iccqm8eg2TGROgyK3qwmwcvV/cKJKTGu2XhhSm8mCF4qS4ZByLGQK5FIaRhbUgA==","signatures":[{"sig":"MEUCIQCp7kNumy3dyxXKzAxcqwcp+VngGGX4cIA4gbDq7Qu68gIgeZM8BC0jacm+H8KV2dOos4t79RpGUTrC8zRhMTeiFag=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172281,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJffrP0CRA9TVsSAnZWagAA02IP/3rqg0ZRxBLqG+t5yeOB\nhhf2lZd1TTil79+jMri+3KuQrcSnxUQCeuIVJJ7MA79LHyZLW4NSgVXiPZ3p\nUXq1iHRTEe8mUDN0SDkcfNr2P6/p98LKmIYU4F5/CKYRoGbHH2igI2m/iTvG\nIquvbNciJzBakXxmt319tYoH5yPsl4E8VStpygfhBVidf0d2e1ZSjnBwgmIq\nP8SXRHNtgnKdDmWPpjH52okzzCCYaH+9e74zGg7UT/eZQ1P+pzh/+edau248\nZ/fyfQhc6OMtsAyel7Lru2CtDURi9J4lp9N+ZMoy3aZje/21kPBwUK/JhwRg\nfZFaAVdRL8ZFQBBBJN7nSwpJ0X8nIPGNTcoBhKNTLgcVoO7Pjqg2mb8lT1pt\ncy/f9yDNUxthWgfCQ+vui0W4gXRNHTkngEl/TL3nIq6TCeFXLiQZpR4JtKA6\n5if9KAcrtoQHCyS7UTHOKaU4jmAEShkyMVXPRrRJvqdXczjqfml08dy26Z5G\nOhIcEObr/WWgA4C8fjxqL3rzsVTPcugF87JEuZj2zFiiV5QFLtlB5TwzW6OX\n4fZXkmQjbTKictHsj6s+Lz1MKLqpUNBYsfYt8jTO3HrW/mk7meKTq5omU2uq\nRg6b5w86bpobmF1b1PZTMBd9K694udzj6VcRPafzs9EsQun6EINxPk+s4YPH\nNKhW\r\n=Smw8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"bundles/goldenapple-acl.umd.js","es2015":"fesm2015/goldenapple-acl.js","module":"fesm2015/goldenapple-acl.js","esm2015":"esm2015/goldenapple-acl.js","typings":"goldenapple-acl.d.ts","_npmUser":{"name":"ruro","email":"p26763067@gmail.com"},"fesm2015":"fesm2015/goldenapple-acl.js","metadata":"goldenapple-acl.metadata.json","_npmVersion":"6.14.6","description":"路由守衛，Service為必須，Guard、Directive視用途而定","directories":{},"sideEffects":false,"_nodeVersion":"12.18.3","dependencies":{"tslib":"^2.0.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^10.1.5","@angular/common":"^10.1.5"},"_npmOperationalInternal":{"tmp":"tmp/acl_2.1.0_1602139123352_0.6547223510877613","host":"s3://npm-registry-packages"}},"2.1.1":{"name":"@goldenapple/acl","version":"2.1.1","_id":"@goldenapple/acl@2.1.1","maintainers":[{"name":"eisekson","email":"ksa541@gmail.com"},{"name":"ruro","email":"p26763067@gmail.com"},{"name":"inanebbs","email":"inanebbs@gmail.com"},{"name":"shih-sian","email":"a3434398434@gmail.com"}],"dist":{"shasum":"52531531de812aef33a54d50888c4de96be47098","tarball":"https://registry.npmjs.org/@goldenapple/acl/-/acl-2.1.1.tgz","fileCount":21,"integrity":"sha512-z1pqOEe+KNbQncsCA5mXkoSJVN2jDs+kMcyTPw7xL4MdOwm0quSHm2aC+IJXCfWUYmYR5/XgGLA54wDJP7k31g==","signatures":[{"sig":"MEUCIGEbyKrAwSRihFOg1LAl2ZfBdlTHN39uhuKCCpVYELhNAiEArET9XXx82M+lccZAPF+1SyLkh6CRJo29mPJT9qQho90=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173328,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLLn+CRA9TVsSAnZWagAAIYwP/2jDl8m2lFruOp9g4OZx\nlKxsTAV9NFDXexwmxnYw1T2uMt0FZcAzuhNyctLYX3ogVPjgPlobCuN/yOKo\nvl8NXS6HooGbo+LfnOfkKHQ/oAy3lKmPkggvwaPn+nD8BfLe8ixgodBcorHe\nJH+/kbL4dlZpLuxrhTotFV4aYgsSueGFcIRTT1L3kRmsuNu+Z70YN2issKqD\n4j6sFH/TevW5ADbzM5mIn6J1JZf5tWBgOzhd+QgTUsE6YTs1IHjFdJmJ3Jn6\n1atU88OVOSe+g4f4cvvuoT4PhEjst+8Q4zaA9BY5mPOR2h/uved1bOZSY2ay\nmkhh23H7xdOGLOM6uyR0wb9fL3xfZLLnhDaJ+OVBoP1SrjpAfq7iP3nOgI8/\nKBPaEnaIazbr2NrlGatefHyK/glmjoGIH6p3BHRfpFUszqB47QnaSHPIKFLC\nQLeFrmQadnJogXK8kFGK/+TSc11mfkzn9KsiJw3ug+wE80jrCFskul1w37iv\nKUek+Ab30XIlTPP1XdXGaR56OTKhZI/09zoZPlljocpXShun+Sgd7np9qZuH\nt0rcgApX13u5qUwBUmrAelk3hbSqYY/NfvJfO+1Y4dhcLA/JJwnoU041E35I\naKyWOxkHNYjrZc1AtBqIgv/tAKf9/IXmHRCBtXYAxaBPdccRcyqXM3NDBxDi\neFqM\r\n=pXaB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"bundles/goldenapple-acl.umd.js","es2015":"fesm2015/goldenapple-acl.js","module":"fesm2015/goldenapple-acl.js","esm2015":"esm2015/goldenapple-acl.js","typings":"goldenapple-acl.d.ts","_npmUser":{"name":"ruro","email":"p26763067@gmail.com"},"fesm2015":"fesm2015/goldenapple-acl.js","metadata":"goldenapple-acl.metadata.json","_npmVersion":"6.14.10","description":"路由守衛，Service為必須，Guard、Directive視用途而定","directories":{},"sideEffects":false,"_nodeVersion":"14.15.2","dependencies":{"tslib":"^2.0.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^10.1.5","@angular/common":"^10.1.5"},"_npmOperationalInternal":{"tmp":"tmp/acl_2.1.1_1613543934274_0.890280974929107","host":"s3://npm-registry-packages"}},"2.2.0":{"name":"@goldenapple/acl","version":"2.2.0","_id":"@goldenapple/acl@2.2.0","maintainers":[{"name":"eisekson","email":"ksa541@gmail.com"},{"name":"ruro","email":"p26763067@gmail.com"},{"name":"inanebbs","email":"inanebbs@gmail.com"},{"name":"shih-sian","email":"a3434398434@gmail.com"}],"dist":{"shasum":"1667fac28e2c4e9734ec9072bd5f042d4f1250db","tarball":"https://registry.npmjs.org/@goldenapple/acl/-/acl-2.2.0.tgz","fileCount":21,"integrity":"sha512-/YxhINyZ4FnxpX8fvcYCezr6++LZkochdYokhJIRcnovSTfR63A4vZ6nQ7D8r1hyXrKgSH46CXngAjMS/l7tkA==","signatures":[{"sig":"MEQCIBD4h0YENwVohIR+x7A7+GLfMDP48HPYeSIKdWnlH9KVAiAVLKHp3GB02bgN6zYWBzQumwDejn22XSCeJyvmSGHH1Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173111,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi7JZCRA9TVsSAnZWagAA64gP/1pczuxICGoTev591bbi\ncdhoHiJLtlG9ZuITvHXUMoLbDuaYDPBusCsVQaODk1u/Tx1KYNgEKew73p1w\ny1KW3e21sbVuuXfYOUqUVN/6YyucX+cQyyTKPirndtYdctdmC504DVQvexgF\nQpCpruH6O52KUFSmvu4hEcrIPeErjxUFnpyL2scwk2+CtDEYFcAICtCnBoFc\nLk60P/Q3WFQr12CfEjNk/EwTgjVik/LCi69ZB/CWtE7qZ5JgSaR2B2g7QKVw\nyraHO3VjhOqt1CsD8yBm/1U6v3hwoV6raBZYtV6E+Z7XynU1ZjhqSVkE3nQj\nMnqh81B76v0abBeSNKsd8z/s97ccglTbPywOgK5/McFX9Otf3UbvltwUOQ92\nw1+0/kHV7DayxQQEJvCcAGeHqNA6nUsxMGxVROKWoUtnVqLpJT7PKTqOAj/4\nKRxvcFL/odROGzI64BVQjswVjBqwCe0Nk7m/9meH++n47hrAw37CCnFlCqOF\nJP2ltxXUa/imxu5ZQfIomODRYBePmQjn1x9+/zsqmNWcZlndQ4/mIUqwG/cV\n2gO6qL0p1bZJJwdhat0+3K33dOdpBFHWKRWNFygVPx5/a1q1lTmogTOMHZ0K\nL5RvbJamTAcf4BZhMKaUwjzqZjd2oprELHvqC/setBYiWmm24M9ZTV0KporL\nKuAV\r\n=oEQe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"bundles/goldenapple-acl.umd.js","es2015":"fesm2015/goldenapple-acl.js","module":"fesm2015/goldenapple-acl.js","esm2015":"esm2015/goldenapple-acl.js","typings":"goldenapple-acl.d.ts","_npmUser":{"name":"ruro","email":"p26763067@gmail.com"},"fesm2015":"fesm2015/goldenapple-acl.js","metadata":"goldenapple-acl.metadata.json","_npmVersion":"7.11.1","description":"路由守衛，Service為必須，Guard、Directive視用途而定","directories":{},"sideEffects":false,"_nodeVersion":"14.16.1","dependencies":{"tslib":"^2.0.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^11.2.12","@angular/common":"^11.2.12"},"_npmOperationalInternal":{"tmp":"tmp/acl_2.2.0_1619767896594_0.14759872944051367","host":"s3://npm-registry-packages"}},"3.0.0":{"name":"@goldenapple/acl","version":"3.0.0","_id":"@goldenapple/acl@3.0.0","maintainers":[{"name":"eisekson","email":"ksa541@gmail.com"},{"name":"ruro","email":"p26763067@gmail.com"},{"name":"inanebbs","email":"inanebbs@gmail.com"},{"name":"shih-sian","email":"a3434398434@gmail.com"}],"dist":{"shasum":"1a69be54c94109d026e0b1d73d8a4c323cef9e97","tarball":"https://registry.npmjs.org/@goldenapple/acl/-/acl-3.0.0.tgz","fileCount":18,"integrity":"sha512-9OFzmQBrLhk6LepHoRWXSH2L6s1eOdlB6YTU0TALdGF8CPJD+cfl3jNBdmNRqTihQ6KPtH3f/jUnMhtDh4BuZQ==","signatures":[{"sig":"MEQCIEW989Ai8WM1FMHa6VYP/b/DlAzUmJkBNThTct1IaW/oAiAHyUZ8xSs//OLbVCECvJFNRd44BfDj4zBT3eN4VInIbA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113842,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJitQ1nACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpOMg/+IMaTvh2yuowh0PIkv4bJoXyYJ6qNPjA2HAbVMt+yC7bft6On\r\nSEXunegjH6xa5wyjqZBXjT8bLy869Xxfxb5VFo04yDGLxOPTzfTYiB+4uyZs\r\n0w2ZijEW7T2kMSvXnVc07p33SaQqB8tkukdhUsrWaFwutshQHduNjaUmagpG\r\nu6i7VJ3UABSKlIZqFs7jhvenv9F1fu88fdbRIc7xS9v7dzqIiAhOQU/BqS0r\r\nH7n0GIRqXXI+AC7fVjLdOR3P3cQz647Y6Sp5F6UttFtsdPX5GZVhIsw7ZG39\r\nmLbmen6OXswasP802VKK2Tb0dGDgLO/ohykHIksErytLxBVVXuHt9R0o12Gp\r\nca8zrztQucMukwQmMZDxQ9rylFrLXC+gbQ9zbLnP0fOZNCnNek1bik6lGuY9\r\nufyDHc2k14y1wuD8Tfb7tR35agkvBuRQdmpIKmjr9X+g9z8JDKc8DNDEubja\r\nSVg1cDL/sgWB3NWB7XELz3lVWubiUTOh+Zi7R0hCd/fj2KiUucmPyW2Fs72J\r\nDeZ6hN6kEKQJZ9Ju3T6YHDlVXHBo5/J8yjXBQFU/cxP9cV2eDEhquh/O0HPZ\r\nxAKA7sw4fVNLmBRLF6vq1cBjceHPEbV1RovErnKxnRa0pK5IoADp9RNUsYCj\r\n9DfZ3nRx1X50Ve0s/iKsV7Q9ZAnEfCiGYfY=\r\n=Gqw1\r\n-----END PGP SIGNATURE-----\r\n"},"es2020":"fesm2020/goldenapple-acl.mjs","module":"fesm2015/goldenapple-acl.mjs","esm2020":"esm2020/goldenapple-acl.mjs","exports":{".":{"node":"./fesm2015/goldenapple-acl.mjs","types":"./index.d.ts","es2015":"./fesm2015/goldenapple-acl.mjs","es2020":"./fesm2020/goldenapple-acl.mjs","default":"./fesm2020/goldenapple-acl.mjs","esm2020":"./esm2020/goldenapple-acl.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"9100c335bd36de9ff0e5c61ff8c3bb04e85c57b6","typings":"index.d.ts","_npmUser":{"name":"ruro","email":"p26763067@gmail.com"},"fesm2015":"fesm2015/goldenapple-acl.mjs","fesm2020":"fesm2020/goldenapple-acl.mjs","deprecated":"no 3.0.0","_npmVersion":"8.1.4","description":"路由守衛，Service為必須，Guard、Directive視用途而定","directories":{},"sideEffects":false,"_nodeVersion":"16.13.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^14.0.0","@angular/common":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/acl_3.0.0_1656032614966_0.32949628074423587","host":"s3://npm-registry-packages"}},"2.13.0":{"name":"@goldenapple/acl","version":"2.13.0","_id":"@goldenapple/acl@2.13.0","maintainers":[{"name":"eisekson","email":"ksa541@gmail.com"},{"name":"ruro","email":"p26763067@gmail.com"},{"name":"inanebbs","email":"inanebbs@gmail.com"},{"name":"shih-sian","email":"a3434398434@gmail.com"}],"dist":{"shasum":"73258855e3e1f66205c106b359a60a86cdeb2e28","tarball":"https://registry.npmjs.org/@goldenapple/acl/-/acl-2.13.0.tgz","fileCount":18,"integrity":"sha512-n/gHJ1BvVWGsNzmWLSfkoOQdDld2FyecoVuE/ZwF4bm80GohK3d/UeIgQyuZY8jy4yQgAuAsqhL59ChPPAJUCA==","signatures":[{"sig":"MEYCIQCL7hza/Navw9hvuJyqwt8w6avHuqMbnzZShSWtXTL5twIhAOv2UU2ld/h9wTqVtlqX5lHfS0cr5VnTFLxOzUUNPNJw","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114170,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiuVAfACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpatQ//cnIPhEgjHVa+l8y52xcN3YCYFtlfizx3qDK+70N1FJA5tO/C\r\njfg5oyAnmtyYiOHrIUWrPnbYAkb/x1Di2/zjLnS+GehnVfBhhSyb3hHf+Nsn\r\nkgSxgZkaXwdmLKUzVM98BELDJXT/EgAXnNJcx+zpy7LK3WZCh0i+y8JmOWtX\r\n+/der3JNRCYrPx8GSQTXV/JxmLy10fv3BJHvX+0BQMNMkZVbYqoHqUhM/+hV\r\nvZFBnbuWagjH3w2Pwmv5pkRwGx9IksjeE4mj5i4jNxagm4PnT2vPN872DWx5\r\n6EMc9bX/XkxG4+Cr0kk90Jq7+NlpezqqMHIxGJ5hnWP/L4aLGBcUorixKAfI\r\n93oRJJ09OkRPzMvBv5ATIrWbx6LrdnSz1c+1hH7vCrpOxJsGPMHZlnnCR7x5\r\nWTqgUFK9o75lEFPq04h6012CJJ2q7PQzIlphQNgsHTlp+2eOzndgUCbZ1n/M\r\nT3CAU3uhWJrpAYJtC9OpNAIP1n8d6eph6CA4VhY6fWITxZ7h/c/9AO8Au25X\r\nueopEovfpYGQPxZ8tNXqGExbWsX2KeBcK4PTjjqupfM1d8J8HO1T7vfuinrM\r\nVwNfdVPx4vLM0XjU2johcG5nY6MC0MlsiLrVaaqAyXzoghpAydEGgvoIxscW\r\nDYrZo/dRfbPYUXnVMUCrFlW1vTkydA+DgJE=\r\n=AhQG\r\n-----END PGP SIGNATURE-----\r\n"},"es2020":"fesm2020/goldenapple-acl.mjs","module":"fesm2015/goldenapple-acl.mjs","esm2020":"esm2020/goldenapple-acl.mjs","exports":{".":{"node":"./fesm2015/goldenapple-acl.mjs","types":"./goldenapple-acl.d.ts","es2015":"./fesm2015/goldenapple-acl.mjs","es2020":"./fesm2020/goldenapple-acl.mjs","default":"./fesm2020/goldenapple-acl.mjs","esm2020":"./esm2020/goldenapple-acl.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"9100c335bd36de9ff0e5c61ff8c3bb04e85c57b6","typings":"goldenapple-acl.d.ts","_npmUser":{"name":"ruro","email":"p26763067@gmail.com"},"fesm2015":"fesm2015/goldenapple-acl.mjs","fesm2020":"fesm2020/goldenapple-acl.mjs","_npmVersion":"8.1.4","description":"路由守衛，Service為必須，Guard、Directive視用途而定","directories":{},"sideEffects":false,"_nodeVersion":"16.13.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^13.0.0","@angular/common":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/acl_2.13.0_1656311838799_0.9930461927363006","host":"s3://npm-registry-packages"}},"2.15.0":{"name":"@goldenapple/acl","version":"2.15.0","_id":"@goldenapple/acl@2.15.0","maintainers":[{"name":"eisekson","email":"ksa541@gmail.com"},{"name":"ruro","email":"p26763067@gmail.com"},{"name":"inanebbs","email":"inanebbs@gmail.com"},{"name":"shih-sian","email":"a3434398434@gmail.com"}],"dist":{"shasum":"a17ae51ea7b81522691a7c998556ad88f32806e6","tarball":"https://registry.npmjs.org/@goldenapple/acl/-/acl-2.15.0.tgz","fileCount":18,"integrity":"sha512-Vni+mfLFNSuPOEvtExRCUxudDHv8TafESqt13fl56ljxN60DVuxXiihq5Lvwt/uvLrYgjyWV8Mgd/USBUsSHMQ==","signatures":[{"sig":"MEUCIQCYvKjW2OrJPDkWJtGphz/ICBPMJ/5Hjap+LLjm3OMPkAIgcqAxIVmFVv3zD1UbVvJkNAbO4aeePkpS/QLzgYs7TTk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112729,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvXasACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq7Fg/9G25WeAR+T4pg2j0illCSVIGecdnjR3Y69XrXCrNOsW7WiU7C\r\nmH82Vmgrv/pyD3ZQAqLlyXY8lRk9kMOWRpH7epn9KPMAgpJlxgsxPbS9i8N3\r\nL4cw+KsJDVFI3CsUGYq6fJuxSJPK0AdIp6RsHOw/RKHgD2WcRJseD0saKtGK\r\nmtyKcSWuPHMBTGsPlLZxU0R3OVi2pkqVWt9kET5Xtl4JKFQak+T9/xPtKENs\r\nR4JsHKL90wEzaqrh8rGqE5u9VGPM8mVgfsI3gcHjLHpxcur0i9YkgISp56dy\r\n79+qg0jtMBJqMfxtZ81kPdFlBPWVv53ECZusne6fUwo80u90MP5TLvbXjqOU\r\nD40u5yLfk55kE33t+hbqHIiZkcsaFn4JJfQ14iJHnJcUSxQXL/CWhZTuWNEA\r\n8bGa16YTo0l50mhvLjkdEHcy6GBHYZi81D0VdZRzMvs1g4ql4fnByYf6kFG1\r\nwbWxENbrSJ4pb9NfOBEyQpalgXhleZjKnkVxk11n7n8vfMFibXhQ1FKmzKQx\r\nTQ4zgRoRGfgyQOAhoYMvVlM0fsbienbNOPr8uBqRkbglidD73ye2kU141Jnp\r\noUIVGu4w0EzIjBYcANDadOwbpyANDoMuH4N43+IozuIU7JnWq/6f1BPFY0sT\r\n3Sr14k5anaqNql6DMVgqAzFwziPQUxi4GNw=\r\n=RLmb\r\n-----END PGP SIGNATURE-----\r\n"},"es2020":"fesm2020/goldenapple-acl.mjs","module":"fesm2015/goldenapple-acl.mjs","esm2020":"esm2020/goldenapple-acl.mjs","exports":{".":{"node":"./fesm2015/goldenapple-acl.mjs","types":"./index.d.ts","es2015":"./fesm2015/goldenapple-acl.mjs","es2020":"./fesm2020/goldenapple-acl.mjs","default":"./fesm2020/goldenapple-acl.mjs","esm2020":"./esm2020/goldenapple-acl.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"94e3d3e4df2b1b9abe6e97b285619f3768e0d177","typings":"index.d.ts","_npmUser":{"name":"ruro","email":"p26763067@gmail.com"},"fesm2015":"fesm2015/goldenapple-acl.mjs","fesm2020":"fesm2020/goldenapple-acl.mjs","_npmVersion":"9.2.0","description":"路由守衛，Service為必須，Guard、Directive視用途而定","directories":{},"sideEffects":false,"_nodeVersion":"16.13.1","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^15.0.0","@angular/common":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/acl_2.15.0_1673361068060_0.7502734422248238","host":"s3://npm-registry-packages"}},"2.16.1":{"name":"@goldenapple/acl","version":"2.16.1","_id":"@goldenapple/acl@2.16.1","maintainers":[{"name":"eisekson","email":"ksa541@gmail.com"},{"name":"ruro","email":"p26763067@gmail.com"},{"name":"inanebbs","email":"inanebbs@gmail.com"},{"name":"shih-sian","email":"a3434398434@gmail.com"}],"dist":{"shasum":"dd2c12654b99f607a62d002725c1b0bd69d374e3","tarball":"https://registry.npmjs.org/@goldenapple/acl/-/acl-2.16.1.tgz","fileCount":16,"integrity":"sha512-4fS8jLXaFMnOHJDc+XCpZt1Ua2tNAJudeXY2LOZAtKidpcy7vq7TAZWwywmorzpXhuLIYm6s6xYFK0awQT1PlA==","signatures":[{"sig":"MEUCIDZclnFCzi6psGNx7haOralJDyjDrCpZ414HlbYtjgCZAiEAzvizlfokvstA/FIi5YezHsjPS8GN0oZEZr0GK9VpAAU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":80167},"module":"fesm2022/goldenapple-acl.mjs","exports":{".":{"esm":"./esm2022/goldenapple-acl.mjs","types":"./index.d.ts","default":"./fesm2022/goldenapple-acl.mjs","esm2022":"./esm2022/goldenapple-acl.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"25467dbed4aaf598efcba8e667ccd812b9a76149","typings":"index.d.ts","_npmUser":{"name":"ruro","email":"p26763067@gmail.com"},"_npmVersion":"9.7.2","description":"路由守衛，Service為必須，Guard、Directive視用途而定","directories":{},"sideEffects":false,"_nodeVersion":"18.16.1","dependencies":{"tslib":"^2.6.2"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^16.0.0","@angular/common":"^16.0.0"},"_npmOperationalInternal":{"tmp":"tmp/acl_2.16.1_1697273603990_0.2114664750141233","host":"s3://npm-registry-packages"}},"2.17.0":{"name":"@goldenapple/acl","version":"2.17.0","_id":"@goldenapple/acl@2.17.0","maintainers":[{"name":"eisekson","email":"ksa541@gmail.com"},{"name":"ruro","email":"p26763067@gmail.com"},{"name":"inanebbs","email":"inanebbs@gmail.com"},{"name":"shih-sian","email":"a3434398434@gmail.com"}],"dist":{"shasum":"e10ac5cd8113b24ffc8a0bcfc6e5855010da5af9","tarball":"https://registry.npmjs.org/@goldenapple/acl/-/acl-2.17.0.tgz","fileCount":16,"integrity":"sha512-ShytWjw5uMjokkFABBbqicAd4ln1USoZFoUKuZNqVAxtqvgfWoSNTVXE1MX5Mc2xIYZ+j1xDtcgClFlY7pvo4w==","signatures":[{"sig":"MEQCIFGg7t/R6i1xzhGleesASz3yPEIQcv6zsp9xniGTGk8IAiAuswVgVojDyJOf8jyZ/7oRPBIy5/qUbF55SsdP6IjJnA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":73973},"module":"fesm2022/goldenapple-acl.mjs","exports":{".":{"esm":"./esm2022/goldenapple-acl.mjs","types":"./index.d.ts","default":"./fesm2022/goldenapple-acl.mjs","esm2022":"./esm2022/goldenapple-acl.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"b4bc94a0a4f1492e839c2b75107c8211fcfb7690","typings":"index.d.ts","_npmUser":{"name":"ruro","email":"p26763067@gmail.com"},"_npmVersion":"10.2.4","description":"路由守衛，Service為必須，Guard、Directive視用途而定","directories":{},"sideEffects":false,"_nodeVersion":"20.9.0","dependencies":{"tslib":"^2.6.2"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^17.0.0","@angular/common":"^17.0.0"},"_npmOperationalInternal":{"tmp":"tmp/acl_2.17.0_1704161530568_0.31192319802215773","host":"s3://npm-registry-packages"}},"2.18.0":{"name":"@goldenapple/acl","version":"2.18.0","_id":"@goldenapple/acl@2.18.0","maintainers":[{"name":"eisekson","email":"ksa541@gmail.com"},{"name":"ruro","email":"p26763067@gmail.com"},{"name":"inanebbs","email":"inanebbs@gmail.com"},{"name":"shih-sian","email":"a3434398434@gmail.com"}],"dist":{"shasum":"25a360d24c4f44310fdc089825b579cefb25306b","tarball":"https://registry.npmjs.org/@goldenapple/acl/-/acl-2.18.0.tgz","fileCount":16,"integrity":"sha512-tvKyTqrxaAJTtvSiYUVgY1ONCNcAM5ZWipQVjBCLDbEsmeg4UNnk57Gf5MtiK87qDvEmjvSL4MGo/ExZYFDbjQ==","signatures":[{"sig":"MEUCIQCNy4NzCCGLtklDmiYjmT3r4NQ3AVYA/fNuZZ0ENFZI4wIgckMR0wniVVWUBBsvDeAODd78flI7SAtPNH4JrR5C8Mk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74021},"module":"fesm2022/goldenapple-acl.mjs","exports":{".":{"esm":"./esm2022/goldenapple-acl.mjs","types":"./index.d.ts","default":"./fesm2022/goldenapple-acl.mjs","esm2022":"./esm2022/goldenapple-acl.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"54e4565ccdf306ff816bc18e1ea8853f66b2d919","typings":"index.d.ts","_npmUser":{"name":"ruro","email":"p26763067@gmail.com"},"_npmVersion":"11.6.4","description":"路由守衛，Service為必須，Guard、Directive視用途而定","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"tslib":"^2.6.2"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.8.0","@angular/core":"^18.0.0","@angular/common":"^18.0.0","@angular/router":"^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/acl_2.18.0_1789114777617_0.09635150824933136","host":"s3://npm-registry-packages-npm-production"}},"2.21.0":{"name":"@goldenapple/acl","description":"路由守衛，Service為必須，Guard、Directive視用途而定","version":"2.21.0","peerDependencies":{"@angular/common":"^21.0.0","@angular/core":"^21.0.0","@angular/router":"^21.0.0","rxjs":"^7.8.0"},"dependencies":{"tslib":"^2.6.2"},"module":"fesm2022/goldenapple-acl.mjs","typings":"types/goldenapple-acl.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./types/goldenapple-acl.d.ts","default":"./fesm2022/goldenapple-acl.mjs"}},"sideEffects":false,"type":"module","gitHead":"d317a4d4752c28cf9e9a2eff5ee6fd19c35315e0","_id":"@goldenapple/acl@2.21.0","_nodeVersion":"24.11.1","_npmVersion":"11.6.4","dist":{"integrity":"sha512-Z+CaPEAHZ2WeAQcEN52pkzgElbPejRRbOQ9qsD5Ks6ivN7fZTPqgfeDD9Cd/cZJbQDZnYUYsapnTNw0XZopFqg==","shasum":"7d0709b30e6fe6d4a5fd4f9f36124df139c060e7","tarball":"https://registry.npmjs.org/@goldenapple/acl/-/acl-2.21.0.tgz","fileCount":5,"unpackedSize":41914,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIG2FjLAg6Hy+5DOjWxgq8abXYt4HsWiYtl+T7enL3PO1AiEAgUgL5AYoYX2Hxycbm2YICkqdvLo693+GrZD34ZByNs0="}]},"_npmUser":{"name":"ruro","email":"p26763067@gmail.com"},"directories":{},"maintainers":[{"name":"eisekson","email":"ksa541@gmail.com"},{"name":"ruro","email":"p26763067@gmail.com"},{"name":"inanebbs","email":"inanebbs@gmail.com"},{"name":"shih-sian","email":"a3434398434@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/acl_2.21.0_1789118593792_0.06508332437659559"},"_hasShrinkwrap":false}},"time":{"created":"2019-10-24T10:36:48.668Z","modified":"2026-09-11T09:23:14.111Z","0.0.1":"2019-10-24T10:36:49.020Z","1.0.0":"2019-10-24T11:35:51.051Z","1.0.1":"2019-10-24T11:43:31.078Z","1.0.2":"2019-10-24T11:44:48.608Z","1.0.3":"2019-10-24T14:15:12.426Z","1.1.0":"2019-12-17T04:21:40.564Z","1.1.1":"2019-12-17T05:04:51.339Z","2.0.0":"2020-04-09T14:43:48.618Z","2.0.1":"2020-04-09T15:08:51.955Z","2.0.2":"2020-04-09T15:42:03.309Z","2.0.3":"2020-04-09T16:25:17.187Z","2.0.4":"2020-04-09T16:33:53.514Z","2.0.5":"2020-04-10T07:17:02.470Z","2.0.6":"2020-04-10T07:49:00.182Z","2.0.7":"2020-04-10T09:01:37.225Z","2.0.8":"2020-04-10T13:20:33.462Z","2.0.9":"2020-04-14T10:42:33.659Z","2.1.0":"2020-10-08T06:38:43.579Z","2.1.1":"2021-02-17T06:38:54.423Z","2.2.0":"2021-04-30T07:31:36.776Z","3.0.0":"2022-06-24T01:03:35.138Z","2.13.0":"2022-06-27T06:37:19.014Z","2.15.0":"2023-01-10T14:31:08.257Z","2.16.0":"2023-10-14T08:49:24.168Z","2.16.1":"2023-10-14T08:53:24.223Z","2.17.0":"2024-01-02T02:12:10.753Z","2.18.0":"2026-09-11T08:19:37.755Z","2.21.0":"2026-09-11T09:23:13.926Z"},"description":"路由守衛，Service為必須，Guard、Directive視用途而定","maintainers":[{"name":"eisekson","email":"ksa541@gmail.com"},{"name":"ruro","email":"p26763067@gmail.com"},{"name":"inanebbs","email":"inanebbs@gmail.com"},{"name":"shih-sian","email":"a3434398434@gmail.com"}],"readme":"# import 到要使用的 module 裡\r\n\r\n`Service 為必須，Guard、Directive 視用途而定`\r\n\r\n```ts\r\nimport { AclModule, AclDirectiveModule, AclService, AclGuard } from '@goldenapple/acl';\r\n\r\n// 直接import module\r\n// AclModule已經設定providers=[AclService]\n// AclGuard是functional guard，不需要加入providers\n@NgModule({\r\n  declarations: [...],\r\n  imports: [AclModule, AclDirectiveModule],\r\n  providers: [...],\r\n})\r\nexport class SomeModule {}\r\n\r\n// 或是自己設定providers\r\n@NgModule({\r\n  declarations: [...],\r\n  imports: [AclDirectiveModule],\r\n  providers: [AclService],\n})\nexport class SomeModule {}\n```\r\n\r\n## Guard 使用 ，需要搭配 Service 設定權限\r\n\r\n`AclGuard守衛，針對router設定的權限進行阻擋、跳轉。`\r\n\r\n    在router設定(ex: some-routing.module.ts)，canActivateChild使用會針對所有的children進行阻擋，canActivate只會對單一進行阻擋。\r\n\r\n    data格式:\r\n        gaAcl:Array<string>權限(空值代表必通過)\r\n        gaAclType:符合類型['all':全符合才通過]、['any':符合其一就通過(預設)]\r\n        gaAclUrl:被阻擋後需要跳轉的頁面(可選)\r\n\r\n```ts\r\nimport { AclGuard } from '@goldenapple/acl';\r\n\r\nconst routes: Routes = [\r\n    {\r\n        path: '',\r\n        component: AdminComponent,\r\n        // canActivateChild會針對所有的chieldre進行阻擋\r\n        canActivateChild: [AclGuard],\r\n        children: [\r\n            // 沒有設定，不會進行阻擋\r\n            { path: '', redirectTo: 'ManageStore', pathMatch: 'full' },\r\n            {\r\n                path: 'ManageStore',\r\n                // 權限為'管理員'才能進入，失敗會跳轉到'/admin/login'\r\n                data: { gaAcl: ['管理員'], gaAclType: 'all', gaAclUrl: '/admin/login' },\r\n                loadChildren: () => import('./page/manage-store/manage-store.module').then((m) => m.ManageStoreModule),\r\n            },\r\n        ],\r\n    },\r\n    {\r\n        path: 'guest',\r\n        // canActivate只會阻擋這個router，'訪客'才能進入\r\n        canActivate: [AclGuard],\r\n        data: { gaAcl: ['訪客'], gaAclUrl: '/admin/login' },\r\n        component: GuestComponent,\r\n    },\r\n];\r\n```\r\n\r\n## Service 使用\r\n\r\n`用來設定使用者的權限`\r\n\r\n    方法:\r\n    setAcl(acl: string[]):設定權限 acl:['管理員','一般使用者','老闆']\r\n    checkPermission(acl: string[], type: string = 'any'):檢查是否有權限 acl:['老闆','管理員'] type:符合類型['all':全符合才通過]、['any':符合其一就通過(預設)]\r\n\r\n    變數:\r\n    referrer:跳轉頁面，權限不足時會儲存當下頁面，可以用在登入後跳轉回權限不足的頁面。\r\n    onChangeAcl:可訂閱，當權限發生變化時會觸發，訂閱後記得要取消訂閱。\r\n\r\n```ts\r\nexport class LoginComponent {\r\n    constructor(private router: Router, private aclService: AclService) {}\r\n    async MyLoginApi(account, pw) {\r\n        // TODO: 登入判斷，自己呼叫API去判斷吧\r\n    }\r\n\r\n    // 登入\r\n    async submit(account, pw) {\r\n        try {\r\n            // 登入取得acl\r\n            const { userAcl } = await MyLoginApi(account, pw);\r\n            // 取得跳轉頁面\r\n            const referrer = this.aclService.referrer;\r\n            // 設定acl\r\n            this.aclService.setAcl(userAcl);\r\n            // 有要轉頁面則跳轉\r\n            if (referrer) {\r\n                this.router.navigateByUrl(referrer);\r\n                // 跳轉後記得清空\r\n                this.aclService.referrer = null;\r\n            } else {\r\n                // 沒有跳轉頁面，可以回首頁或是其他想去的地方\r\n                // this.router.navigate(['/home']);\r\n            }\r\n        } catch {}\r\n    }\r\n}\r\n```\r\n\r\n## Directive 使用，需要搭配 Service 設定權限\r\n\r\n`Directive搭配css，可以讓使用者更彈性，他會將沒有權限的元素加上一個叫no-permission的class，要隱藏還是disable都可以自行在css上設定`\r\n\r\n    [gaAcl]:權限設定 [gaAclType]:符合類型 [gaAclAutoDisable]:自動設定disabled\r\n\r\n```css\r\n.no-permission {\r\n    display: none !important;\r\n    /* or */\r\n    pointer-events: none;\r\n    cursor: default;\r\n    opacity: 0.3;\r\n}\r\n```\r\n\r\n```html\r\n<!-- [gaAcl]:權限設定 [gaAclType]:符合類型 -->\r\n<a [gaAcl]=\"['管理員','老闆']\" [gaAclType]=\"'all'\"> 這個連結只有'老闆'且'管理員'才看的到</a>\r\n<a [gaAcl]=\"['管理員','老闆']\" [gaAclType]=\"'any'\"> 這個連結'老闆'或'管理員'都看的到</a>\r\n<button [gaAcl]=\"['管理員','老闆']\" [gaAclAutoDisable]=\"true\">沒權限會被禁用(disabled)</button>\r\n<button [gaAcl]=\"['管理員','老闆']\" [gaAclNoPermissionClass]=\"'is-danger'\" [gaAclHasPermissionClass]=\"'is-info'\">\r\n    有權限時，class新增'is-info'。 沒權限時，class新增'is-danger'。\r\n</button>\r\n```\r\n","readmeFilename":"README.md"}