{"remainingRequest":"D:\\Workspaces\\ard\\RuoYi-Vue-master\\ruoyi-ui\\node_modules\\babel-loader\\lib\\index.js!D:\\Workspaces\\ard\\RuoYi-Vue-master\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!D:\\Workspaces\\ard\\RuoYi-Vue-master\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\Workspaces\\ard\\RuoYi-Vue-master\\ruoyi-ui\\src\\components\\Crontab\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\Workspaces\\ard\\RuoYi-Vue-master\\ruoyi-ui\\src\\components\\Crontab\\index.vue","mtime":1675221397091},{"path":"D:\\Workspaces\\ard\\RuoYi-Vue-master\\ruoyi-ui\\babel.config.js","mtime":1675221397043},{"path":"D:\\Workspaces\\ard\\RuoYi-Vue-master\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1678842086999},{"path":"D:\\Workspaces\\ard\\RuoYi-Vue-master\\ruoyi-ui\\node_modules\\babel-loader\\lib\\index.js","mtime":1678842088721},{"path":"D:\\Workspaces\\ard\\RuoYi-Vue-master\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1678842086999},{"path":"D:\\Workspaces\\ard\\RuoYi-Vue-master\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":1678842089772}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:InVzZSBzdHJpY3QiOwoKdmFyIF9pbnRlcm9wUmVxdWlyZURlZmF1bHQgPSByZXF1aXJlKCJEOi9Xb3Jrc3BhY2VzL2FyZC9SdW9ZaS1WdWUtbWFzdGVyL3J1b3lpLXVpL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2ludGVyb3BSZXF1aXJlRGVmYXVsdC5qcyIpLmRlZmF1bHQ7Ck9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCAiX19lc01vZHVsZSIsIHsKICB2YWx1ZTogdHJ1ZQp9KTsKZXhwb3J0cy5kZWZhdWx0ID0gdm9pZCAwOwp2YXIgX29iamVjdFNwcmVhZDIgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KHJlcXVpcmUoIkQ6L1dvcmtzcGFjZXMvYXJkL1J1b1lpLVZ1ZS1tYXN0ZXIvcnVveWktdWkvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvb2JqZWN0U3ByZWFkMi5qcyIpKTsKcmVxdWlyZSgiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LmluY2x1ZGVzLmpzIik7CnJlcXVpcmUoImNvcmUtanMvbW9kdWxlcy9lcy5zdHJpbmcuaW5jbHVkZXMuanMiKTsKcmVxdWlyZSgiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LmNvbmNhdC5qcyIpOwp2YXIgX3NlY29uZCA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQocmVxdWlyZSgiLi9zZWNvbmQudnVlIikpOwp2YXIgX21pbiA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQocmVxdWlyZSgiLi9taW4udnVlIikpOwp2YXIgX2hvdXIgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KHJlcXVpcmUoIi4vaG91ci52dWUiKSk7CnZhciBfZGF5ID0gX2ludGVyb3BSZXF1aXJlRGVmYXVsdChyZXF1aXJlKCIuL2RheS52dWUiKSk7CnZhciBfbW9udGggPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KHJlcXVpcmUoIi4vbW9udGgudnVlIikpOwp2YXIgX3dlZWsgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KHJlcXVpcmUoIi4vd2Vlay52dWUiKSk7CnZhciBfeWVhciA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQocmVxdWlyZSgiLi95ZWFyLnZ1ZSIpKTsKdmFyIF9yZXN1bHQgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KHJlcXVpcmUoIi4vcmVzdWx0LnZ1ZSIpKTsKLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KdmFyIF9kZWZhdWx0ID0gewogIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7CiAgICByZXR1cm4gewogICAgICB0YWJUaXRsZXM6IFsi56eSIiwgIuWIhumSnyIsICLlsI/ml7YiLCAi5pelIiwgIuaciCIsICLlkagiLCAi5bm0Il0sCiAgICAgIHRhYkFjdGl2ZTogMCwKICAgICAgbXlpbmRleDogMCwKICAgICAgY3JvbnRhYlZhbHVlT2JqOiB7CiAgICAgICAgc2Vjb25kOiAiKiIsCiAgICAgICAgbWluOiAiKiIsCiAgICAgICAgaG91cjogIioiLAogICAgICAgIGRheTogIioiLAogICAgICAgIG1vbnRoOiAiKiIsCiAgICAgICAgd2VlazogIj8iLAogICAgICAgIHllYXI6ICIiCiAgICAgIH0KICAgIH07CiAgfSwKICBuYW1lOiAidmNyb250YWIiLAogIHByb3BzOiBbImV4cHJlc3Npb24iLCAiaGlkZUNvbXBvbmVudCJdLAogIG1ldGhvZHM6IHsKICAgIHNob3VsZEhpZGU6IGZ1bmN0aW9uIHNob3VsZEhpZGUoa2V5KSB7CiAgICAgIGlmICh0aGlzLmhpZGVDb21wb25lbnQgJiYgdGhpcy5oaWRlQ29tcG9uZW50LmluY2x1ZGVzKGtleSkpIHJldHVybiBmYWxzZTsKICAgICAgcmV0dXJuIHRydWU7CiAgICB9LAogICAgcmVzb2x2ZUV4cDogZnVuY3Rpb24gcmVzb2x2ZUV4cCgpIHsKICAgICAgLy8g5Y+N6Kej5p6QIOihqOi+vuW8jwogICAgICBpZiAodGhpcy5leHByZXNzaW9uKSB7CiAgICAgICAgdmFyIGFyciA9IHRoaXMuZXhwcmVzc2lvbi5zcGxpdCgiICIpOwogICAgICAgIGlmIChhcnIubGVuZ3RoID49IDYpIHsKICAgICAgICAgIC8vNiDkvY3ku6XkuIrmmK/lkIjms5Xooajovr7lvI8KICAgICAgICAgIHZhciBvYmogPSB7CiAgICAgICAgICAgIHNlY29uZDogYXJyWzBdLAogICAgICAgICAgICBtaW46IGFyclsxXSwKICAgICAgICAgICAgaG91cjogYXJyWzJdLAogICAgICAgICAgICBkYXk6IGFyclszXSwKICAgICAgICAgICAgbW9udGg6IGFycls0XSwKICAgICAgICAgICAgd2VlazogYXJyWzVdLAogICAgICAgICAgICB5ZWFyOiBhcnJbNl0gPyBhcnJbNl0gOiAiIgogICAgICAgICAgfTsKICAgICAgICAgIHRoaXMuY3JvbnRhYlZhbHVlT2JqID0gKDAsIF9vYmplY3RTcHJlYWQyLmRlZmF1bHQpKHt9LCBvYmopOwogICAgICAgICAgZm9yICh2YXIgaSBpbiBvYmopIHsKICAgICAgICAgICAgaWYgKG9ialtpXSkgdGhpcy5jaGFuZ2VSYWRpbyhpLCBvYmpbaV0pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfSBlbHNlIHsKICAgICAgICAvLyDmsqHmnInkvKDlhaXnmoTooajovr7lvI8g5YiZ6L+Y5Y6fCiAgICAgICAgdGhpcy5jbGVhckNyb24oKTsKICAgICAgfQogICAgfSwKICAgIC8vIHRhYuWIh+aNouWAvAogICAgdGFiQ2hlY2s6IGZ1bmN0aW9uIHRhYkNoZWNrKGluZGV4KSB7CiAgICAgIHRoaXMudGFiQWN0aXZlID0gaW5kZXg7CiAgICB9LAogICAgLy8g55Sx5a2Q57uE5Lu26Kem5Y+R77yM5pu05pS56KGo6L6+5byP57uE5oiQ55qE5a2X5q615YC8CiAgICB1cGRhdGVDcm9udGFiVmFsdWU6IGZ1bmN0aW9uIHVwZGF0ZUNyb250YWJWYWx1ZShuYW1lLCB2YWx1ZSwgZnJvbSkgewogICAgICAidXBkYXRlQ3JvbnRhYlZhbHVlIiwgbmFtZSwgdmFsdWUsIGZyb207CiAgICAgIHRoaXMuY3JvbnRhYlZhbHVlT2JqW25hbWVdID0gdmFsdWU7CiAgICAgIGlmIChmcm9tICYmIGZyb20gIT09IG5hbWUpIHsKICAgICAgICBjb25zb2xlLmxvZygiXHU2NzY1XHU4MUVBXHU3RUM0XHU0RUY2ICIuY29uY2F0KGZyb20sICIgXHU2NTM5XHU1M0Q4XHU0RTg2ICIpLmNvbmNhdChuYW1lLCAiICIpLmNvbmNhdCh2YWx1ZSkpOwogICAgICAgIHRoaXMuY2hhbmdlUmFkaW8obmFtZSwgdmFsdWUpOwogICAgICB9CiAgICB9LAogICAgLy8g6LWL5YC85Yiw57uE5Lu2CiAgICBjaGFuZ2VSYWRpbzogZnVuY3Rpb24gY2hhbmdlUmFkaW8obmFtZSwgdmFsdWUpIHsKICAgICAgdmFyIGFyciA9IFsic2Vjb25kIiwgIm1pbiIsICJob3VyIiwgIm1vbnRoIl0sCiAgICAgICAgcmVmTmFtZSA9ICJjcm9uIiArIG5hbWUsCiAgICAgICAgaW5zVmFsdWU7CiAgICAgIGlmICghdGhpcy4kcmVmc1tyZWZOYW1lXSkgcmV0dXJuOwogICAgICBpZiAoYXJyLmluY2x1ZGVzKG5hbWUpKSB7CiAgICAgICAgaWYgKHZhbHVlID09PSAiKiIpIHsKICAgICAgICAgIGluc1ZhbHVlID0gMTsKICAgICAgICB9IGVsc2UgaWYgKHZhbHVlLmluZGV4T2YoIi0iKSA+IC0xKSB7CiAgICAgICAgICB2YXIgaW5kZXhBcnIgPSB2YWx1ZS5zcGxpdCgiLSIpOwogICAgICAgICAgaXNOYU4oaW5kZXhBcnJbMF0pID8gdGhpcy4kcmVmc1tyZWZOYW1lXS5jeWNsZTAxID0gMCA6IHRoaXMuJHJlZnNbcmVmTmFtZV0uY3ljbGUwMSA9IGluZGV4QXJyWzBdOwogICAgICAgICAgdGhpcy4kcmVmc1tyZWZOYW1lXS5jeWNsZTAyID0gaW5kZXhBcnJbMV07CiAgICAgICAgICBpbnNWYWx1ZSA9IDI7CiAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS5pbmRleE9mKCIvIikgPiAtMSkgewogICAgICAgICAgdmFyIF9pbmRleEFyciA9IHZhbHVlLnNwbGl0KCIvIik7CiAgICAgICAgICBpc05hTihfaW5kZXhBcnJbMF0pID8gdGhpcy4kcmVmc1tyZWZOYW1lXS5hdmVyYWdlMDEgPSAwIDogdGhpcy4kcmVmc1tyZWZOYW1lXS5hdmVyYWdlMDEgPSBfaW5kZXhBcnJbMF07CiAgICAgICAgICB0aGlzLiRyZWZzW3JlZk5hbWVdLmF2ZXJhZ2UwMiA9IF9pbmRleEFyclsxXTsKICAgICAgICAgIGluc1ZhbHVlID0gMzsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaW5zVmFsdWUgPSA0OwogICAgICAgICAgdGhpcy4kcmVmc1tyZWZOYW1lXS5jaGVja2JveExpc3QgPSB2YWx1ZS5zcGxpdCgiLCIpOwogICAgICAgIH0KICAgICAgfSBlbHNlIGlmIChuYW1lID09ICJkYXkiKSB7CiAgICAgICAgaWYgKHZhbHVlID09PSAiKiIpIHsKICAgICAgICAgIGluc1ZhbHVlID0gMTsKICAgICAgICB9IGVsc2UgaWYgKHZhbHVlID09ICI/IikgewogICAgICAgICAgaW5zVmFsdWUgPSAyOwogICAgICAgIH0gZWxzZSBpZiAodmFsdWUuaW5kZXhPZigiLSIpID4gLTEpIHsKICAgICAgICAgIHZhciBfaW5kZXhBcnIyID0gdmFsdWUuc3BsaXQoIi0iKTsKICAgICAgICAgIGlzTmFOKF9pbmRleEFycjJbMF0pID8gdGhpcy4kcmVmc1tyZWZOYW1lXS5jeWNsZTAxID0gMCA6IHRoaXMuJHJlZnNbcmVmTmFtZV0uY3ljbGUwMSA9IF9pbmRleEFycjJbMF07CiAgICAgICAgICB0aGlzLiRyZWZzW3JlZk5hbWVdLmN5Y2xlMDIgPSBfaW5kZXhBcnIyWzFdOwogICAgICAgICAgaW5zVmFsdWUgPSAzOwogICAgICAgIH0gZWxzZSBpZiAodmFsdWUuaW5kZXhPZigiLyIpID4gLTEpIHsKICAgICAgICAgIHZhciBfaW5kZXhBcnIzID0gdmFsdWUuc3BsaXQoIi8iKTsKICAgICAgICAgIGlzTmFOKF9pbmRleEFycjNbMF0pID8gdGhpcy4kcmVmc1tyZWZOYW1lXS5hdmVyYWdlMDEgPSAwIDogdGhpcy4kcmVmc1tyZWZOYW1lXS5hdmVyYWdlMDEgPSBfaW5kZXhBcnIzWzBdOwogICAgICAgICAgdGhpcy4kcmVmc1tyZWZOYW1lXS5hdmVyYWdlMDIgPSBfaW5kZXhBcnIzWzFdOwogICAgICAgICAgaW5zVmFsdWUgPSA0OwogICAgICAgIH0gZWxzZSBpZiAodmFsdWUuaW5kZXhPZigiVyIpID4gLTEpIHsKICAgICAgICAgIHZhciBfaW5kZXhBcnI0ID0gdmFsdWUuc3BsaXQoIlciKTsKICAgICAgICAgIGlzTmFOKF9pbmRleEFycjRbMF0pID8gdGhpcy4kcmVmc1tyZWZOYW1lXS53b3JrZGF5ID0gMCA6IHRoaXMuJHJlZnNbcmVmTmFtZV0ud29ya2RheSA9IF9pbmRleEFycjRbMF07CiAgICAgICAgICBpbnNWYWx1ZSA9IDU7CiAgICAgICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gIkwiKSB7CiAgICAgICAgICBpbnNWYWx1ZSA9IDY7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuJHJlZnNbcmVmTmFtZV0uY2hlY2tib3hMaXN0ID0gdmFsdWUuc3BsaXQoIiwiKTsKICAgICAgICAgIGluc1ZhbHVlID0gNzsKICAgICAgICB9CiAgICAgIH0gZWxzZSBpZiAobmFtZSA9PSAid2VlayIpIHsKICAgICAgICBpZiAodmFsdWUgPT09ICIqIikgewogICAgICAgICAgaW5zVmFsdWUgPSAxOwogICAgICAgIH0gZWxzZSBpZiAodmFsdWUgPT0gIj8iKSB7CiAgICAgICAgICBpbnNWYWx1ZSA9IDI7CiAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS5pbmRleE9mKCItIikgPiAtMSkgewogICAgICAgICAgdmFyIF9pbmRleEFycjUgPSB2YWx1ZS5zcGxpdCgiLSIpOwogICAgICAgICAgaXNOYU4oX2luZGV4QXJyNVswXSkgPyB0aGlzLiRyZWZzW3JlZk5hbWVdLmN5Y2xlMDEgPSAwIDogdGhpcy4kcmVmc1tyZWZOYW1lXS5jeWNsZTAxID0gX2luZGV4QXJyNVswXTsKICAgICAgICAgIHRoaXMuJHJlZnNbcmVmTmFtZV0uY3ljbGUwMiA9IF9pbmRleEFycjVbMV07CiAgICAgICAgICBpbnNWYWx1ZSA9IDM7CiAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS5pbmRleE9mKCIjIikgPiAtMSkgewogICAgICAgICAgdmFyIF9pbmRleEFycjYgPSB2YWx1ZS5zcGxpdCgiIyIpOwogICAgICAgICAgaXNOYU4oX2luZGV4QXJyNlswXSkgPyB0aGlzLiRyZWZzW3JlZk5hbWVdLmF2ZXJhZ2UwMSA9IDEgOiB0aGlzLiRyZWZzW3JlZk5hbWVdLmF2ZXJhZ2UwMSA9IF9pbmRleEFycjZbMF07CiAgICAgICAgICB0aGlzLiRyZWZzW3JlZk5hbWVdLmF2ZXJhZ2UwMiA9IF9pbmRleEFycjZbMV07CiAgICAgICAgICBpbnNWYWx1ZSA9IDQ7CiAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS5pbmRleE9mKCJMIikgPiAtMSkgewogICAgICAgICAgdmFyIF9pbmRleEFycjcgPSB2YWx1ZS5zcGxpdCgiTCIpOwogICAgICAgICAgaXNOYU4oX2luZGV4QXJyN1swXSkgPyB0aGlzLiRyZWZzW3JlZk5hbWVdLndlZWtkYXkgPSAxIDogdGhpcy4kcmVmc1tyZWZOYW1lXS53ZWVrZGF5ID0gX2luZGV4QXJyN1swXTsKICAgICAgICAgIGluc1ZhbHVlID0gNTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy4kcmVmc1tyZWZOYW1lXS5jaGVja2JveExpc3QgPSB2YWx1ZS5zcGxpdCgiLCIpOwogICAgICAgICAgaW5zVmFsdWUgPSA2OwogICAgICAgIH0KICAgICAgfSBlbHNlIGlmIChuYW1lID09ICJ5ZWFyIikgewogICAgICAgIGlmICh2YWx1ZSA9PSAiIikgewogICAgICAgICAgaW5zVmFsdWUgPSAxOwogICAgICAgIH0gZWxzZSBpZiAodmFsdWUgPT0gIioiKSB7CiAgICAgICAgICBpbnNWYWx1ZSA9IDI7CiAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS5pbmRleE9mKCItIikgPiAtMSkgewogICAgICAgICAgaW5zVmFsdWUgPSAzOwogICAgICAgIH0gZWxzZSBpZiAodmFsdWUuaW5kZXhPZigiLyIpID4gLTEpIHsKICAgICAgICAgIGluc1ZhbHVlID0gNDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy4kcmVmc1tyZWZOYW1lXS5jaGVja2JveExpc3QgPSB2YWx1ZS5zcGxpdCgiLCIpOwogICAgICAgICAgaW5zVmFsdWUgPSA1OwogICAgICAgIH0KICAgICAgfQogICAgICB0aGlzLiRyZWZzW3JlZk5hbWVdLnJhZGlvVmFsdWUgPSBpbnNWYWx1ZTsKICAgIH0sCiAgICAvLyDooajljZXpgInpobnnmoTlrZDnu4Tku7bmoKHpqozmlbDlrZfmoLzlvI/vvIjpgJrov4ctcHJvcHPkvKDpgJLvvIkKICAgIGNoZWNrTnVtYmVyOiBmdW5jdGlvbiBjaGVja051bWJlcih2YWx1ZSwgbWluTGltaXQsIG1heExpbWl0KSB7CiAgICAgIC8vIOajgOafpeW/hemhu+S4uuaVtOaVsAogICAgICB2YWx1ZSA9IE1hdGguZmxvb3IodmFsdWUpOwogICAgICBpZiAodmFsdWUgPCBtaW5MaW1pdCkgewogICAgICAgIHZhbHVlID0gbWluTGltaXQ7CiAgICAgIH0gZWxzZSBpZiAodmFsdWUgPiBtYXhMaW1pdCkgewogICAgICAgIHZhbHVlID0gbWF4TGltaXQ7CiAgICAgIH0KICAgICAgcmV0dXJuIHZhbHVlOwogICAgfSwKICAgIC8vIOmakOiXj+W8ueeqlwogICAgaGlkZVBvcHVwOiBmdW5jdGlvbiBoaWRlUG9wdXAoKSB7CiAgICAgIHRoaXMuJGVtaXQoImhpZGUiKTsKICAgIH0sCiAgICAvLyDloavlhYXooajovr7lvI8KICAgIHN1Ym1pdEZpbGw6IGZ1bmN0aW9uIHN1Ym1pdEZpbGwoKSB7CiAgICAgIHRoaXMuJGVtaXQoImZpbGwiLCB0aGlzLmNyb250YWJWYWx1ZVN0cmluZyk7CiAgICAgIHRoaXMuaGlkZVBvcHVwKCk7CiAgICB9LAogICAgY2xlYXJDcm9uOiBmdW5jdGlvbiBjbGVhckNyb24oKSB7CiAgICAgIC8vIOi/mOWOn+mAieaLqemhuQogICAgICAi5YeG5aSH6L+Y5Y6fIjsKICAgICAgdGhpcy5jcm9udGFiVmFsdWVPYmogPSB7CiAgICAgICAgc2Vjb25kOiAiKiIsCiAgICAgICAgbWluOiAiKiIsCiAgICAgICAgaG91cjogIioiLAogICAgICAgIGRheTogIioiLAogICAgICAgIG1vbnRoOiAiKiIsCiAgICAgICAgd2VlazogIj8iLAogICAgICAgIHllYXI6ICIiCiAgICAgIH07CiAgICAgIGZvciAodmFyIGogaW4gdGhpcy5jcm9udGFiVmFsdWVPYmopIHsKICAgICAgICB0aGlzLmNoYW5nZVJhZGlvKGosIHRoaXMuY3JvbnRhYlZhbHVlT2JqW2pdKTsKICAgICAgfQogICAgfQogIH0sCiAgY29tcHV0ZWQ6IHsKICAgIGNyb250YWJWYWx1ZVN0cmluZzogZnVuY3Rpb24gY3JvbnRhYlZhbHVlU3RyaW5nKCkgewogICAgICB2YXIgb2JqID0gdGhpcy5jcm9udGFiVmFsdWVPYmo7CiAgICAgIHZhciBzdHIgPSBvYmouc2Vjb25kICsgIiAiICsgb2JqLm1pbiArICIgIiArIG9iai5ob3VyICsgIiAiICsgb2JqLmRheSArICIgIiArIG9iai5tb250aCArICIgIiArIG9iai53ZWVrICsgKG9iai55ZWFyID09ICIiID8gIiIgOiAiICIgKyBvYmoueWVhcik7CiAgICAgIHJldHVybiBzdHI7CiAgICB9CiAgfSwKICBjb21wb25lbnRzOiB7CiAgICBDcm9udGFiU2Vjb25kOiBfc2Vjb25kLmRlZmF1bHQsCiAgICBDcm9udGFiTWluOiBfbWluLmRlZmF1bHQsCiAgICBDcm9udGFiSG91cjogX2hvdXIuZGVmYXVsdCwKICAgIENyb250YWJEYXk6IF9kYXkuZGVmYXVsdCwKICAgIENyb250YWJNb250aDogX21vbnRoLmRlZmF1bHQsCiAgICBDcm9udGFiV2VlazogX3dlZWsuZGVmYXVsdCwKICAgIENyb250YWJZZWFyOiBfeWVhci5kZWZhdWx0LAogICAgQ3JvbnRhYlJlc3VsdDogX3Jlc3VsdC5kZWZhdWx0CiAgfSwKICB3YXRjaDogewogICAgZXhwcmVzc2lvbjogInJlc29sdmVFeHAiLAogICAgaGlkZUNvbXBvbmVudDogZnVuY3Rpb24gaGlkZUNvbXBvbmVudCh2YWx1ZSkgewogICAgICAvLyDpmpDol4/pg6jliIbnu4Tku7YKICAgIH0KICB9LAogIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7CiAgICB0aGlzLnJlc29sdmVFeHAoKTsKICB9Cn07CmV4cG9ydHMuZGVmYXVsdCA9IF9kZWZhdWx0Ow=="},{"version":3,"mappings":";;;;;;;;;;;AAmHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAEA;EACAA;IACA;MACAC;MACAC;MACAC;MACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;MACA;IACA;EACA;EACAC;EACAC;EACAC;IACAC;MACA;MACA;IACA;IACAC;MACA;MACA;QACA;QACA;UACA;UACA;YACAX;YACAC;YACAC;YACAC;YACAC;YACAC;YACAC;UACA;UACA,uDACAM,IACA;UACA;YACA;UACA;QACA;MACA;QACA;QACA;MACA;IACA;IACA;IACAC;MACA;IACA;IACA;IACAC;MACA;MACA;MACA;QACAC;QACA;MACA;IACA;IACA;IACAC;MACA;QACAC;QACAC;MAEA;MAEA;QACA;UACAA;QACA;UACA;UACAC,qBACA,kCACA;UACA;UACAD;QACA;UACA;UACAC,sBACA,oCACA;UACA;UACAD;QACA;UACAA;UACA;QACA;MACA;QACA;UACAA;QACA;UACAA;QACA;UACA;UACAC,uBACA,kCACA;UACA;UACAD;QACA;UACA;UACAC,uBACA,oCACA;UACA;UACAD;QACA;UACA;UACAC,uBACA,kCACA;UACAD;QACA;UACAA;QACA;UACA;UACAA;QACA;MACA;QACA;UACAA;QACA;UACAA;QACA;UACA;UACAC,uBACA,kCACA;UACA;UACAD;QACA;UACA;UACAC,uBACA,oCACA;UACA;UACAD;QACA;UACA;UACAC,uBACA,kCACA;UACAD;QACA;UACA;UACAA;QACA;MACA;QACA;UACAA;QACA;UACAA;QACA;UACAA;QACA;UACAA;QACA;UACA;UACAA;QACA;MACA;MACA;IACA;IACA;IACAE;MACA;MACAC;MACA;QACAA;MACA;QACAA;MACA;MACA;IACA;IACA;IACAC;MACA;IACA;IACA;IACAC;MACA;MACA;IACA;IACAC;MACA;MACA;MACA;QACAxB;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;MACA;MACA;QACA;MACA;IACA;EACA;EACAmB;IACAC;MACA;MACA,UACAd,aACA,MACAA,UACA,MACAA,WACA,MACAA,UACA,MACAA,YACA,MACAA,YACAA;MACA;IACA;EACA;EACAe;IACAC;IACAC;IACAC;IACAC;IACAC;IACAC;IACAC;IACAC;EACA;EACAC;IACAC;IACAC;MACA;IAAA;EAEA;EACAC;IACA;EACA;AACA;AAAA","names":["data","tabTitles","tabActive","myindex","crontabValueObj","second","min","hour","day","month","week","year","name","props","methods","shouldHide","resolveExp","obj","tabCheck","updateCrontabValue","console","changeRadio","refName","insValue","isNaN","checkNumber","value","hidePopup","submitFill","clearCron","computed","crontabValueString","components","CrontabSecond","CrontabMin","CrontabHour","CrontabDay","CrontabMonth","CrontabWeek","CrontabYear","CrontabResult","watch","expression","hideComponent","mounted"],"sourceRoot":"src/components/Crontab","sources":["index.vue"],"sourcesContent":["<template>\r\n <div>\r\n <el-tabs type=\"border-card\">\r\n <el-tab-pane label=\"秒\" v-if=\"shouldHide('second')\">\r\n <CrontabSecond\r\n @update=\"updateCrontabValue\"\r\n :check=\"checkNumber\"\r\n :cron=\"crontabValueObj\"\r\n ref=\"cronsecond\"\r\n />\r\n </el-tab-pane>\r\n\r\n <el-tab-pane label=\"分钟\" v-if=\"shouldHide('min')\">\r\n <CrontabMin\r\n @update=\"updateCrontabValue\"\r\n :check=\"checkNumber\"\r\n :cron=\"crontabValueObj\"\r\n ref=\"cronmin\"\r\n />\r\n </el-tab-pane>\r\n\r\n <el-tab-pane label=\"小时\" v-if=\"shouldHide('hour')\">\r\n <CrontabHour\r\n @update=\"updateCrontabValue\"\r\n :check=\"checkNumber\"\r\n :cron=\"crontabValueObj\"\r\n ref=\"cronhour\"\r\n />\r\n </el-tab-pane>\r\n\r\n <el-tab-pane label=\"日\" v-if=\"shouldHide('day')\">\r\n <CrontabDay\r\n @update=\"updateCrontabValue\"\r\n :check=\"checkNumber\"\r\n :cron=\"crontabValueObj\"\r\n ref=\"cronday\"\r\n />\r\n </el-tab-pane>\r\n\r\n <el-tab-pane label=\"月\" v-if=\"shouldHide('month')\">\r\n <CrontabMonth\r\n @update=\"updateCrontabValue\"\r\n :check=\"checkNumber\"\r\n :cron=\"crontabValueObj\"\r\n ref=\"cronmonth\"\r\n />\r\n </el-tab-pane>\r\n\r\n <el-tab-pane label=\"周\" v-if=\"shouldHide('week')\">\r\n <CrontabWeek\r\n @update=\"updateCrontabValue\"\r\n :check=\"checkNumber\"\r\n :cron=\"crontabValueObj\"\r\n ref=\"cronweek\"\r\n />\r\n </el-tab-pane>\r\n\r\n <el-tab-pane label=\"年\" v-if=\"shouldHide('year')\">\r\n <CrontabYear\r\n @update=\"updateCrontabValue\"\r\n :check=\"checkNumber\"\r\n :cron=\"crontabValueObj\"\r\n ref=\"cronyear\"\r\n />\r\n </el-tab-pane>\r\n </el-tabs>\r\n\r\n <div class=\"popup-main\">\r\n <div class=\"popup-result\">\r\n <p class=\"title\">时间表达式</p>\r\n <table>\r\n <thead>\r\n <th v-for=\"item of tabTitles\" width=\"40\" :key=\"item\">{{item}}</th>\r\n <th>Cron 表达式</th>\r\n </thead>\r\n <tbody>\r\n <td>\r\n <span>{{crontabValueObj.second}}</span>\r\n </td>\r\n <td>\r\n <span>{{crontabValueObj.min}}</span>\r\n </td>\r\n <td>\r\n <span>{{crontabValueObj.hour}}</span>\r\n </td>\r\n <td>\r\n <span>{{crontabValueObj.day}}</span>\r\n </td>\r\n <td>\r\n <span>{{crontabValueObj.month}}</span>\r\n </td>\r\n <td>\r\n <span>{{crontabValueObj.week}}</span>\r\n </td>\r\n <td>\r\n <span>{{crontabValueObj.year}}</span>\r\n </td>\r\n <td>\r\n <span>{{crontabValueString}}</span>\r\n </td>\r\n </tbody>\r\n </table>\r\n </div>\r\n <CrontabResult :ex=\"crontabValueString\"></CrontabResult>\r\n\r\n <div class=\"pop_btn\">\r\n <el-button size=\"small\" type=\"primary\" @click=\"submitFill\">确定</el-button>\r\n <el-button size=\"small\" type=\"warning\" @click=\"clearCron\">重置</el-button>\r\n <el-button size=\"small\" @click=\"hidePopup\">取消</el-button>\r\n </div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport CrontabSecond from \"./second.vue\";\r\nimport CrontabMin from \"./min.vue\";\r\nimport CrontabHour from \"./hour.vue\";\r\nimport CrontabDay from \"./day.vue\";\r\nimport CrontabMonth from \"./month.vue\";\r\nimport CrontabWeek from \"./week.vue\";\r\nimport CrontabYear from \"./year.vue\";\r\nimport CrontabResult from \"./result.vue\";\r\n\r\nexport default {\r\n data() {\r\n return {\r\n tabTitles: [\"秒\", \"分钟\", \"小时\", \"日\", \"月\", \"周\", \"年\"],\r\n tabActive: 0,\r\n myindex: 0,\r\n crontabValueObj: {\r\n second: \"*\",\r\n min: \"*\",\r\n hour: \"*\",\r\n day: \"*\",\r\n month: \"*\",\r\n week: \"?\",\r\n year: \"\",\r\n },\r\n };\r\n },\r\n name: \"vcrontab\",\r\n props: [\"expression\", \"hideComponent\"],\r\n methods: {\r\n shouldHide(key) {\r\n if (this.hideComponent && this.hideComponent.includes(key)) return false;\r\n return true;\r\n },\r\n resolveExp() {\r\n // 反解析 表达式\r\n if (this.expression) {\r\n let arr = this.expression.split(\" \");\r\n if (arr.length >= 6) {\r\n //6 位以上是合法表达式\r\n let obj = {\r\n second: arr[0],\r\n min: arr[1],\r\n hour: arr[2],\r\n day: arr[3],\r\n month: arr[4],\r\n week: arr[5],\r\n year: arr[6] ? arr[6] : \"\",\r\n };\r\n this.crontabValueObj = {\r\n ...obj,\r\n };\r\n for (let i in obj) {\r\n if (obj[i]) this.changeRadio(i, obj[i]);\r\n }\r\n }\r\n } else {\r\n // 没有传入的表达式 则还原\r\n this.clearCron();\r\n }\r\n },\r\n // tab切换值\r\n tabCheck(index) {\r\n this.tabActive = index;\r\n },\r\n // 由子组件触发,更改表达式组成的字段值\r\n updateCrontabValue(name, value, from) {\r\n \"updateCrontabValue\", name, value, from;\r\n this.crontabValueObj[name] = value;\r\n if (from && from !== name) {\r\n console.log(`来自组件 ${from} 改变了 ${name} ${value}`);\r\n this.changeRadio(name, value);\r\n }\r\n },\r\n // 赋值到组件\r\n changeRadio(name, value) {\r\n let arr = [\"second\", \"min\", \"hour\", \"month\"],\r\n refName = \"cron\" + name,\r\n insValue;\r\n\r\n if (!this.$refs[refName]) return;\r\n\r\n if (arr.includes(name)) {\r\n if (value === \"*\") {\r\n insValue = 1;\r\n } else if (value.indexOf(\"-\") > -1) {\r\n let indexArr = value.split(\"-\");\r\n isNaN(indexArr[0])\r\n ? (this.$refs[refName].cycle01 = 0)\r\n : (this.$refs[refName].cycle01 = indexArr[0]);\r\n this.$refs[refName].cycle02 = indexArr[1];\r\n insValue = 2;\r\n } else if (value.indexOf(\"/\") > -1) {\r\n let indexArr = value.split(\"/\");\r\n isNaN(indexArr[0])\r\n ? (this.$refs[refName].average01 = 0)\r\n : (this.$refs[refName].average01 = indexArr[0]);\r\n this.$refs[refName].average02 = indexArr[1];\r\n insValue = 3;\r\n } else {\r\n insValue = 4;\r\n this.$refs[refName].checkboxList = value.split(\",\");\r\n }\r\n } else if (name == \"day\") {\r\n if (value === \"*\") {\r\n insValue = 1;\r\n } else if (value == \"?\") {\r\n insValue = 2;\r\n } else if (value.indexOf(\"-\") > -1) {\r\n let indexArr = value.split(\"-\");\r\n isNaN(indexArr[0])\r\n ? (this.$refs[refName].cycle01 = 0)\r\n : (this.$refs[refName].cycle01 = indexArr[0]);\r\n this.$refs[refName].cycle02 = indexArr[1];\r\n insValue = 3;\r\n } else if (value.indexOf(\"/\") > -1) {\r\n let indexArr = value.split(\"/\");\r\n isNaN(indexArr[0])\r\n ? (this.$refs[refName].average01 = 0)\r\n : (this.$refs[refName].average01 = indexArr[0]);\r\n this.$refs[refName].average02 = indexArr[1];\r\n insValue = 4;\r\n } else if (value.indexOf(\"W\") > -1) {\r\n let indexArr = value.split(\"W\");\r\n isNaN(indexArr[0])\r\n ? (this.$refs[refName].workday = 0)\r\n : (this.$refs[refName].workday = indexArr[0]);\r\n insValue = 5;\r\n } else if (value === \"L\") {\r\n insValue = 6;\r\n } else {\r\n this.$refs[refName].checkboxList = value.split(\",\");\r\n insValue = 7;\r\n }\r\n } else if (name == \"week\") {\r\n if (value === \"*\") {\r\n insValue = 1;\r\n } else if (value == \"?\") {\r\n insValue = 2;\r\n } else if (value.indexOf(\"-\") > -1) {\r\n let indexArr = value.split(\"-\");\r\n isNaN(indexArr[0])\r\n ? (this.$refs[refName].cycle01 = 0)\r\n : (this.$refs[refName].cycle01 = indexArr[0]);\r\n this.$refs[refName].cycle02 = indexArr[1];\r\n insValue = 3;\r\n } else if (value.indexOf(\"#\") > -1) {\r\n let indexArr = value.split(\"#\");\r\n isNaN(indexArr[0])\r\n ? (this.$refs[refName].average01 = 1)\r\n : (this.$refs[refName].average01 = indexArr[0]);\r\n this.$refs[refName].average02 = indexArr[1];\r\n insValue = 4;\r\n } else if (value.indexOf(\"L\") > -1) {\r\n let indexArr = value.split(\"L\");\r\n isNaN(indexArr[0])\r\n ? (this.$refs[refName].weekday = 1)\r\n : (this.$refs[refName].weekday = indexArr[0]);\r\n insValue = 5;\r\n } else {\r\n this.$refs[refName].checkboxList = value.split(\",\");\r\n insValue = 6;\r\n }\r\n } else if (name == \"year\") {\r\n if (value == \"\") {\r\n insValue = 1;\r\n } else if (value == \"*\") {\r\n insValue = 2;\r\n } else if (value.indexOf(\"-\") > -1) {\r\n insValue = 3;\r\n } else if (value.indexOf(\"/\") > -1) {\r\n insValue = 4;\r\n } else {\r\n this.$refs[refName].checkboxList = value.split(\",\");\r\n insValue = 5;\r\n }\r\n }\r\n this.$refs[refName].radioValue = insValue;\r\n },\r\n // 表单选项的子组件校验数字格式(通过-props传递)\r\n checkNumber(value, minLimit, maxLimit) {\r\n // 检查必须为整数\r\n value = Math.floor(value);\r\n if (value < minLimit) {\r\n value = minLimit;\r\n } else if (value > maxLimit) {\r\n value = maxLimit;\r\n }\r\n return value;\r\n },\r\n // 隐藏弹窗\r\n hidePopup() {\r\n this.$emit(\"hide\");\r\n },\r\n // 填充表达式\r\n submitFill() {\r\n this.$emit(\"fill\", this.crontabValueString);\r\n this.hidePopup();\r\n },\r\n clearCron() {\r\n // 还原选择项\r\n (\"准备还原\");\r\n this.crontabValueObj = {\r\n second: \"*\",\r\n min: \"*\",\r\n hour: \"*\",\r\n day: \"*\",\r\n month: \"*\",\r\n week: \"?\",\r\n year: \"\",\r\n };\r\n for (let j in this.crontabValueObj) {\r\n this.changeRadio(j, this.crontabValueObj[j]);\r\n }\r\n },\r\n },\r\n computed: {\r\n crontabValueString: function() {\r\n let obj = this.crontabValueObj;\r\n let str =\r\n obj.second +\r\n \" \" +\r\n obj.min +\r\n \" \" +\r\n obj.hour +\r\n \" \" +\r\n obj.day +\r\n \" \" +\r\n obj.month +\r\n \" \" +\r\n obj.week +\r\n (obj.year == \"\" ? \"\" : \" \" + obj.year);\r\n return str;\r\n },\r\n },\r\n components: {\r\n CrontabSecond,\r\n CrontabMin,\r\n CrontabHour,\r\n CrontabDay,\r\n CrontabMonth,\r\n CrontabWeek,\r\n CrontabYear,\r\n CrontabResult,\r\n },\r\n watch: {\r\n expression: \"resolveExp\",\r\n hideComponent(value) {\r\n // 隐藏部分组件\r\n },\r\n },\r\n mounted: function() {\r\n this.resolveExp();\r\n },\r\n};\r\n</script>\r\n<style scoped>\r\n.pop_btn {\r\n text-align: center;\r\n margin-top: 20px;\r\n}\r\n.popup-main {\r\n position: relative;\r\n margin: 10px auto;\r\n background: #fff;\r\n border-radius: 5px;\r\n font-size: 12px;\r\n overflow: hidden;\r\n}\r\n.popup-title {\r\n overflow: hidden;\r\n line-height: 34px;\r\n padding-top: 6px;\r\n background: #f2f2f2;\r\n}\r\n.popup-result {\r\n box-sizing: border-box;\r\n line-height: 24px;\r\n margin: 25px auto;\r\n padding: 15px 10px 10px;\r\n border: 1px solid #ccc;\r\n position: relative;\r\n}\r\n.popup-result .title {\r\n position: absolute;\r\n top: -28px;\r\n left: 50%;\r\n width: 140px;\r\n font-size: 14px;\r\n margin-left: -70px;\r\n text-align: center;\r\n line-height: 30px;\r\n background: #fff;\r\n}\r\n.popup-result table {\r\n text-align: center;\r\n width: 100%;\r\n margin: 0 auto;\r\n}\r\n.popup-result table span {\r\n display: block;\r\n width: 100%;\r\n font-family: arial;\r\n line-height: 30px;\r\n height: 30px;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n border: 1px solid #e8e8e8;\r\n}\r\n.popup-result-scroll {\r\n font-size: 12px;\r\n line-height: 24px;\r\n height: 10em;\r\n overflow-y: auto;\r\n}\r\n</style>\r\n"]}]}
|