vue-element-admin/node_modules/.cache/babel-loader/a7d3ee4a8bd73e59c09c58113691240b.json
2025-08-05 23:51:42 +08:00

1 line
33 KiB
JSON

{"remainingRequest":"/Users/kang/Gitea/vue-element-admin-i18n/node_modules/babel-loader/lib/index.js!/Users/kang/Gitea/vue-element-admin-i18n/node_modules/cache-loader/dist/cjs.js??ref--0-0!/Users/kang/Gitea/vue-element-admin-i18n/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/kang/Gitea/vue-element-admin-i18n/src/views/permission/role.vue?vue&type=script&lang=js","dependencies":[{"path":"/Users/kang/Gitea/vue-element-admin-i18n/src/views/permission/role.vue","mtime":1599486365000},{"path":"/Users/kang/Gitea/vue-element-admin-i18n/babel.config.js","mtime":1599486365000},{"path":"/Users/kang/Gitea/vue-element-admin-i18n/node_modules/cache-loader/dist/cjs.js","mtime":1754408227855},{"path":"/Users/kang/Gitea/vue-element-admin-i18n/node_modules/babel-loader/lib/index.js","mtime":1754408228132},{"path":"/Users/kang/Gitea/vue-element-admin-i18n/node_modules/cache-loader/dist/cjs.js","mtime":1754408227855},{"path":"/Users/kang/Gitea/vue-element-admin-i18n/node_modules/vue-loader/lib/index.js","mtime":1754408228175}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0IF9vYmplY3RTcHJlYWQgZnJvbSAiL1VzZXJzL2thbmcvR2l0ZWEvdnVlLWVsZW1lbnQtYWRtaW4taTE4bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vb2JqZWN0U3ByZWFkMi5qcyI7CmltcG9ydCBfdG9Db25zdW1hYmxlQXJyYXkgZnJvbSAiL1VzZXJzL2thbmcvR2l0ZWEvdnVlLWVsZW1lbnQtYWRtaW4taTE4bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vdG9Db25zdW1hYmxlQXJyYXkuanMiOwppbXBvcnQgX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIgZnJvbSAiL1VzZXJzL2thbmcvR2l0ZWEvdnVlLWVsZW1lbnQtYWRtaW4taTE4bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vY3JlYXRlRm9yT2ZJdGVyYXRvckhlbHBlci5qcyI7CmltcG9ydCBfcmVnZW5lcmF0b3IgZnJvbSAiL1VzZXJzL2thbmcvR2l0ZWEvdnVlLWVsZW1lbnQtYWRtaW4taTE4bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vcmVnZW5lcmF0b3IuanMiOwppbXBvcnQgX2FzeW5jVG9HZW5lcmF0b3IgZnJvbSAiL1VzZXJzL2thbmcvR2l0ZWEvdnVlLWVsZW1lbnQtYWRtaW4taTE4bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vYXN5bmNUb0dlbmVyYXRvci5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnN5bWJvbC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnN5bWJvbC5kZXNjcmlwdGlvbi5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LmNvbmNhdC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LmZpbHRlci5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LmluY2x1ZGVzLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkubWFwLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkuc3BsaWNlLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuZnVuY3Rpb24ubmFtZS5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLm9iamVjdC50by1zdHJpbmcuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5zdHJpbmcuaW5jbHVkZXMuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lc25leHQuaXRlcmF0b3IuY29uc3RydWN0b3IuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lc25leHQuaXRlcmF0b3IuZmlsdGVyLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXNuZXh0Lml0ZXJhdG9yLmZvci1lYWNoLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXNuZXh0Lml0ZXJhdG9yLm1hcC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL3dlYi5kb20tY29sbGVjdGlvbnMuZm9yLWVhY2guanMiOwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwoKaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7CmltcG9ydCB7IGRlZXBDbG9uZSB9IGZyb20gJ0AvdXRpbHMnOwppbXBvcnQgeyBnZXRSb3V0ZXMgYXMgX2dldFJvdXRlcywgZ2V0Um9sZXMgYXMgX2dldFJvbGVzLCBhZGRSb2xlLCBkZWxldGVSb2xlLCB1cGRhdGVSb2xlIH0gZnJvbSAnQC9hcGkvcm9sZSc7CmltcG9ydCBfaTE4biBmcm9tICdAL2xhbmcnOwp2YXIgZGVmYXVsdFJvbGUgPSB7CiAga2V5OiAnJywKICBuYW1lOiAnJywKICBkZXNjcmlwdGlvbjogJycsCiAgcm91dGVzOiBbXQp9OwpleHBvcnQgZGVmYXVsdCB7CiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHsKICAgIHJldHVybiB7CiAgICAgIHJvbGU6IE9iamVjdC5hc3NpZ24oe30sIGRlZmF1bHRSb2xlKSwKICAgICAgcm91dGVzOiBbXSwKICAgICAgcm9sZXNMaXN0OiBbXSwKICAgICAgZGlhbG9nVmlzaWJsZTogZmFsc2UsCiAgICAgIGRpYWxvZ1R5cGU6ICduZXcnLAogICAgICBjaGVja1N0cmljdGx5OiBmYWxzZSwKICAgICAgZGVmYXVsdFByb3BzOiB7CiAgICAgICAgY2hpbGRyZW46ICdjaGlsZHJlbicsCiAgICAgICAgbGFiZWw6ICd0aXRsZScKICAgICAgfQogICAgfTsKICB9LAogIGNvbXB1dGVkOiB7CiAgICByb3V0ZXNEYXRhOiBmdW5jdGlvbiByb3V0ZXNEYXRhKCkgewogICAgICByZXR1cm4gdGhpcy5yb3V0ZXM7CiAgICB9CiAgfSwKICBjcmVhdGVkOiBmdW5jdGlvbiBjcmVhdGVkKCkgewogICAgLy8gTW9jazogZ2V0IGFsbCByb3V0ZXMgYW5kIHJvbGVzIGxpc3QgZnJvbSBzZXJ2ZXIKICAgIHRoaXMuZ2V0Um91dGVzKCk7CiAgICB0aGlzLmdldFJvbGVzKCk7CiAgfSwKICBtZXRob2RzOiB7CiAgICBnZXRSb3V0ZXM6IGZ1bmN0aW9uIGdldFJvdXRlcygpIHsKICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgcmV0dXJuIF9hc3luY1RvR2VuZXJhdG9yKC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3IoKS5tKGZ1bmN0aW9uIF9jYWxsZWUoKSB7CiAgICAgICAgdmFyIHJlcywgcm91dGVzOwogICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3IoKS53KGZ1bmN0aW9uIChfY29udGV4dCkgewogICAgICAgICAgd2hpbGUgKDEpIHN3aXRjaCAoX2NvbnRleHQubikgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgX2NvbnRleHQubiA9IDE7CiAgICAgICAgICAgICAgcmV0dXJuIF9nZXRSb3V0ZXMoKTsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIHJlcyA9IF9jb250ZXh0LnY7CiAgICAgICAgICAgICAgX3RoaXMuc2VydmljZVJvdXRlcyA9IHJlcy5kYXRhOwogICAgICAgICAgICAgIHJvdXRlcyA9IF90aGlzLmdlbmVyYXRlUm91dGVzKHJlcy5kYXRhKTsKICAgICAgICAgICAgICBfdGhpcy5yb3V0ZXMgPSBfdGhpcy5pMThuKHJvdXRlcyk7CiAgICAgICAgICAgIGNhc2UgMjoKICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQuYSgyKTsKICAgICAgICAgIH0KICAgICAgICB9LCBfY2FsbGVlKTsKICAgICAgfSkpKCk7CiAgICB9LAogICAgZ2V0Um9sZXM6IGZ1bmN0aW9uIGdldFJvbGVzKCkgewogICAgICB2YXIgX3RoaXMyID0gdGhpczsKICAgICAgcmV0dXJuIF9hc3luY1RvR2VuZXJhdG9yKC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3IoKS5tKGZ1bmN0aW9uIF9jYWxsZWUyKCkgewogICAgICAgIHZhciByZXM7CiAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvcigpLncoZnVuY3Rpb24gKF9jb250ZXh0MikgewogICAgICAgICAgd2hpbGUgKDEpIHN3aXRjaCAoX2NvbnRleHQyLm4pIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgIF9jb250ZXh0Mi5uID0gMTsKICAgICAgICAgICAgICByZXR1cm4gX2dldFJvbGVzKCk7CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICByZXMgPSBfY29udGV4dDIudjsKICAgICAgICAgICAgICBfdGhpczIucm9sZXNMaXN0ID0gcmVzLmRhdGE7CiAgICAgICAgICAgIGNhc2UgMjoKICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQyLmEoMik7CiAgICAgICAgICB9CiAgICAgICAgfSwgX2NhbGxlZTIpOwogICAgICB9KSkoKTsKICAgIH0sCiAgICBpMThuOiBmdW5jdGlvbiBpMThuKHJvdXRlcykgewogICAgICB2YXIgX3RoaXMzID0gdGhpczsKICAgICAgdmFyIGFwcCA9IHJvdXRlcy5tYXAoZnVuY3Rpb24gKHJvdXRlKSB7CiAgICAgICAgcm91dGUudGl0bGUgPSBfaTE4bi50KCJyb3V0ZS4iLmNvbmNhdChyb3V0ZS50aXRsZSkpOwogICAgICAgIGlmIChyb3V0ZS5jaGlsZHJlbikgewogICAgICAgICAgcm91dGUuY2hpbGRyZW4gPSBfdGhpczMuaTE4bihyb3V0ZS5jaGlsZHJlbik7CiAgICAgICAgfQogICAgICAgIHJldHVybiByb3V0ZTsKICAgICAgfSk7CiAgICAgIHJldHVybiBhcHA7CiAgICB9LAogICAgLy8gUmVzaGFwZSB0aGUgcm91dGVzIHN0cnVjdHVyZSBzbyB0aGF0IGl0IGxvb2tzIHRoZSBzYW1lIGFzIHRoZSBzaWRlYmFyCiAgICBnZW5lcmF0ZVJvdXRlczogZnVuY3Rpb24gZ2VuZXJhdGVSb3V0ZXMocm91dGVzKSB7CiAgICAgIHZhciBiYXNlUGF0aCA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogJy8nOwogICAgICB2YXIgcmVzID0gW107CiAgICAgIHZhciBfaXRlcmF0b3IgPSBfY3JlYXRlRm9yT2ZJdGVyYXRvckhlbHBlcihyb3V0ZXMpLAogICAgICAgIF9zdGVwOwogICAgICB0cnkgewogICAgICAgIGZvciAoX2l0ZXJhdG9yLnMoKTsgIShfc3RlcCA9IF9pdGVyYXRvci5uKCkpLmRvbmU7KSB7CiAgICAgICAgICB2YXIgcm91dGUgPSBfc3RlcC52YWx1ZTsKICAgICAgICAgIC8vIHNraXAgc29tZSByb3V0ZQogICAgICAgICAgaWYgKHJvdXRlLmhpZGRlbikgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHZhciBvbmx5T25lU2hvd2luZ0NoaWxkID0gdGhpcy5vbmx5T25lU2hvd2luZ0NoaWxkKHJvdXRlLmNoaWxkcmVuLCByb3V0ZSk7CiAgICAgICAgICBpZiAocm91dGUuY2hpbGRyZW4gJiYgb25seU9uZVNob3dpbmdDaGlsZCAmJiAhcm91dGUuYWx3YXlzU2hvdykgewogICAgICAgICAgICByb3V0ZSA9IG9ubHlPbmVTaG93aW5nQ2hpbGQ7CiAgICAgICAgICB9CiAgICAgICAgICB2YXIgZGF0YSA9IHsKICAgICAgICAgICAgcGF0aDogcGF0aC5yZXNvbHZlKGJhc2VQYXRoLCByb3V0ZS5wYXRoKSwKICAgICAgICAgICAgdGl0bGU6IHJvdXRlLm1ldGEgJiYgcm91dGUubWV0YS50aXRsZQogICAgICAgICAgfTsKCiAgICAgICAgICAvLyByZWN1cnNpdmUgY2hpbGQgcm91dGVzCiAgICAgICAgICBpZiAocm91dGUuY2hpbGRyZW4pIHsKICAgICAgICAgICAgZGF0YS5jaGlsZHJlbiA9IHRoaXMuZ2VuZXJhdGVSb3V0ZXMocm91dGUuY2hpbGRyZW4sIGRhdGEucGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXMucHVzaChkYXRhKTsKICAgICAgICB9CiAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgIF9pdGVyYXRvci5lKGVycik7CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgX2l0ZXJhdG9yLmYoKTsKICAgICAgfQogICAgICByZXR1cm4gcmVzOwogICAgfSwKICAgIGdlbmVyYXRlQXJyOiBmdW5jdGlvbiBnZW5lcmF0ZUFycihyb3V0ZXMpIHsKICAgICAgdmFyIF90aGlzNCA9IHRoaXM7CiAgICAgIHZhciBkYXRhID0gW107CiAgICAgIHJvdXRlcy5mb3JFYWNoKGZ1bmN0aW9uIChyb3V0ZSkgewogICAgICAgIGRhdGEucHVzaChyb3V0ZSk7CiAgICAgICAgaWYgKHJvdXRlLmNoaWxkcmVuKSB7CiAgICAgICAgICB2YXIgdGVtcCA9IF90aGlzNC5nZW5lcmF0ZUFycihyb3V0ZS5jaGlsZHJlbik7CiAgICAgICAgICBpZiAodGVtcC5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgIGRhdGEgPSBbXS5jb25jYXQoX3RvQ29uc3VtYWJsZUFycmF5KGRhdGEpLCBfdG9Db25zdW1hYmxlQXJyYXkodGVtcCkpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfSk7CiAgICAgIHJldHVybiBkYXRhOwogICAgfSwKICAgIGhhbmRsZUFkZFJvbGU6IGZ1bmN0aW9uIGhhbmRsZUFkZFJvbGUoKSB7CiAgICAgIHRoaXMucm9sZSA9IE9iamVjdC5hc3NpZ24oe30sIGRlZmF1bHRSb2xlKTsKICAgICAgaWYgKHRoaXMuJHJlZnMudHJlZSkgewogICAgICAgIHRoaXMuJHJlZnMudHJlZS5zZXRDaGVja2VkTm9kZXMoW10pOwogICAgICB9CiAgICAgIHRoaXMuZGlhbG9nVHlwZSA9ICduZXcnOwogICAgICB0aGlzLmRpYWxvZ1Zpc2libGUgPSB0cnVlOwogICAgfSwKICAgIGhhbmRsZUVkaXQ6IGZ1bmN0aW9uIGhhbmRsZUVkaXQoc2NvcGUpIHsKICAgICAgdmFyIF90aGlzNSA9IHRoaXM7CiAgICAgIHRoaXMuZGlhbG9nVHlwZSA9ICdlZGl0JzsKICAgICAgdGhpcy5kaWFsb2dWaXNpYmxlID0gdHJ1ZTsKICAgICAgdGhpcy5jaGVja1N0cmljdGx5ID0gdHJ1ZTsKICAgICAgdGhpcy5yb2xlID0gZGVlcENsb25lKHNjb3BlLnJvdyk7CiAgICAgIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHsKICAgICAgICB2YXIgcm91dGVzID0gX3RoaXM1LmdlbmVyYXRlUm91dGVzKF90aGlzNS5yb2xlLnJvdXRlcyk7CiAgICAgICAgX3RoaXM1LiRyZWZzLnRyZWUuc2V0Q2hlY2tlZE5vZGVzKF90aGlzNS5nZW5lcmF0ZUFycihyb3V0ZXMpKTsKICAgICAgICAvLyBzZXQgY2hlY2tlZCBzdGF0ZSBvZiBhIG5vZGUgbm90IGFmZmVjdHMgaXRzIGZhdGhlciBhbmQgY2hpbGQgbm9kZXMKICAgICAgICBfdGhpczUuY2hlY2tTdHJpY3RseSA9IGZhbHNlOwogICAgICB9KTsKICAgIH0sCiAgICBoYW5kbGVEZWxldGU6IGZ1bmN0aW9uIGhhbmRsZURlbGV0ZShfcmVmKSB7CiAgICAgIHZhciBfdGhpczYgPSB0aGlzOwogICAgICB2YXIgJGluZGV4ID0gX3JlZi4kaW5kZXgsCiAgICAgICAgcm93ID0gX3JlZi5yb3c7CiAgICAgIHRoaXMuJGNvbmZpcm0oJ0NvbmZpcm0gdG8gcmVtb3ZlIHRoZSByb2xlPycsICdXYXJuaW5nJywgewogICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAnQ29uZmlybScsCiAgICAgICAgY2FuY2VsQnV0dG9uVGV4dDogJ0NhbmNlbCcsCiAgICAgICAgdHlwZTogJ3dhcm5pbmcnCiAgICAgIH0pLnRoZW4oLyojX19QVVJFX18qL19hc3luY1RvR2VuZXJhdG9yKC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3IoKS5tKGZ1bmN0aW9uIF9jYWxsZWUzKCkgewogICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3IoKS53KGZ1bmN0aW9uIChfY29udGV4dDMpIHsKICAgICAgICAgIHdoaWxlICgxKSBzd2l0Y2ggKF9jb250ZXh0My5uKSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICBfY29udGV4dDMubiA9IDE7CiAgICAgICAgICAgICAgcmV0dXJuIGRlbGV0ZVJvbGUocm93LmtleSk7CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICBfdGhpczYucm9sZXNMaXN0LnNwbGljZSgkaW5kZXgsIDEpOwogICAgICAgICAgICAgIF90aGlzNi4kbWVzc2FnZSh7CiAgICAgICAgICAgICAgICB0eXBlOiAnc3VjY2VzcycsCiAgICAgICAgICAgICAgICBtZXNzYWdlOiAnRGVsZXRlIHN1Y2NlZCEnCiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGNhc2UgMjoKICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQzLmEoMik7CiAgICAgICAgICB9CiAgICAgICAgfSwgX2NhbGxlZTMpOwogICAgICB9KSkpLmNhdGNoKGZ1bmN0aW9uIChlcnIpIHsKICAgICAgICBjb25zb2xlLmVycm9yKGVycik7CiAgICAgIH0pOwogICAgfSwKICAgIGdlbmVyYXRlVHJlZTogZnVuY3Rpb24gZ2VuZXJhdGVUcmVlKHJvdXRlcykgewogICAgICB2YXIgYmFzZVBhdGggPSBhcmd1bWVudHMubGVuZ3RoID4gMSAmJiBhcmd1bWVudHNbMV0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1sxXSA6ICcvJzsKICAgICAgdmFyIGNoZWNrZWRLZXlzID0gYXJndW1lbnRzLmxlbmd0aCA+IDIgPyBhcmd1bWVudHNbMl0gOiB1bmRlZmluZWQ7CiAgICAgIHZhciByZXMgPSBbXTsKICAgICAgdmFyIF9pdGVyYXRvcjIgPSBfY3JlYXRlRm9yT2ZJdGVyYXRvckhlbHBlcihyb3V0ZXMpLAogICAgICAgIF9zdGVwMjsKICAgICAgdHJ5IHsKICAgICAgICBmb3IgKF9pdGVyYXRvcjIucygpOyAhKF9zdGVwMiA9IF9pdGVyYXRvcjIubigpKS5kb25lOykgewogICAgICAgICAgdmFyIHJvdXRlID0gX3N0ZXAyLnZhbHVlOwogICAgICAgICAgdmFyIHJvdXRlUGF0aCA9IHBhdGgucmVzb2x2ZShiYXNlUGF0aCwgcm91dGUucGF0aCk7CgogICAgICAgICAgLy8gcmVjdXJzaXZlIGNoaWxkIHJvdXRlcwogICAgICAgICAgaWYgKHJvdXRlLmNoaWxkcmVuKSB7CiAgICAgICAgICAgIHJvdXRlLmNoaWxkcmVuID0gdGhpcy5nZW5lcmF0ZVRyZWUocm91dGUuY2hpbGRyZW4sIHJvdXRlUGF0aCwgY2hlY2tlZEtleXMpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGNoZWNrZWRLZXlzLmluY2x1ZGVzKHJvdXRlUGF0aCkgfHwgcm91dGUuY2hpbGRyZW4gJiYgcm91dGUuY2hpbGRyZW4ubGVuZ3RoID49IDEpIHsKICAgICAgICAgICAgcmVzLnB1c2gocm91dGUpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgX2l0ZXJhdG9yMi5lKGVycik7CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgX2l0ZXJhdG9yMi5mKCk7CiAgICAgIH0KICAgICAgcmV0dXJuIHJlczsKICAgIH0sCiAgICBjb25maXJtUm9sZTogZnVuY3Rpb24gY29uZmlybVJvbGUoKSB7CiAgICAgIHZhciBfdGhpczcgPSB0aGlzOwogICAgICByZXR1cm4gX2FzeW5jVG9HZW5lcmF0b3IoLyojX19QVVJFX18qL19yZWdlbmVyYXRvcigpLm0oZnVuY3Rpb24gX2NhbGxlZTQoKSB7CiAgICAgICAgdmFyIGlzRWRpdCwgY2hlY2tlZEtleXMsIGluZGV4LCBfeWllbGQkYWRkUm9sZSwgZGF0YSwgX3RoaXM3JHJvbGUsIGRlc2NyaXB0aW9uLCBrZXksIG5hbWU7CiAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvcigpLncoZnVuY3Rpb24gKF9jb250ZXh0NCkgewogICAgICAgICAgd2hpbGUgKDEpIHN3aXRjaCAoX2NvbnRleHQ0Lm4pIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgIGlzRWRpdCA9IF90aGlzNy5kaWFsb2dUeXBlID09PSAnZWRpdCc7CiAgICAgICAgICAgICAgY2hlY2tlZEtleXMgPSBfdGhpczcuJHJlZnMudHJlZS5nZXRDaGVja2VkS2V5cygpOwogICAgICAgICAgICAgIF90aGlzNy5yb2xlLnJvdXRlcyA9IF90aGlzNy5nZW5lcmF0ZVRyZWUoZGVlcENsb25lKF90aGlzNy5zZXJ2aWNlUm91dGVzKSwgJy8nLCBjaGVja2VkS2V5cyk7CiAgICAgICAgICAgICAgaWYgKCFpc0VkaXQpIHsKICAgICAgICAgICAgICAgIF9jb250ZXh0NC5uID0gNTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBfY29udGV4dDQubiA9IDE7CiAgICAgICAgICAgICAgcmV0dXJuIHVwZGF0ZVJvbGUoX3RoaXM3LnJvbGUua2V5LCBfdGhpczcucm9sZSk7CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICBpbmRleCA9IDA7CiAgICAgICAgICAgIGNhc2UgMjoKICAgICAgICAgICAgICBpZiAoIShpbmRleCA8IF90aGlzNy5yb2xlc0xpc3QubGVuZ3RoKSkgewogICAgICAgICAgICAgICAgX2NvbnRleHQ0Lm4gPSA0OwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICghKF90aGlzNy5yb2xlc0xpc3RbaW5kZXhdLmtleSA9PT0gX3RoaXM3LnJvbGUua2V5KSkgewogICAgICAgICAgICAgICAgX2NvbnRleHQ0Lm4gPSAzOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF90aGlzNy5yb2xlc0xpc3Quc3BsaWNlKGluZGV4LCAxLCBPYmplY3QuYXNzaWduKHt9LCBfdGhpczcucm9sZSkpOwogICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDQuYSgzLCA0KTsKICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgIGluZGV4Kys7CiAgICAgICAgICAgICAgX2NvbnRleHQ0Lm4gPSAyOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgX2NvbnRleHQ0Lm4gPSA3OwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDU6CiAgICAgICAgICAgICAgX2NvbnRleHQ0Lm4gPSA2OwogICAgICAgICAgICAgIHJldHVybiBhZGRSb2xlKF90aGlzNy5yb2xlKTsKICAgICAgICAgICAgY2FzZSA2OgogICAgICAgICAgICAgIF95aWVsZCRhZGRSb2xlID0gX2NvbnRleHQ0LnY7CiAgICAgICAgICAgICAgZGF0YSA9IF95aWVsZCRhZGRSb2xlLmRhdGE7CiAgICAgICAgICAgICAgX3RoaXM3LnJvbGUua2V5ID0gZGF0YS5rZXk7CiAgICAgICAgICAgICAgX3RoaXM3LnJvbGVzTGlzdC5wdXNoKF90aGlzNy5yb2xlKTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIF90aGlzNyRyb2xlID0gX3RoaXM3LnJvbGUsIGRlc2NyaXB0aW9uID0gX3RoaXM3JHJvbGUuZGVzY3JpcHRpb24sIGtleSA9IF90aGlzNyRyb2xlLmtleSwgbmFtZSA9IF90aGlzNyRyb2xlLm5hbWU7CiAgICAgICAgICAgICAgX3RoaXM3LmRpYWxvZ1Zpc2libGUgPSBmYWxzZTsKICAgICAgICAgICAgICBfdGhpczcuJG5vdGlmeSh7CiAgICAgICAgICAgICAgICB0aXRsZTogJ1N1Y2Nlc3MnLAogICAgICAgICAgICAgICAgZGFuZ2Vyb3VzbHlVc2VIVE1MU3RyaW5nOiB0cnVlLAogICAgICAgICAgICAgICAgbWVzc2FnZTogIlxuICAgICAgICAgICAgPGRpdj5Sb2xlIEtleTogIi5jb25jYXQoa2V5LCAiPC9kaXY+XG4gICAgICAgICAgICA8ZGl2PlJvbGUgTmFtZTogIikuY29uY2F0KG5hbWUsICI8L2Rpdj5cbiAgICAgICAgICAgIDxkaXY+RGVzY3JpcHRpb246ICIpLmNvbmNhdChkZXNjcmlwdGlvbiwgIjwvZGl2PlxuICAgICAgICAgICIpLAogICAgICAgICAgICAgICAgdHlwZTogJ3N1Y2Nlc3MnCiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGNhc2UgODoKICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQ0LmEoMik7CiAgICAgICAgICB9CiAgICAgICAgfSwgX2NhbGxlZTQpOwogICAgICB9KSkoKTsKICAgIH0sCiAgICAvLyByZWZlcmVuY2U6IHNyYy92aWV3L2xheW91dC9jb21wb25lbnRzL1NpZGViYXIvU2lkZWJhckl0ZW0udnVlCiAgICBvbmx5T25lU2hvd2luZ0NoaWxkOiBmdW5jdGlvbiBvbmx5T25lU2hvd2luZ0NoaWxkKCkgewogICAgICB2YXIgY2hpbGRyZW4gPSBhcmd1bWVudHMubGVuZ3RoID4gMCAmJiBhcmd1bWVudHNbMF0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1swXSA6IFtdOwogICAgICB2YXIgcGFyZW50ID0gYXJndW1lbnRzLmxlbmd0aCA+IDEgPyBhcmd1bWVudHNbMV0gOiB1bmRlZmluZWQ7CiAgICAgIHZhciBvbmx5T25lQ2hpbGQgPSBudWxsOwogICAgICB2YXIgc2hvd2luZ0NoaWxkcmVuID0gY2hpbGRyZW4uZmlsdGVyKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgICAgcmV0dXJuICFpdGVtLmhpZGRlbjsKICAgICAgfSk7CgogICAgICAvLyBXaGVuIHRoZXJlIGlzIG9ubHkgb25lIGNoaWxkIHJvdXRlLCB0aGUgY2hpbGQgcm91dGUgaXMgZGlzcGxheWVkIGJ5IGRlZmF1bHQKICAgICAgaWYgKHNob3dpbmdDaGlsZHJlbi5sZW5ndGggPT09IDEpIHsKICAgICAgICBvbmx5T25lQ2hpbGQgPSBzaG93aW5nQ2hpbGRyZW5bMF07CiAgICAgICAgb25seU9uZUNoaWxkLnBhdGggPSBwYXRoLnJlc29sdmUocGFyZW50LnBhdGgsIG9ubHlPbmVDaGlsZC5wYXRoKTsKICAgICAgICByZXR1cm4gb25seU9uZUNoaWxkOwogICAgICB9CgogICAgICAvLyBTaG93IHBhcmVudCBpZiB0aGVyZSBhcmUgbm8gY2hpbGQgcm91dGUgdG8gZGlzcGxheQogICAgICBpZiAoc2hvd2luZ0NoaWxkcmVuLmxlbmd0aCA9PT0gMCkgewogICAgICAgIG9ubHlPbmVDaGlsZCA9IF9vYmplY3RTcHJlYWQoX29iamVjdFNwcmVhZCh7fSwgcGFyZW50KSwge30sIHsKICAgICAgICAgIHBhdGg6ICcnLAogICAgICAgICAgbm9TaG93aW5nQ2hpbGRyZW46IHRydWUKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gb25seU9uZUNoaWxkOwogICAgICB9CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICB9Cn07"},{"version":3,"names":["path","deepClone","getRoutes","getRoles","addRole","deleteRole","updateRole","i18n","defaultRole","key","name","description","routes","data","role","Object","assign","rolesList","dialogVisible","dialogType","checkStrictly","defaultProps","children","label","computed","routesData","created","methods","_this","_asyncToGenerator","_regenerator","m","_callee","res","w","_context","n","v","serviceRoutes","generateRoutes","a","_this2","_callee2","_context2","_this3","app","map","route","title","t","concat","basePath","arguments","length","undefined","_iterator","_createForOfIteratorHelper","_step","s","done","value","hidden","onlyOneShowingChild","alwaysShow","resolve","meta","push","err","e","f","generateArr","_this4","forEach","temp","_toConsumableArray","handleAddRole","$refs","tree","setCheckedNodes","handleEdit","scope","_this5","row","$nextTick","handleDelete","_ref","_this6","$index","$confirm","confirmButtonText","cancelButtonText","type","then","_callee3","_context3","splice","$message","message","catch","console","error","generateTree","checkedKeys","_iterator2","_step2","routePath","includes","confirmRole","_this7","_callee4","isEdit","index","_yield$addRole","_this7$role","_context4","getCheckedKeys","$notify","dangerouslyUseHTMLString","parent","onlyOneChild","showingChildren","filter","item","_objectSpread","noShowingChildren"],"sources":["src/views/permission/role.vue"],"sourcesContent":["<template>\n <div class=\"app-container\">\n <el-button type=\"primary\" @click=\"handleAddRole\">\n {{ $t('permission.addRole') }}\n </el-button>\n\n <el-table :data=\"rolesList\" style=\"width: 100%;margin-top:30px;\" border>\n <el-table-column align=\"center\" label=\"Role Key\" width=\"220\">\n <template slot-scope=\"scope\">\n {{ scope.row.key }}\n </template>\n </el-table-column>\n <el-table-column align=\"center\" label=\"Role Name\" width=\"220\">\n <template slot-scope=\"scope\">\n {{ scope.row.name }}\n </template>\n </el-table-column>\n <el-table-column align=\"header-center\" label=\"Description\">\n <template slot-scope=\"scope\">\n {{ scope.row.description }}\n </template>\n </el-table-column>\n <el-table-column align=\"center\" label=\"Operations\">\n <template slot-scope=\"scope\">\n <el-button type=\"primary\" size=\"small\" @click=\"handleEdit(scope)\">\n {{ $t('permission.editPermission') }}\n </el-button>\n <el-button type=\"danger\" size=\"small\" @click=\"handleDelete(scope)\">\n {{ $t('permission.delete') }}\n </el-button>\n </template>\n </el-table-column>\n </el-table>\n\n <el-dialog :visible.sync=\"dialogVisible\" :title=\"dialogType==='edit'?'Edit Role':'New Role'\">\n <el-form :model=\"role\" label-width=\"80px\" label-position=\"left\">\n <el-form-item label=\"Name\">\n <el-input v-model=\"role.name\" placeholder=\"Role Name\" />\n </el-form-item>\n <el-form-item label=\"Desc\">\n <el-input\n v-model=\"role.description\"\n :autosize=\"{ minRows: 2, maxRows: 4}\"\n type=\"textarea\"\n placeholder=\"Role Description\"\n />\n </el-form-item>\n <el-form-item label=\"Menus\">\n <el-tree ref=\"tree\" :check-strictly=\"checkStrictly\" :data=\"routesData\" :props=\"defaultProps\" show-checkbox node-key=\"path\" class=\"permission-tree\" />\n </el-form-item>\n </el-form>\n <div style=\"text-align:right;\">\n <el-button type=\"danger\" @click=\"dialogVisible=false\">\n {{ $t('permission.cancel') }}\n </el-button>\n <el-button type=\"primary\" @click=\"confirmRole\">\n {{ $t('permission.confirm') }}\n </el-button>\n </div>\n </el-dialog>\n </div>\n</template>\n\n<script>\nimport path from 'path'\nimport { deepClone } from '@/utils'\nimport { getRoutes, getRoles, addRole, deleteRole, updateRole } from '@/api/role'\nimport i18n from '@/lang'\n\nconst defaultRole = {\n key: '',\n name: '',\n description: '',\n routes: []\n}\n\nexport default {\n data() {\n return {\n role: Object.assign({}, defaultRole),\n routes: [],\n rolesList: [],\n dialogVisible: false,\n dialogType: 'new',\n checkStrictly: false,\n defaultProps: {\n children: 'children',\n label: 'title'\n }\n }\n },\n computed: {\n routesData() {\n return this.routes\n }\n },\n created() {\n // Mock: get all routes and roles list from server\n this.getRoutes()\n this.getRoles()\n },\n methods: {\n async getRoutes() {\n const res = await getRoutes()\n this.serviceRoutes = res.data\n const routes = this.generateRoutes(res.data)\n this.routes = this.i18n(routes)\n },\n async getRoles() {\n const res = await getRoles()\n this.rolesList = res.data\n },\n i18n(routes) {\n const app = routes.map(route => {\n route.title = i18n.t(`route.${route.title}`)\n if (route.children) {\n route.children = this.i18n(route.children)\n }\n return route\n })\n return app\n },\n // Reshape the routes structure so that it looks the same as the sidebar\n generateRoutes(routes, basePath = '/') {\n const res = []\n\n for (let route of routes) {\n // skip some route\n if (route.hidden) { continue }\n\n const onlyOneShowingChild = this.onlyOneShowingChild(route.children, route)\n\n if (route.children && onlyOneShowingChild && !route.alwaysShow) {\n route = onlyOneShowingChild\n }\n\n const data = {\n path: path.resolve(basePath, route.path),\n title: route.meta && route.meta.title\n\n }\n\n // recursive child routes\n if (route.children) {\n data.children = this.generateRoutes(route.children, data.path)\n }\n res.push(data)\n }\n return res\n },\n generateArr(routes) {\n let data = []\n routes.forEach(route => {\n data.push(route)\n if (route.children) {\n const temp = this.generateArr(route.children)\n if (temp.length > 0) {\n data = [...data, ...temp]\n }\n }\n })\n return data\n },\n handleAddRole() {\n this.role = Object.assign({}, defaultRole)\n if (this.$refs.tree) {\n this.$refs.tree.setCheckedNodes([])\n }\n this.dialogType = 'new'\n this.dialogVisible = true\n },\n handleEdit(scope) {\n this.dialogType = 'edit'\n this.dialogVisible = true\n this.checkStrictly = true\n this.role = deepClone(scope.row)\n this.$nextTick(() => {\n const routes = this.generateRoutes(this.role.routes)\n this.$refs.tree.setCheckedNodes(this.generateArr(routes))\n // set checked state of a node not affects its father and child nodes\n this.checkStrictly = false\n })\n },\n handleDelete({ $index, row }) {\n this.$confirm('Confirm to remove the role?', 'Warning', {\n confirmButtonText: 'Confirm',\n cancelButtonText: 'Cancel',\n type: 'warning'\n })\n .then(async() => {\n await deleteRole(row.key)\n this.rolesList.splice($index, 1)\n this.$message({\n type: 'success',\n message: 'Delete succed!'\n })\n })\n .catch(err => { console.error(err) })\n },\n generateTree(routes, basePath = '/', checkedKeys) {\n const res = []\n\n for (const route of routes) {\n const routePath = path.resolve(basePath, route.path)\n\n // recursive child routes\n if (route.children) {\n route.children = this.generateTree(route.children, routePath, checkedKeys)\n }\n\n if (checkedKeys.includes(routePath) || (route.children && route.children.length >= 1)) {\n res.push(route)\n }\n }\n return res\n },\n async confirmRole() {\n const isEdit = this.dialogType === 'edit'\n\n const checkedKeys = this.$refs.tree.getCheckedKeys()\n this.role.routes = this.generateTree(deepClone(this.serviceRoutes), '/', checkedKeys)\n\n if (isEdit) {\n await updateRole(this.role.key, this.role)\n for (let index = 0; index < this.rolesList.length; index++) {\n if (this.rolesList[index].key === this.role.key) {\n this.rolesList.splice(index, 1, Object.assign({}, this.role))\n break\n }\n }\n } else {\n const { data } = await addRole(this.role)\n this.role.key = data.key\n this.rolesList.push(this.role)\n }\n\n const { description, key, name } = this.role\n this.dialogVisible = false\n this.$notify({\n title: 'Success',\n dangerouslyUseHTMLString: true,\n message: `\n <div>Role Key: ${key}</div>\n <div>Role Name: ${name}</div>\n <div>Description: ${description}</div>\n `,\n type: 'success'\n })\n },\n // reference: src/view/layout/components/Sidebar/SidebarItem.vue\n onlyOneShowingChild(children = [], parent) {\n let onlyOneChild = null\n const showingChildren = children.filter(item => !item.hidden)\n\n // When there is only one child route, the child route is displayed by default\n if (showingChildren.length === 1) {\n onlyOneChild = showingChildren[0]\n onlyOneChild.path = path.resolve(parent.path, onlyOneChild.path)\n return onlyOneChild\n }\n\n // Show parent if there are no child route to display\n if (showingChildren.length === 0) {\n onlyOneChild = { ... parent, path: '', noShowingChildren: true }\n return onlyOneChild\n }\n\n return false\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.app-container {\n .roles-table {\n margin-top: 30px;\n }\n .permission-tree {\n margin-bottom: 30px;\n }\n}\n</style>\n"],"mappings":"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","ignoreList":[]}]}