xiaofu-ruoyi-vue/node_modules/.cache/babel-loader/a30154fcbffc268d1b0a32c1113...

1 line
62 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

{"remainingRequest":"D:\\workspace\\ruoyi-vue-web\\node_modules\\babel-loader\\lib\\index.js!D:\\workspace\\ruoyi-vue-web\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!D:\\workspace\\ruoyi-vue-web\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\workspace\\ruoyi-vue-web\\src\\components\\Crontab\\result.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\workspace\\ruoyi-vue-web\\src\\components\\Crontab\\result.vue","mtime":1713777651829},{"path":"D:\\workspace\\ruoyi-vue-web\\babel.config.js","mtime":1713777651809},{"path":"D:\\workspace\\ruoyi-vue-web\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\workspace\\ruoyi-vue-web\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"D:\\workspace\\ruoyi-vue-web\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\workspace\\ruoyi-vue-web\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:InVzZSBzdHJpY3QiOwoKT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICJfX2VzTW9kdWxlIiwgewogIHZhbHVlOiB0cnVlCn0pOwpleHBvcnRzLmRlZmF1bHQgPSB2b2lkIDA7CnJlcXVpcmUoImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5wdXNoLmpzIik7CnJlcXVpcmUoImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5zb3J0LmpzIik7CnJlcXVpcmUoImNvcmUtanMvbW9kdWxlcy9lcy5udW1iZXIuY29uc3RydWN0b3IuanMiKTsKcmVxdWlyZSgiY29yZS1qcy9tb2R1bGVzL2VzLnJlZ2V4cC5leGVjLmpzIik7CnJlcXVpcmUoImNvcmUtanMvbW9kdWxlcy9lcy5zdHJpbmcubWF0Y2guanMiKTsKLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KdmFyIF9kZWZhdWx0ID0gZXhwb3J0cy5kZWZhdWx0ID0gewogIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7CiAgICByZXR1cm4gewogICAgICBkYXlSdWxlOiAnJywKICAgICAgZGF5UnVsZVN1cDogJycsCiAgICAgIGRhdGVBcnI6IFtdLAogICAgICByZXN1bHRMaXN0OiBbXSwKICAgICAgaXNTaG93OiBmYWxzZQogICAgfTsKICB9LAogIG5hbWU6ICdjcm9udGFiLXJlc3VsdCcsCiAgbWV0aG9kczogewogICAgLy8g6KGo6L6+5byP5YC85Y+Y5YyW5pe277yM5byA5aeL5Y676K6h566X57uT5p6cCiAgICBleHByZXNzaW9uQ2hhbmdlOiBmdW5jdGlvbiBleHByZXNzaW9uQ2hhbmdlKCkgewogICAgICAvLyDorqHnrpflvIDlp4st6ZqQ6JeP57uT5p6cCiAgICAgIHRoaXMuaXNTaG93ID0gZmFsc2U7CiAgICAgIC8vIOiOt+WPluinhOWImeaVsOe7hFsw56eS44CBMeWIhuOAgTLml7bjgIEz5pel44CBNOaciOOAgTXmmJ/mnJ/jgIE25bm0XQogICAgICB2YXIgcnVsZUFyciA9IHRoaXMuJG9wdGlvbnMucHJvcHNEYXRhLmV4LnNwbGl0KCcgJyk7CiAgICAgIC8vIOeUqOS6juiusOW9lei/m+WFpeW+queOr+eahOasoeaVsAogICAgICB2YXIgbnVtcyA9IDA7CiAgICAgIC8vIOeUqOS6juaaguaXtuWtmOespuWPt+aXtumXtOinhOWImee7k+aenOeahOaVsOe7hAogICAgICB2YXIgcmVzdWx0QXJyID0gW107CiAgICAgIC8vIOiOt+WPluW9k+WJjeaXtumXtOeyvuehruiHs1vlubTjgIHmnIjjgIHml6XjgIHml7bjgIHliIbjgIHnp5JdCiAgICAgIHZhciBuVGltZSA9IG5ldyBEYXRlKCk7CiAgICAgIHZhciBuWWVhciA9IG5UaW1lLmdldEZ1bGxZZWFyKCk7CiAgICAgIHZhciBuTW9udGggPSBuVGltZS5nZXRNb250aCgpICsgMTsKICAgICAgdmFyIG5EYXkgPSBuVGltZS5nZXREYXRlKCk7CiAgICAgIHZhciBuSG91ciA9IG5UaW1lLmdldEhvdXJzKCk7CiAgICAgIHZhciBuTWluID0gblRpbWUuZ2V0TWludXRlcygpOwogICAgICB2YXIgblNlY29uZCA9IG5UaW1lLmdldFNlY29uZHMoKTsKICAgICAgLy8g5qC55o2u6KeE5YiZ6I635Y+W5Yiw6L+RMTAw5bm05Y+v6IO95bm05pWw57uE44CB5pyI5pWw57uE562J562JCiAgICAgIHRoaXMuZ2V0U2Vjb25kQXJyKHJ1bGVBcnJbMF0pOwogICAgICB0aGlzLmdldE1pbkFycihydWxlQXJyWzFdKTsKICAgICAgdGhpcy5nZXRIb3VyQXJyKHJ1bGVBcnJbMl0pOwogICAgICB0aGlzLmdldERheUFycihydWxlQXJyWzNdKTsKICAgICAgdGhpcy5nZXRNb250aEFycihydWxlQXJyWzRdKTsKICAgICAgdGhpcy5nZXRXZWVrQXJyKHJ1bGVBcnJbNV0pOwogICAgICB0aGlzLmdldFllYXJBcnIocnVsZUFycls2XSwgblllYXIpOwogICAgICAvLyDlsIbojrflj5bliLDnmoTmlbDnu4TotYvlgLwt5pa55L6/5L2/55SoCiAgICAgIHZhciBzRGF0ZSA9IHRoaXMuZGF0ZUFyclswXTsKICAgICAgdmFyIG1EYXRlID0gdGhpcy5kYXRlQXJyWzFdOwogICAgICB2YXIgaERhdGUgPSB0aGlzLmRhdGVBcnJbMl07CiAgICAgIHZhciBERGF0ZSA9IHRoaXMuZGF0ZUFyclszXTsKICAgICAgdmFyIE1EYXRlID0gdGhpcy5kYXRlQXJyWzRdOwogICAgICB2YXIgWURhdGUgPSB0aGlzLmRhdGVBcnJbNV07CiAgICAgIC8vIOiOt+WPluW9k+WJjeaXtumXtOWcqOaVsOe7hOS4reeahOe0ouW8lQogICAgICB2YXIgc0lkeCA9IHRoaXMuZ2V0SW5kZXgoc0RhdGUsIG5TZWNvbmQpOwogICAgICB2YXIgbUlkeCA9IHRoaXMuZ2V0SW5kZXgobURhdGUsIG5NaW4pOwogICAgICB2YXIgaElkeCA9IHRoaXMuZ2V0SW5kZXgoaERhdGUsIG5Ib3VyKTsKICAgICAgdmFyIERJZHggPSB0aGlzLmdldEluZGV4KEREYXRlLCBuRGF5KTsKICAgICAgdmFyIE1JZHggPSB0aGlzLmdldEluZGV4KE1EYXRlLCBuTW9udGgpOwogICAgICB2YXIgWUlkeCA9IHRoaXMuZ2V0SW5kZXgoWURhdGUsIG5ZZWFyKTsKICAgICAgLy8g6YeN572u5pyI5pel5pe25YiG56eS55qE5Ye95pWwKOWQjumdoueUqOeahOavlOi+g+WkmikKICAgICAgdmFyIHJlc2V0U2Vjb25kID0gZnVuY3Rpb24gcmVzZXRTZWNvbmQoKSB7CiAgICAgICAgc0lkeCA9IDA7CiAgICAgICAgblNlY29uZCA9IHNEYXRlW3NJZHhdOwogICAgICB9OwogICAgICB2YXIgcmVzZXRNaW4gPSBmdW5jdGlvbiByZXNldE1pbigpIHsKICAgICAgICBtSWR4ID0gMDsKICAgICAgICBuTWluID0gbURhdGVbbUlkeF07CiAgICAgICAgcmVzZXRTZWNvbmQoKTsKICAgICAgfTsKICAgICAgdmFyIHJlc2V0SG91ciA9IGZ1bmN0aW9uIHJlc2V0SG91cigpIHsKICAgICAgICBoSWR4ID0gMDsKICAgICAgICBuSG91ciA9IGhEYXRlW2hJZHhdOwogICAgICAgIHJlc2V0TWluKCk7CiAgICAgIH07CiAgICAgIHZhciByZXNldERheSA9IGZ1bmN0aW9uIHJlc2V0RGF5KCkgewogICAgICAgIERJZHggPSAwOwogICAgICAgIG5EYXkgPSBERGF0ZVtESWR4XTsKICAgICAgICByZXNldEhvdXIoKTsKICAgICAgfTsKICAgICAgdmFyIHJlc2V0TW9udGggPSBmdW5jdGlvbiByZXNldE1vbnRoKCkgewogICAgICAgIE1JZHggPSAwOwogICAgICAgIG5Nb250aCA9IE1EYXRlW01JZHhdOwogICAgICAgIHJlc2V0RGF5KCk7CiAgICAgIH07CiAgICAgIC8vIOWmguaenOW9k+WJjeW5tOS7veS4jeS4uuaVsOe7hOS4reW9k+WJjeWAvAogICAgICBpZiAoblllYXIgIT09IFlEYXRlW1lJZHhdKSB7CiAgICAgICAgcmVzZXRNb250aCgpOwogICAgICB9CiAgICAgIC8vIOWmguaenOW9k+WJjeaciOS7veS4jeS4uuaVsOe7hOS4reW9k+WJjeWAvAogICAgICBpZiAobk1vbnRoICE9PSBNRGF0ZVtNSWR4XSkgewogICAgICAgIHJlc2V0RGF5KCk7CiAgICAgIH0KICAgICAgLy8g5aaC5p6c5b2T5YmN4oCc5pel4oCd5LiN5Li65pWw57uE5Lit5b2T5YmN5YC8CiAgICAgIGlmIChuRGF5ICE9PSBERGF0ZVtESWR4XSkgewogICAgICAgIHJlc2V0SG91cigpOwogICAgICB9CiAgICAgIC8vIOWmguaenOW9k+WJjeKAnOaXtuKAneS4jeS4uuaVsOe7hOS4reW9k+WJjeWAvAogICAgICBpZiAobkhvdXIgIT09IGhEYXRlW2hJZHhdKSB7CiAgICAgICAgcmVzZXRNaW4oKTsKICAgICAgfQogICAgICAvLyDlpoLmnpzlvZPliY3igJzliIbigJ3kuI3kuLrmlbDnu4TkuK3lvZPliY3lgLwKICAgICAgaWYgKG5NaW4gIT09IG1EYXRlW21JZHhdKSB7CiAgICAgICAgcmVzZXRTZWNvbmQoKTsKICAgICAgfQoKICAgICAgLy8g5b6q546v5bm05Lu95pWw57uECiAgICAgIGdvWWVhcjogZm9yICh2YXIgWWkgPSBZSWR4OyBZaSA8IFlEYXRlLmxlbmd0aDsgWWkrKykgewogICAgICAgIHZhciBZWSA9IFlEYXRlW1lpXTsKICAgICAgICAvLyDlpoLmnpzliLDovr7mnIDlpKflgLzml7YKICAgICAgICBpZiAobk1vbnRoID4gTURhdGVbTURhdGUubGVuZ3RoIC0gMV0pIHsKICAgICAgICAgIHJlc2V0TW9udGgoKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICAvLyDlvqrnjq/mnIjku73mlbDnu4QKICAgICAgICBnb01vbnRoOiBmb3IgKHZhciBNaSA9IE1JZHg7IE1pIDwgTURhdGUubGVuZ3RoOyBNaSsrKSB7CiAgICAgICAgICAvLyDotYvlgLzjgIHmlrnkvr/lkI7pnaLov5DnrpcKICAgICAgICAgIHZhciBNTSA9IE1EYXRlW01pXTsKICAgICAgICAgIE1NID0gTU0gPCAxMCA/ICcwJyArIE1NIDogTU07CiAgICAgICAgICAvLyDlpoLmnpzliLDovr7mnIDlpKflgLzml7YKICAgICAgICAgIGlmIChuRGF5ID4gRERhdGVbRERhdGUubGVuZ3RoIC0gMV0pIHsKICAgICAgICAgICAgcmVzZXREYXkoKTsKICAgICAgICAgICAgaWYgKE1pID09IE1EYXRlLmxlbmd0aCAtIDEpIHsKICAgICAgICAgICAgICByZXNldE1vbnRoKCk7CiAgICAgICAgICAgICAgY29udGludWUgZ29ZZWFyOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgLy8g5b6q546v5pel5pyf5pWw57uECiAgICAgICAgICBnb0RheTogZm9yICh2YXIgRGkgPSBESWR4OyBEaSA8IEREYXRlLmxlbmd0aDsgRGkrKykgewogICAgICAgICAgICAvLyDotYvlgLzjgIHmlrnkvr/lkI7pnaLov5DnrpcKICAgICAgICAgICAgdmFyIEREID0gRERhdGVbRGldOwogICAgICAgICAgICB2YXIgdGhpc0REID0gREQgPCAxMCA/ICcwJyArIEREIDogREQ7CgogICAgICAgICAgICAvLyDlpoLmnpzliLDovr7mnIDlpKflgLzml7YKICAgICAgICAgICAgaWYgKG5Ib3VyID4gaERhdGVbaERhdGUubGVuZ3RoIC0gMV0pIHsKICAgICAgICAgICAgICByZXNldEhvdXIoKTsKICAgICAgICAgICAgICBpZiAoRGkgPT0gRERhdGUubGVuZ3RoIC0gMSkgewogICAgICAgICAgICAgICAgcmVzZXREYXkoKTsKICAgICAgICAgICAgICAgIGlmIChNaSA9PSBNRGF0ZS5sZW5ndGggLSAxKSB7CiAgICAgICAgICAgICAgICAgIHJlc2V0TW9udGgoKTsKICAgICAgICAgICAgICAgICAgY29udGludWUgZ29ZZWFyOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY29udGludWUgZ29Nb250aDsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIC8vIOWIpOaWreaXpeacn+eahOWQiOazleaAp++8jOS4jeWQiOazleeahOivneS5n+aYr+i3s+WHuuW9k+WJjeW+queOrwogICAgICAgICAgICBpZiAodGhpcy5jaGVja0RhdGUoWVkgKyAnLScgKyBNTSArICctJyArIHRoaXNERCArICcgMDA6MDA6MDAnKSAhPT0gdHJ1ZSAmJiB0aGlzLmRheVJ1bGUgIT09ICd3b3JrRGF5JyAmJiB0aGlzLmRheVJ1bGUgIT09ICdsYXN0V2VlaycgJiYgdGhpcy5kYXlSdWxlICE9PSAnbGFzdERheScpIHsKICAgICAgICAgICAgICByZXNldERheSgpOwogICAgICAgICAgICAgIGNvbnRpbnVlIGdvTW9udGg7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgLy8g5aaC5p6c5pel5pyf6KeE5YiZ5Lit5pyJ5YC85pe2CiAgICAgICAgICAgIGlmICh0aGlzLmRheVJ1bGUgPT0gJ2xhc3REYXknKSB7CiAgICAgICAgICAgICAgLy8g5aaC5p6c5LiN5piv5ZCI5rOV5pel5pyf5YiZ6ZyA6KaB5bCG5YmN5bCG5pel5pyf6LCD5Yiw5ZCI5rOV5pel5pyf5Y2z5pyI5pyr5pyA5ZCO5LiA5aSpCgogICAgICAgICAgICAgIGlmICh0aGlzLmNoZWNrRGF0ZShZWSArICctJyArIE1NICsgJy0nICsgdGhpc0REICsgJyAwMDowMDowMCcpICE9PSB0cnVlKSB7CiAgICAgICAgICAgICAgICB3aGlsZSAoREQgPiAwICYmIHRoaXMuY2hlY2tEYXRlKFlZICsgJy0nICsgTU0gKyAnLScgKyB0aGlzREQgKyAnIDAwOjAwOjAwJykgIT09IHRydWUpIHsKICAgICAgICAgICAgICAgICAgREQtLTsKICAgICAgICAgICAgICAgICAgdGhpc0REID0gREQgPCAxMCA/ICcwJyArIEREIDogREQ7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZGF5UnVsZSA9PSAnd29ya0RheScpIHsKICAgICAgICAgICAgICAvLyDmoKHpqozlubbosIPmlbTlpoLmnpzmmK8y5pyIMzDlj7fov5nnp43ml6XmnJ/kvKDov5vmnaXml7bpnIDosIPmlbToh7PmraPluLjmnIjlupUKICAgICAgICAgICAgICBpZiAodGhpcy5jaGVja0RhdGUoWVkgKyAnLScgKyBNTSArICctJyArIHRoaXNERCArICcgMDA6MDA6MDAnKSAhPT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgd2hpbGUgKEREID4gMCAmJiB0aGlzLmNoZWNrRGF0ZShZWSArICctJyArIE1NICsgJy0nICsgdGhpc0REICsgJyAwMDowMDowMCcpICE9PSB0cnVlKSB7CiAgICAgICAgICAgICAgICAgIERELS07CiAgICAgICAgICAgICAgICAgIHRoaXNERCA9IEREIDwgMTAgPyAnMCcgKyBERCA6IEREOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAvLyDojrflj5bovr7liLDmnaHku7bnmoTml6XmnJ/mmK/mmJ/mnJ9YCiAgICAgICAgICAgICAgdmFyIHRoaXNXZWVrID0gdGhpcy5mb3JtYXREYXRlKG5ldyBEYXRlKFlZICsgJy0nICsgTU0gKyAnLScgKyB0aGlzREQgKyAnIDAwOjAwOjAwJyksICd3ZWVrJyk7CiAgICAgICAgICAgICAgLy8g5b2T5pif5pyf5pel5pe2CiAgICAgICAgICAgICAgaWYgKHRoaXNXZWVrID09IDEpIHsKICAgICAgICAgICAgICAgIC8vIOWFiOaJvuS4i+S4gOS4quaXpe+8jOW5tuWIpOaWreaYr+WQpuS4uuaciOW6lQogICAgICAgICAgICAgICAgREQrKzsKICAgICAgICAgICAgICAgIHRoaXNERCA9IEREIDwgMTAgPyAnMCcgKyBERCA6IEREOwogICAgICAgICAgICAgICAgLy8g5Yik5pat5LiL5LiA5pel5bey57uP5LiN5piv5ZCI5rOV5pel5pyfCiAgICAgICAgICAgICAgICBpZiAodGhpcy5jaGVja0RhdGUoWVkgKyAnLScgKyBNTSArICctJyArIHRoaXNERCArICcgMDA6MDA6MDAnKSAhPT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgICBERCAtPSAzOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpc1dlZWsgPT0gNykgewogICAgICAgICAgICAgICAgLy8g5b2T5pif5pyfNuaXtuWPqumcgOWIpOaWreS4jeaYrzHlj7flsLHlj6/ov5vooYzmk43kvZwKICAgICAgICAgICAgICAgIGlmICh0aGlzLmRheVJ1bGVTdXAgIT09IDEpIHsKICAgICAgICAgICAgICAgICAgREQtLTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIEREICs9IDI7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZGF5UnVsZSA9PSAnd2Vla0RheScpIHsKICAgICAgICAgICAgICAvLyDlpoLmnpzmjIflrprkuobmmK/mmJ/mnJ/lh6AKICAgICAgICAgICAgICAvLyDojrflj5blvZPliY3ml6XmnJ/mmK/lsZ7kuo7mmJ/mnJ/lh6AKICAgICAgICAgICAgICB2YXIgX3RoaXNXZWVrID0gdGhpcy5mb3JtYXREYXRlKG5ldyBEYXRlKFlZICsgJy0nICsgTU0gKyAnLScgKyBERCArICcgMDA6MDA6MDAnKSwgJ3dlZWsnKTsKICAgICAgICAgICAgICAvLyDmoKHpqozlvZPliY3mmJ/mnJ/mmK/lkKblnKjmmJ/mnJ/msaDvvIhkYXlSdWxlU3Vw77yJ5LitCiAgICAgICAgICAgICAgaWYgKHRoaXMuZGF5UnVsZVN1cC5pbmRleE9mKF90aGlzV2VlaykgPCAwKSB7CiAgICAgICAgICAgICAgICAvLyDlpoLmnpzliLDovr7mnIDlpKflgLzml7YKICAgICAgICAgICAgICAgIGlmIChEaSA9PSBERGF0ZS5sZW5ndGggLSAxKSB7CiAgICAgICAgICAgICAgICAgIHJlc2V0RGF5KCk7CiAgICAgICAgICAgICAgICAgIGlmIChNaSA9PSBNRGF0ZS5sZW5ndGggLSAxKSB7CiAgICAgICAgICAgICAgICAgICAgcmVzZXRNb250aCgpOwogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlIGdvWWVhcjsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBjb250aW51ZSBnb01vbnRoOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZGF5UnVsZSA9PSAnYXNzV2VlaycpIHsKICAgICAgICAgICAgICAvLyDlpoLmnpzmjIflrprkuobmmK/nrKzlh6DlkajnmoTmmJ/mnJ/lh6AKICAgICAgICAgICAgICAvLyDojrflj5bmr4/mnIgx5Y+35piv5bGe5LqO5pif5pyf5YegCiAgICAgICAgICAgICAgdmFyIF90aGlzV2VlazIgPSB0aGlzLmZvcm1hdERhdGUobmV3IERhdGUoWVkgKyAnLScgKyBNTSArICctJyArIEREICsgJyAwMDowMDowMCcpLCAnd2VlaycpOwogICAgICAgICAgICAgIGlmICh0aGlzLmRheVJ1bGVTdXBbMV0gPj0gX3RoaXNXZWVrMikgewogICAgICAgICAgICAgICAgREQgPSAodGhpcy5kYXlSdWxlU3VwWzBdIC0gMSkgKiA3ICsgdGhpcy5kYXlSdWxlU3VwWzFdIC0gX3RoaXNXZWVrMiArIDE7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIEREID0gdGhpcy5kYXlSdWxlU3VwWzBdICogNyArIHRoaXMuZGF5UnVsZVN1cFsxXSAtIF90aGlzV2VlazIgKyAxOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmRheVJ1bGUgPT0gJ2xhc3RXZWVrJykgewogICAgICAgICAgICAgIC8vIOWmguaenOaMh+WumuS6huavj+aciOacgOWQjuS4gOS4quaYn+acn+WHoAogICAgICAgICAgICAgIC8vIOagoemqjOW5tuiwg+aVtOWmguaenOaYrzLmnIgzMOWPt+i/meenjeaXpeacn+S8oOi/m+adpeaXtumcgOiwg+aVtOiHs+ato+W4uOaciOW6lQogICAgICAgICAgICAgIGlmICh0aGlzLmNoZWNrRGF0ZShZWSArICctJyArIE1NICsgJy0nICsgdGhpc0REICsgJyAwMDowMDowMCcpICE9PSB0cnVlKSB7CiAgICAgICAgICAgICAgICB3aGlsZSAoREQgPiAwICYmIHRoaXMuY2hlY2tEYXRlKFlZICsgJy0nICsgTU0gKyAnLScgKyB0aGlzREQgKyAnIDAwOjAwOjAwJykgIT09IHRydWUpIHsKICAgICAgICAgICAgICAgICAgREQtLTsKICAgICAgICAgICAgICAgICAgdGhpc0REID0gREQgPCAxMCA/ICcwJyArIEREIDogREQ7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIC8vIOiOt+WPluaciOacq+acgOWQjuS4gOWkqeaYr+aYn+acn+WHoAogICAgICAgICAgICAgIHZhciBfdGhpc1dlZWszID0gdGhpcy5mb3JtYXREYXRlKG5ldyBEYXRlKFlZICsgJy0nICsgTU0gKyAnLScgKyB0aGlzREQgKyAnIDAwOjAwOjAwJyksICd3ZWVrJyk7CiAgICAgICAgICAgICAgLy8g5om+5Yiw6KaB5rGC5Lit5pyA6L+R55qE6YKj5Liq5pif5pyf5YegCiAgICAgICAgICAgICAgaWYgKHRoaXMuZGF5UnVsZVN1cCA8IF90aGlzV2VlazMpIHsKICAgICAgICAgICAgICAgIEREIC09IF90aGlzV2VlazMgLSB0aGlzLmRheVJ1bGVTdXA7CiAgICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmRheVJ1bGVTdXAgPiBfdGhpc1dlZWszKSB7CiAgICAgICAgICAgICAgICBERCAtPSA3IC0gKHRoaXMuZGF5UnVsZVN1cCAtIF90aGlzV2VlazMpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICAvLyDliKTmlq3ml7bpl7TlgLzmmK/lkKblsI/kuo4xMOe9ruaNouaIkOKAnDA14oCd6L+Z56eN5qC85byPCiAgICAgICAgICAgIEREID0gREQgPCAxMCA/ICcwJyArIEREIDogREQ7CgogICAgICAgICAgICAvLyDlvqrnjq/igJzml7bigJ3mlbDnu4QKICAgICAgICAgICAgZ29Ib3VyOiBmb3IgKHZhciBoaSA9IGhJZHg7IGhpIDwgaERhdGUubGVuZ3RoOyBoaSsrKSB7CiAgICAgICAgICAgICAgdmFyIGhoID0gaERhdGVbaGldIDwgMTAgPyAnMCcgKyBoRGF0ZVtoaV0gOiBoRGF0ZVtoaV07CgogICAgICAgICAgICAgIC8vIOWmguaenOWIsOi+vuacgOWkp+WAvOaXtgogICAgICAgICAgICAgIGlmIChuTWluID4gbURhdGVbbURhdGUubGVuZ3RoIC0gMV0pIHsKICAgICAgICAgICAgICAgIHJlc2V0TWluKCk7CiAgICAgICAgICAgICAgICBpZiAoaGkgPT0gaERhdGUubGVuZ3RoIC0gMSkgewogICAgICAgICAgICAgICAgICByZXNldEhvdXIoKTsKICAgICAgICAgICAgICAgICAgaWYgKERpID09IEREYXRlLmxlbmd0aCAtIDEpIHsKICAgICAgICAgICAgICAgICAgICByZXNldERheSgpOwogICAgICAgICAgICAgICAgICAgIGlmIChNaSA9PSBNRGF0ZS5sZW5ndGggLSAxKSB7CiAgICAgICAgICAgICAgICAgICAgICByZXNldE1vbnRoKCk7CiAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZSBnb1llYXI7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlIGdvTW9udGg7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgY29udGludWUgZ29EYXk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgLy8g5b6q546vIuWIhiLmlbDnu4QKICAgICAgICAgICAgICBnb01pbjogZm9yICh2YXIgbWkgPSBtSWR4OyBtaSA8IG1EYXRlLmxlbmd0aDsgbWkrKykgewogICAgICAgICAgICAgICAgdmFyIG1tID0gbURhdGVbbWldIDwgMTAgPyAnMCcgKyBtRGF0ZVttaV0gOiBtRGF0ZVttaV07CgogICAgICAgICAgICAgICAgLy8g5aaC5p6c5Yiw6L6+5pyA5aSn5YC85pe2CiAgICAgICAgICAgICAgICBpZiAoblNlY29uZCA+IHNEYXRlW3NEYXRlLmxlbmd0aCAtIDFdKSB7CiAgICAgICAgICAgICAgICAgIHJlc2V0U2Vjb25kKCk7CiAgICAgICAgICAgICAgICAgIGlmIChtaSA9PSBtRGF0ZS5sZW5ndGggLSAxKSB7CiAgICAgICAgICAgICAgICAgICAgcmVzZXRNaW4oKTsKICAgICAgICAgICAgICAgICAgICBpZiAoaGkgPT0gaERhdGUubGVuZ3RoIC0gMSkgewogICAgICAgICAgICAgICAgICAgICAgcmVzZXRIb3VyKCk7CiAgICAgICAgICAgICAgICAgICAgICBpZiAoRGkgPT0gRERhdGUubGVuZ3RoIC0gMSkgewogICAgICAgICAgICAgICAgICAgICAgICByZXNldERheSgpOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoTWkgPT0gTURhdGUubGVuZ3RoIC0gMSkgewogICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2V0TW9udGgoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZSBnb1llYXI7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWUgZ29Nb250aDsKICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlIGdvRGF5OwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBjb250aW51ZSBnb0hvdXI7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAvLyDlvqrnjq8i56eSIuaVsOe7hAogICAgICAgICAgICAgICAgZm9yICh2YXIgc2kgPSBzSWR4OyBzaSA8PSBzRGF0ZS5sZW5ndGggLSAxOyBzaSsrKSB7CiAgICAgICAgICAgICAgICAgIHZhciBzcyA9IHNEYXRlW3NpXSA8IDEwID8gJzAnICsgc0RhdGVbc2ldIDogc0RhdGVbc2ldOwogICAgICAgICAgICAgICAgICAvLyDmt7vliqDlvZPliY3ml7bpl7TvvIjml7bpl7TlkIjms5XmgKflnKjml6XmnJ/lvqrnjq/ml7blt7Lnu4/liKTmlq3vvIkKICAgICAgICAgICAgICAgICAgaWYgKE1NICE9PSAnMDAnICYmIEREICE9PSAnMDAnKSB7CiAgICAgICAgICAgICAgICAgICAgcmVzdWx0QXJyLnB1c2goWVkgKyAnLScgKyBNTSArICctJyArIEREICsgJyAnICsgaGggKyAnOicgKyBtbSArICc6JyArIHNzKTsKICAgICAgICAgICAgICAgICAgICBudW1zKys7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgLy8g5aaC5p6c5p2h5pWw5ruh5LqG5bCx6YCA5Ye65b6q546vCiAgICAgICAgICAgICAgICAgIGlmIChudW1zID09IDUpIGJyZWFrIGdvWWVhcjsKICAgICAgICAgICAgICAgICAgLy8g5aaC5p6c5Yiw6L6+5pyA5aSn5YC85pe2CiAgICAgICAgICAgICAgICAgIGlmIChzaSA9PSBzRGF0ZS5sZW5ndGggLSAxKSB7CiAgICAgICAgICAgICAgICAgICAgcmVzZXRTZWNvbmQoKTsKICAgICAgICAgICAgICAgICAgICBpZiAobWkgPT0gbURhdGUubGVuZ3RoIC0gMSkgewogICAgICAgICAgICAgICAgICAgICAgcmVzZXRNaW4oKTsKICAgICAgICAgICAgICAgICAgICAgIGlmIChoaSA9PSBoRGF0ZS5sZW5ndGggLSAxKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJlc2V0SG91cigpOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoRGkgPT0gRERhdGUubGVuZ3RoIC0gMSkgewogICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2V0RGF5KCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKE1pID09IE1EYXRlLmxlbmd0aCAtIDEpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2V0TW9udGgoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlIGdvWWVhcjsKICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWUgZ29Nb250aDsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZSBnb0RheTsKICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlIGdvSG91cjsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgY29udGludWUgZ29NaW47CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gLy9nb1NlY29uZAogICAgICAgICAgICAgIH0gLy9nb01pbgogICAgICAgICAgICB9IC8vZ29Ib3VyCiAgICAgICAgICB9IC8vZ29EYXkKICAgICAgICB9IC8vZ29Nb250aAogICAgICB9CiAgICAgIC8vIOWIpOaWrTEwMOW5tOWGheeahOe7k+aenOadoeaVsAogICAgICBpZiAocmVzdWx0QXJyLmxlbmd0aCA9PSAwKSB7CiAgICAgICAgdGhpcy5yZXN1bHRMaXN0ID0gWyfmsqHmnInovr7liLDmnaHku7bnmoTnu5PmnpzvvIEnXTsKICAgICAgfSBlbHNlIHsKICAgICAgICB0aGlzLnJlc3VsdExpc3QgPSByZXN1bHRBcnI7CiAgICAgICAgaWYgKHJlc3VsdEFyci5sZW5ndGggIT09IDUpIHsKICAgICAgICAgIHRoaXMucmVzdWx0TGlzdC5wdXNoKCfmnIDov5ExMDDlubTlhoXlj6rmnInkuIrpnaInICsgcmVzdWx0QXJyLmxlbmd0aCArICfmnaHnu5PmnpzvvIEnKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgLy8g6K6h566X5a6M5oiQLeaYvuekuue7k+aenAogICAgICB0aGlzLmlzU2hvdyA9IHRydWU7CiAgICB9LAogICAgLy8g55So5LqO6K6h566X5p+Q5L2N5pWw5a2X5Zyo5pWw57uE5Lit55qE57Si5byVCiAgICBnZXRJbmRleDogZnVuY3Rpb24gZ2V0SW5kZXgoYXJyLCB2YWx1ZSkgewogICAgICBpZiAodmFsdWUgPD0gYXJyWzBdIHx8IHZhbHVlID4gYXJyW2Fyci5sZW5ndGggLSAxXSkgewogICAgICAgIHJldHVybiAwOwogICAgICB9IGVsc2UgewogICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYXJyLmxlbmd0aCAtIDE7IGkrKykgewogICAgICAgICAgaWYgKHZhbHVlID4gYXJyW2ldICYmIHZhbHVlIDw9IGFycltpICsgMV0pIHsKICAgICAgICAgICAgcmV0dXJuIGkgKyAxOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgfSwKICAgIC8vIOiOt+WPliLlubQi5pWw57uECiAgICBnZXRZZWFyQXJyOiBmdW5jdGlvbiBnZXRZZWFyQXJyKHJ1bGUsIHllYXIpIHsKICAgICAgdGhpcy5kYXRlQXJyWzVdID0gdGhpcy5nZXRPcmRlckFycih5ZWFyLCB5ZWFyICsgMTAwKTsKICAgICAgaWYgKHJ1bGUgIT09IHVuZGVmaW5lZCkgewogICAgICAgIGlmIChydWxlLmluZGV4T2YoJy0nKSA+PSAwKSB7CiAgICAgICAgICB0aGlzLmRhdGVBcnJbNV0gPSB0aGlzLmdldEN5Y2xlQXJyKHJ1bGUsIHllYXIgKyAxMDAsIGZhbHNlKTsKICAgICAgICB9IGVsc2UgaWYgKHJ1bGUuaW5kZXhPZignLycpID49IDApIHsKICAgICAgICAgIHRoaXMuZGF0ZUFycls1XSA9IHRoaXMuZ2V0QXZlcmFnZUFycihydWxlLCB5ZWFyICsgMTAwKTsKICAgICAgICB9IGVsc2UgaWYgKHJ1bGUgIT09ICcqJykgewogICAgICAgICAgdGhpcy5kYXRlQXJyWzVdID0gdGhpcy5nZXRBc3NpZ25BcnIocnVsZSk7CiAgICAgICAgfQogICAgICB9CiAgICB9LAogICAgLy8g6I635Y+WIuaciCLmlbDnu4QKICAgIGdldE1vbnRoQXJyOiBmdW5jdGlvbiBnZXRNb250aEFycihydWxlKSB7CiAgICAgIHRoaXMuZGF0ZUFycls0XSA9IHRoaXMuZ2V0T3JkZXJBcnIoMSwgMTIpOwogICAgICBpZiAocnVsZS5pbmRleE9mKCctJykgPj0gMCkgewogICAgICAgIHRoaXMuZGF0ZUFycls0XSA9IHRoaXMuZ2V0Q3ljbGVBcnIocnVsZSwgMTIsIGZhbHNlKTsKICAgICAgfSBlbHNlIGlmIChydWxlLmluZGV4T2YoJy8nKSA+PSAwKSB7CiAgICAgICAgdGhpcy5kYXRlQXJyWzRdID0gdGhpcy5nZXRBdmVyYWdlQXJyKHJ1bGUsIDEyKTsKICAgICAgfSBlbHNlIGlmIChydWxlICE9PSAnKicpIHsKICAgICAgICB0aGlzLmRhdGVBcnJbNF0gPSB0aGlzLmdldEFzc2lnbkFycihydWxlKTsKICAgICAgfQogICAgfSwKICAgIC8vIOiOt+WPliLml6Ui5pWw57uELeS4u+imgeS4uuaXpeacn+inhOWImQogICAgZ2V0V2Vla0FycjogZnVuY3Rpb24gZ2V0V2Vla0FycihydWxlKSB7CiAgICAgIC8vIOWPquacieW9k+aXpeacn+inhOWImeeahOS4pOS4quWAvOWdh+S4uuKAnOKAneaXtuWImeihqOi+vuaXpeacn+aYr+aciemAiemhueeahAogICAgICBpZiAodGhpcy5kYXlSdWxlID09ICcnICYmIHRoaXMuZGF5UnVsZVN1cCA9PSAnJykgewogICAgICAgIGlmIChydWxlLmluZGV4T2YoJy0nKSA+PSAwKSB7CiAgICAgICAgICB0aGlzLmRheVJ1bGUgPSAnd2Vla0RheSc7CiAgICAgICAgICB0aGlzLmRheVJ1bGVTdXAgPSB0aGlzLmdldEN5Y2xlQXJyKHJ1bGUsIDcsIGZhbHNlKTsKICAgICAgICB9IGVsc2UgaWYgKHJ1bGUuaW5kZXhPZignIycpID49IDApIHsKICAgICAgICAgIHRoaXMuZGF5UnVsZSA9ICdhc3NXZWVrJzsKICAgICAgICAgIHZhciBtYXRjaFJ1bGUgPSBydWxlLm1hdGNoKC9bMC05XXsxfS9nKTsKICAgICAgICAgIHRoaXMuZGF5UnVsZVN1cCA9IFtOdW1iZXIobWF0Y2hSdWxlWzFdKSwgTnVtYmVyKG1hdGNoUnVsZVswXSldOwogICAgICAgICAgdGhpcy5kYXRlQXJyWzNdID0gWzFdOwogICAgICAgICAgaWYgKHRoaXMuZGF5UnVsZVN1cFsxXSA9PSA3KSB7CiAgICAgICAgICAgIHRoaXMuZGF5UnVsZVN1cFsxXSA9IDA7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIGlmIChydWxlLmluZGV4T2YoJ0wnKSA+PSAwKSB7CiAgICAgICAgICB0aGlzLmRheVJ1bGUgPSAnbGFzdFdlZWsnOwogICAgICAgICAgdGhpcy5kYXlSdWxlU3VwID0gTnVtYmVyKHJ1bGUubWF0Y2goL1swLTldezEsMn0vZylbMF0pOwogICAgICAgICAgdGhpcy5kYXRlQXJyWzNdID0gWzMxXTsKICAgICAgICAgIGlmICh0aGlzLmRheVJ1bGVTdXAgPT0gNykgewogICAgICAgICAgICB0aGlzLmRheVJ1bGVTdXAgPSAwOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAocnVsZSAhPT0gJyonICYmIHJ1bGUgIT09ICc/JykgewogICAgICAgICAgdGhpcy5kYXlSdWxlID0gJ3dlZWtEYXknOwogICAgICAgICAgdGhpcy5kYXlSdWxlU3VwID0gdGhpcy5nZXRBc3NpZ25BcnIocnVsZSk7CiAgICAgICAgfQogICAgICB9CiAgICB9LAogICAgLy8g6I635Y+WIuaXpSLmlbDnu4Qt5bCR6YeP5Li65pel5pyf6KeE5YiZCiAgICBnZXREYXlBcnI6IGZ1bmN0aW9uIGdldERheUFycihydWxlKSB7CiAgICAgIHRoaXMuZGF0ZUFyclszXSA9IHRoaXMuZ2V0T3JkZXJBcnIoMSwgMzEpOwogICAgICB0aGlzLmRheVJ1bGUgPSAnJzsKICAgICAgdGhpcy5kYXlSdWxlU3VwID0gJyc7CiAgICAgIGlmIChydWxlLmluZGV4T2YoJy0nKSA+PSAwKSB7CiAgICAgICAgdGhpcy5kYXRlQXJyWzNdID0gdGhpcy5nZXRDeWNsZUFycihydWxlLCAzMSwgZmFsc2UpOwogICAgICAgIHRoaXMuZGF5UnVsZVN1cCA9ICdudWxsJzsKICAgICAgfSBlbHNlIGlmIChydWxlLmluZGV4T2YoJy8nKSA+PSAwKSB7CiAgICAgICAgdGhpcy5kYXRlQXJyWzNdID0gdGhpcy5nZXRBdmVyYWdlQXJyKHJ1bGUsIDMxKTsKICAgICAgICB0aGlzLmRheVJ1bGVTdXAgPSAnbnVsbCc7CiAgICAgIH0gZWxzZSBpZiAocnVsZS5pbmRleE9mKCdXJykgPj0gMCkgewogICAgICAgIHRoaXMuZGF5UnVsZSA9ICd3b3JrRGF5JzsKICAgICAgICB0aGlzLmRheVJ1bGVTdXAgPSBOdW1iZXIocnVsZS5tYXRjaCgvWzAtOV17MSwyfS9nKVswXSk7CiAgICAgICAgdGhpcy5kYXRlQXJyWzNdID0gW3RoaXMuZGF5UnVsZVN1cF07CiAgICAgIH0gZWxzZSBpZiAocnVsZS5pbmRleE9mKCdMJykgPj0gMCkgewogICAgICAgIHRoaXMuZGF5UnVsZSA9ICdsYXN0RGF5JzsKICAgICAgICB0aGlzLmRheVJ1bGVTdXAgPSAnbnVsbCc7CiAgICAgICAgdGhpcy5kYXRlQXJyWzNdID0gWzMxXTsKICAgICAgfSBlbHNlIGlmIChydWxlICE9PSAnKicgJiYgcnVsZSAhPT0gJz8nKSB7CiAgICAgICAgdGhpcy5kYXRlQXJyWzNdID0gdGhpcy5nZXRBc3NpZ25BcnIocnVsZSk7CiAgICAgICAgdGhpcy5kYXlSdWxlU3VwID0gJ251bGwnOwogICAgICB9IGVsc2UgaWYgKHJ1bGUgPT0gJyonKSB7CiAgICAgICAgdGhpcy5kYXlSdWxlU3VwID0gJ251bGwnOwogICAgICB9CiAgICB9LAogICAgLy8g6I635Y+WIuaXtiLmlbDnu4QKICAgIGdldEhvdXJBcnI6IGZ1bmN0aW9uIGdldEhvdXJBcnIocnVsZSkgewogICAgICB0aGlzLmRhdGVBcnJbMl0gPSB0aGlzLmdldE9yZGVyQXJyKDAsIDIzKTsKICAgICAgaWYgKHJ1bGUuaW5kZXhPZignLScpID49IDApIHsKICAgICAgICB0aGlzLmRhdGVBcnJbMl0gPSB0aGlzLmdldEN5Y2xlQXJyKHJ1bGUsIDI0LCB0cnVlKTsKICAgICAgfSBlbHNlIGlmIChydWxlLmluZGV4T2YoJy8nKSA+PSAwKSB7CiAgICAgICAgdGhpcy5kYXRlQXJyWzJdID0gdGhpcy5nZXRBdmVyYWdlQXJyKHJ1bGUsIDIzKTsKICAgICAgfSBlbHNlIGlmIChydWxlICE9PSAnKicpIHsKICAgICAgICB0aGlzLmRhdGVBcnJbMl0gPSB0aGlzLmdldEFzc2lnbkFycihydWxlKTsKICAgICAgfQogICAgfSwKICAgIC8vIOiOt+WPliLliIYi5pWw57uECiAgICBnZXRNaW5BcnI6IGZ1bmN0aW9uIGdldE1pbkFycihydWxlKSB7CiAgICAgIHRoaXMuZGF0ZUFyclsxXSA9IHRoaXMuZ2V0T3JkZXJBcnIoMCwgNTkpOwogICAgICBpZiAocnVsZS5pbmRleE9mKCctJykgPj0gMCkgewogICAgICAgIHRoaXMuZGF0ZUFyclsxXSA9IHRoaXMuZ2V0Q3ljbGVBcnIocnVsZSwgNjAsIHRydWUpOwogICAgICB9IGVsc2UgaWYgKHJ1bGUuaW5kZXhPZignLycpID49IDApIHsKICAgICAgICB0aGlzLmRhdGVBcnJbMV0gPSB0aGlzLmdldEF2ZXJhZ2VBcnIocnVsZSwgNTkpOwogICAgICB9IGVsc2UgaWYgKHJ1bGUgIT09ICcqJykgewogICAgICAgIHRoaXMuZGF0ZUFyclsxXSA9IHRoaXMuZ2V0QXNzaWduQXJyKHJ1bGUpOwogICAgICB9CiAgICB9LAogICAgLy8g6I635Y+WIuenkiLmlbDnu4QKICAgIGdldFNlY29uZEFycjogZnVuY3Rpb24gZ2V0U2Vjb25kQXJyKHJ1bGUpIHsKICAgICAgdGhpcy5kYXRlQXJyWzBdID0gdGhpcy5nZXRPcmRlckFycigwLCA1OSk7CiAgICAgIGlmIChydWxlLmluZGV4T2YoJy0nKSA+PSAwKSB7CiAgICAgICAgdGhpcy5kYXRlQXJyWzBdID0gdGhpcy5nZXRDeWNsZUFycihydWxlLCA2MCwgdHJ1ZSk7CiAgICAgIH0gZWxzZSBpZiAocnVsZS5pbmRleE9mKCcvJykgPj0gMCkgewogICAgICAgIHRoaXMuZGF0ZUFyclswXSA9IHRoaXMuZ2V0QXZlcmFnZUFycihydWxlLCA1OSk7CiAgICAgIH0gZWxzZSBpZiAocnVsZSAhPT0gJyonKSB7CiAgICAgICAgdGhpcy5kYXRlQXJyWzBdID0gdGhpcy5nZXRBc3NpZ25BcnIocnVsZSk7CiAgICAgIH0KICAgIH0sCiAgICAvLyDmoLnmja7kvKDov5vmnaXnmoRtaW4tbWF46L+U5Zue5LiA5Liq6aG65bqP55qE5pWw57uECiAgICBnZXRPcmRlckFycjogZnVuY3Rpb24gZ2V0T3JkZXJBcnIobWluLCBtYXgpIHsKICAgICAgdmFyIGFyciA9IFtdOwogICAgICBmb3IgKHZhciBpID0gbWluOyBpIDw9IG1heDsgaSsrKSB7CiAgICAgICAgYXJyLnB1c2goaSk7CiAgICAgIH0KICAgICAgcmV0dXJuIGFycjsKICAgIH0sCiAgICAvLyDmoLnmja7op4TliJnkuK3mjIflrprnmoTpm7bmlaPlgLzov5Tlm57kuIDkuKrmlbDnu4QKICAgIGdldEFzc2lnbkFycjogZnVuY3Rpb24gZ2V0QXNzaWduQXJyKHJ1bGUpIHsKICAgICAgdmFyIGFyciA9IFtdOwogICAgICB2YXIgYXNzaWdpbkFyciA9IHJ1bGUuc3BsaXQoJywnKTsKICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhc3NpZ2luQXJyLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgYXJyW2ldID0gTnVtYmVyKGFzc2lnaW5BcnJbaV0pOwogICAgICB9CiAgICAgIGFyci5zb3J0KHRoaXMuY29tcGFyZSk7CiAgICAgIHJldHVybiBhcnI7CiAgICB9LAogICAgLy8g5qC55o2u5LiA5a6a566X5pyv6KeE5YiZ6K6h566X6L+U5Zue5LiA5Liq5pWw57uECiAgICBnZXRBdmVyYWdlQXJyOiBmdW5jdGlvbiBnZXRBdmVyYWdlQXJyKHJ1bGUsIGxpbWl0KSB7CiAgICAgIHZhciBhcnIgPSBbXTsKICAgICAgdmFyIGFnQXJyID0gcnVsZS5zcGxpdCgnLycpOwogICAgICB2YXIgbWluID0gTnVtYmVyKGFnQXJyWzBdKTsKICAgICAgdmFyIHN0ZXAgPSBOdW1iZXIoYWdBcnJbMV0pOwogICAgICB3aGlsZSAobWluIDw9IGxpbWl0KSB7CiAgICAgICAgYXJyLnB1c2gobWluKTsKICAgICAgICBtaW4gKz0gc3RlcDsKICAgICAgfQogICAgICByZXR1cm4gYXJyOwogICAgfSwKICAgIC8vIOagueaNruinhOWImei/lOWbnuS4gOS4quWFt+acieWRqOacn+aAp+eahOaVsOe7hAogICAgZ2V0Q3ljbGVBcnI6IGZ1bmN0aW9uIGdldEN5Y2xlQXJyKHJ1bGUsIGxpbWl0LCBzdGF0dXMpIHsKICAgICAgLy8gc3RhdHVzLS3ooajnpLrmmK/lkKbku44w5byA5aeL77yI5YiZ5LuOMeW8gOWni++8iQogICAgICB2YXIgYXJyID0gW107CiAgICAgIHZhciBjeWNsZUFyciA9IHJ1bGUuc3BsaXQoJy0nKTsKICAgICAgdmFyIG1pbiA9IE51bWJlcihjeWNsZUFyclswXSk7CiAgICAgIHZhciBtYXggPSBOdW1iZXIoY3ljbGVBcnJbMV0pOwogICAgICBpZiAobWluID4gbWF4KSB7CiAgICAgICAgbWF4ICs9IGxpbWl0OwogICAgICB9CiAgICAgIGZvciAodmFyIGkgPSBtaW47IGkgPD0gbWF4OyBpKyspIHsKICAgICAgICB2YXIgYWRkID0gMDsKICAgICAgICBpZiAoc3RhdHVzID09IGZhbHNlICYmIGkgJSBsaW1pdCA9PSAwKSB7CiAgICAgICAgICBhZGQgPSBsaW1pdDsKICAgICAgICB9CiAgICAgICAgYXJyLnB1c2goTWF0aC5yb3VuZChpICUgbGltaXQgKyBhZGQpKTsKICAgICAgfQogICAgICBhcnIuc29ydCh0aGlzLmNvbXBhcmUpOwogICAgICByZXR1cm4gYXJyOwogICAgfSwKICAgIC8vIOavlOi+g+aVsOWtl+Wkp+Wwj++8iOeUqOS6jkFycmF5LnNvcnTvvIkKICAgIGNvbXBhcmU6IGZ1bmN0aW9uIGNvbXBhcmUodmFsdWUxLCB2YWx1ZTIpIHsKICAgICAgaWYgKHZhbHVlMiAtIHZhbHVlMSA+IDApIHsKICAgICAgICByZXR1cm4gLTE7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIDE7CiAgICAgIH0KICAgIH0sCiAgICAvLyDmoLzlvI/ljJbml6XmnJ/moLzlvI/lpoLvvJoyMDE3LTktMTkgMTg6MDQ6MzMKICAgIGZvcm1hdERhdGU6IGZ1bmN0aW9uIGZvcm1hdERhdGUodmFsdWUsIHR5cGUpIHsKICAgICAgLy8g6K6h566X5pel5pyf55u45YWz5YC8CiAgICAgIHZhciB0aW1lID0gdHlwZW9mIHZhbHVlID09ICdudW1iZXInID8gbmV3IERhdGUodmFsdWUpIDogdmFsdWU7CiAgICAgIHZhciBZID0gdGltZS5nZXRGdWxsWWVhcigpOwogICAgICB2YXIgTSA9IHRpbWUuZ2V0TW9udGgoKSArIDE7CiAgICAgIHZhciBEID0gdGltZS5nZXREYXRlKCk7CiAgICAgIHZhciBoID0gdGltZS5nZXRIb3VycygpOwogICAgICB2YXIgbSA9IHRpbWUuZ2V0TWludXRlcygpOwogICAgICB2YXIgcyA9IHRpbWUuZ2V0U2Vjb25kcygpOwogICAgICB2YXIgd2VlayA9IHRpbWUuZ2V0RGF5KCk7CiAgICAgIC8vIOWmguaenOS8oOmAkuS6hnR5cGXnmoTor50KICAgICAgaWYgKHR5cGUgPT0gdW5kZWZpbmVkKSB7CiAgICAgICAgcmV0dXJuIFkgKyAnLScgKyAoTSA8IDEwID8gJzAnICsgTSA6IE0pICsgJy0nICsgKEQgPCAxMCA/ICcwJyArIEQgOiBEKSArICcgJyArIChoIDwgMTAgPyAnMCcgKyBoIDogaCkgKyAnOicgKyAobSA8IDEwID8gJzAnICsgbSA6IG0pICsgJzonICsgKHMgPCAxMCA/ICcwJyArIHMgOiBzKTsKICAgICAgfSBlbHNlIGlmICh0eXBlID09ICd3ZWVrJykgewogICAgICAgIC8vIOWcqHF1YXJ0euS4rSAx5Li65pif5pyf5pelCiAgICAgICAgcmV0dXJuIHdlZWsgKyAxOwogICAgICB9CiAgICB9LAogICAgLy8g5qOA5p+l5pel5pyf5piv5ZCm5a2Y5ZyoCiAgICBjaGVja0RhdGU6IGZ1bmN0aW9uIGNoZWNrRGF0ZSh2YWx1ZSkgewogICAgICB2YXIgdGltZSA9IG5ldyBEYXRlKHZhbHVlKTsKICAgICAgdmFyIGZvcm1hdCA9IHRoaXMuZm9ybWF0RGF0ZSh0aW1lKTsKICAgICAgcmV0dXJuIHZhbHVlID09PSBmb3JtYXQ7CiAgICB9CiAgfSwKICB3YXRjaDogewogICAgJ2V4JzogJ2V4cHJlc3Npb25DaGFuZ2UnCiAgfSwKICBwcm9wczogWydleCddLAogIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7CiAgICAvLyDliJ3lp4vljJYg6I635Y+W5LiA5qyh57uT5p6cCiAgICB0aGlzLmV4cHJlc3Npb25DaGFuZ2UoKTsKICB9Cn07"},{"version":3,"names":["data","dayRule","dayRuleSup","dateArr","resultList","isShow","name","methods","expressionChange","ruleArr","$options","propsData","ex","split","nums","resultArr","nTime","Date","nYear","getFullYear","nMonth","getMonth","nDay","getDate","nHour","getHours","nMin","getMinutes","nSecond","getSeconds","getSecondArr","getMinArr","getHourArr","getDayArr","getMonthArr","getWeekArr","getYearArr","sDate","mDate","hDate","DDate","MDate","YDate","sIdx","getIndex","mIdx","hIdx","DIdx","MIdx","YIdx","resetSecond","resetMin","resetHour","resetDay","resetMonth","goYear","Yi","length","YY","goMonth","Mi","MM","goDay","Di","DD","thisDD","checkDate","thisWeek","formatDate","indexOf","goHour","hi","hh","goMin","mi","mm","si","ss","push","arr","value","i","rule","year","getOrderArr","undefined","getCycleArr","getAverageArr","getAssignArr","matchRule","match","Number","min","max","assiginArr","sort","compare","limit","agArr","step","status","cycleArr","add","Math","round","value1","value2","type","time","Y","M","D","h","m","s","week","getDay","format","watch","props","mounted"],"sources":["src/components/Crontab/result.vue"],"sourcesContent":["<template>\r\n <div class=\"popup-result\">\r\n <p class=\"title\">最近5次运行时间</p>\r\n <ul class=\"popup-result-scroll\">\r\n <template v-if='isShow'>\r\n <li v-for='item in resultList' :key=\"item\">{{ item }}</li>\r\n </template>\r\n <li v-else>计算结果中...</li>\r\n </ul>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n data() {\r\n return {\r\n dayRule: '',\r\n dayRuleSup: '',\r\n dateArr: [],\r\n resultList: [],\r\n isShow: false\r\n }\r\n },\r\n name: 'crontab-result',\r\n methods: {\r\n // 表达式值变化时,开始去计算结果\r\n expressionChange() {\r\n\r\n // 计算开始-隐藏结果\r\n this.isShow = false;\r\n // 获取规则数组[0秒、1分、2时、3日、4月、5星期、6年]\r\n let ruleArr = this.$options.propsData.ex.split(' ');\r\n // 用于记录进入循环的次数\r\n let nums = 0;\r\n // 用于暂时存符号时间规则结果的数组\r\n let resultArr = [];\r\n // 获取当前时间精确至[年、月、日、时、分、秒]\r\n let nTime = new Date();\r\n let nYear = nTime.getFullYear();\r\n let nMonth = nTime.getMonth() + 1;\r\n let nDay = nTime.getDate();\r\n let nHour = nTime.getHours();\r\n let nMin = nTime.getMinutes();\r\n let nSecond = nTime.getSeconds();\r\n // 根据规则获取到近100年可能年数组、月数组等等\r\n this.getSecondArr(ruleArr[0]);\r\n this.getMinArr(ruleArr[1]);\r\n this.getHourArr(ruleArr[2]);\r\n this.getDayArr(ruleArr[3]);\r\n this.getMonthArr(ruleArr[4]);\r\n this.getWeekArr(ruleArr[5]);\r\n this.getYearArr(ruleArr[6], nYear);\r\n // 将获取到的数组赋值-方便使用\r\n let sDate = this.dateArr[0];\r\n let mDate = this.dateArr[1];\r\n let hDate = this.dateArr[2];\r\n let DDate = this.dateArr[3];\r\n let MDate = this.dateArr[4];\r\n let YDate = this.dateArr[5];\r\n // 获取当前时间在数组中的索引\r\n let sIdx = this.getIndex(sDate, nSecond);\r\n let mIdx = this.getIndex(mDate, nMin);\r\n let hIdx = this.getIndex(hDate, nHour);\r\n let DIdx = this.getIndex(DDate, nDay);\r\n let MIdx = this.getIndex(MDate, nMonth);\r\n let YIdx = this.getIndex(YDate, nYear);\r\n // 重置月日时分秒的函数(后面用的比较多)\r\n const resetSecond = function () {\r\n sIdx = 0;\r\n nSecond = sDate[sIdx]\r\n }\r\n const resetMin = function () {\r\n mIdx = 0;\r\n nMin = mDate[mIdx]\r\n resetSecond();\r\n }\r\n const resetHour = function () {\r\n hIdx = 0;\r\n nHour = hDate[hIdx]\r\n resetMin();\r\n }\r\n const resetDay = function () {\r\n DIdx = 0;\r\n nDay = DDate[DIdx]\r\n resetHour();\r\n }\r\n const resetMonth = function () {\r\n MIdx = 0;\r\n nMonth = MDate[MIdx]\r\n resetDay();\r\n }\r\n // 如果当前年份不为数组中当前值\r\n if (nYear !== YDate[YIdx]) {\r\n resetMonth();\r\n }\r\n // 如果当前月份不为数组中当前值\r\n if (nMonth !== MDate[MIdx]) {\r\n resetDay();\r\n }\r\n // 如果当前“日”不为数组中当前值\r\n if (nDay !== DDate[DIdx]) {\r\n resetHour();\r\n }\r\n // 如果当前“时”不为数组中当前值\r\n if (nHour !== hDate[hIdx]) {\r\n resetMin();\r\n }\r\n // 如果当前“分”不为数组中当前值\r\n if (nMin !== mDate[mIdx]) {\r\n resetSecond();\r\n }\r\n\r\n // 循环年份数组\r\n goYear: for (let Yi = YIdx; Yi < YDate.length; Yi++) {\r\n let YY = YDate[Yi];\r\n // 如果到达最大值时\r\n if (nMonth > MDate[MDate.length - 1]) {\r\n resetMonth();\r\n continue;\r\n }\r\n // 循环月份数组\r\n goMonth: for (let Mi = MIdx; Mi < MDate.length; Mi++) {\r\n // 赋值、方便后面运算\r\n let MM = MDate[Mi];\r\n MM = MM < 10 ? '0' + MM : MM;\r\n // 如果到达最大值时\r\n if (nDay > DDate[DDate.length - 1]) {\r\n resetDay();\r\n if (Mi == MDate.length - 1) {\r\n resetMonth();\r\n continue goYear;\r\n }\r\n continue;\r\n }\r\n // 循环日期数组\r\n goDay: for (let Di = DIdx; Di < DDate.length; Di++) {\r\n // 赋值、方便后面运算\r\n let DD = DDate[Di];\r\n let thisDD = DD < 10 ? '0' + DD : DD;\r\n\r\n // 如果到达最大值时\r\n if (nHour > hDate[hDate.length - 1]) {\r\n resetHour();\r\n if (Di == DDate.length - 1) {\r\n resetDay();\r\n if (Mi == MDate.length - 1) {\r\n resetMonth();\r\n continue goYear;\r\n }\r\n continue goMonth;\r\n }\r\n continue;\r\n }\r\n\r\n // 判断日期的合法性,不合法的话也是跳出当前循环\r\n if (this.checkDate(YY + '-' + MM + '-' + thisDD + ' 00:00:00') !== true && this.dayRule !== 'workDay' && this.dayRule !== 'lastWeek' && this.dayRule !== 'lastDay') {\r\n resetDay();\r\n continue goMonth;\r\n }\r\n // 如果日期规则中有值时\r\n if (this.dayRule == 'lastDay') {\r\n // 如果不是合法日期则需要将前将日期调到合法日期即月末最后一天\r\n\r\n if (this.checkDate(YY + '-' + MM + '-' + thisDD + ' 00:00:00') !== true) {\r\n while (DD > 0 && this.checkDate(YY + '-' + MM + '-' + thisDD + ' 00:00:00') !== true) {\r\n DD--;\r\n\r\n thisDD = DD < 10 ? '0' + DD : DD;\r\n }\r\n }\r\n } else if (this.dayRule == 'workDay') {\r\n // 校验并调整如果是2月30号这种日期传进来时需调整至正常月底\r\n if (this.checkDate(YY + '-' + MM + '-' + thisDD + ' 00:00:00') !== true) {\r\n while (DD > 0 && this.checkDate(YY + '-' + MM + '-' + thisDD + ' 00:00:00') !== true) {\r\n DD--;\r\n thisDD = DD < 10 ? '0' + DD : DD;\r\n }\r\n }\r\n // 获取达到条件的日期是星期X\r\n let thisWeek = this.formatDate(new Date(YY + '-' + MM + '-' + thisDD + ' 00:00:00'), 'week');\r\n // 当星期日时\r\n if (thisWeek == 1) {\r\n // 先找下一个日,并判断是否为月底\r\n DD++;\r\n thisDD = DD < 10 ? '0' + DD : DD;\r\n // 判断下一日已经不是合法日期\r\n if (this.checkDate(YY + '-' + MM + '-' + thisDD + ' 00:00:00') !== true) {\r\n DD -= 3;\r\n }\r\n } else if (thisWeek == 7) {\r\n // 当星期6时只需判断不是1号就可进行操作\r\n if (this.dayRuleSup !== 1) {\r\n DD--;\r\n } else {\r\n DD += 2;\r\n }\r\n }\r\n } else if (this.dayRule == 'weekDay') {\r\n // 如果指定了是星期几\r\n // 获取当前日期是属于星期几\r\n let thisWeek = this.formatDate(new Date(YY + '-' + MM + '-' + DD + ' 00:00:00'), 'week');\r\n // 校验当前星期是否在星期池dayRuleSup中\r\n if (this.dayRuleSup.indexOf(thisWeek) < 0) {\r\n // 如果到达最大值时\r\n if (Di == DDate.length - 1) {\r\n resetDay();\r\n if (Mi == MDate.length - 1) {\r\n resetMonth();\r\n continue goYear;\r\n }\r\n continue goMonth;\r\n }\r\n continue;\r\n }\r\n } else if (this.dayRule == 'assWeek') {\r\n // 如果指定了是第几周的星期几\r\n // 获取每月1号是属于星期几\r\n let thisWeek = this.formatDate(new Date(YY + '-' + MM + '-' + DD + ' 00:00:00'), 'week');\r\n if (this.dayRuleSup[1] >= thisWeek) {\r\n DD = (this.dayRuleSup[0] - 1) * 7 + this.dayRuleSup[1] - thisWeek + 1;\r\n } else {\r\n DD = this.dayRuleSup[0] * 7 + this.dayRuleSup[1] - thisWeek + 1;\r\n }\r\n } else if (this.dayRule == 'lastWeek') {\r\n // 如果指定了每月最后一个星期几\r\n // 校验并调整如果是2月30号这种日期传进来时需调整至正常月底\r\n if (this.checkDate(YY + '-' + MM + '-' + thisDD + ' 00:00:00') !== true) {\r\n while (DD > 0 && this.checkDate(YY + '-' + MM + '-' + thisDD + ' 00:00:00') !== true) {\r\n DD--;\r\n thisDD = DD < 10 ? '0' + DD : DD;\r\n }\r\n }\r\n // 获取月末最后一天是星期几\r\n let thisWeek = this.formatDate(new Date(YY + '-' + MM + '-' + thisDD + ' 00:00:00'), 'week');\r\n // 找到要求中最近的那个星期几\r\n if (this.dayRuleSup < thisWeek) {\r\n DD -= thisWeek - this.dayRuleSup;\r\n } else if (this.dayRuleSup > thisWeek) {\r\n DD -= 7 - (this.dayRuleSup - thisWeek)\r\n }\r\n }\r\n // 判断时间值是否小于10置换成“05”这种格式\r\n DD = DD < 10 ? '0' + DD : DD;\r\n\r\n // 循环“时”数组\r\n goHour: for (let hi = hIdx; hi < hDate.length; hi++) {\r\n let hh = hDate[hi] < 10 ? '0' + hDate[hi] : hDate[hi]\r\n\r\n // 如果到达最大值时\r\n if (nMin > mDate[mDate.length - 1]) {\r\n resetMin();\r\n if (hi == hDate.length - 1) {\r\n resetHour();\r\n if (Di == DDate.length - 1) {\r\n resetDay();\r\n if (Mi == MDate.length - 1) {\r\n resetMonth();\r\n continue goYear;\r\n }\r\n continue goMonth;\r\n }\r\n continue goDay;\r\n }\r\n continue;\r\n }\r\n // 循环\"分\"数组\r\n goMin: for (let mi = mIdx; mi < mDate.length; mi++) {\r\n let mm = mDate[mi] < 10 ? '0' + mDate[mi] : mDate[mi];\r\n\r\n // 如果到达最大值时\r\n if (nSecond > sDate[sDate.length - 1]) {\r\n resetSecond();\r\n if (mi == mDate.length - 1) {\r\n resetMin();\r\n if (hi == hDate.length - 1) {\r\n resetHour();\r\n if (Di == DDate.length - 1) {\r\n resetDay();\r\n if (Mi == MDate.length - 1) {\r\n resetMonth();\r\n continue goYear;\r\n }\r\n continue goMonth;\r\n }\r\n continue goDay;\r\n }\r\n continue goHour;\r\n }\r\n continue;\r\n }\r\n // 循环\"秒\"数组\r\n for (let si = sIdx; si <= sDate.length - 1; si++) {\r\n let ss = sDate[si] < 10 ? '0' + sDate[si] : sDate[si];\r\n // 添加当前时间(时间合法性在日期循环时已经判断)\r\n if (MM !== '00' && DD !== '00') {\r\n resultArr.push(YY + '-' + MM + '-' + DD + ' ' + hh + ':' + mm + ':' + ss)\r\n nums++;\r\n }\r\n // 如果条数满了就退出循环\r\n if (nums == 5) break goYear;\r\n // 如果到达最大值时\r\n if (si == sDate.length - 1) {\r\n resetSecond();\r\n if (mi == mDate.length - 1) {\r\n resetMin();\r\n if (hi == hDate.length - 1) {\r\n resetHour();\r\n if (Di == DDate.length - 1) {\r\n resetDay();\r\n if (Mi == MDate.length - 1) {\r\n resetMonth();\r\n continue goYear;\r\n }\r\n continue goMonth;\r\n }\r\n continue goDay;\r\n }\r\n continue goHour;\r\n }\r\n continue goMin;\r\n }\r\n } //goSecond\r\n } //goMin\r\n }//goHour\r\n }//goDay\r\n }//goMonth\r\n }\r\n // 判断100年内的结果条数\r\n if (resultArr.length == 0) {\r\n this.resultList = ['没有达到条件的结果!'];\r\n } else {\r\n this.resultList = resultArr;\r\n if (resultArr.length !== 5) {\r\n this.resultList.push('最近100年内只有上面' + resultArr.length + '条结果!')\r\n }\r\n }\r\n // 计算完成-显示结果\r\n this.isShow = true;\r\n\r\n\r\n },\r\n // 用于计算某位数字在数组中的索引\r\n getIndex(arr, value) {\r\n if (value <= arr[0] || value > arr[arr.length - 1]) {\r\n return 0;\r\n } else {\r\n for (let i = 0; i < arr.length - 1; i++) {\r\n if (value > arr[i] && value <= arr[i + 1]) {\r\n return i + 1;\r\n }\r\n }\r\n }\r\n },\r\n // 获取\"年\"数组\r\n getYearArr(rule, year) {\r\n this.dateArr[5] = this.getOrderArr(year, year + 100);\r\n if (rule !== undefined) {\r\n if (rule.indexOf('-') >= 0) {\r\n this.dateArr[5] = this.getCycleArr(rule, year + 100, false)\r\n } else if (rule.indexOf('/') >= 0) {\r\n this.dateArr[5] = this.getAverageArr(rule, year + 100)\r\n } else if (rule !== '*') {\r\n this.dateArr[5] = this.getAssignArr(rule)\r\n }\r\n }\r\n },\r\n // 获取\"月\"数组\r\n getMonthArr(rule) {\r\n this.dateArr[4] = this.getOrderArr(1, 12);\r\n if (rule.indexOf('-') >= 0) {\r\n this.dateArr[4] = this.getCycleArr(rule, 12, false)\r\n } else if (rule.indexOf('/') >= 0) {\r\n this.dateArr[4] = this.getAverageArr(rule, 12)\r\n } else if (rule !== '*') {\r\n this.dateArr[4] = this.getAssignArr(rule)\r\n }\r\n },\r\n // 获取\"日\"数组-主要为日期规则\r\n getWeekArr(rule) {\r\n // 只有当日期规则的两个值均为“”时则表达日期是有选项的\r\n if (this.dayRule == '' && this.dayRuleSup == '') {\r\n if (rule.indexOf('-') >= 0) {\r\n this.dayRule = 'weekDay';\r\n this.dayRuleSup = this.getCycleArr(rule, 7, false)\r\n } else if (rule.indexOf('#') >= 0) {\r\n this.dayRule = 'assWeek';\r\n let matchRule = rule.match(/[0-9]{1}/g);\r\n this.dayRuleSup = [Number(matchRule[1]), Number(matchRule[0])];\r\n this.dateArr[3] = [1];\r\n if (this.dayRuleSup[1] == 7) {\r\n this.dayRuleSup[1] = 0;\r\n }\r\n } else if (rule.indexOf('L') >= 0) {\r\n this.dayRule = 'lastWeek';\r\n this.dayRuleSup = Number(rule.match(/[0-9]{1,2}/g)[0]);\r\n this.dateArr[3] = [31];\r\n if (this.dayRuleSup == 7) {\r\n this.dayRuleSup = 0;\r\n }\r\n } else if (rule !== '*' && rule !== '?') {\r\n this.dayRule = 'weekDay';\r\n this.dayRuleSup = this.getAssignArr(rule)\r\n }\r\n }\r\n },\r\n // 获取\"日\"数组-少量为日期规则\r\n getDayArr(rule) {\r\n this.dateArr[3] = this.getOrderArr(1, 31);\r\n this.dayRule = '';\r\n this.dayRuleSup = '';\r\n if (rule.indexOf('-') >= 0) {\r\n this.dateArr[3] = this.getCycleArr(rule, 31, false)\r\n this.dayRuleSup = 'null';\r\n } else if (rule.indexOf('/') >= 0) {\r\n this.dateArr[3] = this.getAverageArr(rule, 31)\r\n this.dayRuleSup = 'null';\r\n } else if (rule.indexOf('W') >= 0) {\r\n this.dayRule = 'workDay';\r\n this.dayRuleSup = Number(rule.match(/[0-9]{1,2}/g)[0]);\r\n this.dateArr[3] = [this.dayRuleSup];\r\n } else if (rule.indexOf('L') >= 0) {\r\n this.dayRule = 'lastDay';\r\n this.dayRuleSup = 'null';\r\n this.dateArr[3] = [31];\r\n } else if (rule !== '*' && rule !== '?') {\r\n this.dateArr[3] = this.getAssignArr(rule)\r\n this.dayRuleSup = 'null';\r\n } else if (rule == '*') {\r\n this.dayRuleSup = 'null';\r\n }\r\n },\r\n // 获取\"时\"数组\r\n getHourArr(rule) {\r\n this.dateArr[2] = this.getOrderArr(0, 23);\r\n if (rule.indexOf('-') >= 0) {\r\n this.dateArr[2] = this.getCycleArr(rule, 24, true)\r\n } else if (rule.indexOf('/') >= 0) {\r\n this.dateArr[2] = this.getAverageArr(rule, 23)\r\n } else if (rule !== '*') {\r\n this.dateArr[2] = this.getAssignArr(rule)\r\n }\r\n },\r\n // 获取\"分\"数组\r\n getMinArr(rule) {\r\n this.dateArr[1] = this.getOrderArr(0, 59);\r\n if (rule.indexOf('-') >= 0) {\r\n this.dateArr[1] = this.getCycleArr(rule, 60, true)\r\n } else if (rule.indexOf('/') >= 0) {\r\n this.dateArr[1] = this.getAverageArr(rule, 59)\r\n } else if (rule !== '*') {\r\n this.dateArr[1] = this.getAssignArr(rule)\r\n }\r\n },\r\n // 获取\"秒\"数组\r\n getSecondArr(rule) {\r\n this.dateArr[0] = this.getOrderArr(0, 59);\r\n if (rule.indexOf('-') >= 0) {\r\n this.dateArr[0] = this.getCycleArr(rule, 60, true)\r\n } else if (rule.indexOf('/') >= 0) {\r\n this.dateArr[0] = this.getAverageArr(rule, 59)\r\n } else if (rule !== '*') {\r\n this.dateArr[0] = this.getAssignArr(rule)\r\n }\r\n },\r\n // 根据传进来的min-max返回一个顺序的数组\r\n getOrderArr(min, max) {\r\n let arr = [];\r\n for (let i = min; i <= max; i++) {\r\n arr.push(i);\r\n }\r\n return arr;\r\n },\r\n // 根据规则中指定的零散值返回一个数组\r\n getAssignArr(rule) {\r\n let arr = [];\r\n let assiginArr = rule.split(',');\r\n for (let i = 0; i < assiginArr.length; i++) {\r\n arr[i] = Number(assiginArr[i])\r\n }\r\n arr.sort(this.compare)\r\n return arr;\r\n },\r\n // 根据一定算术规则计算返回一个数组\r\n getAverageArr(rule, limit) {\r\n let arr = [];\r\n let agArr = rule.split('/');\r\n let min = Number(agArr[0]);\r\n let step = Number(agArr[1]);\r\n while (min <= limit) {\r\n arr.push(min);\r\n min += step;\r\n }\r\n return arr;\r\n },\r\n // 根据规则返回一个具有周期性的数组\r\n getCycleArr(rule, limit, status) {\r\n // status--表示是否从0开始则从1开始\r\n let arr = [];\r\n let cycleArr = rule.split('-');\r\n let min = Number(cycleArr[0]);\r\n let max = Number(cycleArr[1]);\r\n if (min > max) {\r\n max += limit;\r\n }\r\n for (let i = min; i <= max; i++) {\r\n let add = 0;\r\n if (status == false && i % limit == 0) {\r\n add = limit;\r\n }\r\n arr.push(Math.round(i % limit + add))\r\n }\r\n arr.sort(this.compare)\r\n return arr;\r\n },\r\n // 比较数字大小用于Array.sort\r\n compare(value1, value2) {\r\n if (value2 - value1 > 0) {\r\n return -1;\r\n } else {\r\n return 1;\r\n }\r\n },\r\n // 格式化日期格式如2017-9-19 18:04:33\r\n formatDate(value, type) {\r\n // 计算日期相关值\r\n let time = typeof value == 'number' ? new Date(value) : value;\r\n let Y = time.getFullYear();\r\n let M = time.getMonth() + 1;\r\n let D = time.getDate();\r\n let h = time.getHours();\r\n let m = time.getMinutes();\r\n let s = time.getSeconds();\r\n let week = time.getDay();\r\n // 如果传递了type的话\r\n if (type == undefined) {\r\n return Y + '-' + (M < 10 ? '0' + M : M) + '-' + (D < 10 ? '0' + D : D) + ' ' + (h < 10 ? '0' + h : h) + ':' + (m < 10 ? '0' + m : m) + ':' + (s < 10 ? '0' + s : s);\r\n } else if (type == 'week') {\r\n // 在quartz中 1为星期日\r\n return week + 1;\r\n }\r\n },\r\n // 检查日期是否存在\r\n checkDate(value) {\r\n let time = new Date(value);\r\n let format = this.formatDate(time)\r\n return value === format;\r\n }\r\n },\r\n watch: {\r\n 'ex': 'expressionChange'\r\n },\r\n props: ['ex'],\r\n mounted: function () {\r\n // 初始化 获取一次结果\r\n this.expressionChange();\r\n }\r\n}\r\n\r\n</script>\r\n"],"mappings":"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","ignoreList":[]}]}