From f791db88d83a7ed851b9412d9797ed16b345fe79 Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期四, 07 七月 2022 18:39:18 +0800
Subject: [PATCH] 1.项目页面修改2.生产管理工单页面开发

---
 src/views/jcsz/zzjg.vue                                                     |    8 
 src/views/zzmx/chda.vue                                                     |   15 
 src/views/scgl/scdd.vue                                                     |  191 
 src/views/jcsz/wldw.vue                                                     |    8 
 src/views/scgl/gd.vue                                                       |  547 ++
 src/views/scgl/sckbg.vue                                                    |  474 +
 src/components/Print/vue-print-nb/src/img/ie.png                            |    0 
 src/api/scgl.js                                                             |   95 
 src/views/scgl/gdpg.vue                                                     |  248 +
 src/components/Print/vue-print-nb/src/img/Chrome1.png                       |    0 
 src/components/Print/vue-print-nb/src/main.js                               |   20 
 src/views/zzmx/jpgj.vue                                                     |    2 
 src/components/Print/vue-print-nb/2021-05-12-18-28-56.png                   |    0 
 src/components/Print/vue-print-nb/package.json                              |   86 
 src/api/jcsz.js                                                             |   32 
 src/components/Print/vue-print-nb/2021-05-12-18-28-08.png                   |    0 
 src/components/Print/vue-print-nb/lib/print.umd.js                          | 4079 +++++++++++++++++++
 src/components/Print/vue-print-nb/.Archive/README.md/2019-06-06 22-53-18.md |   48 
 src/views/wlgl/kwdy.vue                                                     |   10 
 src/components/Print/vue-print-nb/print/index.js                            |    6 
 src/components/Print/vue-print-nb/src/App.vue                               |  310 +
 src/components/Print/vue-print-nb/print/packages/print.js                   |   90 
 src/components/Print/vue-print-nb/print/packages/printarea.js               |  430 ++
 src/views/zzmx/gylx.vue                                                     |    2 
 src/components/Print/vue-print-nb/lib/print.umd.min.js                      |    2 
 src/views/sbgl/sbqd.vue                                                     |   22 
 public/static/temp/grwebapp.js                                              |  499 ++
 src/components/Print/vue-print-nb/src/img/Chrome.png                        |    0 
 src/utils/global.js                                                         |    2 
 src/components/Print/vue-print-nb/lib/print.common.js                       | 4069 +++++++++++++++++++
 src/views/jcsz/yhqd.vue                                                     |  233 +
 src/components/Print/vue-print-nb/print/packages/images/print-icon.png      |    0 
 src/main.js                                                                 |    3 
 public/static/temp/webapp-ws-tutorial.htm                                   |  259 +
 src/views/jcsz/jsqd.vue                                                     |   16 
 src/components/Print/vue-print-nb/.eslintignore                             |    1 
 src/views/wlgl/ckdy.vue                                                     |    8 
 src/views/zzmx/gxdy.vue                                                     |   12 
 src/components/Print/vue-print-nb/README.md                                 |  354 +
 src/components/Print/vue-print-nb/print/packages/css/print.css              |    3 
 src/views/zzmx/wllx.vue                                                     |    8 
 41 files changed, 11,826 insertions(+), 366 deletions(-)

diff --git a/public/static/temp/grwebapp.js b/public/static/temp/grwebapp.js
new file mode 100644
index 0000000..3eee469
--- /dev/null
+++ b/public/static/temp/grwebapp.js
@@ -0,0 +1,499 @@
+//鍙橀噺 _grwebapp_url 鎸囧畾WEB鎶ヨ〃瀹㈡埛绔畨瑁呯▼搴忕殑涓嬭浇URL锛屽綋閫氳繃WebSocket閫氳涓嶆垚鍔熸椂锛屾彁绀虹敤鎴风敤姝RL涓嬭浇绋嬪簭杩涜瀹夎銆�
+//鎴栫敤浜庤嚜鍔ㄦ洿鏂癢EB鎶ヨ〃瀹㈡埛绔椂涓嬭浇鏂扮増鏈紝寮�鍙戣�呭簲灏� _grwebapp_url 鏀逛负鑷繁鏈嶅姟鍣ㄧ殑URL锛屾柟渚跨敤鎴蜂粠鍙闂殑WEB鏈嶅姟鍣ㄤ笅杞�
+//鍙橀噺 _grwebapp_version 鎸囧畾鑷姩鏇存柊鏃讹紝瀹㈡埛绔▼搴忛渶瑕佺殑鐗堟湰鍙凤紝濡傛灉灏忎簬姝ょ増鏈彿锛屽垯鑷姩杩涜鏇存柊
+var _grwebapp_websocket = null,
+  _grwebapp_url = "http://www.rubylong.cn/download/gridreport6-webapp.exe",
+  _grwebapp_version = "6.8.2.0",
+  webapp_onmessage ; //濡傛灉闇�瑕佸搷搴旀墽琛屼换鍔″悗鐨勬秷鎭搷搴旓紝搴旇鍐欎竴涓悕绉颁负 webapp_onmessage 鐨� function
+
+function webapp_url_method_valid(url, method) {
+  if (!method) {
+    if (typeof url == "object") {
+      method = url.method;
+      url = url.url;
+    }
+    if (!method) {
+      method = /.grf|.txt|.xml|.json/.test(url) ? "GET" : "POST";
+    }
+  }
+  return method;
+}
+
+//姝ゅ嚱鏁扮敤浜庡垽鏂竴涓彉閲忔槸鍚︿负URL瀛楃涓诧紝濡傛灉绫诲瀷涓哄瓧绗︿覆涓旈涓潪绌虹櫧瀛楃涓嶄负鈥�<鈥濅笌鈥渰鈥濆嵆鍒ゅ畾涓篣RL
+//濡傛灉鍙傛暟鏄竴涓猳bject瀵硅薄锛屼笖鍏跺叿鏈夆�渦rl鈥濆睘鎬э紝鍒欏叾鏄疕TTPParam瀵硅薄锛屾槸涓�涓猽rl鍙傛暟
+var webapp_is_url = function (p) {
+  var index = 0,
+    len = p.length,
+    ch;
+
+  //瀵硅薄濡傛灉鏈塽rl灞炴�э紝鍒ゅ畾涓簎rl
+  if (typeof p == "object") {
+    return !!p.url;
+  }
+
+  if (typeof p != "string") {
+    return 0;
+  }
+
+  //棣栧厛鎵惧埌绗竴涓潪绌虹櫧瀛楃
+  while (index < len) {
+    ch = p[index];
+    if (!/\s/g.test(ch))
+      break;
+    index++;
+  }
+
+  //濡傛灉涓嶆槸xml鎴杍son鏂囨湰涓诧紝鍒欏垽瀹氫负url
+  return (ch != "{") && (ch != "<") && (p.substr(index, 4) != "_WR_");
+};
+
+function webapp_ajax(method, url, callback, cbthis, params) {
+  var xmlhttp = new XMLHttpRequest(),
+    headers;
+
+  xmlhttp.onreadystatechange = function () {
+    if (xmlhttp.readyState == 4 && xmlhttp.status > 0) {
+      callback.call(cbthis, xmlhttp, xmlhttp.status == 200);
+    }
+  }
+
+  xmlhttp.onerror = function () {
+    callback.call(cbthis, xmlhttp, 0);
+  }
+
+  if (typeof url == "object") {
+    headers = url.headers;
+    if (typeof headers == "string") {
+      headers = JSON.parse(headers)
+    }
+
+    if (!method) {
+      method = url.method;
+    }
+
+    if (!params) {
+      params = url.data;
+    }
+
+    url = url.url;
+  }
+
+  xmlhttp.open(webapp_url_method_valid(url, method), url, true); //寮傛璇锋眰鏁版嵁
+
+  if (headers && typeof headers == "object") {
+    for (var key in headers) {
+      xmlhttp.setRequestHeader(key, headers[key]);
+    }
+  }
+
+  xmlhttp.send(params);  //POST 鎴� PUT 鍙互浼犻�掑弬鏁�
+}
+
+/////////////////////////////////////////////////////////////////////////////
+//鍒涘缓鍚姩WEB鎶ヨ〃瀹㈡埛绔殑URL鍗忚鍙傛暟
+function _gr_up_href(args) {
+  return "grwebapp://" + (args ? JSON.stringify(args) : "");
+}
+
+//閫氳繃URL鍗忚鍚姩WEB鎶ヨ〃瀹㈡埛绔▼搴�
+//鍙傛暟 appUpdate 鎸囧畾鏄惁鑷姩鏇存柊WEB鎶ヨ〃瀹㈡埛绔▼搴忥紝鏍规嵁_grwebapp_version涓庡凡缁忓畨瑁呯殑绋嬪簭鐗堟湰杩涜姣旇緝锛屾寜闇�杩涜鑷姩鍗囩骇
+function webapp_urlprotocol_startup(appUpdate) {
+  var arg = appUpdate ? {
+    type: "update",
+    url: _grwebapp_url,
+    ver: _grwebapp_version
+  } : 0;
+  window.location.href = _gr_up_href(arg);
+}
+
+//濡傛灉WEB鎶ヨ〃瀹㈡埛绔▼搴忔湭杩愯锛屽厛閫氳繃URL鍗忚鍚姩WEB鎶ヨ〃瀹㈡埛绔▼搴�
+//閫氱煡WEB鎶ヨ〃瀹㈡埛绔▼搴忔牴鎹ā鏉夸笌鏁版嵁鐨刄RL锛屼互鍙婄敓鎴愮被鍨嬬瓑鐩稿叧鍙傛暟杩涜鎶ヨ〃鐢熸垚锛�
+function webapp_urlprotocol_run(args, report_url, data_url) {
+  if (report_url) {
+    args.report = report_url;
+  }
+  if (data_url) {
+    args.data = data_url;
+  }
+
+  window.location.href = _gr_up_href(args);
+}
+
+/////////////////////////////////////////////////////////////////////////////
+//妫�鏌ebSocket鏄惁宸茬粡鍒涘缓骞堕�氳杩炴帴鎴愬姛
+function webapp_ws_check(slience) {
+  if (!slience) {
+    if (!_grwebapp_websocket) {
+      alert("WebSocket娌℃湁鍒涘缓锛屾棤娉曞彂閫佹暟鎹紒");
+    }
+    else if (_grwebapp_websocket.readyState != 1) {
+      alert("WebSocket姝e湪杩炴帴涓紝鏆備笉鑳藉彂閫佹暟鎹紒");
+    }
+  }
+  return _grwebapp_websocket && (_grwebapp_websocket.readyState === 1);
+}
+
+//鍒涘缓骞堕�氳杩炴帴WebSocket
+function webapp_ws_create(onopen) {
+  //濡傛灉宸茬粡鍒涘缓锛屼笖杩炴帴姝e父锛屽垯涓嶈鍐嶆鍒涘缓
+  if (_grwebapp_websocket && _grwebapp_websocket.readyState === 1) {
+    return;
+  }
+
+  //鍒ゆ柇褰撳墠娴忚鍣ㄦ槸鍚︽敮鎸乄ebSocket
+  if ('WebSocket' in window) {
+    _grwebapp_websocket = new WebSocket("ws://127.0.0.1:22333");
+
+    //杩炴帴鎴愬姛寤虹珛鐨勫洖璋冩柟娉�
+    if (onopen) {
+      _grwebapp_websocket.onopen = function () {
+        //alert("_grwebapp_websocket.onopen");
+        onopen();
+      }
+    }
+    // debugger;
+    //鎺ユ敹鍒版秷鎭殑鍥炶皟鏂规硶
+    if (window.webapp_onmessage) {
+      _grwebapp_websocket.onmessage = function (event) {
+        window.webapp_onmessage(event);
+      }
+    }
+
+    _grwebapp_websocket.onerror = function () {
+      var children = document.body.children,
+        childrenLen = children.length,
+        referNode = childrenLen ? children[0] : null,
+        newNode = document.createElement("h3");
+
+      _grwebapp_websocket = null;
+
+      //寮瑰嚭alert鎻愮ず淇℃伅锛屽彲淇敼涓烘洿閫傚悎鐨勮〃杩�
+      //alert("鍒涘缓WebSocket澶辫触锛屽彲鑳芥槸鈥榃EB鎶ヨ〃瀹㈡埛绔▼搴忊�欏湪鏈満娌℃湁瀹夎锛屾垨鍦ㄦ姤琛ㄧ綉椤靛姞杞芥椂娌℃湁璋冪敤鈥榳ebapp_urlprotocol_startup鈥欏嚱鏁拌繘琛屽惎鍔ㄣ��");
+      alert("鍒涘缓WebSocket澶辫触锛屽彲鑳芥槸WEB鎶ヨ〃瀹㈡埛绔▼搴忔病鏈夊惎鍔紝鎴栧叾鍦ㄦ湰鏈烘病鏈夊畨瑁咃紝璇锋牴鎹綉椤甸《閮ㄧ殑鎻愮ず杩涜鐩稿簲鐨勬搷浣溿��");
+
+      //鍦ㄧ綉椤垫渶鍓嶉潰鍔犱笂鎻愮ず涓嬭浇鐨勬枃瀛楋紝鍙慨鏀逛负鏇撮�傚悎鐨勮〃杩颁笌鐣岄潰褰㈠紡
+      //newNode.innerHTML = '鐗瑰埆鎻愮ず锛�<a href="' + _grwebapp_url + '">鐐瑰嚮涓嬭浇WEB鎶ヨ〃瀹㈡埛绔▼搴�</a>锛屼笅杞藉悗鍙屽嚮涓嬭浇鐨勬枃浠惰繘琛屽畨瑁咃紝瀹夎瀹屾垚鍚庨噸鏂版墦寮�褰撳墠缃戦〉銆�';
+      newNode.innerHTML = '鐗瑰埆鎻愮ず锛氬皾璇�<a href="javascript:webapp_urlprotocol_startup();">鍚姩WEB鎶ヨ〃瀹㈡埛绔▼搴�</a>銆傛垨<a href="' + _grwebapp_url + '">鐐瑰嚮涓嬭浇WEB鎶ヨ〃瀹㈡埛绔▼搴�</a>锛屼笅杞藉悗鍙屽嚮涓嬭浇鐨勬枃浠惰繘琛屽畨瑁咃紝瀹夎瀹屾垚鍚庨噸鏂版墦寮�褰撳墠缃戦〉銆�';
+      document.body.insertBefore(newNode, referNode);
+    };
+
+    //杩炴帴鍏抽棴鐨勫洖璋冩柟娉�
+    _grwebapp_websocket.onclose = function () {
+      _grwebapp_websocket = null;
+    }
+
+    //鎰熻杩欓儴鍒嗗彲浠ヤ笉瑕�
+    //鐩戝惉绐楀彛鍏抽棴浜嬩欢锛屽綋绐楀彛鍏抽棴鏃讹紝涓诲姩鍘诲叧闂璤grwebapp_websocket杩炴帴锛岄槻姝㈣繛鎺ヨ繕娌℃柇寮�灏卞叧闂獥鍙o紝server绔細鎶涘紓甯搞��
+    //window.onbeforeunload = function () {
+    //    if (_grwebapp_websocket) {
+    //        _grwebapp_websocket.close();
+    //    }
+    //}
+  }
+  else {
+    alert('褰撳墠娴忚鍣ㄤ笉鏀寔HTML5鐨刉ebSocket锛岃閫夌敤鏇存柊鐗堟湰鐨勬祻瑙堝櫒锛�')
+  }
+}
+
+function webapp_build_one(pack, report, report_method, data, data_method, callback_fun, dataParams) {
+  if (!report) {
+    alert("鍦ㄥ弬鏁颁腑娌℃湁瀹氫箟鎶ヨ〃妯℃澘鐨剈rl锛屾姤琛ㄤ笉鑳界敓鎴愶紒");
+    return;
+  }
+
+  if (data) {
+    if (webapp_is_url(data)) {
+      webapp_ajax(data_method, data, function (xmlhttp, success) {
+        if (success) {
+          pack.data = xmlhttp.responseText;
+          callback_fun();
+        }
+        else {
+          //alert("杞藉叆鎶ヨ〃鏁版嵁澶辫触锛屽搷搴旀秷鎭細" + xmlhttp.responseText);
+          window.open(data, "blank");
+        }
+      }, undefined, dataParams);
+    }
+    else {
+      pack.data = (typeof data == "object") ? JSON.stringify(data) : data;
+      callback_fun();
+    }
+  }
+  else {
+    pack.data = "";
+  }
+
+  if (webapp_is_url(report)) {
+    webapp_ajax(report_method, report, function (xmlhttp, success) {
+      if (success) {
+        pack.report = xmlhttp.responseText;
+        callback_fun();
+      }
+      else {
+        //alert("杞藉叆鎶ヨ〃妯℃澘澶辫触锛屽搷搴旀秷鎭細" + xmlhttp.responseText);
+        window.open(report, "blank");
+      }
+    });
+  }
+  else {
+    pack.report = (typeof report == "object") ? JSON.stringify(report) : report;
+    callback_fun();
+  }
+}
+
+//灏嗗弬鏁伴�氳繃WebSocket鍙戦�佺粰WEB鎶ヨ〃瀹㈡埛绔紝WEB鎶ヨ〃瀹㈡埛绔墽琛屽搴旂殑浠诲姟
+//鍙傛暟璇存槑锛�
+//args锛�
+//  鎶ヨ〃鐢熸垚鐩稿叧鐨勫弬鏁帮紝涓轰竴涓粨鏋勪綋瀵硅薄鎴栫粨鏋勪綋瀵硅薄鏁扮粍銆�
+//  褰撳弬鏁颁负鏁扮粍鏃讹紝琛ㄧず鏄墽琛屾壒閲忎换鍔°�傛鏃跺悗闈㈢殑 report 涓� data 鍙傛暟涓嶄細琚敤鍒般��
+//  缁撴瀯浣撳璞$殑鍚勪釜鏁版嵁椤硅鏄庤鍙傝�冨府鍔╀腑鈥淲EB鎶ヨ〃(B/S鎶ヨ〃)->WEB鎶ヨ〃瀹㈡埛绔�->鍚姩鍙傛暟璇存槑鈥濋儴鍒�
+//report锛�
+//  鎶ヨ〃妯℃澘鏂囨湰锛屾姤琛ㄥ畾涔夋牸寮忓繀椤讳负JSON鏍煎紡銆傛鍙傛暟鍙┖锛屼负绌鸿〃绀烘墽琛岄潪鎶ヨ〃鐢熸垚浠诲姟锛屾垨WEB鎶ヨ〃瀹㈡埛绔�氳繃URL鑾峰彇鎶ヨ〃妯℃澘銆�
+//data锛�
+//  鎶ヨ〃鏁版嵁鏂囨湰锛屾鍙傛暟鍙┖锛屾姤琛ㄦ棤闇�鎻愪緵鏁版嵁锛屾垨WEB鎶ヨ〃瀹㈡埛绔�氳繃URL鑾峰彇鎶ヨ〃鏁版嵁銆�
+//
+//  鎶ヨ〃鏁版嵁瀵瑰簲鐨� XML 鎴� JSON 鏂囨湰锛岃鍙傝�冨府鍔┾�淲EB鎶ヨ〃(B/S鎶ヨ〃)->WEB鎶ヨ〃鏁版嵁鈥濅腑鐨勮鏄庛��
+function webapp_ws_run(variant_args, report, data) {
+  function run_one(args, reportText, dataText) {
+    var msg;
+
+    if (webapp_ws_check()) {
+      if (typeof args === "string") {
+        args = {
+          type: args
+        };
+      }
+      msg = JSON.stringify(args);
+
+      if (reportText) {
+        if (reportText.substr(0, 4) === "_WR_") {
+          msg += reportText.length;
+        }
+        msg += reportText;
+
+        if (dataText) {
+          msg += dataText;
+        }
+      }
+
+      _grwebapp_websocket.send(msg);
+    }
+  } //end of run_one
+
+  if (!webapp_ws_check(1)) {
+    //濡傛灉WebSocket娌℃湁杩炴帴锛屽垯棣栧厛鍒涘缓骞惰繛鎺ebSocket锛屽苟鍦╫nopen浜嬩欢涓墽琛岀浉鍏崇殑浠诲姟
+    webapp_ws_create(function () {
+      webapp_ws_run(variant_args, report, data);
+    });
+    return;
+  }
+
+  if (Array.isArray(variant_args)) {
+    variant_args.forEach(function (args) {
+      run_one(args);
+    })
+  }
+  else {
+    run_one(variant_args, report, data);
+  }
+}
+
+//閫氳繃 ajax 鏂瑰紡鑾峰彇鎶ヨ〃妯℃澘涓庢姤琛ㄦ暟鎹紝鐒跺悗閫氳繃 WebSocket 鍙戦�佺浉鍏虫暟鎹粰WEB鎶ヨ〃瀹㈡埛绔苟鐢熸垚鎶ヨ〃
+//鍙傛暟鏃㈠彲浠ユ槸鍗曚釜缁撴瀯浣撳璞★紝涔熷彲浠ユ槸缁撴瀯浣撳璞℃暟缁勩�傚鏋滄槸鏁扮粍锛岃〃绀烘垚鎵圭敓鎴愬涓姤琛ㄣ��
+//缁撴瀯浣撳璞$殑鍚勪釜鏁版嵁椤硅鏄庤鍙傝�冨府鍔╀腑鈥淲EB鎶ヨ〃(B/S鎶ヨ〃)->WEB鎶ヨ〃瀹㈡埛绔�->鍚姩鍙傛暟璇存槑鈥濋儴鍒嗐��
+function webapp_ws_ajax_run(variant_args) {
+  function run_one(args) {
+    var report = args.report,
+      data = args.data,
+      report_method = args.report_method,
+      data_method = args.data_method,
+      dataUrlParams = args.dataUrlParams,
+      pack = {};
+
+    function run() {
+      //鍙湁褰搑eport涓巇ata閮借祴鍊间箣鍚庢墠杩愯锛屽嵆鍚慦EB鎶ヨ〃瀹㈡埛绔▼搴忓彂閫佹暟鎹�
+      if (pack.report && pack.data !== undefined) {
+        webapp_ws_run(args, pack.report, pack.data);
+      }
+    }
+
+    //鍥犱负args闇�瑕佷紶閫掔粰WEBAPP锛宺eport涓巇ata鐨剈rl鐩稿叧鐨勫弬鏁颁笉闇�瑕佷紶閫掞紝鎵�浠ュ皢鍏跺垹闄ゆ帀
+    delete args.report;
+    delete args.data;
+    delete args.report_method;
+    delete args.data_method;
+    delete args.dataUrlParams;
+
+    webapp_build_one(pack, report, report_method, data, data_method, run, dataUrlParams);
+  } //end of run_one
+
+  if (!webapp_ws_check(1)) {
+    //濡傛灉WebSocket娌℃湁杩炴帴锛屽垯棣栧厛鍒涘缓骞惰繛鎺ebSocket锛屽苟鍦╫nopen浜嬩欢涓墽琛岀浉鍏崇殑浠诲姟
+    webapp_ws_create(function () {
+      webapp_ws_ajax_run(variant_args);
+    });
+    return;
+  }
+
+  if (Array.isArray(variant_args)) {
+    variant_args.forEach(function (args) {
+      run_one(args);
+    });
+  }
+  else {
+    run_one(variant_args);
+  }
+}
+
+//閫氳繃 ajax 鏂瑰紡鑾峰彇澶氫釜鎶ヨ〃鐨勬ā鏉夸笌鏁版嵁锛岀劧鍚庣敤 WebSocket 灏嗘暟鎹竴娆℃�у彂閫佺粰WEB鎶ヨ〃瀹㈡埛绔▼搴忋��
+//瀹炵幇澶氫釜鎶ヨ〃鍚屾椂鐢熸垚鍦ㄤ竴涓换鍔′腑(搴旂敤Grid++Report鐨勭嫭绔嬪瓙鎶ヨ〃鍔熻兘瀹炵幇)锛岃揪鍒板涓姤琛ㄥ悓鏃堕瑙堛�佹墦鍗颁笌鏁版嵁瀵煎嚭
+function webapp_ws_ajax_together(args, reports) {
+  var reportCount = reports.length,
+    reportPacks = [],
+    gettedCount = 0; //鎸囩ず宸茬粡鑾峰彇鍒版暟鎹殑鎶ヨ〃涓暟
+
+  function ajaxRequestOne(arg, index) {
+    var report = arg.report,
+      data = arg.data,
+      report_method = arg.report_method,
+      data_method = arg.data_method,
+      dataUrlParams = arg.dataUrlParams,
+      pack = reportPacks[index];
+
+    function try_ws_send() {
+      var msg,
+        dataMsg = "",
+        lengths = [];
+
+      if (pack.report && pack.data !== undefined) {
+        if (++gettedCount >= reportCount) { //鍙湁褰撳叏閮ㄦ姤琛ㄧ殑妯℃澘涓庢暟鎹兘宸茬粡鑾峰彇鍒颁箣鍚庯紝鎵嶄細鍚慦EB鎶ヨ〃瀹㈡埛绔彂閫佹暟鎹�
+          msg = JSON.stringify(args);
+
+          reportPacks.forEach(function (item) {
+            var report = item.report,
+              data = item.data,
+              reportLen = report.length,
+              reportLenText = "";
+
+            if (report.substr(0, 4) === "_WR_") {
+              reportLenText += reportLen;
+              dataMsg += reportLenText;
+              reportLen += reportLenText.length;
+            }
+            dataMsg += report;
+
+            if (data) {
+              dataMsg += data;
+            }
+
+            lengths.push(reportLen + data.length);
+          });
+
+          msg += JSON.stringify(lengths);
+          msg += dataMsg;
+
+          _grwebapp_websocket.send(msg);
+        }
+      }
+    }
+
+    webapp_build_one(pack, report, report_method, data, data_method, try_ws_send, dataUrlParams);
+  } //end of ajaxRequestOne
+
+  if (!webapp_ws_check(1)) {
+    //濡傛灉WebSocket娌℃湁杩炴帴锛屽垯棣栧厛鍒涘缓骞惰繛鎺ebSocket锛屽苟鍦╫nopen浜嬩欢涓墽琛岀浉鍏崇殑浠诲姟
+    webapp_ws_create(function () {
+      webapp_ws_ajax_together(args, reports);
+    });
+    return;
+  }
+
+  reports.forEach(function (report, index) {
+    reportPacks.push({});
+    ajaxRequestOne(report, index);
+  });
+}
+
+/////////////////////////////////////////////////////////////////////////////
+//閫氳繃WebSocket鍚慦EB鎶ヨ〃瀹㈡埛绔彂閫佹灇涓惧嚭褰撳墠鐢佃剳鐨勬墍鏈夋墦鍗版満淇℃伅鐨勬寚浠�
+//鍦ㄧ綉椤电殑 webapp_onmessage 鍑芥暟涓帴鏀禬EB鎶ヨ〃瀹㈡埛绔繑鍥炵殑缁撴灉锛屽叿浣撹鍙傝�冧緥瀛愩��
+function webapp_ws_fun_Printers() {
+  webapp_ws_run({
+    type: "fun",
+    fun: "Printers"
+  });
+}
+
+//閫氳繃WebSocket鍚慦EB鎶ヨ〃瀹㈡埛绔彂閫佹灇涓惧嚭褰撳墠鐢佃剳鐨勬寚瀹氭墦鍗版満鐨勫叏閮ㄥ彲鐢ㄧ焊寮犵殑鎸囦护
+//鍦ㄧ綉椤电殑 webapp_onmessage 鍑芥暟涓帴鏀禬EB鎶ヨ〃瀹㈡埛绔繑鍥炵殑缁撴灉锛屽叿浣撹鍙傝�冧緥瀛�
+function webapp_ws_fun_PrinterPapers(printer) {
+  webapp_ws_run({
+    type: "fun",
+    fun: "PrinterPapers",
+    printer: printer
+  });
+}
+
+//閫氳繃WebSocket鍚慦EB鎶ヨ〃瀹㈡埛绔彂閫佸仠姝㈠綋鍓嶆姤琛ㄩ瑙堝苟鍏抽棴棰勮绐楀彛鐨勬寚浠�
+function webapp_ws_fun_StopPreview() {
+  webapp_ws_run({
+    type: "fun",
+    fun: "StopPreview"
+  });
+}
+
+/////////////////////////////////////////////////////////////////////////////
+//閫氳繃WebSocket鍚慦EB鎶ヨ〃瀹㈡埛绔彂閫佹秷鎭繘琛岃嚜鍔ㄦ洿鏂版鏌ュ鐞�
+function webapp_ws_autoupdate() {
+  webapp_ws_run({
+    type: "update",
+    url: _grwebapp_url,
+    ver: _grwebapp_version
+  });
+}
+
+/////////////////////////////////////////////////////////////////////////////
+//涓篣RL杩藉姞涓�涓悕涓篿d鐨勯殢鏈烘暟鍙傛暟锛岀敤浜庨槻姝㈡祻瑙堝櫒缂撳瓨銆�
+//鎶ヨ〃妯℃澘閲嶆柊璁捐鍚庯紝鍥犱负娴忚鍣ㄧ紦瀛樿�岃鎶ヨ〃鐢熸垚涓嶈兘鍙嶆槧鍑烘柊淇敼鐨勮璁$粨鏋滐紝URL鍚庤拷鍔犱竴涓殢鏈烘暟鍙傛暟鍙互閬垮厤杩欐牱鐨勯棶棰�
+//鍙傛暟url蹇呴』鏄潤鎬佺殑URL锛屽叾鍚庢湰韬棤浠讳綍鍙傛暟
+//濡傛灉妯℃澘鍑犱箮涓嶆�庝箞淇敼锛屽彲浠ュ幓鎺夊鏈嚱鏁扮殑璋冪敤
+function urlAddRandomNo(url) {
+  return url + "?id=" + Math.floor(Math.random() * 10000);
+}
+
+//鏍规嵁褰撳墠缃戦〉URL鑾峰彇鍒板綋鍓峎EB鏈嶅姟鍣ㄧ殑鏍筓RL锛屽苟璁板綍鍦� window.rootURL 涓�
+function gr_extractRootURL() {
+  var path = window.location.pathname,
+    index = path.lastIndexOf("/");
+
+  window.rootURL = window.location.protocol + "//" + window.location.host;
+  if (index >= 0) {
+    path = path.substr(0, index);
+
+    //demmo鐨勬牴鐩綍鍦ㄥ綋鍓嶉〉闈㈢殑1绾х洰褰曚箣涓�
+    index = path.lastIndexOf("/");
+    if (index >= 0) {
+      path = path.substr(0, index);
+    }
+
+    window.rootURL += path;
+  }
+  window.rootURL += "/";
+}
+
+//vue涓娇鐢ㄥ皢涓嬪垪娉ㄩ噴寮�鏀�
+//export {
+//    webapp_url_method_valid,
+//    webapp_urlprotocol_startup,
+//    webapp_ajax,
+//    webapp_ws_ajax_run,
+//    webapp_urlprotocol_run,
+//    urlAddRandomNo,
+//    webapp_onmessage,
+//    webapp_ws_fun_StopPreview,
+//    webapp_ws_fun_PrinterPapers,
+//    webapp_ws_fun_Printers,
+//    webapp_ws_ajax_together,
+//    webapp_ws_autoupdate,
+//    gr_extractRootURL
+//}
diff --git a/public/static/temp/webapp-ws-tutorial.htm b/public/static/temp/webapp-ws-tutorial.htm
new file mode 100644
index 0000000..a3d9883
--- /dev/null
+++ b/public/static/temp/webapp-ws-tutorial.htm
@@ -0,0 +1,259 @@
+锘�<!DOCTYPE html>
+<html>
+<head>
+    <title>WEB鎶ヨ〃瀹㈡埛绔娇鐢ㄦ暀绋�(WebSocket) - 閿愭氮WEB鎶ヨ〃</title>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    <meta name="Description" content="閿愭氮HTML5鎶ヨ〃搴旂敤WEB鎶ヨ〃瀹㈡埛绔疄鐜版墦鍗颁笌鏁版嵁瀵煎嚭銆�" />
+    <meta name="Keywords" content="WEB鎶ヨ〃,WEB鎵撳嵃,HTML5鎶ヨ〃,WEB鎶ヨ〃瀹㈡埛绔�" />
+    <script src="grwebapp.js"></script>
+    <script language="javascript" type="text/javascript">
+        function window_onload() {
+            //*杩欏彞鐗瑰埆閲嶈*锛氬彧鏈夊湪WEB鎶ヨ〃瀹㈡埛绔▼搴忓悗锛屾墠鑳借繘琛學ebSocket閫氳
+            //濡傛灉WEB鎶ヨ〃瀹㈡埛绔▼搴忎负寮�鏈鸿嚜鍚姩锛屼互涓嬭皟鐢ㄥ簲璇ュ幓鎺夈�傛洿澶氳鏄庤鍙傝�冨府鍔┾�淲EB鎶ヨ〃(B/S鎶ヨ〃)->WEB鎶ヨ〃瀹㈡埛绔�->閮ㄧ讲涓庡畨瑁呪�濋儴鍒嗕腑涓庤胺姝孋hrome娴忚鍣ㄧ殑鐩稿叧璇存槑
+            webapp_urlprotocol_startup(); //鍚姩WEB鎶ヨ〃瀹㈡埛绔▼搴忥紝浠ヤ究渚﹀惉鎺ュ彈 WebSocket 鏁版嵁
+        }
+
+        //娑堟伅鍝嶅簲鍑芥暟锛屾帴鍙梂EB鎶ヨ〃瀹㈡埛绔墽琛屽畬鎵撳嵃涓庢暟鎹鍑虹瓑浠诲姟鍥炲彂鐨勬秷鎭�
+        //濡傛灉涓嶈鍝嶅簲浠诲姟鎵ц瀹屾秷鎭紝姝ゅ嚱鏁板彲浠ヤ笉鐢ㄥ畾涔夛紝鐩存帴鍘绘帀鍗冲彲銆�
+        function webapp_onmessage(event) {
+            var message = JSON.parse(event.data);
+
+            //鍦ㄥ悜鎵撳嵃鏈哄彂閫佸畬鎵撳嵃鏁版嵁鍚庡搷搴旂殑娑堟伅锛屽湪鍑芥暟浣撲腑瀹屾垚鑷繁鐨勪换鍔�
+            function OnPrintEnd() {
+                var msg = "鎶ヨ〃宸茬粡鎵撳嵃锛岃緭鍑烘墦鍗版満锛�" + message.PrinterName;
+                if (message.reportid) {
+                    msg += "\r\nreportid = " + message.reportid;
+                }
+                alert(msg);
+            }
+
+            //鍦ㄦ墽琛屼簡鏁版嵁瀵煎嚭浠诲姟鍚庡搷搴旂殑娑堟伅锛屽湪鍑芥暟浣撲腑瀹屾垚鑷繁鐨勪换鍔�
+            function OnExportEnd() {
+                var msg = "鏁版嵁瀵煎嚭宸茬粡瀹屾垚锛屽鍑烘枃浠讹細" + message.FileName;
+                if (message.reportid) {
+                    msg += "\r\nreportid = " + message.reportid;
+                }
+                alert(msg);
+            }
+
+            //alert(event.data);
+            if (message.event == "PrintEnd") {
+                OnPrintEnd();
+            }
+            else if (message.event == "ExportEnd") {
+                OnExportEnd();
+            }
+        }
+    </script>
+</head>
+<body onload="window_onload()">
+    <h1>閿愭氮WEB鎶ヨ〃瀹㈡埛绔娇鐢ㄦ暀绋�</h1>
+    <h3><a href="webapp-overview.htm">鍏充簬閿愭氮WEB鎶ヨ〃瀹㈡埛绔�</a></h3>
+
+    <h3>鐗瑰埆鎻愮ず锛氫互涓嬮摼鎺ョ偣鍑绘棤鍝嶅簲锛岃涓嬭浇瀹夎<a href="webapp-download.htm">WEB鎶ヨ〃瀹㈡埛绔�</a></h3>
+
+    <h3>璧锋渚嬪瓙</h3>
+    <p><a href='javascript:ws_ajax_preview();'>鎵撳嵃棰勮(AJAX)</a>閫氳繃AJAX鏂瑰紡鑾峰彇鎶ヨ〃妯℃澘涓庢姤琛ㄦ暟鎹�</p>
+    <script language="javascript" type="text/javascript">
+        function ws_ajax_preview() {
+            //鍙傛暟鍏蜂綋璇存槑璇峰弬鑰冨府鍔╂枃妗d腑鐨勨�淲EB鎶ヨ〃(B/S鎶ヨ〃)->WEB鎶ヨ〃瀹㈡埛绔�->鍚姩鍙傛暟璇存槑鈥濋儴鍒�
+            var args = {
+              // http://localhost:8001/grf/%E4%BA%A7%E5%93%81%E6%B5%81%E4%BC%A0%E5%8D%95A5.grf
+              //   report: urlAddRandomNo("../grf/浜у搧娴佷紶鍗旳5.grf"),
+                report: urlAddRandomNo("http://121.196.36.24:8001/grf/浜у搧娴佷紶鍗旳5.grf"),
+
+                data:
+                {
+                    "recordset": [
+                        {
+                            "seq": "1",
+                            "wo_code": "PO202206280001_1",
+                            "partcode": "1403-001-0001",
+                            "partname": "鍦嗛挗F45MnVS蠁20",
+                            "partspec": "蠁20",
+                            "routename": "娴嬭瘯宸ヨ壓璺嚎1",
+                            "orderqty": 166,
+                            "lm_user": "Admin",
+                            "lm_date": "2022-06-30",
+                            "stepcode": "Step01",
+                            "stepname": "娴嬭瘯宸ュ簭涓�",
+                            "plan_qty1": 166,
+                            "good_qty": 0,
+                            "ng_qty": 0,
+                            "stepqrcode":"PO202206280001_1;Step01"
+                        },
+                        {
+                            "seq": "2",
+                            "wo_code": "PO202206280001_1",
+                            "partcode": "1403-001-0001",
+                            "partname": "鍦嗛挗F45MnVS蠁20",
+                            "partspec": "蠁20",
+                            "routename": "娴嬭瘯宸ヨ壓璺嚎1",
+                            "orderqty": 166,
+                            "lm_user": "Admin",
+                            "lm_date": "2022-06-30",
+                            "stepcode": "Step02",
+                            "stepname": "娴嬭瘯宸ュ簭浜�",
+                            "plan_qty1": 166,
+                            "good_qty": 0,
+                            "ng_qty": 0,
+                            "stepqrcode": "PO202206280001_1;Step02"
+                        }
+                    ]
+                },
+                //data: "../data/DataCenter.ashx?data=Customer",
+                //dataUrlParams: "濡傛灉data鍙傛暟涓篣RL锛屼笖鍏堕渶瑕侀澶栫殑鍙傛暟鏁版嵁锛屽垯瀹氫箟鍦ㄦ鍙傛暟涓�", //渚嬪瓙婕旂ず涓嶉渶瑕侊紝鎵�浠ユ敞閲婃帀
+                type: "preview",
+            };
+
+            webapp_ws_ajax_run(args);
+        }
+    </script>
+
+    <p> <a href='javascript:ws_ajax_print();'>鎵撳嵃(AJAX)</a>閫氳繃AJAX鏂瑰紡鑾峰彇鎶ヨ〃妯℃澘涓庢姤琛ㄦ暟鎹�</p>
+    <script language="javascript" type="text/javascript">
+        function ws_ajax_print() {
+            var args = {
+                type: "preview",//print
+                //showOptionDlg: true, //濡傛灉涓嶆樉绀烘墦鍗板璇濇鑰岀洿鎺ユ墦鍗帮紝灏嗘琛屾敞閲婂幓鎺夊嵆鍙�
+                report: urlAddRandomNo("../grf/鎶ュ伐浜у嚭鏍囩.grf"),
+                //data: "../data/DataCenter.ashx?data=Customer"
+                data:
+                {
+                    "recordset": [
+                        {
+                            "wo_code": "PO202206280001_1",
+                            "partcode": "1403-001-0001",
+                            "partname": "鍦嗛挗F45MnVS蠁20",
+                            "qty": "100",
+                            "next_stepname": "娴嬭瘯宸ュ簭2",
+                            "qrcode": "PO202206280001_1;Step02"
+                        },
+                        {
+                            "wo_code": "PO202206280001_1",
+                            "partcode": "1403-001-0001",
+                            "partname": "鍦嗛挗F45MnVS蠁20",
+                            "qty": "100",
+                            "next_stepname": "娴嬭瘯宸ュ簭2",
+                            "qrcode": "PO202206280001_1;Step02"
+                        }
+                    ]
+                }
+            };
+
+            webapp_ws_ajax_run(args);
+        }
+    </script>
+
+    <p><a href='javascript:ws_ajax_export_xls();'>瀵煎嚭Excel(AJAX)</a>閫氳繃AJAX鏂瑰紡鑾峰彇鎶ヨ〃妯℃澘涓庢姤琛ㄦ暟鎹�</p>
+    <script language="javascript" type="text/javascript">
+        function ws_ajax_export_xls() {
+            var args = {
+                type: "xls",
+                report: urlAddRandomNo("../grf/1a.grf"),
+                data: "../data/DataCenter.ashx?data=Customer",
+                reportid: "1a" //杩欎釜鍙傛暟涓嶆槸蹇呴』鐨勶紝鍙槸鐢ㄤ簬鍥炲彂娑堟伅鏍囪瘑鎶ヨ〃韬唤
+            };
+
+            webapp_ws_ajax_run(args);
+        }
+    </script>
+
+    <h3>鑷畾涔夋墦鍗板弬鏁�</h3>
+    <p> <a href='javascript:print_arguments();'>鑷畾涔夋墦鍗板弬鏁�</a>锛氭寚瀹氭墦鍗版満锛岃缃�愪唤鎵撳嵃涓庢墦鍗颁唤鏁般��</p>
+    <script language="javascript" type="text/javascript">
+        function print_arguments() {
+            var args = {
+                type: "print",   //濡傛灉鏄杩涜鎵撳嵃锛屽皢 type 璁剧疆涓� print
+                report: urlAddRandomNo("../grf/1a.grf"),
+                data: "../data/DataCenter.ashx?data=Customer",
+                PrinterName: "Microsoft Print to PDF", //鎸囧畾瑕佽緭鍑虹殑鎵撳嵃鏈哄悕绉�
+                Collate: false,  //涓嶆寜閫愪唤鏂瑰紡鎵撳嵃
+                Copies: 5        //鍏辨墦鍗�5浠�
+            }
+
+            webapp_ws_ajax_run(args);
+        }
+    </script>
+
+    <p> <a href='javascript:export_xls_custom();'>鑷畾涔夊鍑篍xcel</a>锛氳缃悎閫傜殑閫夐」鍙傛暟锛屽皢鏁版嵁瀵煎嚭涓鸿繛缁殑琛ㄦ牸锛岄〉鐪夐〉鑴氫笉瀵煎嚭锛屼笉鏄剧ず瀵煎嚭鍙傛暟瀵硅瘽妗嗙瓑銆�</p>
+    <script language="javascript" type="text/javascript">
+        function export_xls_custom() {
+            var args = {
+                report:urlAddRandomNo("../grf/1a.grf"),
+                data: "../data/DataCenter.ashx?data=Customer",
+                type: "xls",
+                ExportPageBreak: false,
+                ExportPageHeaderFooter: false,
+                SameAsPrint: false,
+                showOptionDlg: false,  //鎸囧畾涓嶆樉绀哄鍑洪�夐」瀵硅瘽妗�
+                filename: "d:\\temp\\gridreport.xls", //鎸囧畾瀵煎嚭鐨勬枃浠惰矾寰勪笌鏂囦欢鍚�
+                //open: false  //鎸囧畾瀵煎嚭鍚庝笉鑷姩鎵撳紑鏂囦欢
+            }
+
+            webapp_ws_ajax_run(args);
+        }
+    </script>
+
+    <h3>鏇村搴旂敤鏂瑰紡</h3>
+
+    <p><a href='javascript:ws_data_from_string();'>鎵撳嵃棰勮(鎶ヨ〃鏁版嵁鏉ヨ嚜瀛楃涓�)</a>锛氶�氳繃WebSocket鐩存帴灏嗙綉椤典腑鐨勫瓧绗︿覆鏁版嵁浼犻�掔粰WEB鎶ヨ〃瀹㈡埛绔��</p>
+    <script language="javascript" type="text/javascript">
+        function ws_data_from_string() {
+            var args = {
+                type: "preview", //璁剧疆涓嶅悓鐨勫睘鎬у彲浠ユ墽琛屼笉鍚岀殑浠诲姟锛屽锛歱review print pdf xls csv txt rtf img grd
+                report: urlAddRandomNo("../grf/1a.grf"),
+                //瀹為檯搴旂敤涓紝data搴旇涓虹▼搴忎腑閫氳繃鍚勭閫斿緞鑾峰彇鍒扮殑鏁版嵁锛屾渶鍚庤灏嗘暟鎹浆鎹负鎶ヨ〃闇�瑕佺殑XML鎴朖SON鏍煎紡鐨勫瓧绗︿覆鏁版嵁
+                data:"<xml>" +
+                    "<row><CustomerID>HUNGC</CustomerID><CompanyName>浜旈噾鏈烘</CompanyName><ContactName>鑻忓厛鐢�</ContactName><ContactTitle>閿�鍞唬琛�</ContactTitle></row>" +
+                    "<row><CustomerID>CENTC</CustomerID><CompanyName>涓夋嵎瀹炰笟</CompanyName><ContactName>鐜嬪厛鐢�</ContactName><ContactTitle>甯傚満缁忕悊</ContactTitle></row>" +
+                    "<row><CustomerID>CACTU</CustomerID><CompanyName>濞佽埅璐ц繍</CompanyName><ContactName>鍒樺厛鐢�</ContactName><ContactTitle>閿�鍞唬鐞�</ContactTitle></row>" +
+                    "</xml>",
+                    reportid: "ws_data_from_string" //杩欎釜鍙傛暟涓嶆槸蹇呴』鐨勶紝鍙槸鐢ㄤ簬鍥炲彂娑堟伅鏍囪瘑鎶ヨ〃韬唤
+                };
+
+            webapp_ws_ajax_run(args);
+        }
+    </script>
+
+    <p><a href='javascript:ws_data_from_object();'>鎵撳嵃棰勮(鎶ヨ〃鏁版嵁鏉ヨ嚜JSON瀵硅薄)</a>锛氶�氳繃WebSocket鐩存帴灏嗙綉椤典腑鐨凧SON瀵硅薄鏁版嵁浼犻�掔粰WEB鎶ヨ〃瀹㈡埛绔��</p>
+    <script language="javascript" type="text/javascript">
+        function ws_data_from_object() {
+            var args = {
+                type: "preview", //璁剧疆涓嶅悓鐨勫睘鎬у彲浠ユ墽琛屼笉鍚岀殑浠诲姟锛屽锛歱review print pdf xls csv txt rtf img grd
+                report: urlAddRandomNo("../grf/1a.grf"),
+                //瀹為檯搴旂敤涓紝data搴旇涓虹▼搴忎腑閫氳繃鍚勭閫斿緞鑾峰彇鍒扮殑鏁版嵁锛屾渶鍚庤灏嗘暟鎹浆鎹负鎶ヨ〃闇�瑕佺殑XML鎴朖SON鏍煎紡鐨勫瓧绗︿覆鏁版嵁
+                data:
+                {
+                    "recordset": [
+                        {
+                            "CustomerID": "ALFKI",
+                            "CompanyName": "涓夊窛瀹炰笟鏈夐檺鍏徃",
+                            "ContactName": "鍒樺皬濮�",
+                            "Address": "澶у磭鏄庤矾 50 鍙�",
+                            "City": "澶╂触",
+                            "Region": "鍗庡寳",
+                            "PostalCode": "343567",
+                            "Phone": "(030) 30074321"
+                        },
+                        {
+                            "CustomerID": "ANATR",
+                            "CompanyName": "涓滃崡瀹炰笟",
+                            "ContactName": "鐜嬪厛鐢�",
+                            "Address": "鎵垮痉瑗胯矾 80 鍙�",
+                            "City": "澶╂触",
+                            "Region": "鍗庡寳",
+                            "PostalCode": "234575",
+                            "Phone": "(030) 35554729"
+                        }
+                    ]
+                },
+                reportid: "ws_data_from_object" //杩欎釜鍙傛暟涓嶆槸蹇呴』鐨勶紝鍙槸鐢ㄤ簬鍥炲彂娑堟伅鏍囪瘑鎶ヨ〃韬唤
+            };
+
+            webapp_ws_ajax_run(args);
+        }
+    </script>
+
+</body>
+</html>
diff --git a/src/api/jcsz.js b/src/api/jcsz.js
index e7443e4..6fa81e2 100644
--- a/src/api/jcsz.js
+++ b/src/api/jcsz.js
@@ -198,3 +198,35 @@
     method: 'get'
   })
 }
+// 鐢ㄦ埛鎵�灞炵彮缁�
+export function UserGroup() {
+  return request({
+    url: 'BasicSetting/UserGroup',
+    method: 'get'
+  })
+}
+
+// 鐢ㄦ埛缁勫垪琛ㄦ煡璇�
+export function UserGroupSearch(data) {
+  return request({
+    url: 'BasicSetting/UserGroupSearch',
+    method: 'get',
+    params: data
+  })
+}
+// 鐢ㄦ埛缁勬柊澧�
+export function UserGroupAdd(data) {
+  return request({
+    url: 'BasicSetting/UserGroupAdd',
+    method: 'post',
+    data
+  })
+}
+// 鐢ㄦ埛缁勫垹闄�
+export function UserGroupDelete(data) {
+  return request({
+    url: 'BasicSetting/UserGroupDelete',
+    method: 'post',
+    params: data
+  })
+}
diff --git a/src/api/scgl.js b/src/api/scgl.js
index 435ee67..633ee34 100644
--- a/src/api/scgl.js
+++ b/src/api/scgl.js
@@ -77,7 +77,7 @@
   })
 }
 
-//
+// 鐢熶骇寮�鎶ュ伐鎵爜鑾峰彇宸ュ崟瀵瑰簲宸ュ簭浠诲姟(鑷埗)
 export function MesOrderStepSearch(data) {
   return request({
     url: 'ProductionManagement/MesOrderStepSearch',
@@ -85,11 +85,102 @@
     params: data
   })
 }
-//
+// 鐢熶骇寮�鎶ュ伐鎵爜鑾峰彇宸ュ崟瀵瑰簲宸ュ簭浠诲姟(澶栧崗)
+export function MesOrderWxStepSearch(data) {
+  return request({
+    url: 'ProductionManagement/MesOrderWxStepSearch',
+    method: 'get',
+    params: data
+  })
+}
+
+// 鐢熶骇寮�鎶ュ伐锛氬紑宸�(寮�濮�/鎶ュ伐)/澶栧崗(鍙戞枡/鏀舵枡)鏃舵潯浠跺垽鏂強鏁版嵁杩斿洖鎺ュ彛
 export function MesOrderStepStart(data) {
   return request({
     url: 'ProductionManagement/MesOrderStepStart',
+    method: 'get',
+    params: data
+  })
+}
+// 鐢熶骇寮�鎶ュ伐锛氬紑宸ユ椂鑾峰彇璁惧涓嬫媺鍒楄〃
+export function MesOrderStepStartSelectEqp(data) {
+  return request({
+    url: 'ProductionManagement/MesOrderStepStartSelectEqp',
+    method: 'get',
+    params: data
+  })
+}
+// 鐢熶骇寮�鎶ュ伐锛氭姤宸ユ椂鑾峰彇鐢熶骇鐝粍涓嬫媺妗�
+export function MesOrderStepReportSelectUserGroup() {
+  return request({
+    url: 'ProductionManagement/MesOrderStepReportSelectUserGroup',
+    method: 'get'
+  })
+}
+
+// 鐢熶骇寮�鎶ュ伐锛氬紑宸ユ椂鑾峰彇璁惧涓嬫媺鍒楄〃
+export function MesOrderGroupSelectUser(data) {
+  return request({
+    url: 'ProductionManagement/MesOrderGroupSelectUser',
+    method: 'get',
+    params: data
+  })
+}
+// 鐢熶骇鎶ュ伐锛氭姤宸�/澶栧崗鏀舵枡 鑾峰彇涓嶈壇鍘熷洜涓嬫媺鍒楄〃
+export function MesOrderStepSelectCause(data) {
+  return request({
+    url: 'ProductionManagement/MesOrderStepSelectCause',
+    method: 'get',
+    params: data
+  })
+}
+// 鐢熶骇寮�鎶ュ伐,寮�宸ユ彁浜�
+export function SavaMesOrderStepStart(data) {
+  return request({
+    url: 'ProductionManagement/SavaMesOrderStepStart',
     method: 'post',
+    data
+  })
+}
+// 鐢熶骇寮�鎶ュ伐,鎶ュ伐鎻愪氦
+export function SavaMesOrderStepReport(data) {
+  return request({
+    url: 'ProductionManagement/SavaMesOrderStepReport',
+    method: 'post',
+    data
+  })
+}
+// 鐢熶骇寮�鎶ュ伐,鍙戞枡鎻愪氦
+export function SavaMesOrderStepOut(data) {
+  return request({
+    url: 'ProductionManagement/SavaMesOrderStepOut',
+    method: 'post',
+    data
+  })
+}
+// 鐢熶骇寮�鎶ュ伐,鏀舵枡鎻愪氦
+export function SavaMesOrderStepIn(data) {
+  return request({
+    url: 'ProductionManagement/SavaMesOrderStepIn',
+    method: 'post',
+    data
+  })
+}
+
+// 鏍规嵁閫夋嫨宸ヨ壓璺嚎鏌ョ湅宸ュ簭鎺ュ彛
+export function SelectRouteStep(data) {
+  return request({
+    url: 'ProductionManagement/SelectRouteStep',
+    method: 'get',
+    params: data
+  })
+}
+
+// MES宸ュ崟鏌ョ湅宸ュ簭浠诲姟
+export function SearchWorkStep(data) {
+  return request({
+    url: 'ProductionManagement/SearchWorkStep',
+    method: 'get',
     params: data
   })
 }
diff --git a/src/components/Print/vue-print-nb/.Archive/README.md/2019-06-06 22-53-18.md b/src/components/Print/vue-print-nb/.Archive/README.md/2019-06-06 22-53-18.md
new file mode 100644
index 0000000..c9a7078
--- /dev/null
+++ b/src/components/Print/vue-print-nb/.Archive/README.md/2019-06-06 22-53-18.md
@@ -0,0 +1,48 @@
+# vue-print-nb
+
+This is a directive wrapper for printed, Simple, fast, convenient, light.
+
+## Install
+
+#### NPM
+```bash
+npm install vue-print-nb --save
+```
+
+```javascript
+import Print from 'vue-print-nb'
+
+Vue.use(Print);
+```
+
+
+## Description
+
+#### Print the entire page:
+
+```
+<button v-print>Print the entire page</button>
+```
+
+
+#### Print local range:
+
+HTML:
+```
+    <div id="printMe" style="background:red;">
+        <p>钁姦濞冿紝钁姦濞�</p>
+        <p>涓�鏍硅棨涓婁竷鏈佃姳 </p>
+        <p>灏忓皬鏍戣棨鏄垜瀹� 鍟﹀暒鍟﹀暒 </p>
+        <p>鍙綋褰撳挌鍜氬綋褰撱��娴囦笉澶�</p>
+        <p> 鍙綋褰撳挌鍜氬綋褰� 鏄垜瀹�</p>
+        <p> 鍟﹀暒鍟﹀暒</p>
+        <p>...</p>
+    </div>
+
+    <button v-print="'#printMe'">Print local range</button>
+```
+
+
+## License
+
+[MIT](http://opensource.org/licenses/MIT)
\ No newline at end of file
diff --git a/src/components/Print/vue-print-nb/.eslintignore b/src/components/Print/vue-print-nb/.eslintignore
new file mode 100644
index 0000000..dc55552
--- /dev/null
+++ b/src/components/Print/vue-print-nb/.eslintignore
@@ -0,0 +1 @@
+/lib
\ No newline at end of file
diff --git a/src/components/Print/vue-print-nb/2021-05-12-18-28-08.png b/src/components/Print/vue-print-nb/2021-05-12-18-28-08.png
new file mode 100644
index 0000000..e7ac769
--- /dev/null
+++ b/src/components/Print/vue-print-nb/2021-05-12-18-28-08.png
Binary files differ
diff --git a/src/components/Print/vue-print-nb/2021-05-12-18-28-56.png b/src/components/Print/vue-print-nb/2021-05-12-18-28-56.png
new file mode 100644
index 0000000..2552208
--- /dev/null
+++ b/src/components/Print/vue-print-nb/2021-05-12-18-28-56.png
Binary files differ
diff --git a/src/components/Print/vue-print-nb/README.md b/src/components/Print/vue-print-nb/README.md
new file mode 100644
index 0000000..5f55704
--- /dev/null
+++ b/src/components/Print/vue-print-nb/README.md
@@ -0,0 +1,354 @@
+# vue-print-nb
+
+This is a directive wrapper for printed, Simple, fast, convenient, light.
+<!-- TOC -->
+
+- [vue-print-nb](#vue-print-nb)
+  - [Install](#install)
+    - [Vue2 Version:](#vue2-version)
+    - [Vue3 Version:](#vue3-version)
+  - [Description](#description)
+  - [Usage Method:](#usage-method)
+    - [Print the entire page:](#print-the-entire-page)
+    - [Print local range:](#print-local-range)
+    - [Print local range More:](#print-local-range-more)
+    - [Print URL:](#print-url)
+    - [Print Preview](#print-preview)
+      - [Print Url Preview:](#print-url-preview)
+      - [Print local range Preview](#print-local-range-preview)
+    - [Print Async Url](#print-async-url)
+  - [v-print API](#v-print-api)
+
+<!-- /TOC -->
+## Install
+
+[鍦ㄧ嚎DEMO](https://power-kxlee.github.io/vue-print-nb/dist/index.html)
+
+[ONLINE DEMO](https://power-kxlee.github.io/vue-print-nb/dist/index.html)
+
+### Vue2 Version:
+```bash
+npm install vue-print-nb --save
+```
+
+
+```javascript
+import Print from 'vue-print-nb'
+// Global instruction 
+Vue.use(Print);
+
+//or
+
+// Local instruction
+import print from 'vue-print-nb'
+
+directives: {
+    print   
+}
+
+```
+### Vue3 Version:
+```bash
+npm install vue3-print-nb --save
+```
+
+```javascript
+// Global instruction 
+import { createApp } from 'vue'
+import App from './App.vue'
+import print from 'vue3-print-nb'
+const app = createApp(App)
+app.use(print)
+app.mount('#app')
+
+//or
+
+// Local instruction
+import print from 'vue3-print-nb'
+
+directives: {
+    print   
+}
+```
+
+
+![](https://github.com/Power-kxLee/vue-print-nb/blob/master/src/img/Chrome.png)
+
+## Description
+
+Support two printing methods, direct printing page HTML, and printing URL
+
+It's easy to use, Support Vue compatible browser version
+
+
+## Usage Method:
+
+### Print the entire page:
+
+```
+<button v-print>Print the entire page</button>
+```
+
+
+### Print local range:
+
+HTML:
+```
+    <div id="printMe" style="background:red;">
+        <p>钁姦濞冿紝钁姦濞�</p>
+        <p>涓�鏍硅棨涓婁竷鏈佃姳 </p>
+        <p>灏忓皬鏍戣棨鏄垜瀹� 鍟﹀暒鍟﹀暒 </p>
+        <p>鍙綋褰撳挌鍜氬綋褰撱��娴囦笉澶�</p>
+        <p> 鍙綋褰撳挌鍜氬綋褰� 鏄垜瀹�</p>
+        <p> 鍟﹀暒鍟﹀暒</p>
+        <p>...</p>
+    </div>
+
+    <button v-print="'#printMe'">Print local range</button>
+```
+Pass in a string type directly
+* `id`: ID of local print range
+
+### Print local range More:
+HTML:
+```
+ <button v-print="printObj">Print local range</button><div id="loading" v-show="printLoading"></div>
+ 
+  <div id="printMe" style="background:red;">
+        <p>钁姦濞冿紝钁姦濞�</p>
+        <p>涓�鏍硅棨涓婁竷鏈佃姳 </p>
+        <p>灏忓皬鏍戣棨鏄垜瀹� 鍟﹀暒鍟﹀暒 </p>
+        <p>鍙綋褰撳挌鍜氬綋褰撱��娴囦笉澶�</p>
+        <p> 鍙綋褰撳挌鍜氬綋褰� 鏄垜瀹�</p>
+        <p> 鍟﹀暒鍟﹀暒</p>
+        <p>...</p>
+    </div>
+```
+JavaScript:
+```
+export default {
+    data() {
+        return {
+           printLoading: true,
+            printObj: {
+              id: "printMe",
+              popTitle: 'good print',
+              extraCss: "https://cdn.bootcdn.net/ajax/libs/animate.css/4.1.1/animate.compat.css, https://cdn.bootcdn.net/ajax/libs/hover.css/2.3.1/css/hover-min.css",
+              extraHead: '<meta http-equiv="Content-Language"content="zh-cn"/>',
+              beforeOpenCallback (vue) {
+                vue.printLoading = true
+                console.log('鎵撳紑涔嬪墠')
+              },
+              openCallback (vue) {
+                vue.printLoading = false
+                console.log('鎵ц浜嗘墦鍗�')
+              },
+              closeCallback (vue) {
+                console.log('鍏抽棴浜嗘墦鍗板伐鍏�')
+              }
+            }
+        };
+    }
+}
+```
+You can also pass in an object type `Objcet`
+
+
+### Print URL:
+
+If you need to print the specified URL, you can use the following method:
+(Ensure that your URL is the same source policy)
+
+HTML:
+```
+ <button v-print="printObj">Print local range</button>
+```
+
+JavaScript:
+```
+export default {
+    data() {
+        return {
+            printObj: {
+              url: 'http://localhost:8080/'
+              beforeOpenCallback (vue) {
+                console.log('鎵撳紑涔嬪墠')
+              },
+              openCallback (vue) {
+                console.log('鎵ц浜嗘墦鍗�')
+              },
+              closeCallback (vue) {
+                console.log('鍏抽棴浜嗘墦鍗板伐鍏�')
+              }
+            }
+        };
+    }
+}
+```
+
+### Print Preview
+Support print preview, pass in` preview:true `, All printing methods are supported
+
+#### Print Url Preview:
+
+HTML:
+```
+ <button v-print="printObj">Print local range</button>
+```
+
+JavaScript:
+```
+export default {
+    data() {
+        return {
+            
+            printObj: {
+              url: 'http://localhost:8080/'
+              preview: true,
+              previewTitle: 'Test Title', // The title of the preview window. The default is 鎵撳嵃棰勮
+              previewBeforeOpenCallback (vue) {
+                console.log('姝e湪鍔犺浇棰勮绐楀彛')
+              },
+              previewOpenCallback (vue) {
+                console.log('宸茬粡鍔犺浇瀹岄瑙堢獥鍙�')
+              },
+              beforeOpenCallback (vue) {
+                console.log('鎵撳紑涔嬪墠')
+              },
+              openCallback (vue) {
+                console.log('鎵ц浜嗘墦鍗�')
+              },
+              closeCallback (vue) {
+                console.log('鍏抽棴浜嗘墦鍗板伐鍏�')
+              }
+            }
+        };
+    }
+}
+```
+![](2021-05-12-18-28-08.png)
+
+
+#### Print local range Preview
+HTML:
+```
+ <button v-print="printObj">Print local range</button><div id="loading" v-show="printLoading"></div>
+ 
+  <div id="printMe" style="background:red;">
+        <p>钁姦濞冿紝钁姦濞�</p>
+        <p>涓�鏍硅棨涓婁竷鏈佃姳 </p>
+        <p>灏忓皬鏍戣棨鏄垜瀹� 鍟﹀暒鍟﹀暒 </p>
+        <p>鍙綋褰撳挌鍜氬綋褰撱��娴囦笉澶�</p>
+        <p> 鍙綋褰撳挌鍜氬綋褰� 鏄垜瀹�</p>
+        <p> 鍟﹀暒鍟﹀暒</p>
+        <p>...</p>
+    </div>
+```
+JavaScript:
+```
+export default {
+    data() {
+        return {
+           printLoading: true,
+            printObj: {
+              id: "printMe",
+              preview: true,
+              previewTitle: 'print Title', // The title of the preview window. The default is 鎵撳嵃棰勮
+              popTitle: 'good print',
+              extraCss: "https://cdn.bootcdn.net/ajax/libs/animate.css/4.1.1/animate.compat.css, https://cdn.bootcdn.net/ajax/libs/hover.css/2.3.1/css/hover-min.css",
+              extraHead: '<meta http-equiv="Content-Language"content="zh-cn"/>',
+              previewBeforeOpenCallback (vue) {
+                console.log('姝e湪鍔犺浇棰勮绐楀彛')
+              },
+              previewOpenCallback (vue) {
+                console.log('宸茬粡鍔犺浇瀹岄瑙堢獥鍙�')
+              },
+              beforeOpenCallback (vue) {
+                vue.printLoading = true
+                console.log('鎵撳紑涔嬪墠')
+              },
+              openCallback (vue) {
+                vue.printLoading = false
+                console.log('鎵ц浜嗘墦鍗�')
+              },
+              closeCallback (vue) {
+                console.log('鍏抽棴浜嗘墦鍗板伐鍏�')
+              }
+            }
+        };
+    }
+}
+```
+
+![](2021-05-12-18-28-56.png)
+
+### Print Async Url
+
+Perhaps, your URL is obtained asynchronously. You can use the following method
+
+HTML:
+```
+ <button v-print="printObj">Print local range</button>
+```
+
+JavaScript:
+```
+export default {
+    data() {
+        return {
+            printObj: {
+              asyncUrl (reslove, vue) {
+                setTimeout(() => {
+                  reslove('http://localhost:8080/')
+                }, 2000)
+              },
+              previewBeforeOpenCallback (vue) {
+                console.log('姝e湪鍔犺浇棰勮绐楀彛')
+              },
+              previewOpenCallback (vue) {
+                console.log('宸茬粡鍔犺浇瀹岄瑙堢獥鍙�')
+              },
+              beforeOpenCallback (vue) {
+                console.log('鎵撳紑涔嬪墠')
+              },
+              openCallback (vue) {
+                console.log('鎵ц浜嗘墦鍗�')
+              },
+              closeCallback (vue) {
+                console.log('鍏抽棴浜嗘墦鍗板伐鍏�')
+              }
+            }
+        };
+    }
+}
+```
+Finally, use `reslove()` to return your URL
+
+
+## v-print API
+
+| Parame                    | Explain                                                                                                 | Type          | OptionalValue                                     | DefaultValue |
+| ------------------------- | ------------------------------------------------------------------------------------------------------- | ------------- | ------------------------------------------------- | ------------ |
+| id                        | Range print ID, required value                                                                          | String        | 鈥�                                                 | 鈥�            |
+| standard                  | Document type (Print local range only)                                                                  | String        | html5/loose/strict                                | html5        |
+| extraHead                 | `<head></head>`Add DOM nodes in the node, and separate multiple nodes with `,` (Print local range only) | String        | 鈥�                                                 | 鈥�            |
+| extraCss                  | `<link>` New CSS style sheet , and separate multiple nodes with `,`(Print local range only)             | String        | 鈥�                                                 | -            |
+| popTitle                  | `<title></title>` Content of label (Print local range only)                                             | String        | 鈥�                                                 | -            |
+| openCallback              | Call the successful callback function of the printing tool                                              | Function      | Returns the instance of `Vue` called at that time | -            |
+| closeCallback             | Close the callback function of printing tool success                                                    | Function      | Returns the instance of `Vue` called at that time | -            |
+| beforeOpenCallback        | Callback function before calling printing tool                                                          | Function      | Returns the instance of `Vue` called at that time | -            |
+| url                       | Print the specified URL. (It is not allowed to set the ID at the same time)                             | string        | -                                                 | -            |
+| asyncUrl                  | Return URL through 'resolve()' and Vue                                                                  | Function      | -                                                 | -            |
+| preview                   | Preview tool                                                                                            | Boolean       | -                                                 | false        |
+| previewTitle              | Preview tool Title                                                                                      | String        | -                                                 | '鎵撳嵃棰勮'   |
+| previewPrintBtnLabel      | The name of the preview tool button                                                                     | String        | -                                                 | '鎵撳嵃'       |
+| zIndex                    | CSS of preview tool: z-index                                                                            | String,Number | -                                                 | 20002        |
+| previewBeforeOpenCallback | Callback function before starting preview tool                                                          | Function      | Returns the instance of `Vue`                     | -            |
+| previewOpenCallback       | Callback function after fully opening preview tool                                                      | Function      | Returns the instance of `Vue`                     | -            |
+| clickMounted       | Click the callback function of the print button                                                    | Function      | Returns the instance of `Vue`                     | -            |
+
+
+
+License锛�
+
+[MIT](http://opensource.org/licenses/MIT)
\ No newline at end of file
diff --git a/src/components/Print/vue-print-nb/lib/print.common.js b/src/components/Print/vue-print-nb/lib/print.common.js
new file mode 100644
index 0000000..09dbdae
--- /dev/null
+++ b/src/components/Print/vue-print-nb/lib/print.common.js
@@ -0,0 +1,4069 @@
+module.exports =
+/******/ (function(modules) { // webpackBootstrap
+/******/ 	// The module cache
+/******/ 	var installedModules = {};
+/******/
+/******/ 	// The require function
+/******/ 	function __webpack_require__(moduleId) {
+/******/
+/******/ 		// Check if module is in cache
+/******/ 		if(installedModules[moduleId]) {
+/******/ 			return installedModules[moduleId].exports;
+/******/ 		}
+/******/ 		// Create a new module (and put it into the cache)
+/******/ 		var module = installedModules[moduleId] = {
+/******/ 			i: moduleId,
+/******/ 			l: false,
+/******/ 			exports: {}
+/******/ 		};
+/******/
+/******/ 		// Execute the module function
+/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
+/******/
+/******/ 		// Flag the module as loaded
+/******/ 		module.l = true;
+/******/
+/******/ 		// Return the exports of the module
+/******/ 		return module.exports;
+/******/ 	}
+/******/
+/******/
+/******/ 	// expose the modules object (__webpack_modules__)
+/******/ 	__webpack_require__.m = modules;
+/******/
+/******/ 	// expose the module cache
+/******/ 	__webpack_require__.c = installedModules;
+/******/
+/******/ 	// define getter function for harmony exports
+/******/ 	__webpack_require__.d = function(exports, name, getter) {
+/******/ 		if(!__webpack_require__.o(exports, name)) {
+/******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter });
+/******/ 		}
+/******/ 	};
+/******/
+/******/ 	// define __esModule on exports
+/******/ 	__webpack_require__.r = function(exports) {
+/******/ 		if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
+/******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
+/******/ 		}
+/******/ 		Object.defineProperty(exports, '__esModule', { value: true });
+/******/ 	};
+/******/
+/******/ 	// create a fake namespace object
+/******/ 	// mode & 1: value is a module id, require it
+/******/ 	// mode & 2: merge all properties of value into the ns
+/******/ 	// mode & 4: return value when already ns object
+/******/ 	// mode & 8|1: behave like require
+/******/ 	__webpack_require__.t = function(value, mode) {
+/******/ 		if(mode & 1) value = __webpack_require__(value);
+/******/ 		if(mode & 8) return value;
+/******/ 		if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
+/******/ 		var ns = Object.create(null);
+/******/ 		__webpack_require__.r(ns);
+/******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value });
+/******/ 		if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
+/******/ 		return ns;
+/******/ 	};
+/******/
+/******/ 	// getDefaultExport function for compatibility with non-harmony modules
+/******/ 	__webpack_require__.n = function(module) {
+/******/ 		var getter = module && module.__esModule ?
+/******/ 			function getDefault() { return module['default']; } :
+/******/ 			function getModuleExports() { return module; };
+/******/ 		__webpack_require__.d(getter, 'a', getter);
+/******/ 		return getter;
+/******/ 	};
+/******/
+/******/ 	// Object.prototype.hasOwnProperty.call
+/******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
+/******/
+/******/ 	// __webpack_public_path__
+/******/ 	__webpack_require__.p = "";
+/******/
+/******/
+/******/ 	// Load entry module and return exports
+/******/ 	return __webpack_require__(__webpack_require__.s = "fb15");
+/******/ })
+/************************************************************************/
+/******/ ({
+
+/***/ "00ee":
+/***/ (function(module, exports, __webpack_require__) {
+
+var wellKnownSymbol = __webpack_require__("b622");
+
+var TO_STRING_TAG = wellKnownSymbol('toStringTag');
+var test = {};
+
+test[TO_STRING_TAG] = 'z';
+
+module.exports = String(test) === '[object z]';
+
+
+/***/ }),
+
+/***/ "0366":
+/***/ (function(module, exports, __webpack_require__) {
+
+var aFunction = __webpack_require__("1c0b");
+
+// optional / simple context binding
+module.exports = function (fn, that, length) {
+  aFunction(fn);
+  if (that === undefined) return fn;
+  switch (length) {
+    case 0: return function () {
+      return fn.call(that);
+    };
+    case 1: return function (a) {
+      return fn.call(that, a);
+    };
+    case 2: return function (a, b) {
+      return fn.call(that, a, b);
+    };
+    case 3: return function (a, b, c) {
+      return fn.call(that, a, b, c);
+    };
+  }
+  return function (/* ...args */) {
+    return fn.apply(that, arguments);
+  };
+};
+
+
+/***/ }),
+
+/***/ "057f":
+/***/ (function(module, exports, __webpack_require__) {
+
+var toIndexedObject = __webpack_require__("fc6a");
+var nativeGetOwnPropertyNames = __webpack_require__("241c").f;
+
+var toString = {}.toString;
+
+var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
+  ? Object.getOwnPropertyNames(window) : [];
+
+var getWindowNames = function (it) {
+  try {
+    return nativeGetOwnPropertyNames(it);
+  } catch (error) {
+    return windowNames.slice();
+  }
+};
+
+// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
+module.exports.f = function getOwnPropertyNames(it) {
+  return windowNames && toString.call(it) == '[object Window]'
+    ? getWindowNames(it)
+    : nativeGetOwnPropertyNames(toIndexedObject(it));
+};
+
+
+/***/ }),
+
+/***/ "06cf":
+/***/ (function(module, exports, __webpack_require__) {
+
+var DESCRIPTORS = __webpack_require__("83ab");
+var propertyIsEnumerableModule = __webpack_require__("d1e7");
+var createPropertyDescriptor = __webpack_require__("5c6c");
+var toIndexedObject = __webpack_require__("fc6a");
+var toPrimitive = __webpack_require__("c04e");
+var has = __webpack_require__("5135");
+var IE8_DOM_DEFINE = __webpack_require__("0cfb");
+
+var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
+
+// `Object.getOwnPropertyDescriptor` method
+// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
+exports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
+  O = toIndexedObject(O);
+  P = toPrimitive(P, true);
+  if (IE8_DOM_DEFINE) try {
+    return nativeGetOwnPropertyDescriptor(O, P);
+  } catch (error) { /* empty */ }
+  if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);
+};
+
+
+/***/ }),
+
+/***/ "0cb2":
+/***/ (function(module, exports, __webpack_require__) {
+
+var toObject = __webpack_require__("7b0b");
+
+var floor = Math.floor;
+var replace = ''.replace;
+var SUBSTITUTION_SYMBOLS = /\$([$&'`]|\d\d?|<[^>]*>)/g;
+var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&'`]|\d\d?)/g;
+
+// https://tc39.es/ecma262/#sec-getsubstitution
+module.exports = function (matched, str, position, captures, namedCaptures, replacement) {
+  var tailPos = position + matched.length;
+  var m = captures.length;
+  var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
+  if (namedCaptures !== undefined) {
+    namedCaptures = toObject(namedCaptures);
+    symbols = SUBSTITUTION_SYMBOLS;
+  }
+  return replace.call(replacement, symbols, function (match, ch) {
+    var capture;
+    switch (ch.charAt(0)) {
+      case '$': return '$';
+      case '&': return matched;
+      case '`': return str.slice(0, position);
+      case "'": return str.slice(tailPos);
+      case '<':
+        capture = namedCaptures[ch.slice(1, -1)];
+        break;
+      default: // \d\d?
+        var n = +ch;
+        if (n === 0) return match;
+        if (n > m) {
+          var f = floor(n / 10);
+          if (f === 0) return match;
+          if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
+          return match;
+        }
+        capture = captures[n - 1];
+    }
+    return capture === undefined ? '' : capture;
+  });
+};
+
+
+/***/ }),
+
+/***/ "0cfb":
+/***/ (function(module, exports, __webpack_require__) {
+
+var DESCRIPTORS = __webpack_require__("83ab");
+var fails = __webpack_require__("d039");
+var createElement = __webpack_require__("cc12");
+
+// Thank's IE8 for his funny defineProperty
+module.exports = !DESCRIPTORS && !fails(function () {
+  return Object.defineProperty(createElement('div'), 'a', {
+    get: function () { return 7; }
+  }).a != 7;
+});
+
+
+/***/ }),
+
+/***/ "14c3":
+/***/ (function(module, exports, __webpack_require__) {
+
+var classof = __webpack_require__("c6b6");
+var regexpExec = __webpack_require__("9263");
+
+// `RegExpExec` abstract operation
+// https://tc39.es/ecma262/#sec-regexpexec
+module.exports = function (R, S) {
+  var exec = R.exec;
+  if (typeof exec === 'function') {
+    var result = exec.call(R, S);
+    if (typeof result !== 'object') {
+      throw TypeError('RegExp exec method returned something other than an Object or null');
+    }
+    return result;
+  }
+
+  if (classof(R) !== 'RegExp') {
+    throw TypeError('RegExp#exec called on incompatible receiver');
+  }
+
+  return regexpExec.call(R, S);
+};
+
+
+
+/***/ }),
+
+/***/ "1be4":
+/***/ (function(module, exports, __webpack_require__) {
+
+var getBuiltIn = __webpack_require__("d066");
+
+module.exports = getBuiltIn('document', 'documentElement');
+
+
+/***/ }),
+
+/***/ "1c0b":
+/***/ (function(module, exports) {
+
+module.exports = function (it) {
+  if (typeof it != 'function') {
+    throw TypeError(String(it) + ' is not a function');
+  } return it;
+};
+
+
+/***/ }),
+
+/***/ "1d80":
+/***/ (function(module, exports) {
+
+// `RequireObjectCoercible` abstract operation
+// https://tc39.es/ecma262/#sec-requireobjectcoercible
+module.exports = function (it) {
+  if (it == undefined) throw TypeError("Can't call method on " + it);
+  return it;
+};
+
+
+/***/ }),
+
+/***/ "1dde":
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__("d039");
+var wellKnownSymbol = __webpack_require__("b622");
+var V8_VERSION = __webpack_require__("2d00");
+
+var SPECIES = wellKnownSymbol('species');
+
+module.exports = function (METHOD_NAME) {
+  // We can't use this feature detection in V8 since it causes
+  // deoptimization and serious performance degradation
+  // https://github.com/zloirock/core-js/issues/677
+  return V8_VERSION >= 51 || !fails(function () {
+    var array = [];
+    var constructor = array.constructor = {};
+    constructor[SPECIES] = function () {
+      return { foo: 1 };
+    };
+    return array[METHOD_NAME](Boolean).foo !== 1;
+  });
+};
+
+
+/***/ }),
+
+/***/ "23cb":
+/***/ (function(module, exports, __webpack_require__) {
+
+var toInteger = __webpack_require__("a691");
+
+var max = Math.max;
+var min = Math.min;
+
+// Helper for a popular repeating case of the spec:
+// Let integer be ? ToInteger(index).
+// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
+module.exports = function (index, length) {
+  var integer = toInteger(index);
+  return integer < 0 ? max(integer + length, 0) : min(integer, length);
+};
+
+
+/***/ }),
+
+/***/ "23e7":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+var getOwnPropertyDescriptor = __webpack_require__("06cf").f;
+var createNonEnumerableProperty = __webpack_require__("9112");
+var redefine = __webpack_require__("6eeb");
+var setGlobal = __webpack_require__("ce4e");
+var copyConstructorProperties = __webpack_require__("e893");
+var isForced = __webpack_require__("94ca");
+
+/*
+  options.target      - name of the target object
+  options.global      - target is the global object
+  options.stat        - export as static methods of target
+  options.proto       - export as prototype methods of target
+  options.real        - real prototype method for the `pure` version
+  options.forced      - export even if the native feature is available
+  options.bind        - bind methods to the target, required for the `pure` version
+  options.wrap        - wrap constructors to preventing global pollution, required for the `pure` version
+  options.unsafe      - use the simple assignment of property instead of delete + defineProperty
+  options.sham        - add a flag to not completely full polyfills
+  options.enumerable  - export as enumerable property
+  options.noTargetGet - prevent calling a getter on target
+*/
+module.exports = function (options, source) {
+  var TARGET = options.target;
+  var GLOBAL = options.global;
+  var STATIC = options.stat;
+  var FORCED, target, key, targetProperty, sourceProperty, descriptor;
+  if (GLOBAL) {
+    target = global;
+  } else if (STATIC) {
+    target = global[TARGET] || setGlobal(TARGET, {});
+  } else {
+    target = (global[TARGET] || {}).prototype;
+  }
+  if (target) for (key in source) {
+    sourceProperty = source[key];
+    if (options.noTargetGet) {
+      descriptor = getOwnPropertyDescriptor(target, key);
+      targetProperty = descriptor && descriptor.value;
+    } else targetProperty = target[key];
+    FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
+    // contained in target
+    if (!FORCED && targetProperty !== undefined) {
+      if (typeof sourceProperty === typeof targetProperty) continue;
+      copyConstructorProperties(sourceProperty, targetProperty);
+    }
+    // add a flag to not completely full polyfills
+    if (options.sham || (targetProperty && targetProperty.sham)) {
+      createNonEnumerableProperty(sourceProperty, 'sham', true);
+    }
+    // extend global
+    redefine(target, key, sourceProperty, options);
+  }
+};
+
+
+/***/ }),
+
+/***/ "241c":
+/***/ (function(module, exports, __webpack_require__) {
+
+var internalObjectKeys = __webpack_require__("ca84");
+var enumBugKeys = __webpack_require__("7839");
+
+var hiddenKeys = enumBugKeys.concat('length', 'prototype');
+
+// `Object.getOwnPropertyNames` method
+// https://tc39.es/ecma262/#sec-object.getownpropertynames
+exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
+  return internalObjectKeys(O, hiddenKeys);
+};
+
+
+/***/ }),
+
+/***/ "25f0":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var redefine = __webpack_require__("6eeb");
+var anObject = __webpack_require__("825a");
+var fails = __webpack_require__("d039");
+var flags = __webpack_require__("ad6d");
+
+var TO_STRING = 'toString';
+var RegExpPrototype = RegExp.prototype;
+var nativeToString = RegExpPrototype[TO_STRING];
+
+var NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });
+// FF44- RegExp#toString has a wrong name
+var INCORRECT_NAME = nativeToString.name != TO_STRING;
+
+// `RegExp.prototype.toString` method
+// https://tc39.es/ecma262/#sec-regexp.prototype.tostring
+if (NOT_GENERIC || INCORRECT_NAME) {
+  redefine(RegExp.prototype, TO_STRING, function toString() {
+    var R = anObject(this);
+    var p = String(R.source);
+    var rf = R.flags;
+    var f = String(rf === undefined && R instanceof RegExp && !('flags' in RegExpPrototype) ? flags.call(R) : rf);
+    return '/' + p + '/' + f;
+  }, { unsafe: true });
+}
+
+
+/***/ }),
+
+/***/ "2626":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var getBuiltIn = __webpack_require__("d066");
+var definePropertyModule = __webpack_require__("9bf2");
+var wellKnownSymbol = __webpack_require__("b622");
+var DESCRIPTORS = __webpack_require__("83ab");
+
+var SPECIES = wellKnownSymbol('species');
+
+module.exports = function (CONSTRUCTOR_NAME) {
+  var Constructor = getBuiltIn(CONSTRUCTOR_NAME);
+  var defineProperty = definePropertyModule.f;
+
+  if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {
+    defineProperty(Constructor, SPECIES, {
+      configurable: true,
+      get: function () { return this; }
+    });
+  }
+};
+
+
+/***/ }),
+
+/***/ "2d00":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+var userAgent = __webpack_require__("342f");
+
+var process = global.process;
+var versions = process && process.versions;
+var v8 = versions && versions.v8;
+var match, version;
+
+if (v8) {
+  match = v8.split('.');
+  version = match[0] + match[1];
+} else if (userAgent) {
+  match = userAgent.match(/Edge\/(\d+)/);
+  if (!match || match[1] >= 74) {
+    match = userAgent.match(/Chrome\/(\d+)/);
+    if (match) version = match[1];
+  }
+}
+
+module.exports = version && +version;
+
+
+/***/ }),
+
+/***/ "342f":
+/***/ (function(module, exports, __webpack_require__) {
+
+var getBuiltIn = __webpack_require__("d066");
+
+module.exports = getBuiltIn('navigator', 'userAgent') || '';
+
+
+/***/ }),
+
+/***/ "37e8":
+/***/ (function(module, exports, __webpack_require__) {
+
+var DESCRIPTORS = __webpack_require__("83ab");
+var definePropertyModule = __webpack_require__("9bf2");
+var anObject = __webpack_require__("825a");
+var objectKeys = __webpack_require__("df75");
+
+// `Object.defineProperties` method
+// https://tc39.es/ecma262/#sec-object.defineproperties
+module.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {
+  anObject(O);
+  var keys = objectKeys(Properties);
+  var length = keys.length;
+  var index = 0;
+  var key;
+  while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);
+  return O;
+};
+
+
+/***/ }),
+
+/***/ "3bbe":
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__("861d");
+
+module.exports = function (it) {
+  if (!isObject(it) && it !== null) {
+    throw TypeError("Can't set " + String(it) + ' as a prototype');
+  } return it;
+};
+
+
+/***/ }),
+
+/***/ "3ca3":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var charAt = __webpack_require__("6547").charAt;
+var InternalStateModule = __webpack_require__("69f3");
+var defineIterator = __webpack_require__("7dd0");
+
+var STRING_ITERATOR = 'String Iterator';
+var setInternalState = InternalStateModule.set;
+var getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);
+
+// `String.prototype[@@iterator]` method
+// https://tc39.es/ecma262/#sec-string.prototype-@@iterator
+defineIterator(String, 'String', function (iterated) {
+  setInternalState(this, {
+    type: STRING_ITERATOR,
+    string: String(iterated),
+    index: 0
+  });
+// `%StringIteratorPrototype%.next` method
+// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next
+}, function next() {
+  var state = getInternalState(this);
+  var string = state.string;
+  var index = state.index;
+  var point;
+  if (index >= string.length) return { value: undefined, done: true };
+  point = charAt(string, index);
+  state.index += point.length;
+  return { value: point, done: false };
+});
+
+
+/***/ }),
+
+/***/ "3f8c":
+/***/ (function(module, exports) {
+
+module.exports = {};
+
+
+/***/ }),
+
+/***/ "428f":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+
+module.exports = global;
+
+
+/***/ }),
+
+/***/ "44ad":
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__("d039");
+var classof = __webpack_require__("c6b6");
+
+var split = ''.split;
+
+// fallback for non-array-like ES3 and non-enumerable old V8 strings
+module.exports = fails(function () {
+  // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
+  // eslint-disable-next-line no-prototype-builtins -- safe
+  return !Object('z').propertyIsEnumerable(0);
+}) ? function (it) {
+  return classof(it) == 'String' ? split.call(it, '') : Object(it);
+} : Object;
+
+
+/***/ }),
+
+/***/ "44d2":
+/***/ (function(module, exports, __webpack_require__) {
+
+var wellKnownSymbol = __webpack_require__("b622");
+var create = __webpack_require__("7c73");
+var definePropertyModule = __webpack_require__("9bf2");
+
+var UNSCOPABLES = wellKnownSymbol('unscopables');
+var ArrayPrototype = Array.prototype;
+
+// Array.prototype[@@unscopables]
+// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
+if (ArrayPrototype[UNSCOPABLES] == undefined) {
+  definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {
+    configurable: true,
+    value: create(null)
+  });
+}
+
+// add a key to Array.prototype[@@unscopables]
+module.exports = function (key) {
+  ArrayPrototype[UNSCOPABLES][key] = true;
+};
+
+
+/***/ }),
+
+/***/ "44e7":
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__("861d");
+var classof = __webpack_require__("c6b6");
+var wellKnownSymbol = __webpack_require__("b622");
+
+var MATCH = wellKnownSymbol('match');
+
+// `IsRegExp` abstract operation
+// https://tc39.es/ecma262/#sec-isregexp
+module.exports = function (it) {
+  var isRegExp;
+  return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');
+};
+
+
+/***/ }),
+
+/***/ "4930":
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__("d039");
+
+module.exports = !!Object.getOwnPropertySymbols && !fails(function () {
+  // Chrome 38 Symbol has incorrect toString conversion
+  /* global Symbol -- required for testing */
+  return !String(Symbol());
+});
+
+
+/***/ }),
+
+/***/ "4d63":
+/***/ (function(module, exports, __webpack_require__) {
+
+var DESCRIPTORS = __webpack_require__("83ab");
+var global = __webpack_require__("da84");
+var isForced = __webpack_require__("94ca");
+var inheritIfRequired = __webpack_require__("7156");
+var defineProperty = __webpack_require__("9bf2").f;
+var getOwnPropertyNames = __webpack_require__("241c").f;
+var isRegExp = __webpack_require__("44e7");
+var getFlags = __webpack_require__("ad6d");
+var stickyHelpers = __webpack_require__("9f7f");
+var redefine = __webpack_require__("6eeb");
+var fails = __webpack_require__("d039");
+var setInternalState = __webpack_require__("69f3").set;
+var setSpecies = __webpack_require__("2626");
+var wellKnownSymbol = __webpack_require__("b622");
+
+var MATCH = wellKnownSymbol('match');
+var NativeRegExp = global.RegExp;
+var RegExpPrototype = NativeRegExp.prototype;
+var re1 = /a/g;
+var re2 = /a/g;
+
+// "new" should create a new object, old webkit bug
+var CORRECT_NEW = new NativeRegExp(re1) !== re1;
+
+var UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;
+
+var FORCED = DESCRIPTORS && isForced('RegExp', (!CORRECT_NEW || UNSUPPORTED_Y || fails(function () {
+  re2[MATCH] = false;
+  // RegExp constructor can alter flags and IsRegExp works correct with @@match
+  return NativeRegExp(re1) != re1 || NativeRegExp(re2) == re2 || NativeRegExp(re1, 'i') != '/a/i';
+})));
+
+// `RegExp` constructor
+// https://tc39.es/ecma262/#sec-regexp-constructor
+if (FORCED) {
+  var RegExpWrapper = function RegExp(pattern, flags) {
+    var thisIsRegExp = this instanceof RegExpWrapper;
+    var patternIsRegExp = isRegExp(pattern);
+    var flagsAreUndefined = flags === undefined;
+    var sticky;
+
+    if (!thisIsRegExp && patternIsRegExp && pattern.constructor === RegExpWrapper && flagsAreUndefined) {
+      return pattern;
+    }
+
+    if (CORRECT_NEW) {
+      if (patternIsRegExp && !flagsAreUndefined) pattern = pattern.source;
+    } else if (pattern instanceof RegExpWrapper) {
+      if (flagsAreUndefined) flags = getFlags.call(pattern);
+      pattern = pattern.source;
+    }
+
+    if (UNSUPPORTED_Y) {
+      sticky = !!flags && flags.indexOf('y') > -1;
+      if (sticky) flags = flags.replace(/y/g, '');
+    }
+
+    var result = inheritIfRequired(
+      CORRECT_NEW ? new NativeRegExp(pattern, flags) : NativeRegExp(pattern, flags),
+      thisIsRegExp ? this : RegExpPrototype,
+      RegExpWrapper
+    );
+
+    if (UNSUPPORTED_Y && sticky) setInternalState(result, { sticky: sticky });
+
+    return result;
+  };
+  var proxy = function (key) {
+    key in RegExpWrapper || defineProperty(RegExpWrapper, key, {
+      configurable: true,
+      get: function () { return NativeRegExp[key]; },
+      set: function (it) { NativeRegExp[key] = it; }
+    });
+  };
+  var keys = getOwnPropertyNames(NativeRegExp);
+  var index = 0;
+  while (keys.length > index) proxy(keys[index++]);
+  RegExpPrototype.constructor = RegExpWrapper;
+  RegExpWrapper.prototype = RegExpPrototype;
+  redefine(global, 'RegExp', RegExpWrapper);
+}
+
+// https://tc39.es/ecma262/#sec-get-regexp-@@species
+setSpecies('RegExp');
+
+
+/***/ }),
+
+/***/ "4d64":
+/***/ (function(module, exports, __webpack_require__) {
+
+var toIndexedObject = __webpack_require__("fc6a");
+var toLength = __webpack_require__("50c4");
+var toAbsoluteIndex = __webpack_require__("23cb");
+
+// `Array.prototype.{ indexOf, includes }` methods implementation
+var createMethod = function (IS_INCLUDES) {
+  return function ($this, el, fromIndex) {
+    var O = toIndexedObject($this);
+    var length = toLength(O.length);
+    var index = toAbsoluteIndex(fromIndex, length);
+    var value;
+    // Array#includes uses SameValueZero equality algorithm
+    // eslint-disable-next-line no-self-compare -- NaN check
+    if (IS_INCLUDES && el != el) while (length > index) {
+      value = O[index++];
+      // eslint-disable-next-line no-self-compare -- NaN check
+      if (value != value) return true;
+    // Array#indexOf ignores holes, Array#includes - not
+    } else for (;length > index; index++) {
+      if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
+    } return !IS_INCLUDES && -1;
+  };
+};
+
+module.exports = {
+  // `Array.prototype.includes` method
+  // https://tc39.es/ecma262/#sec-array.prototype.includes
+  includes: createMethod(true),
+  // `Array.prototype.indexOf` method
+  // https://tc39.es/ecma262/#sec-array.prototype.indexof
+  indexOf: createMethod(false)
+};
+
+
+/***/ }),
+
+/***/ "50c4":
+/***/ (function(module, exports, __webpack_require__) {
+
+var toInteger = __webpack_require__("a691");
+
+var min = Math.min;
+
+// `ToLength` abstract operation
+// https://tc39.es/ecma262/#sec-tolength
+module.exports = function (argument) {
+  return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
+};
+
+
+/***/ }),
+
+/***/ "5135":
+/***/ (function(module, exports) {
+
+var hasOwnProperty = {}.hasOwnProperty;
+
+module.exports = function (it, key) {
+  return hasOwnProperty.call(it, key);
+};
+
+
+/***/ }),
+
+/***/ "5319":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var fixRegExpWellKnownSymbolLogic = __webpack_require__("d784");
+var anObject = __webpack_require__("825a");
+var toLength = __webpack_require__("50c4");
+var toInteger = __webpack_require__("a691");
+var requireObjectCoercible = __webpack_require__("1d80");
+var advanceStringIndex = __webpack_require__("8aa5");
+var getSubstitution = __webpack_require__("0cb2");
+var regExpExec = __webpack_require__("14c3");
+
+var max = Math.max;
+var min = Math.min;
+
+var maybeToString = function (it) {
+  return it === undefined ? it : String(it);
+};
+
+// @@replace logic
+fixRegExpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) {
+  var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = reason.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE;
+  var REPLACE_KEEPS_$0 = reason.REPLACE_KEEPS_$0;
+  var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';
+
+  return [
+    // `String.prototype.replace` method
+    // https://tc39.es/ecma262/#sec-string.prototype.replace
+    function replace(searchValue, replaceValue) {
+      var O = requireObjectCoercible(this);
+      var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];
+      return replacer !== undefined
+        ? replacer.call(searchValue, O, replaceValue)
+        : nativeReplace.call(String(O), searchValue, replaceValue);
+    },
+    // `RegExp.prototype[@@replace]` method
+    // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace
+    function (regexp, replaceValue) {
+      if (
+        (!REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE && REPLACE_KEEPS_$0) ||
+        (typeof replaceValue === 'string' && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1)
+      ) {
+        var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);
+        if (res.done) return res.value;
+      }
+
+      var rx = anObject(regexp);
+      var S = String(this);
+
+      var functionalReplace = typeof replaceValue === 'function';
+      if (!functionalReplace) replaceValue = String(replaceValue);
+
+      var global = rx.global;
+      if (global) {
+        var fullUnicode = rx.unicode;
+        rx.lastIndex = 0;
+      }
+      var results = [];
+      while (true) {
+        var result = regExpExec(rx, S);
+        if (result === null) break;
+
+        results.push(result);
+        if (!global) break;
+
+        var matchStr = String(result[0]);
+        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
+      }
+
+      var accumulatedResult = '';
+      var nextSourcePosition = 0;
+      for (var i = 0; i < results.length; i++) {
+        result = results[i];
+
+        var matched = String(result[0]);
+        var position = max(min(toInteger(result.index), S.length), 0);
+        var captures = [];
+        // NOTE: This is equivalent to
+        //   captures = result.slice(1).map(maybeToString)
+        // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
+        // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
+        // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
+        for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
+        var namedCaptures = result.groups;
+        if (functionalReplace) {
+          var replacerArgs = [matched].concat(captures, position, S);
+          if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
+          var replacement = String(replaceValue.apply(undefined, replacerArgs));
+        } else {
+          replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
+        }
+        if (position >= nextSourcePosition) {
+          accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
+          nextSourcePosition = position + matched.length;
+        }
+      }
+      return accumulatedResult + S.slice(nextSourcePosition);
+    }
+  ];
+});
+
+
+/***/ }),
+
+/***/ "5692":
+/***/ (function(module, exports, __webpack_require__) {
+
+var IS_PURE = __webpack_require__("c430");
+var store = __webpack_require__("c6cd");
+
+(module.exports = function (key, value) {
+  return store[key] || (store[key] = value !== undefined ? value : {});
+})('versions', []).push({
+  version: '3.9.0',
+  mode: IS_PURE ? 'pure' : 'global',
+  copyright: '漏 2021 Denis Pushkarev (zloirock.ru)'
+});
+
+
+/***/ }),
+
+/***/ "56ef":
+/***/ (function(module, exports, __webpack_require__) {
+
+var getBuiltIn = __webpack_require__("d066");
+var getOwnPropertyNamesModule = __webpack_require__("241c");
+var getOwnPropertySymbolsModule = __webpack_require__("7418");
+var anObject = __webpack_require__("825a");
+
+// all object keys, includes non-enumerable and symbols
+module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
+  var keys = getOwnPropertyNamesModule.f(anObject(it));
+  var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
+  return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;
+};
+
+
+/***/ }),
+
+/***/ "5c6c":
+/***/ (function(module, exports) {
+
+module.exports = function (bitmap, value) {
+  return {
+    enumerable: !(bitmap & 1),
+    configurable: !(bitmap & 2),
+    writable: !(bitmap & 4),
+    value: value
+  };
+};
+
+
+/***/ }),
+
+/***/ "6547":
+/***/ (function(module, exports, __webpack_require__) {
+
+var toInteger = __webpack_require__("a691");
+var requireObjectCoercible = __webpack_require__("1d80");
+
+// `String.prototype.{ codePointAt, at }` methods implementation
+var createMethod = function (CONVERT_TO_STRING) {
+  return function ($this, pos) {
+    var S = String(requireObjectCoercible($this));
+    var position = toInteger(pos);
+    var size = S.length;
+    var first, second;
+    if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;
+    first = S.charCodeAt(position);
+    return first < 0xD800 || first > 0xDBFF || position + 1 === size
+      || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF
+        ? CONVERT_TO_STRING ? S.charAt(position) : first
+        : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;
+  };
+};
+
+module.exports = {
+  // `String.prototype.codePointAt` method
+  // https://tc39.es/ecma262/#sec-string.prototype.codepointat
+  codeAt: createMethod(false),
+  // `String.prototype.at` method
+  // https://github.com/mathiasbynens/String.prototype.at
+  charAt: createMethod(true)
+};
+
+
+/***/ }),
+
+/***/ "65f0":
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__("861d");
+var isArray = __webpack_require__("e8b5");
+var wellKnownSymbol = __webpack_require__("b622");
+
+var SPECIES = wellKnownSymbol('species');
+
+// `ArraySpeciesCreate` abstract operation
+// https://tc39.es/ecma262/#sec-arrayspeciescreate
+module.exports = function (originalArray, length) {
+  var C;
+  if (isArray(originalArray)) {
+    C = originalArray.constructor;
+    // cross-realm fallback
+    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
+    else if (isObject(C)) {
+      C = C[SPECIES];
+      if (C === null) C = undefined;
+    }
+  } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);
+};
+
+
+/***/ }),
+
+/***/ "69f3":
+/***/ (function(module, exports, __webpack_require__) {
+
+var NATIVE_WEAK_MAP = __webpack_require__("7f9a");
+var global = __webpack_require__("da84");
+var isObject = __webpack_require__("861d");
+var createNonEnumerableProperty = __webpack_require__("9112");
+var objectHas = __webpack_require__("5135");
+var shared = __webpack_require__("c6cd");
+var sharedKey = __webpack_require__("f772");
+var hiddenKeys = __webpack_require__("d012");
+
+var WeakMap = global.WeakMap;
+var set, get, has;
+
+var enforce = function (it) {
+  return has(it) ? get(it) : set(it, {});
+};
+
+var getterFor = function (TYPE) {
+  return function (it) {
+    var state;
+    if (!isObject(it) || (state = get(it)).type !== TYPE) {
+      throw TypeError('Incompatible receiver, ' + TYPE + ' required');
+    } return state;
+  };
+};
+
+if (NATIVE_WEAK_MAP) {
+  var store = shared.state || (shared.state = new WeakMap());
+  var wmget = store.get;
+  var wmhas = store.has;
+  var wmset = store.set;
+  set = function (it, metadata) {
+    metadata.facade = it;
+    wmset.call(store, it, metadata);
+    return metadata;
+  };
+  get = function (it) {
+    return wmget.call(store, it) || {};
+  };
+  has = function (it) {
+    return wmhas.call(store, it);
+  };
+} else {
+  var STATE = sharedKey('state');
+  hiddenKeys[STATE] = true;
+  set = function (it, metadata) {
+    metadata.facade = it;
+    createNonEnumerableProperty(it, STATE, metadata);
+    return metadata;
+  };
+  get = function (it) {
+    return objectHas(it, STATE) ? it[STATE] : {};
+  };
+  has = function (it) {
+    return objectHas(it, STATE);
+  };
+}
+
+module.exports = {
+  set: set,
+  get: get,
+  has: has,
+  enforce: enforce,
+  getterFor: getterFor
+};
+
+
+/***/ }),
+
+/***/ "6eeb":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+var createNonEnumerableProperty = __webpack_require__("9112");
+var has = __webpack_require__("5135");
+var setGlobal = __webpack_require__("ce4e");
+var inspectSource = __webpack_require__("8925");
+var InternalStateModule = __webpack_require__("69f3");
+
+var getInternalState = InternalStateModule.get;
+var enforceInternalState = InternalStateModule.enforce;
+var TEMPLATE = String(String).split('String');
+
+(module.exports = function (O, key, value, options) {
+  var unsafe = options ? !!options.unsafe : false;
+  var simple = options ? !!options.enumerable : false;
+  var noTargetGet = options ? !!options.noTargetGet : false;
+  var state;
+  if (typeof value == 'function') {
+    if (typeof key == 'string' && !has(value, 'name')) {
+      createNonEnumerableProperty(value, 'name', key);
+    }
+    state = enforceInternalState(value);
+    if (!state.source) {
+      state.source = TEMPLATE.join(typeof key == 'string' ? key : '');
+    }
+  }
+  if (O === global) {
+    if (simple) O[key] = value;
+    else setGlobal(key, value);
+    return;
+  } else if (!unsafe) {
+    delete O[key];
+  } else if (!noTargetGet && O[key]) {
+    simple = true;
+  }
+  if (simple) O[key] = value;
+  else createNonEnumerableProperty(O, key, value);
+// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
+})(Function.prototype, 'toString', function toString() {
+  return typeof this == 'function' && getInternalState(this).source || inspectSource(this);
+});
+
+
+/***/ }),
+
+/***/ "7156":
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__("861d");
+var setPrototypeOf = __webpack_require__("d2bb");
+
+// makes subclassing work correct for wrapped built-ins
+module.exports = function ($this, dummy, Wrapper) {
+  var NewTarget, NewTargetPrototype;
+  if (
+    // it can work only with native `setPrototypeOf`
+    setPrototypeOf &&
+    // we haven't completely correct pre-ES6 way for getting `new.target`, so use this
+    typeof (NewTarget = dummy.constructor) == 'function' &&
+    NewTarget !== Wrapper &&
+    isObject(NewTargetPrototype = NewTarget.prototype) &&
+    NewTargetPrototype !== Wrapper.prototype
+  ) setPrototypeOf($this, NewTargetPrototype);
+  return $this;
+};
+
+
+/***/ }),
+
+/***/ "7418":
+/***/ (function(module, exports) {
+
+exports.f = Object.getOwnPropertySymbols;
+
+
+/***/ }),
+
+/***/ "746f":
+/***/ (function(module, exports, __webpack_require__) {
+
+var path = __webpack_require__("428f");
+var has = __webpack_require__("5135");
+var wrappedWellKnownSymbolModule = __webpack_require__("e538");
+var defineProperty = __webpack_require__("9bf2").f;
+
+module.exports = function (NAME) {
+  var Symbol = path.Symbol || (path.Symbol = {});
+  if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, {
+    value: wrappedWellKnownSymbolModule.f(NAME)
+  });
+};
+
+
+/***/ }),
+
+/***/ "7839":
+/***/ (function(module, exports) {
+
+// IE8- don't enum bug keys
+module.exports = [
+  'constructor',
+  'hasOwnProperty',
+  'isPrototypeOf',
+  'propertyIsEnumerable',
+  'toLocaleString',
+  'toString',
+  'valueOf'
+];
+
+
+/***/ }),
+
+/***/ "7b0b":
+/***/ (function(module, exports, __webpack_require__) {
+
+var requireObjectCoercible = __webpack_require__("1d80");
+
+// `ToObject` abstract operation
+// https://tc39.es/ecma262/#sec-toobject
+module.exports = function (argument) {
+  return Object(requireObjectCoercible(argument));
+};
+
+
+/***/ }),
+
+/***/ "7c73":
+/***/ (function(module, exports, __webpack_require__) {
+
+var anObject = __webpack_require__("825a");
+var defineProperties = __webpack_require__("37e8");
+var enumBugKeys = __webpack_require__("7839");
+var hiddenKeys = __webpack_require__("d012");
+var html = __webpack_require__("1be4");
+var documentCreateElement = __webpack_require__("cc12");
+var sharedKey = __webpack_require__("f772");
+
+var GT = '>';
+var LT = '<';
+var PROTOTYPE = 'prototype';
+var SCRIPT = 'script';
+var IE_PROTO = sharedKey('IE_PROTO');
+
+var EmptyConstructor = function () { /* empty */ };
+
+var scriptTag = function (content) {
+  return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;
+};
+
+// Create object with fake `null` prototype: use ActiveX Object with cleared prototype
+var NullProtoObjectViaActiveX = function (activeXDocument) {
+  activeXDocument.write(scriptTag(''));
+  activeXDocument.close();
+  var temp = activeXDocument.parentWindow.Object;
+  activeXDocument = null; // avoid memory leak
+  return temp;
+};
+
+// Create object with fake `null` prototype: use iframe Object with cleared prototype
+var NullProtoObjectViaIFrame = function () {
+  // Thrash, waste and sodomy: IE GC bug
+  var iframe = documentCreateElement('iframe');
+  var JS = 'java' + SCRIPT + ':';
+  var iframeDocument;
+  iframe.style.display = 'none';
+  html.appendChild(iframe);
+  // https://github.com/zloirock/core-js/issues/475
+  iframe.src = String(JS);
+  iframeDocument = iframe.contentWindow.document;
+  iframeDocument.open();
+  iframeDocument.write(scriptTag('document.F=Object'));
+  iframeDocument.close();
+  return iframeDocument.F;
+};
+
+// Check for document.domain and active x support
+// No need to use active x approach when document.domain is not set
+// see https://github.com/es-shims/es5-shim/issues/150
+// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346
+// avoid IE GC bug
+var activeXDocument;
+var NullProtoObject = function () {
+  try {
+    /* global ActiveXObject -- old IE */
+    activeXDocument = document.domain && new ActiveXObject('htmlfile');
+  } catch (error) { /* ignore */ }
+  NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();
+  var length = enumBugKeys.length;
+  while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
+  return NullProtoObject();
+};
+
+hiddenKeys[IE_PROTO] = true;
+
+// `Object.create` method
+// https://tc39.es/ecma262/#sec-object.create
+module.exports = Object.create || function create(O, Properties) {
+  var result;
+  if (O !== null) {
+    EmptyConstructor[PROTOTYPE] = anObject(O);
+    result = new EmptyConstructor();
+    EmptyConstructor[PROTOTYPE] = null;
+    // add "__proto__" for Object.getPrototypeOf polyfill
+    result[IE_PROTO] = O;
+  } else result = NullProtoObject();
+  return Properties === undefined ? result : defineProperties(result, Properties);
+};
+
+
+/***/ }),
+
+/***/ "7dd0":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__("23e7");
+var createIteratorConstructor = __webpack_require__("9ed3");
+var getPrototypeOf = __webpack_require__("e163");
+var setPrototypeOf = __webpack_require__("d2bb");
+var setToStringTag = __webpack_require__("d44e");
+var createNonEnumerableProperty = __webpack_require__("9112");
+var redefine = __webpack_require__("6eeb");
+var wellKnownSymbol = __webpack_require__("b622");
+var IS_PURE = __webpack_require__("c430");
+var Iterators = __webpack_require__("3f8c");
+var IteratorsCore = __webpack_require__("ae93");
+
+var IteratorPrototype = IteratorsCore.IteratorPrototype;
+var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;
+var ITERATOR = wellKnownSymbol('iterator');
+var KEYS = 'keys';
+var VALUES = 'values';
+var ENTRIES = 'entries';
+
+var returnThis = function () { return this; };
+
+module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {
+  createIteratorConstructor(IteratorConstructor, NAME, next);
+
+  var getIterationMethod = function (KIND) {
+    if (KIND === DEFAULT && defaultIterator) return defaultIterator;
+    if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];
+    switch (KIND) {
+      case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };
+      case VALUES: return function values() { return new IteratorConstructor(this, KIND); };
+      case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };
+    } return function () { return new IteratorConstructor(this); };
+  };
+
+  var TO_STRING_TAG = NAME + ' Iterator';
+  var INCORRECT_VALUES_NAME = false;
+  var IterablePrototype = Iterable.prototype;
+  var nativeIterator = IterablePrototype[ITERATOR]
+    || IterablePrototype['@@iterator']
+    || DEFAULT && IterablePrototype[DEFAULT];
+  var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);
+  var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;
+  var CurrentIteratorPrototype, methods, KEY;
+
+  // fix native
+  if (anyNativeIterator) {
+    CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));
+    if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {
+      if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {
+        if (setPrototypeOf) {
+          setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);
+        } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {
+          createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis);
+        }
+      }
+      // Set @@toStringTag to native iterators
+      setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);
+      if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;
+    }
+  }
+
+  // fix Array#{values, @@iterator}.name in V8 / FF
+  if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {
+    INCORRECT_VALUES_NAME = true;
+    defaultIterator = function values() { return nativeIterator.call(this); };
+  }
+
+  // define iterator
+  if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {
+    createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator);
+  }
+  Iterators[NAME] = defaultIterator;
+
+  // export additional methods
+  if (DEFAULT) {
+    methods = {
+      values: getIterationMethod(VALUES),
+      keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),
+      entries: getIterationMethod(ENTRIES)
+    };
+    if (FORCED) for (KEY in methods) {
+      if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {
+        redefine(IterablePrototype, KEY, methods[KEY]);
+      }
+    } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);
+  }
+
+  return methods;
+};
+
+
+/***/ }),
+
+/***/ "7f9a":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+var inspectSource = __webpack_require__("8925");
+
+var WeakMap = global.WeakMap;
+
+module.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));
+
+
+/***/ }),
+
+/***/ "825a":
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__("861d");
+
+module.exports = function (it) {
+  if (!isObject(it)) {
+    throw TypeError(String(it) + ' is not an object');
+  } return it;
+};
+
+
+/***/ }),
+
+/***/ "83ab":
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__("d039");
+
+// Detect IE8's incomplete defineProperty implementation
+module.exports = !fails(function () {
+  return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
+});
+
+
+/***/ }),
+
+/***/ "8418":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var toPrimitive = __webpack_require__("c04e");
+var definePropertyModule = __webpack_require__("9bf2");
+var createPropertyDescriptor = __webpack_require__("5c6c");
+
+module.exports = function (object, key, value) {
+  var propertyKey = toPrimitive(key);
+  if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));
+  else object[propertyKey] = value;
+};
+
+
+/***/ }),
+
+/***/ "861d":
+/***/ (function(module, exports) {
+
+module.exports = function (it) {
+  return typeof it === 'object' ? it !== null : typeof it === 'function';
+};
+
+
+/***/ }),
+
+/***/ "8875":
+/***/ (function(module, exports, __webpack_require__) {
+
+var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;// addapted from the document.currentScript polyfill by Adam Miller
+// MIT license
+// source: https://github.com/amiller-gh/currentScript-polyfill
+
+// added support for Firefox https://bugzilla.mozilla.org/show_bug.cgi?id=1620505
+
+(function (root, factory) {
+  if (true) {
+    !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
+				__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
+				(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),
+				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
+  } else {}
+}(typeof self !== 'undefined' ? self : this, function () {
+  function getCurrentScript () {
+    var descriptor = Object.getOwnPropertyDescriptor(document, 'currentScript')
+    // for chrome
+    if (!descriptor && 'currentScript' in document && document.currentScript) {
+      return document.currentScript
+    }
+
+    // for other browsers with native support for currentScript
+    if (descriptor && descriptor.get !== getCurrentScript && document.currentScript) {
+      return document.currentScript
+    }
+  
+    // IE 8-10 support script readyState
+    // IE 11+ & Firefox support stack trace
+    try {
+      throw new Error();
+    }
+    catch (err) {
+      // Find the second match for the "at" string to get file src url from stack.
+      var ieStackRegExp = /.*at [^(]*\((.*):(.+):(.+)\)$/ig,
+        ffStackRegExp = /@([^@]*):(\d+):(\d+)\s*$/ig,
+        stackDetails = ieStackRegExp.exec(err.stack) || ffStackRegExp.exec(err.stack),
+        scriptLocation = (stackDetails && stackDetails[1]) || false,
+        line = (stackDetails && stackDetails[2]) || false,
+        currentLocation = document.location.href.replace(document.location.hash, ''),
+        pageSource,
+        inlineScriptSourceRegExp,
+        inlineScriptSource,
+        scripts = document.getElementsByTagName('script'); // Live NodeList collection
+  
+      if (scriptLocation === currentLocation) {
+        pageSource = document.documentElement.outerHTML;
+        inlineScriptSourceRegExp = new RegExp('(?:[^\\n]+?\\n){0,' + (line - 2) + '}[^<]*<script>([\\d\\D]*?)<\\/script>[\\d\\D]*', 'i');
+        inlineScriptSource = pageSource.replace(inlineScriptSourceRegExp, '$1').trim();
+      }
+  
+      for (var i = 0; i < scripts.length; i++) {
+        // If ready state is interactive, return the script tag
+        if (scripts[i].readyState === 'interactive') {
+          return scripts[i];
+        }
+  
+        // If src matches, return the script tag
+        if (scripts[i].src === scriptLocation) {
+          return scripts[i];
+        }
+  
+        // If inline source matches, return the script tag
+        if (
+          scriptLocation === currentLocation &&
+          scripts[i].innerHTML &&
+          scripts[i].innerHTML.trim() === inlineScriptSource
+        ) {
+          return scripts[i];
+        }
+      }
+  
+      // If no match, return null
+      return null;
+    }
+  };
+
+  return getCurrentScript
+}));
+
+
+/***/ }),
+
+/***/ "8925":
+/***/ (function(module, exports, __webpack_require__) {
+
+var store = __webpack_require__("c6cd");
+
+var functionToString = Function.toString;
+
+// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper
+if (typeof store.inspectSource != 'function') {
+  store.inspectSource = function (it) {
+    return functionToString.call(it);
+  };
+}
+
+module.exports = store.inspectSource;
+
+
+/***/ }),
+
+/***/ "8aa5":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var charAt = __webpack_require__("6547").charAt;
+
+// `AdvanceStringIndex` abstract operation
+// https://tc39.es/ecma262/#sec-advancestringindex
+module.exports = function (S, index, unicode) {
+  return index + (unicode ? charAt(S, index).length : 1);
+};
+
+
+/***/ }),
+
+/***/ "90e3":
+/***/ (function(module, exports) {
+
+var id = 0;
+var postfix = Math.random();
+
+module.exports = function (key) {
+  return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);
+};
+
+
+/***/ }),
+
+/***/ "9112":
+/***/ (function(module, exports, __webpack_require__) {
+
+var DESCRIPTORS = __webpack_require__("83ab");
+var definePropertyModule = __webpack_require__("9bf2");
+var createPropertyDescriptor = __webpack_require__("5c6c");
+
+module.exports = DESCRIPTORS ? function (object, key, value) {
+  return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));
+} : function (object, key, value) {
+  object[key] = value;
+  return object;
+};
+
+
+/***/ }),
+
+/***/ "9263":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var regexpFlags = __webpack_require__("ad6d");
+var stickyHelpers = __webpack_require__("9f7f");
+
+var nativeExec = RegExp.prototype.exec;
+// This always refers to the native implementation, because the
+// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
+// which loads this file before patching the method.
+var nativeReplace = String.prototype.replace;
+
+var patchedExec = nativeExec;
+
+var UPDATES_LAST_INDEX_WRONG = (function () {
+  var re1 = /a/;
+  var re2 = /b*/g;
+  nativeExec.call(re1, 'a');
+  nativeExec.call(re2, 'a');
+  return re1.lastIndex !== 0 || re2.lastIndex !== 0;
+})();
+
+var UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y || stickyHelpers.BROKEN_CARET;
+
+// nonparticipating capturing group, copied from es5-shim's String#split patch.
+// eslint-disable-next-line regexp/no-assertion-capturing-group, regexp/no-empty-group -- required for testing
+var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;
+
+var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y;
+
+if (PATCH) {
+  patchedExec = function exec(str) {
+    var re = this;
+    var lastIndex, reCopy, match, i;
+    var sticky = UNSUPPORTED_Y && re.sticky;
+    var flags = regexpFlags.call(re);
+    var source = re.source;
+    var charsAdded = 0;
+    var strCopy = str;
+
+    if (sticky) {
+      flags = flags.replace('y', '');
+      if (flags.indexOf('g') === -1) {
+        flags += 'g';
+      }
+
+      strCopy = String(str).slice(re.lastIndex);
+      // Support anchored sticky behavior.
+      if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\n')) {
+        source = '(?: ' + source + ')';
+        strCopy = ' ' + strCopy;
+        charsAdded++;
+      }
+      // ^(? + rx + ) is needed, in combination with some str slicing, to
+      // simulate the 'y' flag.
+      reCopy = new RegExp('^(?:' + source + ')', flags);
+    }
+
+    if (NPCG_INCLUDED) {
+      reCopy = new RegExp('^' + source + '$(?!\\s)', flags);
+    }
+    if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;
+
+    match = nativeExec.call(sticky ? reCopy : re, strCopy);
+
+    if (sticky) {
+      if (match) {
+        match.input = match.input.slice(charsAdded);
+        match[0] = match[0].slice(charsAdded);
+        match.index = re.lastIndex;
+        re.lastIndex += match[0].length;
+      } else re.lastIndex = 0;
+    } else if (UPDATES_LAST_INDEX_WRONG && match) {
+      re.lastIndex = re.global ? match.index + match[0].length : lastIndex;
+    }
+    if (NPCG_INCLUDED && match && match.length > 1) {
+      // Fix browsers whose `exec` methods don't consistently return `undefined`
+      // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
+      nativeReplace.call(match[0], reCopy, function () {
+        for (i = 1; i < arguments.length - 2; i++) {
+          if (arguments[i] === undefined) match[i] = undefined;
+        }
+      });
+    }
+
+    return match;
+  };
+}
+
+module.exports = patchedExec;
+
+
+/***/ }),
+
+/***/ "94ca":
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__("d039");
+
+var replacement = /#|\.prototype\./;
+
+var isForced = function (feature, detection) {
+  var value = data[normalize(feature)];
+  return value == POLYFILL ? true
+    : value == NATIVE ? false
+    : typeof detection == 'function' ? fails(detection)
+    : !!detection;
+};
+
+var normalize = isForced.normalize = function (string) {
+  return String(string).replace(replacement, '.').toLowerCase();
+};
+
+var data = isForced.data = {};
+var NATIVE = isForced.NATIVE = 'N';
+var POLYFILL = isForced.POLYFILL = 'P';
+
+module.exports = isForced;
+
+
+/***/ }),
+
+/***/ "99af":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__("23e7");
+var fails = __webpack_require__("d039");
+var isArray = __webpack_require__("e8b5");
+var isObject = __webpack_require__("861d");
+var toObject = __webpack_require__("7b0b");
+var toLength = __webpack_require__("50c4");
+var createProperty = __webpack_require__("8418");
+var arraySpeciesCreate = __webpack_require__("65f0");
+var arrayMethodHasSpeciesSupport = __webpack_require__("1dde");
+var wellKnownSymbol = __webpack_require__("b622");
+var V8_VERSION = __webpack_require__("2d00");
+
+var IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');
+var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;
+var MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';
+
+// We can't use this feature detection in V8 since it causes
+// deoptimization and serious performance degradation
+// https://github.com/zloirock/core-js/issues/679
+var IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {
+  var array = [];
+  array[IS_CONCAT_SPREADABLE] = false;
+  return array.concat()[0] !== array;
+});
+
+var SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');
+
+var isConcatSpreadable = function (O) {
+  if (!isObject(O)) return false;
+  var spreadable = O[IS_CONCAT_SPREADABLE];
+  return spreadable !== undefined ? !!spreadable : isArray(O);
+};
+
+var FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;
+
+// `Array.prototype.concat` method
+// https://tc39.es/ecma262/#sec-array.prototype.concat
+// with adding support of @@isConcatSpreadable and @@species
+$({ target: 'Array', proto: true, forced: FORCED }, {
+  // eslint-disable-next-line no-unused-vars -- required for `.length`
+  concat: function concat(arg) {
+    var O = toObject(this);
+    var A = arraySpeciesCreate(O, 0);
+    var n = 0;
+    var i, k, length, len, E;
+    for (i = -1, length = arguments.length; i < length; i++) {
+      E = i === -1 ? O : arguments[i];
+      if (isConcatSpreadable(E)) {
+        len = toLength(E.length);
+        if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
+        for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);
+      } else {
+        if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
+        createProperty(A, n++, E);
+      }
+    }
+    A.length = n;
+    return A;
+  }
+});
+
+
+/***/ }),
+
+/***/ "9bf2":
+/***/ (function(module, exports, __webpack_require__) {
+
+var DESCRIPTORS = __webpack_require__("83ab");
+var IE8_DOM_DEFINE = __webpack_require__("0cfb");
+var anObject = __webpack_require__("825a");
+var toPrimitive = __webpack_require__("c04e");
+
+var nativeDefineProperty = Object.defineProperty;
+
+// `Object.defineProperty` method
+// https://tc39.es/ecma262/#sec-object.defineproperty
+exports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {
+  anObject(O);
+  P = toPrimitive(P, true);
+  anObject(Attributes);
+  if (IE8_DOM_DEFINE) try {
+    return nativeDefineProperty(O, P, Attributes);
+  } catch (error) { /* empty */ }
+  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');
+  if ('value' in Attributes) O[P] = Attributes.value;
+  return O;
+};
+
+
+/***/ }),
+
+/***/ "9ed3":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var IteratorPrototype = __webpack_require__("ae93").IteratorPrototype;
+var create = __webpack_require__("7c73");
+var createPropertyDescriptor = __webpack_require__("5c6c");
+var setToStringTag = __webpack_require__("d44e");
+var Iterators = __webpack_require__("3f8c");
+
+var returnThis = function () { return this; };
+
+module.exports = function (IteratorConstructor, NAME, next) {
+  var TO_STRING_TAG = NAME + ' Iterator';
+  IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });
+  setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);
+  Iterators[TO_STRING_TAG] = returnThis;
+  return IteratorConstructor;
+};
+
+
+/***/ }),
+
+/***/ "9f7f":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var fails = __webpack_require__("d039");
+
+// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,
+// so we use an intermediate function.
+function RE(s, f) {
+  return RegExp(s, f);
+}
+
+exports.UNSUPPORTED_Y = fails(function () {
+  // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError
+  var re = RE('a', 'y');
+  re.lastIndex = 2;
+  return re.exec('abcd') != null;
+});
+
+exports.BROKEN_CARET = fails(function () {
+  // https://bugzilla.mozilla.org/show_bug.cgi?id=773687
+  var re = RE('^r', 'gy');
+  re.lastIndex = 2;
+  return re.exec('str') != null;
+});
+
+
+/***/ }),
+
+/***/ "a4d3":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__("23e7");
+var global = __webpack_require__("da84");
+var getBuiltIn = __webpack_require__("d066");
+var IS_PURE = __webpack_require__("c430");
+var DESCRIPTORS = __webpack_require__("83ab");
+var NATIVE_SYMBOL = __webpack_require__("4930");
+var USE_SYMBOL_AS_UID = __webpack_require__("fdbf");
+var fails = __webpack_require__("d039");
+var has = __webpack_require__("5135");
+var isArray = __webpack_require__("e8b5");
+var isObject = __webpack_require__("861d");
+var anObject = __webpack_require__("825a");
+var toObject = __webpack_require__("7b0b");
+var toIndexedObject = __webpack_require__("fc6a");
+var toPrimitive = __webpack_require__("c04e");
+var createPropertyDescriptor = __webpack_require__("5c6c");
+var nativeObjectCreate = __webpack_require__("7c73");
+var objectKeys = __webpack_require__("df75");
+var getOwnPropertyNamesModule = __webpack_require__("241c");
+var getOwnPropertyNamesExternal = __webpack_require__("057f");
+var getOwnPropertySymbolsModule = __webpack_require__("7418");
+var getOwnPropertyDescriptorModule = __webpack_require__("06cf");
+var definePropertyModule = __webpack_require__("9bf2");
+var propertyIsEnumerableModule = __webpack_require__("d1e7");
+var createNonEnumerableProperty = __webpack_require__("9112");
+var redefine = __webpack_require__("6eeb");
+var shared = __webpack_require__("5692");
+var sharedKey = __webpack_require__("f772");
+var hiddenKeys = __webpack_require__("d012");
+var uid = __webpack_require__("90e3");
+var wellKnownSymbol = __webpack_require__("b622");
+var wrappedWellKnownSymbolModule = __webpack_require__("e538");
+var defineWellKnownSymbol = __webpack_require__("746f");
+var setToStringTag = __webpack_require__("d44e");
+var InternalStateModule = __webpack_require__("69f3");
+var $forEach = __webpack_require__("b727").forEach;
+
+var HIDDEN = sharedKey('hidden');
+var SYMBOL = 'Symbol';
+var PROTOTYPE = 'prototype';
+var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');
+var setInternalState = InternalStateModule.set;
+var getInternalState = InternalStateModule.getterFor(SYMBOL);
+var ObjectPrototype = Object[PROTOTYPE];
+var $Symbol = global.Symbol;
+var $stringify = getBuiltIn('JSON', 'stringify');
+var nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
+var nativeDefineProperty = definePropertyModule.f;
+var nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;
+var nativePropertyIsEnumerable = propertyIsEnumerableModule.f;
+var AllSymbols = shared('symbols');
+var ObjectPrototypeSymbols = shared('op-symbols');
+var StringToSymbolRegistry = shared('string-to-symbol-registry');
+var SymbolToStringRegistry = shared('symbol-to-string-registry');
+var WellKnownSymbolsStore = shared('wks');
+var QObject = global.QObject;
+// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
+var USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;
+
+// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
+var setSymbolDescriptor = DESCRIPTORS && fails(function () {
+  return nativeObjectCreate(nativeDefineProperty({}, 'a', {
+    get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }
+  })).a != 7;
+}) ? function (O, P, Attributes) {
+  var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);
+  if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];
+  nativeDefineProperty(O, P, Attributes);
+  if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {
+    nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);
+  }
+} : nativeDefineProperty;
+
+var wrap = function (tag, description) {
+  var symbol = AllSymbols[tag] = nativeObjectCreate($Symbol[PROTOTYPE]);
+  setInternalState(symbol, {
+    type: SYMBOL,
+    tag: tag,
+    description: description
+  });
+  if (!DESCRIPTORS) symbol.description = description;
+  return symbol;
+};
+
+var isSymbol = USE_SYMBOL_AS_UID ? function (it) {
+  return typeof it == 'symbol';
+} : function (it) {
+  return Object(it) instanceof $Symbol;
+};
+
+var $defineProperty = function defineProperty(O, P, Attributes) {
+  if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);
+  anObject(O);
+  var key = toPrimitive(P, true);
+  anObject(Attributes);
+  if (has(AllSymbols, key)) {
+    if (!Attributes.enumerable) {
+      if (!has(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));
+      O[HIDDEN][key] = true;
+    } else {
+      if (has(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;
+      Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });
+    } return setSymbolDescriptor(O, key, Attributes);
+  } return nativeDefineProperty(O, key, Attributes);
+};
+
+var $defineProperties = function defineProperties(O, Properties) {
+  anObject(O);
+  var properties = toIndexedObject(Properties);
+  var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));
+  $forEach(keys, function (key) {
+    if (!DESCRIPTORS || $propertyIsEnumerable.call(properties, key)) $defineProperty(O, key, properties[key]);
+  });
+  return O;
+};
+
+var $create = function create(O, Properties) {
+  return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);
+};
+
+var $propertyIsEnumerable = function propertyIsEnumerable(V) {
+  var P = toPrimitive(V, true);
+  var enumerable = nativePropertyIsEnumerable.call(this, P);
+  if (this === ObjectPrototype && has(AllSymbols, P) && !has(ObjectPrototypeSymbols, P)) return false;
+  return enumerable || !has(this, P) || !has(AllSymbols, P) || has(this, HIDDEN) && this[HIDDEN][P] ? enumerable : true;
+};
+
+var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {
+  var it = toIndexedObject(O);
+  var key = toPrimitive(P, true);
+  if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return;
+  var descriptor = nativeGetOwnPropertyDescriptor(it, key);
+  if (descriptor && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) {
+    descriptor.enumerable = true;
+  }
+  return descriptor;
+};
+
+var $getOwnPropertyNames = function getOwnPropertyNames(O) {
+  var names = nativeGetOwnPropertyNames(toIndexedObject(O));
+  var result = [];
+  $forEach(names, function (key) {
+    if (!has(AllSymbols, key) && !has(hiddenKeys, key)) result.push(key);
+  });
+  return result;
+};
+
+var $getOwnPropertySymbols = function getOwnPropertySymbols(O) {
+  var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;
+  var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));
+  var result = [];
+  $forEach(names, function (key) {
+    if (has(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || has(ObjectPrototype, key))) {
+      result.push(AllSymbols[key]);
+    }
+  });
+  return result;
+};
+
+// `Symbol` constructor
+// https://tc39.es/ecma262/#sec-symbol-constructor
+if (!NATIVE_SYMBOL) {
+  $Symbol = function Symbol() {
+    if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor');
+    var description = !arguments.length || arguments[0] === undefined ? undefined : String(arguments[0]);
+    var tag = uid(description);
+    var setter = function (value) {
+      if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value);
+      if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
+      setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));
+    };
+    if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });
+    return wrap(tag, description);
+  };
+
+  redefine($Symbol[PROTOTYPE], 'toString', function toString() {
+    return getInternalState(this).tag;
+  });
+
+  redefine($Symbol, 'withoutSetter', function (description) {
+    return wrap(uid(description), description);
+  });
+
+  propertyIsEnumerableModule.f = $propertyIsEnumerable;
+  definePropertyModule.f = $defineProperty;
+  getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;
+  getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;
+  getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;
+
+  wrappedWellKnownSymbolModule.f = function (name) {
+    return wrap(wellKnownSymbol(name), name);
+  };
+
+  if (DESCRIPTORS) {
+    // https://github.com/tc39/proposal-Symbol-description
+    nativeDefineProperty($Symbol[PROTOTYPE], 'description', {
+      configurable: true,
+      get: function description() {
+        return getInternalState(this).description;
+      }
+    });
+    if (!IS_PURE) {
+      redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });
+    }
+  }
+}
+
+$({ global: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {
+  Symbol: $Symbol
+});
+
+$forEach(objectKeys(WellKnownSymbolsStore), function (name) {
+  defineWellKnownSymbol(name);
+});
+
+$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {
+  // `Symbol.for` method
+  // https://tc39.es/ecma262/#sec-symbol.for
+  'for': function (key) {
+    var string = String(key);
+    if (has(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];
+    var symbol = $Symbol(string);
+    StringToSymbolRegistry[string] = symbol;
+    SymbolToStringRegistry[symbol] = string;
+    return symbol;
+  },
+  // `Symbol.keyFor` method
+  // https://tc39.es/ecma262/#sec-symbol.keyfor
+  keyFor: function keyFor(sym) {
+    if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol');
+    if (has(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];
+  },
+  useSetter: function () { USE_SETTER = true; },
+  useSimple: function () { USE_SETTER = false; }
+});
+
+$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {
+  // `Object.create` method
+  // https://tc39.es/ecma262/#sec-object.create
+  create: $create,
+  // `Object.defineProperty` method
+  // https://tc39.es/ecma262/#sec-object.defineproperty
+  defineProperty: $defineProperty,
+  // `Object.defineProperties` method
+  // https://tc39.es/ecma262/#sec-object.defineproperties
+  defineProperties: $defineProperties,
+  // `Object.getOwnPropertyDescriptor` method
+  // https://tc39.es/ecma262/#sec-object.getownpropertydescriptors
+  getOwnPropertyDescriptor: $getOwnPropertyDescriptor
+});
+
+$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {
+  // `Object.getOwnPropertyNames` method
+  // https://tc39.es/ecma262/#sec-object.getownpropertynames
+  getOwnPropertyNames: $getOwnPropertyNames,
+  // `Object.getOwnPropertySymbols` method
+  // https://tc39.es/ecma262/#sec-object.getownpropertysymbols
+  getOwnPropertySymbols: $getOwnPropertySymbols
+});
+
+// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
+// https://bugs.chromium.org/p/v8/issues/detail?id=3443
+$({ target: 'Object', stat: true, forced: fails(function () { getOwnPropertySymbolsModule.f(1); }) }, {
+  getOwnPropertySymbols: function getOwnPropertySymbols(it) {
+    return getOwnPropertySymbolsModule.f(toObject(it));
+  }
+});
+
+// `JSON.stringify` method behavior with symbols
+// https://tc39.es/ecma262/#sec-json.stringify
+if ($stringify) {
+  var FORCED_JSON_STRINGIFY = !NATIVE_SYMBOL || fails(function () {
+    var symbol = $Symbol();
+    // MS Edge converts symbol values to JSON as {}
+    return $stringify([symbol]) != '[null]'
+      // WebKit converts symbol values to JSON as null
+      || $stringify({ a: symbol }) != '{}'
+      // V8 throws on boxed symbols
+      || $stringify(Object(symbol)) != '{}';
+  });
+
+  $({ target: 'JSON', stat: true, forced: FORCED_JSON_STRINGIFY }, {
+    // eslint-disable-next-line no-unused-vars -- required for `.length`
+    stringify: function stringify(it, replacer, space) {
+      var args = [it];
+      var index = 1;
+      var $replacer;
+      while (arguments.length > index) args.push(arguments[index++]);
+      $replacer = replacer;
+      if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
+      if (!isArray(replacer)) replacer = function (key, value) {
+        if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
+        if (!isSymbol(value)) return value;
+      };
+      args[1] = replacer;
+      return $stringify.apply(null, args);
+    }
+  });
+}
+
+// `Symbol.prototype[@@toPrimitive]` method
+// https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive
+if (!$Symbol[PROTOTYPE][TO_PRIMITIVE]) {
+  createNonEnumerableProperty($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
+}
+// `Symbol.prototype[@@toStringTag]` property
+// https://tc39.es/ecma262/#sec-symbol.prototype-@@tostringtag
+setToStringTag($Symbol, SYMBOL);
+
+hiddenKeys[HIDDEN] = true;
+
+
+/***/ }),
+
+/***/ "a691":
+/***/ (function(module, exports) {
+
+var ceil = Math.ceil;
+var floor = Math.floor;
+
+// `ToInteger` abstract operation
+// https://tc39.es/ecma262/#sec-tointeger
+module.exports = function (argument) {
+  return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);
+};
+
+
+/***/ }),
+
+/***/ "ac1f":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__("23e7");
+var exec = __webpack_require__("9263");
+
+// `RegExp.prototype.exec` method
+// https://tc39.es/ecma262/#sec-regexp.prototype.exec
+$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {
+  exec: exec
+});
+
+
+/***/ }),
+
+/***/ "ad6d":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var anObject = __webpack_require__("825a");
+
+// `RegExp.prototype.flags` getter implementation
+// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags
+module.exports = function () {
+  var that = anObject(this);
+  var result = '';
+  if (that.global) result += 'g';
+  if (that.ignoreCase) result += 'i';
+  if (that.multiline) result += 'm';
+  if (that.dotAll) result += 's';
+  if (that.unicode) result += 'u';
+  if (that.sticky) result += 'y';
+  return result;
+};
+
+
+/***/ }),
+
+/***/ "ae93":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var fails = __webpack_require__("d039");
+var getPrototypeOf = __webpack_require__("e163");
+var createNonEnumerableProperty = __webpack_require__("9112");
+var has = __webpack_require__("5135");
+var wellKnownSymbol = __webpack_require__("b622");
+var IS_PURE = __webpack_require__("c430");
+
+var ITERATOR = wellKnownSymbol('iterator');
+var BUGGY_SAFARI_ITERATORS = false;
+
+var returnThis = function () { return this; };
+
+// `%IteratorPrototype%` object
+// https://tc39.es/ecma262/#sec-%iteratorprototype%-object
+var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;
+
+if ([].keys) {
+  arrayIterator = [].keys();
+  // Safari 8 has buggy iterators w/o `next`
+  if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;
+  else {
+    PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));
+    if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;
+  }
+}
+
+var NEW_ITERATOR_PROTOTYPE = IteratorPrototype == undefined || fails(function () {
+  var test = {};
+  // FF44- legacy iterators case
+  return IteratorPrototype[ITERATOR].call(test) !== test;
+});
+
+if (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};
+
+// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
+if ((!IS_PURE || NEW_ITERATOR_PROTOTYPE) && !has(IteratorPrototype, ITERATOR)) {
+  createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis);
+}
+
+module.exports = {
+  IteratorPrototype: IteratorPrototype,
+  BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS
+};
+
+
+/***/ }),
+
+/***/ "b041":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var TO_STRING_TAG_SUPPORT = __webpack_require__("00ee");
+var classof = __webpack_require__("f5df");
+
+// `Object.prototype.toString` method implementation
+// https://tc39.es/ecma262/#sec-object.prototype.tostring
+module.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {
+  return '[object ' + classof(this) + ']';
+};
+
+
+/***/ }),
+
+/***/ "b622":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+var shared = __webpack_require__("5692");
+var has = __webpack_require__("5135");
+var uid = __webpack_require__("90e3");
+var NATIVE_SYMBOL = __webpack_require__("4930");
+var USE_SYMBOL_AS_UID = __webpack_require__("fdbf");
+
+var WellKnownSymbolsStore = shared('wks');
+var Symbol = global.Symbol;
+var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;
+
+module.exports = function (name) {
+  if (!has(WellKnownSymbolsStore, name)) {
+    if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name];
+    else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);
+  } return WellKnownSymbolsStore[name];
+};
+
+
+/***/ }),
+
+/***/ "b727":
+/***/ (function(module, exports, __webpack_require__) {
+
+var bind = __webpack_require__("0366");
+var IndexedObject = __webpack_require__("44ad");
+var toObject = __webpack_require__("7b0b");
+var toLength = __webpack_require__("50c4");
+var arraySpeciesCreate = __webpack_require__("65f0");
+
+var push = [].push;
+
+// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterOut }` methods implementation
+var createMethod = function (TYPE) {
+  var IS_MAP = TYPE == 1;
+  var IS_FILTER = TYPE == 2;
+  var IS_SOME = TYPE == 3;
+  var IS_EVERY = TYPE == 4;
+  var IS_FIND_INDEX = TYPE == 6;
+  var IS_FILTER_OUT = TYPE == 7;
+  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
+  return function ($this, callbackfn, that, specificCreate) {
+    var O = toObject($this);
+    var self = IndexedObject(O);
+    var boundFunction = bind(callbackfn, that, 3);
+    var length = toLength(self.length);
+    var index = 0;
+    var create = specificCreate || arraySpeciesCreate;
+    var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_OUT ? create($this, 0) : undefined;
+    var value, result;
+    for (;length > index; index++) if (NO_HOLES || index in self) {
+      value = self[index];
+      result = boundFunction(value, index, O);
+      if (TYPE) {
+        if (IS_MAP) target[index] = result; // map
+        else if (result) switch (TYPE) {
+          case 3: return true;              // some
+          case 5: return value;             // find
+          case 6: return index;             // findIndex
+          case 2: push.call(target, value); // filter
+        } else switch (TYPE) {
+          case 4: return false;             // every
+          case 7: push.call(target, value); // filterOut
+        }
+      }
+    }
+    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;
+  };
+};
+
+module.exports = {
+  // `Array.prototype.forEach` method
+  // https://tc39.es/ecma262/#sec-array.prototype.foreach
+  forEach: createMethod(0),
+  // `Array.prototype.map` method
+  // https://tc39.es/ecma262/#sec-array.prototype.map
+  map: createMethod(1),
+  // `Array.prototype.filter` method
+  // https://tc39.es/ecma262/#sec-array.prototype.filter
+  filter: createMethod(2),
+  // `Array.prototype.some` method
+  // https://tc39.es/ecma262/#sec-array.prototype.some
+  some: createMethod(3),
+  // `Array.prototype.every` method
+  // https://tc39.es/ecma262/#sec-array.prototype.every
+  every: createMethod(4),
+  // `Array.prototype.find` method
+  // https://tc39.es/ecma262/#sec-array.prototype.find
+  find: createMethod(5),
+  // `Array.prototype.findIndex` method
+  // https://tc39.es/ecma262/#sec-array.prototype.findIndex
+  findIndex: createMethod(6),
+  // `Array.prototype.filterOut` method
+  // https://github.com/tc39/proposal-array-filtering
+  filterOut: createMethod(7)
+};
+
+
+/***/ }),
+
+/***/ "c04e":
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__("861d");
+
+// `ToPrimitive` abstract operation
+// https://tc39.es/ecma262/#sec-toprimitive
+// instead of the ES6 spec version, we didn't implement @@toPrimitive case
+// and the second argument - flag - preferred type is a string
+module.exports = function (input, PREFERRED_STRING) {
+  if (!isObject(input)) return input;
+  var fn, val;
+  if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
+  if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;
+  if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
+  throw TypeError("Can't convert object to primitive value");
+};
+
+
+/***/ }),
+
+/***/ "c430":
+/***/ (function(module, exports) {
+
+module.exports = false;
+
+
+/***/ }),
+
+/***/ "c6b6":
+/***/ (function(module, exports) {
+
+var toString = {}.toString;
+
+module.exports = function (it) {
+  return toString.call(it).slice(8, -1);
+};
+
+
+/***/ }),
+
+/***/ "c6cd":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+var setGlobal = __webpack_require__("ce4e");
+
+var SHARED = '__core-js_shared__';
+var store = global[SHARED] || setGlobal(SHARED, {});
+
+module.exports = store;
+
+
+/***/ }),
+
+/***/ "c8ba":
+/***/ (function(module, exports) {
+
+var g;
+
+// This works in non-strict mode
+g = (function() {
+	return this;
+})();
+
+try {
+	// This works if eval is allowed (see CSP)
+	g = g || new Function("return this")();
+} catch (e) {
+	// This works if the window reference is available
+	if (typeof window === "object") g = window;
+}
+
+// g can still be undefined, but nothing to do about it...
+// We return undefined, instead of nothing here, so it's
+// easier to handle this case. if(!global) { ...}
+
+module.exports = g;
+
+
+/***/ }),
+
+/***/ "ca84":
+/***/ (function(module, exports, __webpack_require__) {
+
+var has = __webpack_require__("5135");
+var toIndexedObject = __webpack_require__("fc6a");
+var indexOf = __webpack_require__("4d64").indexOf;
+var hiddenKeys = __webpack_require__("d012");
+
+module.exports = function (object, names) {
+  var O = toIndexedObject(object);
+  var i = 0;
+  var result = [];
+  var key;
+  for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);
+  // Don't enum bug & hidden keys
+  while (names.length > i) if (has(O, key = names[i++])) {
+    ~indexOf(result, key) || result.push(key);
+  }
+  return result;
+};
+
+
+/***/ }),
+
+/***/ "cc12":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+var isObject = __webpack_require__("861d");
+
+var document = global.document;
+// typeof document.createElement is 'object' in old IE
+var EXISTS = isObject(document) && isObject(document.createElement);
+
+module.exports = function (it) {
+  return EXISTS ? document.createElement(it) : {};
+};
+
+
+/***/ }),
+
+/***/ "ce4e":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+var createNonEnumerableProperty = __webpack_require__("9112");
+
+module.exports = function (key, value) {
+  try {
+    createNonEnumerableProperty(global, key, value);
+  } catch (error) {
+    global[key] = value;
+  } return value;
+};
+
+
+/***/ }),
+
+/***/ "d012":
+/***/ (function(module, exports) {
+
+module.exports = {};
+
+
+/***/ }),
+
+/***/ "d039":
+/***/ (function(module, exports) {
+
+module.exports = function (exec) {
+  try {
+    return !!exec();
+  } catch (error) {
+    return true;
+  }
+};
+
+
+/***/ }),
+
+/***/ "d066":
+/***/ (function(module, exports, __webpack_require__) {
+
+var path = __webpack_require__("428f");
+var global = __webpack_require__("da84");
+
+var aFunction = function (variable) {
+  return typeof variable == 'function' ? variable : undefined;
+};
+
+module.exports = function (namespace, method) {
+  return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])
+    : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];
+};
+
+
+/***/ }),
+
+/***/ "d1e7":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var nativePropertyIsEnumerable = {}.propertyIsEnumerable;
+var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
+
+// Nashorn ~ JDK8 bug
+var NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);
+
+// `Object.prototype.propertyIsEnumerable` method implementation
+// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
+exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
+  var descriptor = getOwnPropertyDescriptor(this, V);
+  return !!descriptor && descriptor.enumerable;
+} : nativePropertyIsEnumerable;
+
+
+/***/ }),
+
+/***/ "d28b":
+/***/ (function(module, exports, __webpack_require__) {
+
+var defineWellKnownSymbol = __webpack_require__("746f");
+
+// `Symbol.iterator` well-known symbol
+// https://tc39.es/ecma262/#sec-symbol.iterator
+defineWellKnownSymbol('iterator');
+
+
+/***/ }),
+
+/***/ "d2bb":
+/***/ (function(module, exports, __webpack_require__) {
+
+/* eslint-disable no-proto -- safe */
+var anObject = __webpack_require__("825a");
+var aPossiblePrototype = __webpack_require__("3bbe");
+
+// `Object.setPrototypeOf` method
+// https://tc39.es/ecma262/#sec-object.setprototypeof
+// Works with __proto__ only. Old v8 can't work with null proto objects.
+module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {
+  var CORRECT_SETTER = false;
+  var test = {};
+  var setter;
+  try {
+    setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;
+    setter.call(test, []);
+    CORRECT_SETTER = test instanceof Array;
+  } catch (error) { /* empty */ }
+  return function setPrototypeOf(O, proto) {
+    anObject(O);
+    aPossiblePrototype(proto);
+    if (CORRECT_SETTER) setter.call(O, proto);
+    else O.__proto__ = proto;
+    return O;
+  };
+}() : undefined);
+
+
+/***/ }),
+
+/***/ "d3b7":
+/***/ (function(module, exports, __webpack_require__) {
+
+var TO_STRING_TAG_SUPPORT = __webpack_require__("00ee");
+var redefine = __webpack_require__("6eeb");
+var toString = __webpack_require__("b041");
+
+// `Object.prototype.toString` method
+// https://tc39.es/ecma262/#sec-object.prototype.tostring
+if (!TO_STRING_TAG_SUPPORT) {
+  redefine(Object.prototype, 'toString', toString, { unsafe: true });
+}
+
+
+/***/ }),
+
+/***/ "d44e":
+/***/ (function(module, exports, __webpack_require__) {
+
+var defineProperty = __webpack_require__("9bf2").f;
+var has = __webpack_require__("5135");
+var wellKnownSymbol = __webpack_require__("b622");
+
+var TO_STRING_TAG = wellKnownSymbol('toStringTag');
+
+module.exports = function (it, TAG, STATIC) {
+  if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {
+    defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });
+  }
+};
+
+
+/***/ }),
+
+/***/ "d784":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+// TODO: Remove from `core-js@4` since it's moved to entry points
+__webpack_require__("ac1f");
+var redefine = __webpack_require__("6eeb");
+var fails = __webpack_require__("d039");
+var wellKnownSymbol = __webpack_require__("b622");
+var regexpExec = __webpack_require__("9263");
+var createNonEnumerableProperty = __webpack_require__("9112");
+
+var SPECIES = wellKnownSymbol('species');
+
+var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
+  // #replace needs built-in support for named groups.
+  // #match works fine because it just return the exec results, even if it has
+  // a "grops" property.
+  var re = /./;
+  re.exec = function () {
+    var result = [];
+    result.groups = { a: '7' };
+    return result;
+  };
+  return ''.replace(re, '$<a>') !== '7';
+});
+
+// IE <= 11 replaces $0 with the whole match, as if it was $&
+// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0
+var REPLACE_KEEPS_$0 = (function () {
+  return 'a'.replace(/./, '$0') === '$0';
+})();
+
+var REPLACE = wellKnownSymbol('replace');
+// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string
+var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {
+  if (/./[REPLACE]) {
+    return /./[REPLACE]('a', '$0') === '';
+  }
+  return false;
+})();
+
+// Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
+// Weex JS has frozen built-in prototypes, so use try / catch wrapper
+var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {
+  // eslint-disable-next-line regexp/no-empty-group -- required for testing
+  var re = /(?:)/;
+  var originalExec = re.exec;
+  re.exec = function () { return originalExec.apply(this, arguments); };
+  var result = 'ab'.split(re);
+  return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';
+});
+
+module.exports = function (KEY, length, exec, sham) {
+  var SYMBOL = wellKnownSymbol(KEY);
+
+  var DELEGATES_TO_SYMBOL = !fails(function () {
+    // String methods call symbol-named RegEp methods
+    var O = {};
+    O[SYMBOL] = function () { return 7; };
+    return ''[KEY](O) != 7;
+  });
+
+  var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {
+    // Symbol-named RegExp methods call .exec
+    var execCalled = false;
+    var re = /a/;
+
+    if (KEY === 'split') {
+      // We can't use real regex here since it causes deoptimization
+      // and serious performance degradation in V8
+      // https://github.com/zloirock/core-js/issues/306
+      re = {};
+      // RegExp[@@split] doesn't call the regex's exec method, but first creates
+      // a new one. We need to return the patched regex when creating the new one.
+      re.constructor = {};
+      re.constructor[SPECIES] = function () { return re; };
+      re.flags = '';
+      re[SYMBOL] = /./[SYMBOL];
+    }
+
+    re.exec = function () { execCalled = true; return null; };
+
+    re[SYMBOL]('');
+    return !execCalled;
+  });
+
+  if (
+    !DELEGATES_TO_SYMBOL ||
+    !DELEGATES_TO_EXEC ||
+    (KEY === 'replace' && !(
+      REPLACE_SUPPORTS_NAMED_GROUPS &&
+      REPLACE_KEEPS_$0 &&
+      !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE
+    )) ||
+    (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
+  ) {
+    var nativeRegExpMethod = /./[SYMBOL];
+    var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {
+      if (regexp.exec === regexpExec) {
+        if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
+          // The native String method already delegates to @@method (this
+          // polyfilled function), leasing to infinite recursion.
+          // We avoid it by directly calling the native @@method method.
+          return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
+        }
+        return { done: true, value: nativeMethod.call(str, regexp, arg2) };
+      }
+      return { done: false };
+    }, {
+      REPLACE_KEEPS_$0: REPLACE_KEEPS_$0,
+      REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE
+    });
+    var stringMethod = methods[0];
+    var regexMethod = methods[1];
+
+    redefine(String.prototype, KEY, stringMethod);
+    redefine(RegExp.prototype, SYMBOL, length == 2
+      // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
+      // 21.2.5.11 RegExp.prototype[@@split](string, limit)
+      ? function (string, arg) { return regexMethod.call(string, this, arg); }
+      // 21.2.5.6 RegExp.prototype[@@match](string)
+      // 21.2.5.9 RegExp.prototype[@@search](string)
+      : function (string) { return regexMethod.call(string, this); }
+    );
+  }
+
+  if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);
+};
+
+
+/***/ }),
+
+/***/ "da84":
+/***/ (function(module, exports, __webpack_require__) {
+
+/* WEBPACK VAR INJECTION */(function(global) {var check = function (it) {
+  return it && it.Math == Math && it;
+};
+
+// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
+module.exports =
+  /* global globalThis -- safe */
+  check(typeof globalThis == 'object' && globalThis) ||
+  check(typeof window == 'object' && window) ||
+  check(typeof self == 'object' && self) ||
+  check(typeof global == 'object' && global) ||
+  // eslint-disable-next-line no-new-func -- fallback
+  (function () { return this; })() || Function('return this')();
+
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("c8ba")))
+
+/***/ }),
+
+/***/ "ddb0":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+var DOMIterables = __webpack_require__("fdbc");
+var ArrayIteratorMethods = __webpack_require__("e260");
+var createNonEnumerableProperty = __webpack_require__("9112");
+var wellKnownSymbol = __webpack_require__("b622");
+
+var ITERATOR = wellKnownSymbol('iterator');
+var TO_STRING_TAG = wellKnownSymbol('toStringTag');
+var ArrayValues = ArrayIteratorMethods.values;
+
+for (var COLLECTION_NAME in DOMIterables) {
+  var Collection = global[COLLECTION_NAME];
+  var CollectionPrototype = Collection && Collection.prototype;
+  if (CollectionPrototype) {
+    // some Chrome versions have non-configurable methods on DOMTokenList
+    if (CollectionPrototype[ITERATOR] !== ArrayValues) try {
+      createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);
+    } catch (error) {
+      CollectionPrototype[ITERATOR] = ArrayValues;
+    }
+    if (!CollectionPrototype[TO_STRING_TAG]) {
+      createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);
+    }
+    if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {
+      // some Chrome versions have non-configurable methods on DOMTokenList
+      if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {
+        createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);
+      } catch (error) {
+        CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];
+      }
+    }
+  }
+}
+
+
+/***/ }),
+
+/***/ "df75":
+/***/ (function(module, exports, __webpack_require__) {
+
+var internalObjectKeys = __webpack_require__("ca84");
+var enumBugKeys = __webpack_require__("7839");
+
+// `Object.keys` method
+// https://tc39.es/ecma262/#sec-object.keys
+module.exports = Object.keys || function keys(O) {
+  return internalObjectKeys(O, enumBugKeys);
+};
+
+
+/***/ }),
+
+/***/ "e01a":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+// `Symbol.prototype.description` getter
+// https://tc39.es/ecma262/#sec-symbol.prototype.description
+
+var $ = __webpack_require__("23e7");
+var DESCRIPTORS = __webpack_require__("83ab");
+var global = __webpack_require__("da84");
+var has = __webpack_require__("5135");
+var isObject = __webpack_require__("861d");
+var defineProperty = __webpack_require__("9bf2").f;
+var copyConstructorProperties = __webpack_require__("e893");
+
+var NativeSymbol = global.Symbol;
+
+if (DESCRIPTORS && typeof NativeSymbol == 'function' && (!('description' in NativeSymbol.prototype) ||
+  // Safari 12 bug
+  NativeSymbol().description !== undefined
+)) {
+  var EmptyStringDescriptionStore = {};
+  // wrap Symbol constructor for correct work with undefined description
+  var SymbolWrapper = function Symbol() {
+    var description = arguments.length < 1 || arguments[0] === undefined ? undefined : String(arguments[0]);
+    var result = this instanceof SymbolWrapper
+      ? new NativeSymbol(description)
+      // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)'
+      : description === undefined ? NativeSymbol() : NativeSymbol(description);
+    if (description === '') EmptyStringDescriptionStore[result] = true;
+    return result;
+  };
+  copyConstructorProperties(SymbolWrapper, NativeSymbol);
+  var symbolPrototype = SymbolWrapper.prototype = NativeSymbol.prototype;
+  symbolPrototype.constructor = SymbolWrapper;
+
+  var symbolToString = symbolPrototype.toString;
+  var native = String(NativeSymbol('test')) == 'Symbol(test)';
+  var regexp = /^Symbol\((.*)\)[^)]+$/;
+  defineProperty(symbolPrototype, 'description', {
+    configurable: true,
+    get: function description() {
+      var symbol = isObject(this) ? this.valueOf() : this;
+      var string = symbolToString.call(symbol);
+      if (has(EmptyStringDescriptionStore, symbol)) return '';
+      var desc = native ? string.slice(7, -1) : string.replace(regexp, '$1');
+      return desc === '' ? undefined : desc;
+    }
+  });
+
+  $({ global: true, forced: true }, {
+    Symbol: SymbolWrapper
+  });
+}
+
+
+/***/ }),
+
+/***/ "e163":
+/***/ (function(module, exports, __webpack_require__) {
+
+var has = __webpack_require__("5135");
+var toObject = __webpack_require__("7b0b");
+var sharedKey = __webpack_require__("f772");
+var CORRECT_PROTOTYPE_GETTER = __webpack_require__("e177");
+
+var IE_PROTO = sharedKey('IE_PROTO');
+var ObjectPrototype = Object.prototype;
+
+// `Object.getPrototypeOf` method
+// https://tc39.es/ecma262/#sec-object.getprototypeof
+module.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {
+  O = toObject(O);
+  if (has(O, IE_PROTO)) return O[IE_PROTO];
+  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
+    return O.constructor.prototype;
+  } return O instanceof Object ? ObjectPrototype : null;
+};
+
+
+/***/ }),
+
+/***/ "e177":
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__("d039");
+
+module.exports = !fails(function () {
+  function F() { /* empty */ }
+  F.prototype.constructor = null;
+  return Object.getPrototypeOf(new F()) !== F.prototype;
+});
+
+
+/***/ }),
+
+/***/ "e260":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var toIndexedObject = __webpack_require__("fc6a");
+var addToUnscopables = __webpack_require__("44d2");
+var Iterators = __webpack_require__("3f8c");
+var InternalStateModule = __webpack_require__("69f3");
+var defineIterator = __webpack_require__("7dd0");
+
+var ARRAY_ITERATOR = 'Array Iterator';
+var setInternalState = InternalStateModule.set;
+var getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);
+
+// `Array.prototype.entries` method
+// https://tc39.es/ecma262/#sec-array.prototype.entries
+// `Array.prototype.keys` method
+// https://tc39.es/ecma262/#sec-array.prototype.keys
+// `Array.prototype.values` method
+// https://tc39.es/ecma262/#sec-array.prototype.values
+// `Array.prototype[@@iterator]` method
+// https://tc39.es/ecma262/#sec-array.prototype-@@iterator
+// `CreateArrayIterator` internal method
+// https://tc39.es/ecma262/#sec-createarrayiterator
+module.exports = defineIterator(Array, 'Array', function (iterated, kind) {
+  setInternalState(this, {
+    type: ARRAY_ITERATOR,
+    target: toIndexedObject(iterated), // target
+    index: 0,                          // next index
+    kind: kind                         // kind
+  });
+// `%ArrayIteratorPrototype%.next` method
+// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next
+}, function () {
+  var state = getInternalState(this);
+  var target = state.target;
+  var kind = state.kind;
+  var index = state.index++;
+  if (!target || index >= target.length) {
+    state.target = undefined;
+    return { value: undefined, done: true };
+  }
+  if (kind == 'keys') return { value: index, done: false };
+  if (kind == 'values') return { value: target[index], done: false };
+  return { value: [index, target[index]], done: false };
+}, 'values');
+
+// argumentsList[@@iterator] is %ArrayProto_values%
+// https://tc39.es/ecma262/#sec-createunmappedargumentsobject
+// https://tc39.es/ecma262/#sec-createmappedargumentsobject
+Iterators.Arguments = Iterators.Array;
+
+// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
+addToUnscopables('keys');
+addToUnscopables('values');
+addToUnscopables('entries');
+
+
+/***/ }),
+
+/***/ "e538":
+/***/ (function(module, exports, __webpack_require__) {
+
+var wellKnownSymbol = __webpack_require__("b622");
+
+exports.f = wellKnownSymbol;
+
+
+/***/ }),
+
+/***/ "e893":
+/***/ (function(module, exports, __webpack_require__) {
+
+var has = __webpack_require__("5135");
+var ownKeys = __webpack_require__("56ef");
+var getOwnPropertyDescriptorModule = __webpack_require__("06cf");
+var definePropertyModule = __webpack_require__("9bf2");
+
+module.exports = function (target, source) {
+  var keys = ownKeys(source);
+  var defineProperty = definePropertyModule.f;
+  var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
+  for (var i = 0; i < keys.length; i++) {
+    var key = keys[i];
+    if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));
+  }
+};
+
+
+/***/ }),
+
+/***/ "e8b5":
+/***/ (function(module, exports, __webpack_require__) {
+
+var classof = __webpack_require__("c6b6");
+
+// `IsArray` abstract operation
+// https://tc39.es/ecma262/#sec-isarray
+module.exports = Array.isArray || function isArray(arg) {
+  return classof(arg) == 'Array';
+};
+
+
+/***/ }),
+
+/***/ "f5df":
+/***/ (function(module, exports, __webpack_require__) {
+
+var TO_STRING_TAG_SUPPORT = __webpack_require__("00ee");
+var classofRaw = __webpack_require__("c6b6");
+var wellKnownSymbol = __webpack_require__("b622");
+
+var TO_STRING_TAG = wellKnownSymbol('toStringTag');
+// ES3 wrong here
+var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';
+
+// fallback for IE11 Script Access Denied error
+var tryGet = function (it, key) {
+  try {
+    return it[key];
+  } catch (error) { /* empty */ }
+};
+
+// getting tag from ES6+ `Object.prototype.toString`
+module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
+  var O, tag, result;
+  return it === undefined ? 'Undefined' : it === null ? 'Null'
+    // @@toStringTag case
+    : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag
+    // builtinTag case
+    : CORRECT_ARGUMENTS ? classofRaw(O)
+    // ES3 arguments fallback
+    : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;
+};
+
+
+/***/ }),
+
+/***/ "f772":
+/***/ (function(module, exports, __webpack_require__) {
+
+var shared = __webpack_require__("5692");
+var uid = __webpack_require__("90e3");
+
+var keys = shared('keys');
+
+module.exports = function (key) {
+  return keys[key] || (keys[key] = uid(key));
+};
+
+
+/***/ }),
+
+/***/ "fb15":
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+// ESM COMPAT FLAG
+__webpack_require__.r(__webpack_exports__);
+
+// CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js
+// This file is imported into lib/wc client bundles.
+
+if (typeof window !== 'undefined') {
+  var currentScript = window.document.currentScript
+  if (true) {
+    var getCurrentScript = __webpack_require__("8875")
+    currentScript = getCurrentScript()
+
+    // for backward compatibility, because previously we directly included the polyfill
+    if (!('currentScript' in document)) {
+      Object.defineProperty(document, 'currentScript', { get: getCurrentScript })
+    }
+  }
+
+  var src = currentScript && currentScript.src.match(/(.+\/)[^/]+\.js(\?.*)?$/)
+  if (src) {
+    __webpack_require__.p = src[1] // eslint-disable-line
+  }
+}
+
+// Indicate to webpack that this file can be concatenated
+/* harmony default export */ var setPublicPath = (null);
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.js
+var es_symbol = __webpack_require__("a4d3");
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.description.js
+var es_symbol_description = __webpack_require__("e01a");
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.to-string.js
+var es_object_to_string = __webpack_require__("d3b7");
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.iterator.js
+var es_symbol_iterator = __webpack_require__("d28b");
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.iterator.js
+var es_string_iterator = __webpack_require__("3ca3");
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom-collections.iterator.js
+var web_dom_collections_iterator = __webpack_require__("ddb0");
+
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/typeof/_index.mjs
+
+
+
+
+
+
+function _typeof(obj) {
+  "@babel/helpers - typeof";
+
+  if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
+    _typeof = function _typeof(obj) {
+      return typeof obj;
+    };
+  } else {
+    _typeof = function _typeof(obj) {
+      return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
+    };
+  }
+
+  return _typeof(obj);
+}
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/typeof.js
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.replace.js
+var es_string_replace = __webpack_require__("5319");
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.regexp.exec.js
+var es_regexp_exec = __webpack_require__("ac1f");
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.regexp.constructor.js
+var es_regexp_constructor = __webpack_require__("4d63");
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.regexp.to-string.js
+var es_regexp_to_string = __webpack_require__("25f0");
+
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/classCallCheck/_index.mjs
+function _classCallCheck(instance, Constructor) {
+  if (!(instance instanceof Constructor)) {
+    throw new TypeError("Cannot call a class as a function");
+  }
+}
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
+
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/createClass/_index.mjs
+function _defineProperties(target, props) {
+  for (var i = 0; i < props.length; i++) {
+    var descriptor = props[i];
+    descriptor.enumerable = descriptor.enumerable || false;
+    descriptor.configurable = true;
+    if ("value" in descriptor) descriptor.writable = true;
+    Object.defineProperty(target, descriptor.key, descriptor);
+  }
+}
+
+function _createClass(Constructor, protoProps, staticProps) {
+  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
+  if (staticProps) _defineProperties(Constructor, staticProps);
+  return Constructor;
+}
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.concat.js
+var es_array_concat = __webpack_require__("99af");
+
+// CONCATENATED MODULE: ./print/packages/printarea.js
+
+
+
+
+
+
+
+
+var isIE = function isIE() {
+  if (!!window.ActiveXobject || "ActiveXObject" in window) {
+    return true;
+  } else {
+    return false;
+  }
+};
+/**
+ * 鍒ゆ柇鏄惁鏄疘E11
+ * @returns boolean
+ */
+
+
+var isIE11 = function isIE11() {
+  if (/Trident\/7\./.test(navigator.userAgent)) {
+    return true;
+  } else {
+    return false;
+  }
+};
+
+var isRemove = function isRemove(dom) {
+  if (isIE() || isIE11()) {
+    dom.removeNode(true);
+  } else {
+    dom.remove();
+  }
+
+  return dom;
+};
+
+var printarea_default = /*#__PURE__*/function () {
+  function _default(option) {
+    _classCallCheck(this, _default);
+
+    this.standards = {
+      strict: 'strict',
+      loose: 'loose',
+      html5: 'html5'
+    };
+    this.previewBody = null;
+    this.close = null;
+    this.previewBodyUtilPrintBtn = null;
+    this.selectArray = []; // 瀛樺偍select鐨�
+
+    this.counter = 0;
+    this.settings = {
+      standard: this.standards.html5
+    };
+    Object.assign(this.settings, option);
+    this.init();
+  }
+
+  _createClass(_default, [{
+    key: "init",
+    value: function init() {
+      this.counter++;
+      this.settings.id = "printArea_".concat(this.counter);
+      var url = '';
+
+      if (this.settings.url && !this.settings.asyncUrl) {
+        url = this.settings.url;
+      }
+
+      var _this = this; // 濡傛灉鏄紓姝ョ殑
+
+
+      if (this.settings.asyncUrl) {
+        _this.settings.asyncUrl(function (url) {
+          var PrintAreaWindow = _this.getPrintWindow(url); // 鍒涘缓iframe
+
+
+          if (_this.settings.preview) {
+            // 鎵撳紑棰勮寮圭獥
+            _this.previewIfrmaeLoad();
+          } else {
+            // 鐩存帴鎵撳嵃
+            _this.print(PrintAreaWindow);
+          }
+        }, _this.settings.vue);
+
+        return;
+      }
+
+      var PrintAreaWindow = this.getPrintWindow(url); // 鍒涘缓iframe
+
+      if (!this.settings.url) {
+        this.write(PrintAreaWindow.doc); // 鍐欏叆鍐呭
+      }
+
+      if (this.settings.preview) {
+        // 鎵撳紑棰勮寮圭獥
+        this.previewIfrmaeLoad();
+      } else {
+        // 鐩存帴鎵撳嵃
+        this.print(PrintAreaWindow);
+      }
+    }
+  }, {
+    key: "addEvent",
+    value: function addEvent(element, type, callback) {
+      if (element.addEventListener) {
+        element.addEventListener(type, callback, false);
+      } else if (element.attachEvent) {
+        element.attachEvent('on' + type, callback);
+      } else {
+        element['on' + type] = callback;
+      }
+    }
+  }, {
+    key: "previewIfrmaeLoad",
+    value: function previewIfrmaeLoad() {
+      var box = document.getElementById('vue-pirnt-nb-previewBox');
+
+      if (box) {
+        var _this = this;
+
+        var iframe = box.querySelector('iframe');
+        this.settings.previewBeforeOpenCallback();
+        this.addEvent(iframe, 'load', function () {
+          _this.previewBoxShow();
+
+          _this.removeCanvasImg();
+
+          _this.settings.previewOpenCallback();
+        });
+        this.addEvent(box.querySelector('.previewBodyUtilPrintBtn'), 'click', function () {
+          _this.settings.beforeOpenCallback();
+
+          _this.settings.openCallback();
+
+          iframe.contentWindow.print();
+
+          _this.settings.closeCallback();
+        });
+      }
+    } // 鍒犻櫎鎵�鏈塩anva杞崲鐨勫浘鐗�
+
+  }, {
+    key: "removeCanvasImg",
+    value: function removeCanvasImg() {
+      var _this = this;
+
+      try {
+        if (_this.elsdom) {
+          // 鍒犻櫎canva杞彉鍥剧墖鐨刣om鑺傜偣
+          var canvasList = _this.elsdom.querySelectorAll('.canvasImg');
+
+          for (var i = 0; i < canvasList.length; i++) {
+            isRemove(canvasList[i]);
+          }
+        }
+      } catch (e) {
+        console.log(e);
+      }
+    }
+  }, {
+    key: "print",
+    value: function print(ifrmae) {
+      var _this = this;
+
+      var iframe = document.getElementById(this.settings.id) || ifrmae.f;
+      var iframeWin = document.getElementById(this.settings.id).contentWindow || ifrmae.f.contentWindow;
+
+      var _loaded = function _loaded() {
+        iframeWin.focus();
+
+        _this.settings.openCallback();
+
+        iframeWin.print();
+        isRemove(iframe);
+
+        _this.settings.closeCallback();
+
+        _this.removeCanvasImg();
+      };
+
+      _this.settings.beforeOpenCallback();
+
+      _this.addEvent(iframe, 'load', function () {
+        _loaded();
+      });
+    }
+  }, {
+    key: "write",
+    value: function write(PADocument) {
+      PADocument.open();
+      PADocument.write("".concat(this.docType(), "<html>").concat(this.getHead()).concat(this.getBody(), "</html>"));
+      PADocument.close();
+    }
+  }, {
+    key: "docType",
+    value: function docType() {
+      if (this.settings.standard === this.standards.html5) {
+        return '<!DOCTYPE html>';
+      }
+
+      var transitional = this.settings.standard === this.standards.loose ? ' Transitional' : '';
+      var dtd = this.settings.standard === this.standards.loose ? 'loose' : 'strict';
+      return "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01".concat(transitional, "//EN\" \"http://www.w3.org/TR/html4/").concat(dtd, ".dtd\">");
+    }
+  }, {
+    key: "getHead",
+    value: function getHead() {
+      var extraHead = '';
+      var links = '';
+      var style = '';
+
+      if (this.settings.extraHead) {
+        this.settings.extraHead.replace(/([^,]+)/g, function (m) {
+          extraHead += m;
+        });
+      } // 澶嶅埗鎵�鏈塴ink鏍囩
+
+
+      [].forEach.call(document.querySelectorAll('link'), function (item) {
+        if (item.href.indexOf('.css') >= 0) {
+          links += "<link type=\"text/css\" rel=\"stylesheet\" href=\"".concat(item.href, "\" >");
+        }
+      }); // 寰幆鑾峰彇style鏍囩鐨勬牱寮�
+
+      var domStyle = document.styleSheets;
+
+      if (domStyle && domStyle.length > 0) {
+        for (var i = 0; i < domStyle.length; i++) {
+          try {
+            if (domStyle[i].cssRules || domStyle[i].rules) {
+              var rules = domStyle[i].cssRules || domStyle[i].rules;
+
+              for (var b = 0; b < rules.length; b++) {
+                style += rules[b].cssText;
+              }
+            }
+          } catch (e) {
+            console.log(domStyle[i].href + e);
+          }
+        }
+      }
+
+      if (this.settings.extraCss) {
+        this.settings.extraCss.replace(/([^,\s]+)/g, function (m) {
+          links += "<link type=\"text/css\" rel=\"stylesheet\" href=\"".concat(m, "\">");
+        });
+      }
+
+      return "<head><title>".concat(this.settings.popTitle, "</title>").concat(extraHead).concat(links, "<style type=\"text/css\">").concat(style, "</style></head>");
+    }
+  }, {
+    key: "getBody",
+    value: function getBody() {
+      var ids = this.settings.ids;
+      ids = ids.replace(new RegExp("#", "g"), '');
+      this.elsdom = this.beforeHanler(document.getElementById(ids));
+      var ele = this.getFormData(this.elsdom);
+      var htm = ele.outerHTML;
+      return '<body>' + htm + '</body>';
+    } // 澶勭悊canva杞垚鍥剧墖
+
+  }, {
+    key: "beforeHanler",
+    value: function beforeHanler(elsdom) {
+      var canvasList = elsdom.querySelectorAll('canvas'); // canvas杞崲png鍥剧墖
+
+      for (var i = 0; i < canvasList.length; i++) {
+        if (!canvasList[i].style.display) {
+          var _parent = canvasList[i].parentNode;
+
+          var _canvasUrl = canvasList[i].toDataURL('image/png');
+
+          var _img = new Image();
+
+          _img.className = 'canvasImg';
+          _img.style.display = 'none';
+          _img.src = _canvasUrl;
+
+          _parent.appendChild(_img);
+        }
+      }
+
+      return elsdom;
+    } // 鏍规嵁type鍘诲鐞唂orm琛ㄥ崟
+
+  }, {
+    key: "getFormData",
+    value: function getFormData(ele) {
+      var copy = ele.cloneNode(true);
+      var copiedInputs = copy.querySelectorAll('input,select,textarea');
+      var canvasImgList = copy.querySelectorAll('.canvasImg,canvas');
+      var selectCount = -1; // 澶勭悊鎵�鏈塩anvas
+
+      for (var i = 0; i < canvasImgList.length; i++) {
+        var _parent = canvasImgList[i].parentNode;
+        var item = canvasImgList[i]; // 鍒犻櫎鍏嬮殕鍚庣殑canvas鑺傜偣
+
+        if (item.tagName.toLowerCase() === 'canvas') {
+          _parent.removeChild(item);
+        } else {
+          item.style.display = 'block';
+        }
+      } // 澶勭悊鎵�鏈夎緭鍏ユ
+
+
+      for (var _i = 0; _i < copiedInputs.length; _i++) {
+        var _item = copiedInputs[_i];
+
+        var typeInput = _item.getAttribute('type');
+
+        var copiedInput = copiedInputs[_i]; // 鑾峰彇select鏍囩
+
+        if (!typeInput) {
+          typeInput = _item.tagName === 'SELECT' ? 'select' : _item.tagName === 'TEXTAREA' ? 'textarea' : '';
+        } // 澶勭悊input妗�
+
+
+        if (_item.tagName === 'INPUT') {
+          // 闄や簡鍗曢�夋 澶氶�夋姣旇緝鐗瑰埆
+          if (typeInput === 'radio' || typeInput === 'checkbox') {
+            if (_item.checked) {
+              copiedInput.setAttribute('checked', _item.checked);
+            }
+          } else {
+            copiedInput.value = _item.value;
+            copiedInput.setAttribute('value', _item.value);
+          } // 澶勭悊select
+
+        } else if (typeInput === 'select') {
+          selectCount++;
+
+          for (var b = 0; b < ele.querySelectorAll('select').length; b++) {
+            var select = ele.querySelectorAll('select')[b]; // 鑾峰彇鍘熷灞傛瘡涓�涓猻elect
+
+            !select.getAttribute('newbs') && select.setAttribute('newbs', b); // 娣诲姞鏍囪瘑
+
+            if (select.getAttribute('newbs') == selectCount) {
+              var opSelectedIndex = ele.querySelectorAll('select')[selectCount].selectedIndex;
+
+              _item.options[opSelectedIndex].setAttribute('selected', true);
+            }
+          } // 澶勭悊textarea
+
+        } else {
+          copiedInput.innerHTML = _item.value;
+          copiedInput.setAttribute('html', _item.value);
+        }
+      }
+
+      return copy;
+    }
+  }, {
+    key: "getPrintWindow",
+    value: function getPrintWindow(url) {
+      var f = this.Iframe(url);
+      return {
+        f: f,
+        win: f.contentWindow || f,
+        doc: f.doc
+      };
+    }
+  }, {
+    key: "previewBoxShow",
+    value: function previewBoxShow() {
+      var box = document.getElementById('vue-pirnt-nb-previewBox');
+
+      if (box) {
+        document.querySelector('html').setAttribute('style', 'overflow: hidden');
+        box.style.display = 'block';
+      }
+    }
+  }, {
+    key: "previewBoxHide",
+    value: function previewBoxHide() {
+      var box = document.getElementById('vue-pirnt-nb-previewBox');
+
+      if (box) {
+        document.querySelector('html').setAttribute('style', 'overflow: visible;');
+        box.querySelector('iframe') && isRemove(box.querySelector('iframe'));
+        box.style.display = 'none';
+      }
+    }
+  }, {
+    key: "previewBox",
+    value: function previewBox() {
+      var box = document.getElementById('vue-pirnt-nb-previewBox');
+      var previewBodyClass = 'previewBody';
+
+      if (box) {
+        box.querySelector('iframe') && isRemove(box.querySelector('iframe'));
+        return {
+          close: box.querySelector('.previewClose'),
+          previewBody: box.querySelector(".".concat(previewBodyClass))
+        };
+      }
+
+      var previewContent = document.createElement('div');
+      previewContent.setAttribute('id', "vue-pirnt-nb-previewBox");
+      previewContent.setAttribute('style', 'position: fixed;top: 0px;left: 0px;width: 100%;height: 100%;background: white;display:none');
+      previewContent.style.zIndex = this.settings.zIndex; // 鎵撳嵃棰勮寮圭獥鐨刪eader
+
+      var previewHeader = document.createElement('div');
+      previewHeader.setAttribute('class', "previewHeader");
+      previewHeader.setAttribute('style', "padding: 5px 20px;");
+      previewHeader.innerHTML = this.settings.previewTitle;
+      previewContent.appendChild(previewHeader); // close鍏抽棴鎸夐挳
+
+      this.close = document.createElement('div');
+      var close = this.close;
+      close.setAttribute('class', "previewClose");
+      close.setAttribute('style', "position: absolute;top: 5px;right: 20px;width: 25px;height: 20px;cursor: pointer;");
+      var closeBefore = document.createElement('div');
+      var closeAfter = document.createElement('div');
+      closeBefore.setAttribute('class', "closeBefore");
+      closeBefore.setAttribute('style', "position: absolute;width: 3px;height: 100%;background: #040404;transform: rotate(45deg); top: 0px;left: 50%;");
+      closeAfter.setAttribute('class', "closeAfter");
+      closeAfter.setAttribute('style', "position: absolute;width: 3px;height: 100%;background: #040404;transform: rotate(-45deg); top: 0px;left: 50%;");
+      close.appendChild(closeBefore);
+      close.appendChild(closeAfter);
+      previewHeader.appendChild(close); // 鎵撳嵃棰勮寮圭獥鐨刡ody
+
+      this.previewBody = document.createElement('div');
+      var previewBody = this.previewBody;
+      previewBody.setAttribute('class', previewBodyClass);
+      previewBody.setAttribute('style', "display: flex;flex-direction: column; height: 100%;");
+      previewContent.appendChild(previewBody); // 鎵撳嵃棰勮寮圭獥鐨刡ody鐨勫伐鍏锋爮
+
+      var previewBodyUtil = document.createElement('div');
+      previewBodyUtil.setAttribute('class', "previewBodyUtil");
+      previewBodyUtil.setAttribute('style', "height: 32px;background: #474747;position: relative;");
+      previewBody.appendChild(previewBodyUtil); // 鎵撳嵃鐨勬寜閽�
+
+      this.previewBodyUtilPrintBtn = document.createElement('div');
+      var previewBodyUtilPrintBtn = this.previewBodyUtilPrintBtn;
+      previewBodyUtilPrintBtn.setAttribute('class', 'previewBodyUtilPrintBtn');
+      previewBodyUtilPrintBtn.innerHTML = this.settings.previewPrintBtnLabel;
+      previewBodyUtilPrintBtn.setAttribute('style', 'position: absolute;padding: 2px 10px;margin-top: 3px;left: 24px;font-size: 14px;color: white;cursor: pointer;background-color: rgba(0,0,0,.12);background-image: linear-gradient(hsla(0,0%,100%,.05),hsla(0,0%,100%,0));background-clip: padding-box;border: 1px solid rgba(0,0,0,.35);border-color: rgba(0,0,0,.32) rgba(0,0,0,.38) rgba(0,0,0,.42);box-shadow: inset 0 1px 0 hsla(0,0%,100%,.05), inset 0 0 1px hsla(0,0%,100%,.15), 0 1px 0 hsla(0,0%,100%,.05);');
+      previewBodyUtil.appendChild(previewBodyUtilPrintBtn); // 娣诲姞鏁翠釜棰勮鍒癰ody
+
+      document.body.appendChild(previewContent);
+      return {
+        close: this.close,
+        previewBody: this.previewBody
+      };
+    }
+  }, {
+    key: "iframeBox",
+    value: function iframeBox(frameId, url) {
+      var iframe = document.createElement('iframe');
+      iframe.style.border = '0px';
+      iframe.style.position = 'absolute';
+      iframe.style.width = '0px';
+      iframe.style.height = '0px';
+      iframe.style.right = '0px';
+      iframe.style.top = '0px';
+      iframe.setAttribute('id', frameId);
+      iframe.setAttribute('src', url);
+      return iframe;
+    }
+  }, {
+    key: "Iframe",
+    value: function Iframe(url) {
+      var frameId = this.settings.id; // 灞�閮ㄦ墦鍗� 鐢ㄥ綋鍓嶇殑鏃堕棿鍋歩frmae鐨剈rl
+
+      url = !url ? new Date().getTime() : url;
+
+      var _this = this;
+
+      var iframe = this.iframeBox(frameId, url); // let that = this
+
+      try {
+        // 鐩存帴鎵撳嵃 涓嶉瑙�
+        if (!this.settings.preview) {
+          document.body.appendChild(iframe);
+        } else {
+          iframe.setAttribute('style', 'border: 0px;flex: 1;'); // 棰勮鎵撳嵃
+
+          var previewBox = this.previewBox();
+          var previewBody = previewBox.previewBody;
+          var close = previewBox.close; // 娣诲姞ifrmae鍒伴瑙堝脊绐�
+
+          previewBody.appendChild(iframe);
+          this.addEvent(close, 'click', function () {
+            _this.previewBoxHide();
+          });
+        }
+
+        iframe.doc = null;
+        iframe.doc = iframe.contentDocument ? iframe.contentDocument : iframe.contentWindow ? iframe.contentWindow.document : iframe.document;
+      } catch (e) {
+        throw new Error(e + '. iframes may not be supported in this browser.');
+      }
+
+      if (iframe.doc == null) {
+        throw new Error('Cannot find document.');
+      }
+
+      return iframe;
+    }
+  }]);
+
+  return _default;
+}();
+
+
+// CONCATENATED MODULE: ./print/packages/print.js
+
+
+
+
+
+
+/*
+ * @Author: lee
+ * @Date: 2021-05-10 11:45:50
+ * @LastEditors: lee
+ * @LastEditTime: 2021-05-20 15:39:43
+ * @Description: file content
+ */
+
+/**
+ * @file 鎵撳嵃
+ * 鎸囦护`v-print`,榛樿鎵撳嵃鏁翠釜绐楀彛
+ * 浼犲叆鍙傛暟`v-print="'#id'"` , 鍙傛暟涓洪渶瑕佹墦鍗板眬閮ㄧ殑鐩掑瓙鏍囪瘑.
+ */
+
+var addEvent = function addEvent(element, type, callback) {
+  if (element.addEventListener) {
+    element.addEventListener(type, callback, false);
+  } else if (element.attachEvent) {
+    element.attachEvent('on' + type, callback);
+  } else {
+    element['on' + type] = callback;
+  }
+};
+
+/* harmony default export */ var print = ({
+  directiveName: 'print',
+  bind: function bind(el, binding, vnode) {
+    var vue = vnode.context;
+    var id = '';
+    addEvent(el, 'click', function () {
+      vue.$nextTick(function () {
+        var _binding$value, _binding$value2;
+
+        if (binding !== null && binding !== void 0 && (_binding$value = binding.value) !== null && _binding$value !== void 0 && _binding$value.clickMounted) {
+          binding.value.clickMounted(vue);
+        }
+
+        if (typeof binding.value === 'string') {
+          // 鍏ㄥ眬鎵撳嵃
+          id = binding.value;
+          localPrint();
+        } else if (_typeof(binding.value) === 'object' && !!binding.value.id) {
+          // 灞�閮ㄦ墦鍗�
+          id = binding.value.id;
+          var ids = id.replace(new RegExp("#", "g"), '');
+          var elsdom = document.getElementById(ids);
+          if (!elsdom) console.log("id in Error"), id = '';
+          localPrint();
+        } else if (binding !== null && binding !== void 0 && (_binding$value2 = binding.value) !== null && _binding$value2 !== void 0 && _binding$value2.preview) {
+          localPrint();
+        } else {
+          window.print();
+          return;
+        }
+      });
+    });
+
+    var localPrint = function localPrint() {
+      new printarea_default({
+        ids: id,
+        // * 灞�閮ㄦ墦鍗板繀浼犲叆id
+        vue: vue,
+        url: binding.value.url,
+        // 鎵撳嵃鎸囧畾鐨勭綉鍧�锛岃繖閲屼笉鑳借窡id鍏卞瓨 濡傛灉鍏卞瓨id鐨勪紭鍏堢骇浼氭瘮杈冮珮
+        standard: '',
+        // 鏂囨。绫诲瀷锛岄粯璁ゆ槸html5锛屽彲閫� html5锛宭oose锛宻trict
+        extraHead: binding.value.extraHead,
+        // 闄勫姞鍦╤ead鏍囩涓婄殑棰濆鏍囩,浣跨敤閫楀彿鍒嗛殧
+        extraCss: binding.value.extraCss,
+        // 棰濆鐨刢ss杩炴帴锛屽涓�楀彿鍒嗗紑
+        previewTitle: binding.value.previewTitle || '鎵撳嵃棰勮',
+        // 鎵撳嵃棰勮鐨勬爣棰�
+        zIndex: binding.value.zIndex || 20002,
+        // 棰勮绐楀彛鐨剒-index
+        previewPrintBtnLabel: binding.value.previewPrintBtnLabel || '鎵撳嵃',
+        // 鎵撳嵃棰勮鐨勬爣棰�
+        popTitle: binding.value.popTitle,
+        // title鐨勬爣棰�
+        preview: binding.value.preview || false,
+        // 鏄惁鍚姩棰勮妯″紡
+        asyncUrl: binding.value.asyncUrl,
+        previewBeforeOpenCallback: function previewBeforeOpenCallback() {
+          // 棰勮绐楀彛鎵撳紑涔嬪墠鐨刢allback
+          binding.value.previewBeforeOpenCallback && binding.value.previewBeforeOpenCallback(vue);
+        },
+        previewOpenCallback: function previewOpenCallback() {
+          // 棰勮绐楀彛鎵撳紑涔嬪悗鐨刢allback
+          binding.value.previewOpenCallback && binding.value.previewOpenCallback(vue);
+        },
+        openCallback: function openCallback() {
+          // 璋冪敤鎵撳嵃涔嬪悗鐨勫洖璋冧簨浠�
+          binding.value.openCallback && binding.value.openCallback(vue);
+        },
+        closeCallback: function closeCallback() {
+          binding.value.closeCallback && binding.value.closeCallback(vue);
+        },
+        beforeOpenCallback: function beforeOpenCallback() {
+          binding.value.beforeOpenCallback && binding.value.beforeOpenCallback(vue);
+        }
+      });
+    };
+  }
+});
+// CONCATENATED MODULE: ./print/index.js
+
+
+print.install = function (Vue) {
+  Vue.directive('print', print);
+};
+
+/* harmony default export */ var print_0 = (print);
+// CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/entry-lib.js
+
+
+/* harmony default export */ var entry_lib = __webpack_exports__["default"] = (print_0);
+
+
+
+/***/ }),
+
+/***/ "fc6a":
+/***/ (function(module, exports, __webpack_require__) {
+
+// toObject with fallback for non-array-like ES3 strings
+var IndexedObject = __webpack_require__("44ad");
+var requireObjectCoercible = __webpack_require__("1d80");
+
+module.exports = function (it) {
+  return IndexedObject(requireObjectCoercible(it));
+};
+
+
+/***/ }),
+
+/***/ "fdbc":
+/***/ (function(module, exports) {
+
+// iterable DOM collections
+// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods
+module.exports = {
+  CSSRuleList: 0,
+  CSSStyleDeclaration: 0,
+  CSSValueList: 0,
+  ClientRectList: 0,
+  DOMRectList: 0,
+  DOMStringList: 0,
+  DOMTokenList: 1,
+  DataTransferItemList: 0,
+  FileList: 0,
+  HTMLAllCollection: 0,
+  HTMLCollection: 0,
+  HTMLFormElement: 0,
+  HTMLSelectElement: 0,
+  MediaList: 0,
+  MimeTypeArray: 0,
+  NamedNodeMap: 0,
+  NodeList: 1,
+  PaintRequestList: 0,
+  Plugin: 0,
+  PluginArray: 0,
+  SVGLengthList: 0,
+  SVGNumberList: 0,
+  SVGPathSegList: 0,
+  SVGPointList: 0,
+  SVGStringList: 0,
+  SVGTransformList: 0,
+  SourceBufferList: 0,
+  StyleSheetList: 0,
+  TextTrackCueList: 0,
+  TextTrackList: 0,
+  TouchList: 0
+};
+
+
+/***/ }),
+
+/***/ "fdbf":
+/***/ (function(module, exports, __webpack_require__) {
+
+var NATIVE_SYMBOL = __webpack_require__("4930");
+
+module.exports = NATIVE_SYMBOL
+  /* global Symbol -- safe */
+  && !Symbol.sham
+  && typeof Symbol.iterator == 'symbol';
+
+
+/***/ })
+
+/******/ });
+//# sourceMappingURL=print.common.js.map
\ No newline at end of file
diff --git a/src/components/Print/vue-print-nb/lib/print.umd.js b/src/components/Print/vue-print-nb/lib/print.umd.js
new file mode 100644
index 0000000..259c4eb
--- /dev/null
+++ b/src/components/Print/vue-print-nb/lib/print.umd.js
@@ -0,0 +1,4079 @@
+(function webpackUniversalModuleDefinition(root, factory) {
+	if(typeof exports === 'object' && typeof module === 'object')
+		module.exports = factory();
+	else if(typeof define === 'function' && define.amd)
+		define([], factory);
+	else if(typeof exports === 'object')
+		exports["print"] = factory();
+	else
+		root["print"] = factory();
+})((typeof self !== 'undefined' ? self : this), function() {
+return /******/ (function(modules) { // webpackBootstrap
+/******/ 	// The module cache
+/******/ 	var installedModules = {};
+/******/
+/******/ 	// The require function
+/******/ 	function __webpack_require__(moduleId) {
+/******/
+/******/ 		// Check if module is in cache
+/******/ 		if(installedModules[moduleId]) {
+/******/ 			return installedModules[moduleId].exports;
+/******/ 		}
+/******/ 		// Create a new module (and put it into the cache)
+/******/ 		var module = installedModules[moduleId] = {
+/******/ 			i: moduleId,
+/******/ 			l: false,
+/******/ 			exports: {}
+/******/ 		};
+/******/
+/******/ 		// Execute the module function
+/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
+/******/
+/******/ 		// Flag the module as loaded
+/******/ 		module.l = true;
+/******/
+/******/ 		// Return the exports of the module
+/******/ 		return module.exports;
+/******/ 	}
+/******/
+/******/
+/******/ 	// expose the modules object (__webpack_modules__)
+/******/ 	__webpack_require__.m = modules;
+/******/
+/******/ 	// expose the module cache
+/******/ 	__webpack_require__.c = installedModules;
+/******/
+/******/ 	// define getter function for harmony exports
+/******/ 	__webpack_require__.d = function(exports, name, getter) {
+/******/ 		if(!__webpack_require__.o(exports, name)) {
+/******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter });
+/******/ 		}
+/******/ 	};
+/******/
+/******/ 	// define __esModule on exports
+/******/ 	__webpack_require__.r = function(exports) {
+/******/ 		if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
+/******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
+/******/ 		}
+/******/ 		Object.defineProperty(exports, '__esModule', { value: true });
+/******/ 	};
+/******/
+/******/ 	// create a fake namespace object
+/******/ 	// mode & 1: value is a module id, require it
+/******/ 	// mode & 2: merge all properties of value into the ns
+/******/ 	// mode & 4: return value when already ns object
+/******/ 	// mode & 8|1: behave like require
+/******/ 	__webpack_require__.t = function(value, mode) {
+/******/ 		if(mode & 1) value = __webpack_require__(value);
+/******/ 		if(mode & 8) return value;
+/******/ 		if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
+/******/ 		var ns = Object.create(null);
+/******/ 		__webpack_require__.r(ns);
+/******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value });
+/******/ 		if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
+/******/ 		return ns;
+/******/ 	};
+/******/
+/******/ 	// getDefaultExport function for compatibility with non-harmony modules
+/******/ 	__webpack_require__.n = function(module) {
+/******/ 		var getter = module && module.__esModule ?
+/******/ 			function getDefault() { return module['default']; } :
+/******/ 			function getModuleExports() { return module; };
+/******/ 		__webpack_require__.d(getter, 'a', getter);
+/******/ 		return getter;
+/******/ 	};
+/******/
+/******/ 	// Object.prototype.hasOwnProperty.call
+/******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
+/******/
+/******/ 	// __webpack_public_path__
+/******/ 	__webpack_require__.p = "";
+/******/
+/******/
+/******/ 	// Load entry module and return exports
+/******/ 	return __webpack_require__(__webpack_require__.s = "fb15");
+/******/ })
+/************************************************************************/
+/******/ ({
+
+/***/ "00ee":
+/***/ (function(module, exports, __webpack_require__) {
+
+var wellKnownSymbol = __webpack_require__("b622");
+
+var TO_STRING_TAG = wellKnownSymbol('toStringTag');
+var test = {};
+
+test[TO_STRING_TAG] = 'z';
+
+module.exports = String(test) === '[object z]';
+
+
+/***/ }),
+
+/***/ "0366":
+/***/ (function(module, exports, __webpack_require__) {
+
+var aFunction = __webpack_require__("1c0b");
+
+// optional / simple context binding
+module.exports = function (fn, that, length) {
+  aFunction(fn);
+  if (that === undefined) return fn;
+  switch (length) {
+    case 0: return function () {
+      return fn.call(that);
+    };
+    case 1: return function (a) {
+      return fn.call(that, a);
+    };
+    case 2: return function (a, b) {
+      return fn.call(that, a, b);
+    };
+    case 3: return function (a, b, c) {
+      return fn.call(that, a, b, c);
+    };
+  }
+  return function (/* ...args */) {
+    return fn.apply(that, arguments);
+  };
+};
+
+
+/***/ }),
+
+/***/ "057f":
+/***/ (function(module, exports, __webpack_require__) {
+
+var toIndexedObject = __webpack_require__("fc6a");
+var nativeGetOwnPropertyNames = __webpack_require__("241c").f;
+
+var toString = {}.toString;
+
+var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
+  ? Object.getOwnPropertyNames(window) : [];
+
+var getWindowNames = function (it) {
+  try {
+    return nativeGetOwnPropertyNames(it);
+  } catch (error) {
+    return windowNames.slice();
+  }
+};
+
+// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
+module.exports.f = function getOwnPropertyNames(it) {
+  return windowNames && toString.call(it) == '[object Window]'
+    ? getWindowNames(it)
+    : nativeGetOwnPropertyNames(toIndexedObject(it));
+};
+
+
+/***/ }),
+
+/***/ "06cf":
+/***/ (function(module, exports, __webpack_require__) {
+
+var DESCRIPTORS = __webpack_require__("83ab");
+var propertyIsEnumerableModule = __webpack_require__("d1e7");
+var createPropertyDescriptor = __webpack_require__("5c6c");
+var toIndexedObject = __webpack_require__("fc6a");
+var toPrimitive = __webpack_require__("c04e");
+var has = __webpack_require__("5135");
+var IE8_DOM_DEFINE = __webpack_require__("0cfb");
+
+var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
+
+// `Object.getOwnPropertyDescriptor` method
+// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
+exports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
+  O = toIndexedObject(O);
+  P = toPrimitive(P, true);
+  if (IE8_DOM_DEFINE) try {
+    return nativeGetOwnPropertyDescriptor(O, P);
+  } catch (error) { /* empty */ }
+  if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);
+};
+
+
+/***/ }),
+
+/***/ "0cb2":
+/***/ (function(module, exports, __webpack_require__) {
+
+var toObject = __webpack_require__("7b0b");
+
+var floor = Math.floor;
+var replace = ''.replace;
+var SUBSTITUTION_SYMBOLS = /\$([$&'`]|\d\d?|<[^>]*>)/g;
+var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&'`]|\d\d?)/g;
+
+// https://tc39.es/ecma262/#sec-getsubstitution
+module.exports = function (matched, str, position, captures, namedCaptures, replacement) {
+  var tailPos = position + matched.length;
+  var m = captures.length;
+  var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
+  if (namedCaptures !== undefined) {
+    namedCaptures = toObject(namedCaptures);
+    symbols = SUBSTITUTION_SYMBOLS;
+  }
+  return replace.call(replacement, symbols, function (match, ch) {
+    var capture;
+    switch (ch.charAt(0)) {
+      case '$': return '$';
+      case '&': return matched;
+      case '`': return str.slice(0, position);
+      case "'": return str.slice(tailPos);
+      case '<':
+        capture = namedCaptures[ch.slice(1, -1)];
+        break;
+      default: // \d\d?
+        var n = +ch;
+        if (n === 0) return match;
+        if (n > m) {
+          var f = floor(n / 10);
+          if (f === 0) return match;
+          if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
+          return match;
+        }
+        capture = captures[n - 1];
+    }
+    return capture === undefined ? '' : capture;
+  });
+};
+
+
+/***/ }),
+
+/***/ "0cfb":
+/***/ (function(module, exports, __webpack_require__) {
+
+var DESCRIPTORS = __webpack_require__("83ab");
+var fails = __webpack_require__("d039");
+var createElement = __webpack_require__("cc12");
+
+// Thank's IE8 for his funny defineProperty
+module.exports = !DESCRIPTORS && !fails(function () {
+  return Object.defineProperty(createElement('div'), 'a', {
+    get: function () { return 7; }
+  }).a != 7;
+});
+
+
+/***/ }),
+
+/***/ "14c3":
+/***/ (function(module, exports, __webpack_require__) {
+
+var classof = __webpack_require__("c6b6");
+var regexpExec = __webpack_require__("9263");
+
+// `RegExpExec` abstract operation
+// https://tc39.es/ecma262/#sec-regexpexec
+module.exports = function (R, S) {
+  var exec = R.exec;
+  if (typeof exec === 'function') {
+    var result = exec.call(R, S);
+    if (typeof result !== 'object') {
+      throw TypeError('RegExp exec method returned something other than an Object or null');
+    }
+    return result;
+  }
+
+  if (classof(R) !== 'RegExp') {
+    throw TypeError('RegExp#exec called on incompatible receiver');
+  }
+
+  return regexpExec.call(R, S);
+};
+
+
+
+/***/ }),
+
+/***/ "1be4":
+/***/ (function(module, exports, __webpack_require__) {
+
+var getBuiltIn = __webpack_require__("d066");
+
+module.exports = getBuiltIn('document', 'documentElement');
+
+
+/***/ }),
+
+/***/ "1c0b":
+/***/ (function(module, exports) {
+
+module.exports = function (it) {
+  if (typeof it != 'function') {
+    throw TypeError(String(it) + ' is not a function');
+  } return it;
+};
+
+
+/***/ }),
+
+/***/ "1d80":
+/***/ (function(module, exports) {
+
+// `RequireObjectCoercible` abstract operation
+// https://tc39.es/ecma262/#sec-requireobjectcoercible
+module.exports = function (it) {
+  if (it == undefined) throw TypeError("Can't call method on " + it);
+  return it;
+};
+
+
+/***/ }),
+
+/***/ "1dde":
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__("d039");
+var wellKnownSymbol = __webpack_require__("b622");
+var V8_VERSION = __webpack_require__("2d00");
+
+var SPECIES = wellKnownSymbol('species');
+
+module.exports = function (METHOD_NAME) {
+  // We can't use this feature detection in V8 since it causes
+  // deoptimization and serious performance degradation
+  // https://github.com/zloirock/core-js/issues/677
+  return V8_VERSION >= 51 || !fails(function () {
+    var array = [];
+    var constructor = array.constructor = {};
+    constructor[SPECIES] = function () {
+      return { foo: 1 };
+    };
+    return array[METHOD_NAME](Boolean).foo !== 1;
+  });
+};
+
+
+/***/ }),
+
+/***/ "23cb":
+/***/ (function(module, exports, __webpack_require__) {
+
+var toInteger = __webpack_require__("a691");
+
+var max = Math.max;
+var min = Math.min;
+
+// Helper for a popular repeating case of the spec:
+// Let integer be ? ToInteger(index).
+// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
+module.exports = function (index, length) {
+  var integer = toInteger(index);
+  return integer < 0 ? max(integer + length, 0) : min(integer, length);
+};
+
+
+/***/ }),
+
+/***/ "23e7":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+var getOwnPropertyDescriptor = __webpack_require__("06cf").f;
+var createNonEnumerableProperty = __webpack_require__("9112");
+var redefine = __webpack_require__("6eeb");
+var setGlobal = __webpack_require__("ce4e");
+var copyConstructorProperties = __webpack_require__("e893");
+var isForced = __webpack_require__("94ca");
+
+/*
+  options.target      - name of the target object
+  options.global      - target is the global object
+  options.stat        - export as static methods of target
+  options.proto       - export as prototype methods of target
+  options.real        - real prototype method for the `pure` version
+  options.forced      - export even if the native feature is available
+  options.bind        - bind methods to the target, required for the `pure` version
+  options.wrap        - wrap constructors to preventing global pollution, required for the `pure` version
+  options.unsafe      - use the simple assignment of property instead of delete + defineProperty
+  options.sham        - add a flag to not completely full polyfills
+  options.enumerable  - export as enumerable property
+  options.noTargetGet - prevent calling a getter on target
+*/
+module.exports = function (options, source) {
+  var TARGET = options.target;
+  var GLOBAL = options.global;
+  var STATIC = options.stat;
+  var FORCED, target, key, targetProperty, sourceProperty, descriptor;
+  if (GLOBAL) {
+    target = global;
+  } else if (STATIC) {
+    target = global[TARGET] || setGlobal(TARGET, {});
+  } else {
+    target = (global[TARGET] || {}).prototype;
+  }
+  if (target) for (key in source) {
+    sourceProperty = source[key];
+    if (options.noTargetGet) {
+      descriptor = getOwnPropertyDescriptor(target, key);
+      targetProperty = descriptor && descriptor.value;
+    } else targetProperty = target[key];
+    FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
+    // contained in target
+    if (!FORCED && targetProperty !== undefined) {
+      if (typeof sourceProperty === typeof targetProperty) continue;
+      copyConstructorProperties(sourceProperty, targetProperty);
+    }
+    // add a flag to not completely full polyfills
+    if (options.sham || (targetProperty && targetProperty.sham)) {
+      createNonEnumerableProperty(sourceProperty, 'sham', true);
+    }
+    // extend global
+    redefine(target, key, sourceProperty, options);
+  }
+};
+
+
+/***/ }),
+
+/***/ "241c":
+/***/ (function(module, exports, __webpack_require__) {
+
+var internalObjectKeys = __webpack_require__("ca84");
+var enumBugKeys = __webpack_require__("7839");
+
+var hiddenKeys = enumBugKeys.concat('length', 'prototype');
+
+// `Object.getOwnPropertyNames` method
+// https://tc39.es/ecma262/#sec-object.getownpropertynames
+exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
+  return internalObjectKeys(O, hiddenKeys);
+};
+
+
+/***/ }),
+
+/***/ "25f0":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var redefine = __webpack_require__("6eeb");
+var anObject = __webpack_require__("825a");
+var fails = __webpack_require__("d039");
+var flags = __webpack_require__("ad6d");
+
+var TO_STRING = 'toString';
+var RegExpPrototype = RegExp.prototype;
+var nativeToString = RegExpPrototype[TO_STRING];
+
+var NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });
+// FF44- RegExp#toString has a wrong name
+var INCORRECT_NAME = nativeToString.name != TO_STRING;
+
+// `RegExp.prototype.toString` method
+// https://tc39.es/ecma262/#sec-regexp.prototype.tostring
+if (NOT_GENERIC || INCORRECT_NAME) {
+  redefine(RegExp.prototype, TO_STRING, function toString() {
+    var R = anObject(this);
+    var p = String(R.source);
+    var rf = R.flags;
+    var f = String(rf === undefined && R instanceof RegExp && !('flags' in RegExpPrototype) ? flags.call(R) : rf);
+    return '/' + p + '/' + f;
+  }, { unsafe: true });
+}
+
+
+/***/ }),
+
+/***/ "2626":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var getBuiltIn = __webpack_require__("d066");
+var definePropertyModule = __webpack_require__("9bf2");
+var wellKnownSymbol = __webpack_require__("b622");
+var DESCRIPTORS = __webpack_require__("83ab");
+
+var SPECIES = wellKnownSymbol('species');
+
+module.exports = function (CONSTRUCTOR_NAME) {
+  var Constructor = getBuiltIn(CONSTRUCTOR_NAME);
+  var defineProperty = definePropertyModule.f;
+
+  if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {
+    defineProperty(Constructor, SPECIES, {
+      configurable: true,
+      get: function () { return this; }
+    });
+  }
+};
+
+
+/***/ }),
+
+/***/ "2d00":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+var userAgent = __webpack_require__("342f");
+
+var process = global.process;
+var versions = process && process.versions;
+var v8 = versions && versions.v8;
+var match, version;
+
+if (v8) {
+  match = v8.split('.');
+  version = match[0] + match[1];
+} else if (userAgent) {
+  match = userAgent.match(/Edge\/(\d+)/);
+  if (!match || match[1] >= 74) {
+    match = userAgent.match(/Chrome\/(\d+)/);
+    if (match) version = match[1];
+  }
+}
+
+module.exports = version && +version;
+
+
+/***/ }),
+
+/***/ "342f":
+/***/ (function(module, exports, __webpack_require__) {
+
+var getBuiltIn = __webpack_require__("d066");
+
+module.exports = getBuiltIn('navigator', 'userAgent') || '';
+
+
+/***/ }),
+
+/***/ "37e8":
+/***/ (function(module, exports, __webpack_require__) {
+
+var DESCRIPTORS = __webpack_require__("83ab");
+var definePropertyModule = __webpack_require__("9bf2");
+var anObject = __webpack_require__("825a");
+var objectKeys = __webpack_require__("df75");
+
+// `Object.defineProperties` method
+// https://tc39.es/ecma262/#sec-object.defineproperties
+module.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {
+  anObject(O);
+  var keys = objectKeys(Properties);
+  var length = keys.length;
+  var index = 0;
+  var key;
+  while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);
+  return O;
+};
+
+
+/***/ }),
+
+/***/ "3bbe":
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__("861d");
+
+module.exports = function (it) {
+  if (!isObject(it) && it !== null) {
+    throw TypeError("Can't set " + String(it) + ' as a prototype');
+  } return it;
+};
+
+
+/***/ }),
+
+/***/ "3ca3":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var charAt = __webpack_require__("6547").charAt;
+var InternalStateModule = __webpack_require__("69f3");
+var defineIterator = __webpack_require__("7dd0");
+
+var STRING_ITERATOR = 'String Iterator';
+var setInternalState = InternalStateModule.set;
+var getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);
+
+// `String.prototype[@@iterator]` method
+// https://tc39.es/ecma262/#sec-string.prototype-@@iterator
+defineIterator(String, 'String', function (iterated) {
+  setInternalState(this, {
+    type: STRING_ITERATOR,
+    string: String(iterated),
+    index: 0
+  });
+// `%StringIteratorPrototype%.next` method
+// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next
+}, function next() {
+  var state = getInternalState(this);
+  var string = state.string;
+  var index = state.index;
+  var point;
+  if (index >= string.length) return { value: undefined, done: true };
+  point = charAt(string, index);
+  state.index += point.length;
+  return { value: point, done: false };
+});
+
+
+/***/ }),
+
+/***/ "3f8c":
+/***/ (function(module, exports) {
+
+module.exports = {};
+
+
+/***/ }),
+
+/***/ "428f":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+
+module.exports = global;
+
+
+/***/ }),
+
+/***/ "44ad":
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__("d039");
+var classof = __webpack_require__("c6b6");
+
+var split = ''.split;
+
+// fallback for non-array-like ES3 and non-enumerable old V8 strings
+module.exports = fails(function () {
+  // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
+  // eslint-disable-next-line no-prototype-builtins -- safe
+  return !Object('z').propertyIsEnumerable(0);
+}) ? function (it) {
+  return classof(it) == 'String' ? split.call(it, '') : Object(it);
+} : Object;
+
+
+/***/ }),
+
+/***/ "44d2":
+/***/ (function(module, exports, __webpack_require__) {
+
+var wellKnownSymbol = __webpack_require__("b622");
+var create = __webpack_require__("7c73");
+var definePropertyModule = __webpack_require__("9bf2");
+
+var UNSCOPABLES = wellKnownSymbol('unscopables');
+var ArrayPrototype = Array.prototype;
+
+// Array.prototype[@@unscopables]
+// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
+if (ArrayPrototype[UNSCOPABLES] == undefined) {
+  definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {
+    configurable: true,
+    value: create(null)
+  });
+}
+
+// add a key to Array.prototype[@@unscopables]
+module.exports = function (key) {
+  ArrayPrototype[UNSCOPABLES][key] = true;
+};
+
+
+/***/ }),
+
+/***/ "44e7":
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__("861d");
+var classof = __webpack_require__("c6b6");
+var wellKnownSymbol = __webpack_require__("b622");
+
+var MATCH = wellKnownSymbol('match');
+
+// `IsRegExp` abstract operation
+// https://tc39.es/ecma262/#sec-isregexp
+module.exports = function (it) {
+  var isRegExp;
+  return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');
+};
+
+
+/***/ }),
+
+/***/ "4930":
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__("d039");
+
+module.exports = !!Object.getOwnPropertySymbols && !fails(function () {
+  // Chrome 38 Symbol has incorrect toString conversion
+  /* global Symbol -- required for testing */
+  return !String(Symbol());
+});
+
+
+/***/ }),
+
+/***/ "4d63":
+/***/ (function(module, exports, __webpack_require__) {
+
+var DESCRIPTORS = __webpack_require__("83ab");
+var global = __webpack_require__("da84");
+var isForced = __webpack_require__("94ca");
+var inheritIfRequired = __webpack_require__("7156");
+var defineProperty = __webpack_require__("9bf2").f;
+var getOwnPropertyNames = __webpack_require__("241c").f;
+var isRegExp = __webpack_require__("44e7");
+var getFlags = __webpack_require__("ad6d");
+var stickyHelpers = __webpack_require__("9f7f");
+var redefine = __webpack_require__("6eeb");
+var fails = __webpack_require__("d039");
+var setInternalState = __webpack_require__("69f3").set;
+var setSpecies = __webpack_require__("2626");
+var wellKnownSymbol = __webpack_require__("b622");
+
+var MATCH = wellKnownSymbol('match');
+var NativeRegExp = global.RegExp;
+var RegExpPrototype = NativeRegExp.prototype;
+var re1 = /a/g;
+var re2 = /a/g;
+
+// "new" should create a new object, old webkit bug
+var CORRECT_NEW = new NativeRegExp(re1) !== re1;
+
+var UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;
+
+var FORCED = DESCRIPTORS && isForced('RegExp', (!CORRECT_NEW || UNSUPPORTED_Y || fails(function () {
+  re2[MATCH] = false;
+  // RegExp constructor can alter flags and IsRegExp works correct with @@match
+  return NativeRegExp(re1) != re1 || NativeRegExp(re2) == re2 || NativeRegExp(re1, 'i') != '/a/i';
+})));
+
+// `RegExp` constructor
+// https://tc39.es/ecma262/#sec-regexp-constructor
+if (FORCED) {
+  var RegExpWrapper = function RegExp(pattern, flags) {
+    var thisIsRegExp = this instanceof RegExpWrapper;
+    var patternIsRegExp = isRegExp(pattern);
+    var flagsAreUndefined = flags === undefined;
+    var sticky;
+
+    if (!thisIsRegExp && patternIsRegExp && pattern.constructor === RegExpWrapper && flagsAreUndefined) {
+      return pattern;
+    }
+
+    if (CORRECT_NEW) {
+      if (patternIsRegExp && !flagsAreUndefined) pattern = pattern.source;
+    } else if (pattern instanceof RegExpWrapper) {
+      if (flagsAreUndefined) flags = getFlags.call(pattern);
+      pattern = pattern.source;
+    }
+
+    if (UNSUPPORTED_Y) {
+      sticky = !!flags && flags.indexOf('y') > -1;
+      if (sticky) flags = flags.replace(/y/g, '');
+    }
+
+    var result = inheritIfRequired(
+      CORRECT_NEW ? new NativeRegExp(pattern, flags) : NativeRegExp(pattern, flags),
+      thisIsRegExp ? this : RegExpPrototype,
+      RegExpWrapper
+    );
+
+    if (UNSUPPORTED_Y && sticky) setInternalState(result, { sticky: sticky });
+
+    return result;
+  };
+  var proxy = function (key) {
+    key in RegExpWrapper || defineProperty(RegExpWrapper, key, {
+      configurable: true,
+      get: function () { return NativeRegExp[key]; },
+      set: function (it) { NativeRegExp[key] = it; }
+    });
+  };
+  var keys = getOwnPropertyNames(NativeRegExp);
+  var index = 0;
+  while (keys.length > index) proxy(keys[index++]);
+  RegExpPrototype.constructor = RegExpWrapper;
+  RegExpWrapper.prototype = RegExpPrototype;
+  redefine(global, 'RegExp', RegExpWrapper);
+}
+
+// https://tc39.es/ecma262/#sec-get-regexp-@@species
+setSpecies('RegExp');
+
+
+/***/ }),
+
+/***/ "4d64":
+/***/ (function(module, exports, __webpack_require__) {
+
+var toIndexedObject = __webpack_require__("fc6a");
+var toLength = __webpack_require__("50c4");
+var toAbsoluteIndex = __webpack_require__("23cb");
+
+// `Array.prototype.{ indexOf, includes }` methods implementation
+var createMethod = function (IS_INCLUDES) {
+  return function ($this, el, fromIndex) {
+    var O = toIndexedObject($this);
+    var length = toLength(O.length);
+    var index = toAbsoluteIndex(fromIndex, length);
+    var value;
+    // Array#includes uses SameValueZero equality algorithm
+    // eslint-disable-next-line no-self-compare -- NaN check
+    if (IS_INCLUDES && el != el) while (length > index) {
+      value = O[index++];
+      // eslint-disable-next-line no-self-compare -- NaN check
+      if (value != value) return true;
+    // Array#indexOf ignores holes, Array#includes - not
+    } else for (;length > index; index++) {
+      if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
+    } return !IS_INCLUDES && -1;
+  };
+};
+
+module.exports = {
+  // `Array.prototype.includes` method
+  // https://tc39.es/ecma262/#sec-array.prototype.includes
+  includes: createMethod(true),
+  // `Array.prototype.indexOf` method
+  // https://tc39.es/ecma262/#sec-array.prototype.indexof
+  indexOf: createMethod(false)
+};
+
+
+/***/ }),
+
+/***/ "50c4":
+/***/ (function(module, exports, __webpack_require__) {
+
+var toInteger = __webpack_require__("a691");
+
+var min = Math.min;
+
+// `ToLength` abstract operation
+// https://tc39.es/ecma262/#sec-tolength
+module.exports = function (argument) {
+  return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
+};
+
+
+/***/ }),
+
+/***/ "5135":
+/***/ (function(module, exports) {
+
+var hasOwnProperty = {}.hasOwnProperty;
+
+module.exports = function (it, key) {
+  return hasOwnProperty.call(it, key);
+};
+
+
+/***/ }),
+
+/***/ "5319":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var fixRegExpWellKnownSymbolLogic = __webpack_require__("d784");
+var anObject = __webpack_require__("825a");
+var toLength = __webpack_require__("50c4");
+var toInteger = __webpack_require__("a691");
+var requireObjectCoercible = __webpack_require__("1d80");
+var advanceStringIndex = __webpack_require__("8aa5");
+var getSubstitution = __webpack_require__("0cb2");
+var regExpExec = __webpack_require__("14c3");
+
+var max = Math.max;
+var min = Math.min;
+
+var maybeToString = function (it) {
+  return it === undefined ? it : String(it);
+};
+
+// @@replace logic
+fixRegExpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) {
+  var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = reason.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE;
+  var REPLACE_KEEPS_$0 = reason.REPLACE_KEEPS_$0;
+  var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';
+
+  return [
+    // `String.prototype.replace` method
+    // https://tc39.es/ecma262/#sec-string.prototype.replace
+    function replace(searchValue, replaceValue) {
+      var O = requireObjectCoercible(this);
+      var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];
+      return replacer !== undefined
+        ? replacer.call(searchValue, O, replaceValue)
+        : nativeReplace.call(String(O), searchValue, replaceValue);
+    },
+    // `RegExp.prototype[@@replace]` method
+    // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace
+    function (regexp, replaceValue) {
+      if (
+        (!REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE && REPLACE_KEEPS_$0) ||
+        (typeof replaceValue === 'string' && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1)
+      ) {
+        var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);
+        if (res.done) return res.value;
+      }
+
+      var rx = anObject(regexp);
+      var S = String(this);
+
+      var functionalReplace = typeof replaceValue === 'function';
+      if (!functionalReplace) replaceValue = String(replaceValue);
+
+      var global = rx.global;
+      if (global) {
+        var fullUnicode = rx.unicode;
+        rx.lastIndex = 0;
+      }
+      var results = [];
+      while (true) {
+        var result = regExpExec(rx, S);
+        if (result === null) break;
+
+        results.push(result);
+        if (!global) break;
+
+        var matchStr = String(result[0]);
+        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
+      }
+
+      var accumulatedResult = '';
+      var nextSourcePosition = 0;
+      for (var i = 0; i < results.length; i++) {
+        result = results[i];
+
+        var matched = String(result[0]);
+        var position = max(min(toInteger(result.index), S.length), 0);
+        var captures = [];
+        // NOTE: This is equivalent to
+        //   captures = result.slice(1).map(maybeToString)
+        // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
+        // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
+        // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
+        for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
+        var namedCaptures = result.groups;
+        if (functionalReplace) {
+          var replacerArgs = [matched].concat(captures, position, S);
+          if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
+          var replacement = String(replaceValue.apply(undefined, replacerArgs));
+        } else {
+          replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
+        }
+        if (position >= nextSourcePosition) {
+          accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
+          nextSourcePosition = position + matched.length;
+        }
+      }
+      return accumulatedResult + S.slice(nextSourcePosition);
+    }
+  ];
+});
+
+
+/***/ }),
+
+/***/ "5692":
+/***/ (function(module, exports, __webpack_require__) {
+
+var IS_PURE = __webpack_require__("c430");
+var store = __webpack_require__("c6cd");
+
+(module.exports = function (key, value) {
+  return store[key] || (store[key] = value !== undefined ? value : {});
+})('versions', []).push({
+  version: '3.9.0',
+  mode: IS_PURE ? 'pure' : 'global',
+  copyright: '漏 2021 Denis Pushkarev (zloirock.ru)'
+});
+
+
+/***/ }),
+
+/***/ "56ef":
+/***/ (function(module, exports, __webpack_require__) {
+
+var getBuiltIn = __webpack_require__("d066");
+var getOwnPropertyNamesModule = __webpack_require__("241c");
+var getOwnPropertySymbolsModule = __webpack_require__("7418");
+var anObject = __webpack_require__("825a");
+
+// all object keys, includes non-enumerable and symbols
+module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
+  var keys = getOwnPropertyNamesModule.f(anObject(it));
+  var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
+  return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;
+};
+
+
+/***/ }),
+
+/***/ "5c6c":
+/***/ (function(module, exports) {
+
+module.exports = function (bitmap, value) {
+  return {
+    enumerable: !(bitmap & 1),
+    configurable: !(bitmap & 2),
+    writable: !(bitmap & 4),
+    value: value
+  };
+};
+
+
+/***/ }),
+
+/***/ "6547":
+/***/ (function(module, exports, __webpack_require__) {
+
+var toInteger = __webpack_require__("a691");
+var requireObjectCoercible = __webpack_require__("1d80");
+
+// `String.prototype.{ codePointAt, at }` methods implementation
+var createMethod = function (CONVERT_TO_STRING) {
+  return function ($this, pos) {
+    var S = String(requireObjectCoercible($this));
+    var position = toInteger(pos);
+    var size = S.length;
+    var first, second;
+    if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;
+    first = S.charCodeAt(position);
+    return first < 0xD800 || first > 0xDBFF || position + 1 === size
+      || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF
+        ? CONVERT_TO_STRING ? S.charAt(position) : first
+        : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;
+  };
+};
+
+module.exports = {
+  // `String.prototype.codePointAt` method
+  // https://tc39.es/ecma262/#sec-string.prototype.codepointat
+  codeAt: createMethod(false),
+  // `String.prototype.at` method
+  // https://github.com/mathiasbynens/String.prototype.at
+  charAt: createMethod(true)
+};
+
+
+/***/ }),
+
+/***/ "65f0":
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__("861d");
+var isArray = __webpack_require__("e8b5");
+var wellKnownSymbol = __webpack_require__("b622");
+
+var SPECIES = wellKnownSymbol('species');
+
+// `ArraySpeciesCreate` abstract operation
+// https://tc39.es/ecma262/#sec-arrayspeciescreate
+module.exports = function (originalArray, length) {
+  var C;
+  if (isArray(originalArray)) {
+    C = originalArray.constructor;
+    // cross-realm fallback
+    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
+    else if (isObject(C)) {
+      C = C[SPECIES];
+      if (C === null) C = undefined;
+    }
+  } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);
+};
+
+
+/***/ }),
+
+/***/ "69f3":
+/***/ (function(module, exports, __webpack_require__) {
+
+var NATIVE_WEAK_MAP = __webpack_require__("7f9a");
+var global = __webpack_require__("da84");
+var isObject = __webpack_require__("861d");
+var createNonEnumerableProperty = __webpack_require__("9112");
+var objectHas = __webpack_require__("5135");
+var shared = __webpack_require__("c6cd");
+var sharedKey = __webpack_require__("f772");
+var hiddenKeys = __webpack_require__("d012");
+
+var WeakMap = global.WeakMap;
+var set, get, has;
+
+var enforce = function (it) {
+  return has(it) ? get(it) : set(it, {});
+};
+
+var getterFor = function (TYPE) {
+  return function (it) {
+    var state;
+    if (!isObject(it) || (state = get(it)).type !== TYPE) {
+      throw TypeError('Incompatible receiver, ' + TYPE + ' required');
+    } return state;
+  };
+};
+
+if (NATIVE_WEAK_MAP) {
+  var store = shared.state || (shared.state = new WeakMap());
+  var wmget = store.get;
+  var wmhas = store.has;
+  var wmset = store.set;
+  set = function (it, metadata) {
+    metadata.facade = it;
+    wmset.call(store, it, metadata);
+    return metadata;
+  };
+  get = function (it) {
+    return wmget.call(store, it) || {};
+  };
+  has = function (it) {
+    return wmhas.call(store, it);
+  };
+} else {
+  var STATE = sharedKey('state');
+  hiddenKeys[STATE] = true;
+  set = function (it, metadata) {
+    metadata.facade = it;
+    createNonEnumerableProperty(it, STATE, metadata);
+    return metadata;
+  };
+  get = function (it) {
+    return objectHas(it, STATE) ? it[STATE] : {};
+  };
+  has = function (it) {
+    return objectHas(it, STATE);
+  };
+}
+
+module.exports = {
+  set: set,
+  get: get,
+  has: has,
+  enforce: enforce,
+  getterFor: getterFor
+};
+
+
+/***/ }),
+
+/***/ "6eeb":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+var createNonEnumerableProperty = __webpack_require__("9112");
+var has = __webpack_require__("5135");
+var setGlobal = __webpack_require__("ce4e");
+var inspectSource = __webpack_require__("8925");
+var InternalStateModule = __webpack_require__("69f3");
+
+var getInternalState = InternalStateModule.get;
+var enforceInternalState = InternalStateModule.enforce;
+var TEMPLATE = String(String).split('String');
+
+(module.exports = function (O, key, value, options) {
+  var unsafe = options ? !!options.unsafe : false;
+  var simple = options ? !!options.enumerable : false;
+  var noTargetGet = options ? !!options.noTargetGet : false;
+  var state;
+  if (typeof value == 'function') {
+    if (typeof key == 'string' && !has(value, 'name')) {
+      createNonEnumerableProperty(value, 'name', key);
+    }
+    state = enforceInternalState(value);
+    if (!state.source) {
+      state.source = TEMPLATE.join(typeof key == 'string' ? key : '');
+    }
+  }
+  if (O === global) {
+    if (simple) O[key] = value;
+    else setGlobal(key, value);
+    return;
+  } else if (!unsafe) {
+    delete O[key];
+  } else if (!noTargetGet && O[key]) {
+    simple = true;
+  }
+  if (simple) O[key] = value;
+  else createNonEnumerableProperty(O, key, value);
+// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
+})(Function.prototype, 'toString', function toString() {
+  return typeof this == 'function' && getInternalState(this).source || inspectSource(this);
+});
+
+
+/***/ }),
+
+/***/ "7156":
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__("861d");
+var setPrototypeOf = __webpack_require__("d2bb");
+
+// makes subclassing work correct for wrapped built-ins
+module.exports = function ($this, dummy, Wrapper) {
+  var NewTarget, NewTargetPrototype;
+  if (
+    // it can work only with native `setPrototypeOf`
+    setPrototypeOf &&
+    // we haven't completely correct pre-ES6 way for getting `new.target`, so use this
+    typeof (NewTarget = dummy.constructor) == 'function' &&
+    NewTarget !== Wrapper &&
+    isObject(NewTargetPrototype = NewTarget.prototype) &&
+    NewTargetPrototype !== Wrapper.prototype
+  ) setPrototypeOf($this, NewTargetPrototype);
+  return $this;
+};
+
+
+/***/ }),
+
+/***/ "7418":
+/***/ (function(module, exports) {
+
+exports.f = Object.getOwnPropertySymbols;
+
+
+/***/ }),
+
+/***/ "746f":
+/***/ (function(module, exports, __webpack_require__) {
+
+var path = __webpack_require__("428f");
+var has = __webpack_require__("5135");
+var wrappedWellKnownSymbolModule = __webpack_require__("e538");
+var defineProperty = __webpack_require__("9bf2").f;
+
+module.exports = function (NAME) {
+  var Symbol = path.Symbol || (path.Symbol = {});
+  if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, {
+    value: wrappedWellKnownSymbolModule.f(NAME)
+  });
+};
+
+
+/***/ }),
+
+/***/ "7839":
+/***/ (function(module, exports) {
+
+// IE8- don't enum bug keys
+module.exports = [
+  'constructor',
+  'hasOwnProperty',
+  'isPrototypeOf',
+  'propertyIsEnumerable',
+  'toLocaleString',
+  'toString',
+  'valueOf'
+];
+
+
+/***/ }),
+
+/***/ "7b0b":
+/***/ (function(module, exports, __webpack_require__) {
+
+var requireObjectCoercible = __webpack_require__("1d80");
+
+// `ToObject` abstract operation
+// https://tc39.es/ecma262/#sec-toobject
+module.exports = function (argument) {
+  return Object(requireObjectCoercible(argument));
+};
+
+
+/***/ }),
+
+/***/ "7c73":
+/***/ (function(module, exports, __webpack_require__) {
+
+var anObject = __webpack_require__("825a");
+var defineProperties = __webpack_require__("37e8");
+var enumBugKeys = __webpack_require__("7839");
+var hiddenKeys = __webpack_require__("d012");
+var html = __webpack_require__("1be4");
+var documentCreateElement = __webpack_require__("cc12");
+var sharedKey = __webpack_require__("f772");
+
+var GT = '>';
+var LT = '<';
+var PROTOTYPE = 'prototype';
+var SCRIPT = 'script';
+var IE_PROTO = sharedKey('IE_PROTO');
+
+var EmptyConstructor = function () { /* empty */ };
+
+var scriptTag = function (content) {
+  return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;
+};
+
+// Create object with fake `null` prototype: use ActiveX Object with cleared prototype
+var NullProtoObjectViaActiveX = function (activeXDocument) {
+  activeXDocument.write(scriptTag(''));
+  activeXDocument.close();
+  var temp = activeXDocument.parentWindow.Object;
+  activeXDocument = null; // avoid memory leak
+  return temp;
+};
+
+// Create object with fake `null` prototype: use iframe Object with cleared prototype
+var NullProtoObjectViaIFrame = function () {
+  // Thrash, waste and sodomy: IE GC bug
+  var iframe = documentCreateElement('iframe');
+  var JS = 'java' + SCRIPT + ':';
+  var iframeDocument;
+  iframe.style.display = 'none';
+  html.appendChild(iframe);
+  // https://github.com/zloirock/core-js/issues/475
+  iframe.src = String(JS);
+  iframeDocument = iframe.contentWindow.document;
+  iframeDocument.open();
+  iframeDocument.write(scriptTag('document.F=Object'));
+  iframeDocument.close();
+  return iframeDocument.F;
+};
+
+// Check for document.domain and active x support
+// No need to use active x approach when document.domain is not set
+// see https://github.com/es-shims/es5-shim/issues/150
+// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346
+// avoid IE GC bug
+var activeXDocument;
+var NullProtoObject = function () {
+  try {
+    /* global ActiveXObject -- old IE */
+    activeXDocument = document.domain && new ActiveXObject('htmlfile');
+  } catch (error) { /* ignore */ }
+  NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();
+  var length = enumBugKeys.length;
+  while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
+  return NullProtoObject();
+};
+
+hiddenKeys[IE_PROTO] = true;
+
+// `Object.create` method
+// https://tc39.es/ecma262/#sec-object.create
+module.exports = Object.create || function create(O, Properties) {
+  var result;
+  if (O !== null) {
+    EmptyConstructor[PROTOTYPE] = anObject(O);
+    result = new EmptyConstructor();
+    EmptyConstructor[PROTOTYPE] = null;
+    // add "__proto__" for Object.getPrototypeOf polyfill
+    result[IE_PROTO] = O;
+  } else result = NullProtoObject();
+  return Properties === undefined ? result : defineProperties(result, Properties);
+};
+
+
+/***/ }),
+
+/***/ "7dd0":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__("23e7");
+var createIteratorConstructor = __webpack_require__("9ed3");
+var getPrototypeOf = __webpack_require__("e163");
+var setPrototypeOf = __webpack_require__("d2bb");
+var setToStringTag = __webpack_require__("d44e");
+var createNonEnumerableProperty = __webpack_require__("9112");
+var redefine = __webpack_require__("6eeb");
+var wellKnownSymbol = __webpack_require__("b622");
+var IS_PURE = __webpack_require__("c430");
+var Iterators = __webpack_require__("3f8c");
+var IteratorsCore = __webpack_require__("ae93");
+
+var IteratorPrototype = IteratorsCore.IteratorPrototype;
+var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;
+var ITERATOR = wellKnownSymbol('iterator');
+var KEYS = 'keys';
+var VALUES = 'values';
+var ENTRIES = 'entries';
+
+var returnThis = function () { return this; };
+
+module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {
+  createIteratorConstructor(IteratorConstructor, NAME, next);
+
+  var getIterationMethod = function (KIND) {
+    if (KIND === DEFAULT && defaultIterator) return defaultIterator;
+    if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];
+    switch (KIND) {
+      case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };
+      case VALUES: return function values() { return new IteratorConstructor(this, KIND); };
+      case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };
+    } return function () { return new IteratorConstructor(this); };
+  };
+
+  var TO_STRING_TAG = NAME + ' Iterator';
+  var INCORRECT_VALUES_NAME = false;
+  var IterablePrototype = Iterable.prototype;
+  var nativeIterator = IterablePrototype[ITERATOR]
+    || IterablePrototype['@@iterator']
+    || DEFAULT && IterablePrototype[DEFAULT];
+  var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);
+  var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;
+  var CurrentIteratorPrototype, methods, KEY;
+
+  // fix native
+  if (anyNativeIterator) {
+    CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));
+    if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {
+      if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {
+        if (setPrototypeOf) {
+          setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);
+        } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {
+          createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis);
+        }
+      }
+      // Set @@toStringTag to native iterators
+      setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);
+      if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;
+    }
+  }
+
+  // fix Array#{values, @@iterator}.name in V8 / FF
+  if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {
+    INCORRECT_VALUES_NAME = true;
+    defaultIterator = function values() { return nativeIterator.call(this); };
+  }
+
+  // define iterator
+  if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {
+    createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator);
+  }
+  Iterators[NAME] = defaultIterator;
+
+  // export additional methods
+  if (DEFAULT) {
+    methods = {
+      values: getIterationMethod(VALUES),
+      keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),
+      entries: getIterationMethod(ENTRIES)
+    };
+    if (FORCED) for (KEY in methods) {
+      if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {
+        redefine(IterablePrototype, KEY, methods[KEY]);
+      }
+    } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);
+  }
+
+  return methods;
+};
+
+
+/***/ }),
+
+/***/ "7f9a":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+var inspectSource = __webpack_require__("8925");
+
+var WeakMap = global.WeakMap;
+
+module.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));
+
+
+/***/ }),
+
+/***/ "825a":
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__("861d");
+
+module.exports = function (it) {
+  if (!isObject(it)) {
+    throw TypeError(String(it) + ' is not an object');
+  } return it;
+};
+
+
+/***/ }),
+
+/***/ "83ab":
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__("d039");
+
+// Detect IE8's incomplete defineProperty implementation
+module.exports = !fails(function () {
+  return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
+});
+
+
+/***/ }),
+
+/***/ "8418":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var toPrimitive = __webpack_require__("c04e");
+var definePropertyModule = __webpack_require__("9bf2");
+var createPropertyDescriptor = __webpack_require__("5c6c");
+
+module.exports = function (object, key, value) {
+  var propertyKey = toPrimitive(key);
+  if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));
+  else object[propertyKey] = value;
+};
+
+
+/***/ }),
+
+/***/ "861d":
+/***/ (function(module, exports) {
+
+module.exports = function (it) {
+  return typeof it === 'object' ? it !== null : typeof it === 'function';
+};
+
+
+/***/ }),
+
+/***/ "8875":
+/***/ (function(module, exports, __webpack_require__) {
+
+var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;// addapted from the document.currentScript polyfill by Adam Miller
+// MIT license
+// source: https://github.com/amiller-gh/currentScript-polyfill
+
+// added support for Firefox https://bugzilla.mozilla.org/show_bug.cgi?id=1620505
+
+(function (root, factory) {
+  if (true) {
+    !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
+				__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
+				(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),
+				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
+  } else {}
+}(typeof self !== 'undefined' ? self : this, function () {
+  function getCurrentScript () {
+    var descriptor = Object.getOwnPropertyDescriptor(document, 'currentScript')
+    // for chrome
+    if (!descriptor && 'currentScript' in document && document.currentScript) {
+      return document.currentScript
+    }
+
+    // for other browsers with native support for currentScript
+    if (descriptor && descriptor.get !== getCurrentScript && document.currentScript) {
+      return document.currentScript
+    }
+  
+    // IE 8-10 support script readyState
+    // IE 11+ & Firefox support stack trace
+    try {
+      throw new Error();
+    }
+    catch (err) {
+      // Find the second match for the "at" string to get file src url from stack.
+      var ieStackRegExp = /.*at [^(]*\((.*):(.+):(.+)\)$/ig,
+        ffStackRegExp = /@([^@]*):(\d+):(\d+)\s*$/ig,
+        stackDetails = ieStackRegExp.exec(err.stack) || ffStackRegExp.exec(err.stack),
+        scriptLocation = (stackDetails && stackDetails[1]) || false,
+        line = (stackDetails && stackDetails[2]) || false,
+        currentLocation = document.location.href.replace(document.location.hash, ''),
+        pageSource,
+        inlineScriptSourceRegExp,
+        inlineScriptSource,
+        scripts = document.getElementsByTagName('script'); // Live NodeList collection
+  
+      if (scriptLocation === currentLocation) {
+        pageSource = document.documentElement.outerHTML;
+        inlineScriptSourceRegExp = new RegExp('(?:[^\\n]+?\\n){0,' + (line - 2) + '}[^<]*<script>([\\d\\D]*?)<\\/script>[\\d\\D]*', 'i');
+        inlineScriptSource = pageSource.replace(inlineScriptSourceRegExp, '$1').trim();
+      }
+  
+      for (var i = 0; i < scripts.length; i++) {
+        // If ready state is interactive, return the script tag
+        if (scripts[i].readyState === 'interactive') {
+          return scripts[i];
+        }
+  
+        // If src matches, return the script tag
+        if (scripts[i].src === scriptLocation) {
+          return scripts[i];
+        }
+  
+        // If inline source matches, return the script tag
+        if (
+          scriptLocation === currentLocation &&
+          scripts[i].innerHTML &&
+          scripts[i].innerHTML.trim() === inlineScriptSource
+        ) {
+          return scripts[i];
+        }
+      }
+  
+      // If no match, return null
+      return null;
+    }
+  };
+
+  return getCurrentScript
+}));
+
+
+/***/ }),
+
+/***/ "8925":
+/***/ (function(module, exports, __webpack_require__) {
+
+var store = __webpack_require__("c6cd");
+
+var functionToString = Function.toString;
+
+// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper
+if (typeof store.inspectSource != 'function') {
+  store.inspectSource = function (it) {
+    return functionToString.call(it);
+  };
+}
+
+module.exports = store.inspectSource;
+
+
+/***/ }),
+
+/***/ "8aa5":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var charAt = __webpack_require__("6547").charAt;
+
+// `AdvanceStringIndex` abstract operation
+// https://tc39.es/ecma262/#sec-advancestringindex
+module.exports = function (S, index, unicode) {
+  return index + (unicode ? charAt(S, index).length : 1);
+};
+
+
+/***/ }),
+
+/***/ "90e3":
+/***/ (function(module, exports) {
+
+var id = 0;
+var postfix = Math.random();
+
+module.exports = function (key) {
+  return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);
+};
+
+
+/***/ }),
+
+/***/ "9112":
+/***/ (function(module, exports, __webpack_require__) {
+
+var DESCRIPTORS = __webpack_require__("83ab");
+var definePropertyModule = __webpack_require__("9bf2");
+var createPropertyDescriptor = __webpack_require__("5c6c");
+
+module.exports = DESCRIPTORS ? function (object, key, value) {
+  return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));
+} : function (object, key, value) {
+  object[key] = value;
+  return object;
+};
+
+
+/***/ }),
+
+/***/ "9263":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var regexpFlags = __webpack_require__("ad6d");
+var stickyHelpers = __webpack_require__("9f7f");
+
+var nativeExec = RegExp.prototype.exec;
+// This always refers to the native implementation, because the
+// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
+// which loads this file before patching the method.
+var nativeReplace = String.prototype.replace;
+
+var patchedExec = nativeExec;
+
+var UPDATES_LAST_INDEX_WRONG = (function () {
+  var re1 = /a/;
+  var re2 = /b*/g;
+  nativeExec.call(re1, 'a');
+  nativeExec.call(re2, 'a');
+  return re1.lastIndex !== 0 || re2.lastIndex !== 0;
+})();
+
+var UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y || stickyHelpers.BROKEN_CARET;
+
+// nonparticipating capturing group, copied from es5-shim's String#split patch.
+// eslint-disable-next-line regexp/no-assertion-capturing-group, regexp/no-empty-group -- required for testing
+var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;
+
+var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y;
+
+if (PATCH) {
+  patchedExec = function exec(str) {
+    var re = this;
+    var lastIndex, reCopy, match, i;
+    var sticky = UNSUPPORTED_Y && re.sticky;
+    var flags = regexpFlags.call(re);
+    var source = re.source;
+    var charsAdded = 0;
+    var strCopy = str;
+
+    if (sticky) {
+      flags = flags.replace('y', '');
+      if (flags.indexOf('g') === -1) {
+        flags += 'g';
+      }
+
+      strCopy = String(str).slice(re.lastIndex);
+      // Support anchored sticky behavior.
+      if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\n')) {
+        source = '(?: ' + source + ')';
+        strCopy = ' ' + strCopy;
+        charsAdded++;
+      }
+      // ^(? + rx + ) is needed, in combination with some str slicing, to
+      // simulate the 'y' flag.
+      reCopy = new RegExp('^(?:' + source + ')', flags);
+    }
+
+    if (NPCG_INCLUDED) {
+      reCopy = new RegExp('^' + source + '$(?!\\s)', flags);
+    }
+    if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;
+
+    match = nativeExec.call(sticky ? reCopy : re, strCopy);
+
+    if (sticky) {
+      if (match) {
+        match.input = match.input.slice(charsAdded);
+        match[0] = match[0].slice(charsAdded);
+        match.index = re.lastIndex;
+        re.lastIndex += match[0].length;
+      } else re.lastIndex = 0;
+    } else if (UPDATES_LAST_INDEX_WRONG && match) {
+      re.lastIndex = re.global ? match.index + match[0].length : lastIndex;
+    }
+    if (NPCG_INCLUDED && match && match.length > 1) {
+      // Fix browsers whose `exec` methods don't consistently return `undefined`
+      // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
+      nativeReplace.call(match[0], reCopy, function () {
+        for (i = 1; i < arguments.length - 2; i++) {
+          if (arguments[i] === undefined) match[i] = undefined;
+        }
+      });
+    }
+
+    return match;
+  };
+}
+
+module.exports = patchedExec;
+
+
+/***/ }),
+
+/***/ "94ca":
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__("d039");
+
+var replacement = /#|\.prototype\./;
+
+var isForced = function (feature, detection) {
+  var value = data[normalize(feature)];
+  return value == POLYFILL ? true
+    : value == NATIVE ? false
+    : typeof detection == 'function' ? fails(detection)
+    : !!detection;
+};
+
+var normalize = isForced.normalize = function (string) {
+  return String(string).replace(replacement, '.').toLowerCase();
+};
+
+var data = isForced.data = {};
+var NATIVE = isForced.NATIVE = 'N';
+var POLYFILL = isForced.POLYFILL = 'P';
+
+module.exports = isForced;
+
+
+/***/ }),
+
+/***/ "99af":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__("23e7");
+var fails = __webpack_require__("d039");
+var isArray = __webpack_require__("e8b5");
+var isObject = __webpack_require__("861d");
+var toObject = __webpack_require__("7b0b");
+var toLength = __webpack_require__("50c4");
+var createProperty = __webpack_require__("8418");
+var arraySpeciesCreate = __webpack_require__("65f0");
+var arrayMethodHasSpeciesSupport = __webpack_require__("1dde");
+var wellKnownSymbol = __webpack_require__("b622");
+var V8_VERSION = __webpack_require__("2d00");
+
+var IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');
+var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;
+var MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';
+
+// We can't use this feature detection in V8 since it causes
+// deoptimization and serious performance degradation
+// https://github.com/zloirock/core-js/issues/679
+var IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {
+  var array = [];
+  array[IS_CONCAT_SPREADABLE] = false;
+  return array.concat()[0] !== array;
+});
+
+var SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');
+
+var isConcatSpreadable = function (O) {
+  if (!isObject(O)) return false;
+  var spreadable = O[IS_CONCAT_SPREADABLE];
+  return spreadable !== undefined ? !!spreadable : isArray(O);
+};
+
+var FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;
+
+// `Array.prototype.concat` method
+// https://tc39.es/ecma262/#sec-array.prototype.concat
+// with adding support of @@isConcatSpreadable and @@species
+$({ target: 'Array', proto: true, forced: FORCED }, {
+  // eslint-disable-next-line no-unused-vars -- required for `.length`
+  concat: function concat(arg) {
+    var O = toObject(this);
+    var A = arraySpeciesCreate(O, 0);
+    var n = 0;
+    var i, k, length, len, E;
+    for (i = -1, length = arguments.length; i < length; i++) {
+      E = i === -1 ? O : arguments[i];
+      if (isConcatSpreadable(E)) {
+        len = toLength(E.length);
+        if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
+        for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);
+      } else {
+        if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
+        createProperty(A, n++, E);
+      }
+    }
+    A.length = n;
+    return A;
+  }
+});
+
+
+/***/ }),
+
+/***/ "9bf2":
+/***/ (function(module, exports, __webpack_require__) {
+
+var DESCRIPTORS = __webpack_require__("83ab");
+var IE8_DOM_DEFINE = __webpack_require__("0cfb");
+var anObject = __webpack_require__("825a");
+var toPrimitive = __webpack_require__("c04e");
+
+var nativeDefineProperty = Object.defineProperty;
+
+// `Object.defineProperty` method
+// https://tc39.es/ecma262/#sec-object.defineproperty
+exports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {
+  anObject(O);
+  P = toPrimitive(P, true);
+  anObject(Attributes);
+  if (IE8_DOM_DEFINE) try {
+    return nativeDefineProperty(O, P, Attributes);
+  } catch (error) { /* empty */ }
+  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');
+  if ('value' in Attributes) O[P] = Attributes.value;
+  return O;
+};
+
+
+/***/ }),
+
+/***/ "9ed3":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var IteratorPrototype = __webpack_require__("ae93").IteratorPrototype;
+var create = __webpack_require__("7c73");
+var createPropertyDescriptor = __webpack_require__("5c6c");
+var setToStringTag = __webpack_require__("d44e");
+var Iterators = __webpack_require__("3f8c");
+
+var returnThis = function () { return this; };
+
+module.exports = function (IteratorConstructor, NAME, next) {
+  var TO_STRING_TAG = NAME + ' Iterator';
+  IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });
+  setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);
+  Iterators[TO_STRING_TAG] = returnThis;
+  return IteratorConstructor;
+};
+
+
+/***/ }),
+
+/***/ "9f7f":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var fails = __webpack_require__("d039");
+
+// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,
+// so we use an intermediate function.
+function RE(s, f) {
+  return RegExp(s, f);
+}
+
+exports.UNSUPPORTED_Y = fails(function () {
+  // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError
+  var re = RE('a', 'y');
+  re.lastIndex = 2;
+  return re.exec('abcd') != null;
+});
+
+exports.BROKEN_CARET = fails(function () {
+  // https://bugzilla.mozilla.org/show_bug.cgi?id=773687
+  var re = RE('^r', 'gy');
+  re.lastIndex = 2;
+  return re.exec('str') != null;
+});
+
+
+/***/ }),
+
+/***/ "a4d3":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__("23e7");
+var global = __webpack_require__("da84");
+var getBuiltIn = __webpack_require__("d066");
+var IS_PURE = __webpack_require__("c430");
+var DESCRIPTORS = __webpack_require__("83ab");
+var NATIVE_SYMBOL = __webpack_require__("4930");
+var USE_SYMBOL_AS_UID = __webpack_require__("fdbf");
+var fails = __webpack_require__("d039");
+var has = __webpack_require__("5135");
+var isArray = __webpack_require__("e8b5");
+var isObject = __webpack_require__("861d");
+var anObject = __webpack_require__("825a");
+var toObject = __webpack_require__("7b0b");
+var toIndexedObject = __webpack_require__("fc6a");
+var toPrimitive = __webpack_require__("c04e");
+var createPropertyDescriptor = __webpack_require__("5c6c");
+var nativeObjectCreate = __webpack_require__("7c73");
+var objectKeys = __webpack_require__("df75");
+var getOwnPropertyNamesModule = __webpack_require__("241c");
+var getOwnPropertyNamesExternal = __webpack_require__("057f");
+var getOwnPropertySymbolsModule = __webpack_require__("7418");
+var getOwnPropertyDescriptorModule = __webpack_require__("06cf");
+var definePropertyModule = __webpack_require__("9bf2");
+var propertyIsEnumerableModule = __webpack_require__("d1e7");
+var createNonEnumerableProperty = __webpack_require__("9112");
+var redefine = __webpack_require__("6eeb");
+var shared = __webpack_require__("5692");
+var sharedKey = __webpack_require__("f772");
+var hiddenKeys = __webpack_require__("d012");
+var uid = __webpack_require__("90e3");
+var wellKnownSymbol = __webpack_require__("b622");
+var wrappedWellKnownSymbolModule = __webpack_require__("e538");
+var defineWellKnownSymbol = __webpack_require__("746f");
+var setToStringTag = __webpack_require__("d44e");
+var InternalStateModule = __webpack_require__("69f3");
+var $forEach = __webpack_require__("b727").forEach;
+
+var HIDDEN = sharedKey('hidden');
+var SYMBOL = 'Symbol';
+var PROTOTYPE = 'prototype';
+var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');
+var setInternalState = InternalStateModule.set;
+var getInternalState = InternalStateModule.getterFor(SYMBOL);
+var ObjectPrototype = Object[PROTOTYPE];
+var $Symbol = global.Symbol;
+var $stringify = getBuiltIn('JSON', 'stringify');
+var nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
+var nativeDefineProperty = definePropertyModule.f;
+var nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;
+var nativePropertyIsEnumerable = propertyIsEnumerableModule.f;
+var AllSymbols = shared('symbols');
+var ObjectPrototypeSymbols = shared('op-symbols');
+var StringToSymbolRegistry = shared('string-to-symbol-registry');
+var SymbolToStringRegistry = shared('symbol-to-string-registry');
+var WellKnownSymbolsStore = shared('wks');
+var QObject = global.QObject;
+// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
+var USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;
+
+// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
+var setSymbolDescriptor = DESCRIPTORS && fails(function () {
+  return nativeObjectCreate(nativeDefineProperty({}, 'a', {
+    get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }
+  })).a != 7;
+}) ? function (O, P, Attributes) {
+  var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);
+  if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];
+  nativeDefineProperty(O, P, Attributes);
+  if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {
+    nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);
+  }
+} : nativeDefineProperty;
+
+var wrap = function (tag, description) {
+  var symbol = AllSymbols[tag] = nativeObjectCreate($Symbol[PROTOTYPE]);
+  setInternalState(symbol, {
+    type: SYMBOL,
+    tag: tag,
+    description: description
+  });
+  if (!DESCRIPTORS) symbol.description = description;
+  return symbol;
+};
+
+var isSymbol = USE_SYMBOL_AS_UID ? function (it) {
+  return typeof it == 'symbol';
+} : function (it) {
+  return Object(it) instanceof $Symbol;
+};
+
+var $defineProperty = function defineProperty(O, P, Attributes) {
+  if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);
+  anObject(O);
+  var key = toPrimitive(P, true);
+  anObject(Attributes);
+  if (has(AllSymbols, key)) {
+    if (!Attributes.enumerable) {
+      if (!has(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));
+      O[HIDDEN][key] = true;
+    } else {
+      if (has(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;
+      Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });
+    } return setSymbolDescriptor(O, key, Attributes);
+  } return nativeDefineProperty(O, key, Attributes);
+};
+
+var $defineProperties = function defineProperties(O, Properties) {
+  anObject(O);
+  var properties = toIndexedObject(Properties);
+  var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));
+  $forEach(keys, function (key) {
+    if (!DESCRIPTORS || $propertyIsEnumerable.call(properties, key)) $defineProperty(O, key, properties[key]);
+  });
+  return O;
+};
+
+var $create = function create(O, Properties) {
+  return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);
+};
+
+var $propertyIsEnumerable = function propertyIsEnumerable(V) {
+  var P = toPrimitive(V, true);
+  var enumerable = nativePropertyIsEnumerable.call(this, P);
+  if (this === ObjectPrototype && has(AllSymbols, P) && !has(ObjectPrototypeSymbols, P)) return false;
+  return enumerable || !has(this, P) || !has(AllSymbols, P) || has(this, HIDDEN) && this[HIDDEN][P] ? enumerable : true;
+};
+
+var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {
+  var it = toIndexedObject(O);
+  var key = toPrimitive(P, true);
+  if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return;
+  var descriptor = nativeGetOwnPropertyDescriptor(it, key);
+  if (descriptor && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) {
+    descriptor.enumerable = true;
+  }
+  return descriptor;
+};
+
+var $getOwnPropertyNames = function getOwnPropertyNames(O) {
+  var names = nativeGetOwnPropertyNames(toIndexedObject(O));
+  var result = [];
+  $forEach(names, function (key) {
+    if (!has(AllSymbols, key) && !has(hiddenKeys, key)) result.push(key);
+  });
+  return result;
+};
+
+var $getOwnPropertySymbols = function getOwnPropertySymbols(O) {
+  var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;
+  var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));
+  var result = [];
+  $forEach(names, function (key) {
+    if (has(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || has(ObjectPrototype, key))) {
+      result.push(AllSymbols[key]);
+    }
+  });
+  return result;
+};
+
+// `Symbol` constructor
+// https://tc39.es/ecma262/#sec-symbol-constructor
+if (!NATIVE_SYMBOL) {
+  $Symbol = function Symbol() {
+    if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor');
+    var description = !arguments.length || arguments[0] === undefined ? undefined : String(arguments[0]);
+    var tag = uid(description);
+    var setter = function (value) {
+      if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value);
+      if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
+      setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));
+    };
+    if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });
+    return wrap(tag, description);
+  };
+
+  redefine($Symbol[PROTOTYPE], 'toString', function toString() {
+    return getInternalState(this).tag;
+  });
+
+  redefine($Symbol, 'withoutSetter', function (description) {
+    return wrap(uid(description), description);
+  });
+
+  propertyIsEnumerableModule.f = $propertyIsEnumerable;
+  definePropertyModule.f = $defineProperty;
+  getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;
+  getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;
+  getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;
+
+  wrappedWellKnownSymbolModule.f = function (name) {
+    return wrap(wellKnownSymbol(name), name);
+  };
+
+  if (DESCRIPTORS) {
+    // https://github.com/tc39/proposal-Symbol-description
+    nativeDefineProperty($Symbol[PROTOTYPE], 'description', {
+      configurable: true,
+      get: function description() {
+        return getInternalState(this).description;
+      }
+    });
+    if (!IS_PURE) {
+      redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });
+    }
+  }
+}
+
+$({ global: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {
+  Symbol: $Symbol
+});
+
+$forEach(objectKeys(WellKnownSymbolsStore), function (name) {
+  defineWellKnownSymbol(name);
+});
+
+$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {
+  // `Symbol.for` method
+  // https://tc39.es/ecma262/#sec-symbol.for
+  'for': function (key) {
+    var string = String(key);
+    if (has(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];
+    var symbol = $Symbol(string);
+    StringToSymbolRegistry[string] = symbol;
+    SymbolToStringRegistry[symbol] = string;
+    return symbol;
+  },
+  // `Symbol.keyFor` method
+  // https://tc39.es/ecma262/#sec-symbol.keyfor
+  keyFor: function keyFor(sym) {
+    if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol');
+    if (has(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];
+  },
+  useSetter: function () { USE_SETTER = true; },
+  useSimple: function () { USE_SETTER = false; }
+});
+
+$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {
+  // `Object.create` method
+  // https://tc39.es/ecma262/#sec-object.create
+  create: $create,
+  // `Object.defineProperty` method
+  // https://tc39.es/ecma262/#sec-object.defineproperty
+  defineProperty: $defineProperty,
+  // `Object.defineProperties` method
+  // https://tc39.es/ecma262/#sec-object.defineproperties
+  defineProperties: $defineProperties,
+  // `Object.getOwnPropertyDescriptor` method
+  // https://tc39.es/ecma262/#sec-object.getownpropertydescriptors
+  getOwnPropertyDescriptor: $getOwnPropertyDescriptor
+});
+
+$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {
+  // `Object.getOwnPropertyNames` method
+  // https://tc39.es/ecma262/#sec-object.getownpropertynames
+  getOwnPropertyNames: $getOwnPropertyNames,
+  // `Object.getOwnPropertySymbols` method
+  // https://tc39.es/ecma262/#sec-object.getownpropertysymbols
+  getOwnPropertySymbols: $getOwnPropertySymbols
+});
+
+// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
+// https://bugs.chromium.org/p/v8/issues/detail?id=3443
+$({ target: 'Object', stat: true, forced: fails(function () { getOwnPropertySymbolsModule.f(1); }) }, {
+  getOwnPropertySymbols: function getOwnPropertySymbols(it) {
+    return getOwnPropertySymbolsModule.f(toObject(it));
+  }
+});
+
+// `JSON.stringify` method behavior with symbols
+// https://tc39.es/ecma262/#sec-json.stringify
+if ($stringify) {
+  var FORCED_JSON_STRINGIFY = !NATIVE_SYMBOL || fails(function () {
+    var symbol = $Symbol();
+    // MS Edge converts symbol values to JSON as {}
+    return $stringify([symbol]) != '[null]'
+      // WebKit converts symbol values to JSON as null
+      || $stringify({ a: symbol }) != '{}'
+      // V8 throws on boxed symbols
+      || $stringify(Object(symbol)) != '{}';
+  });
+
+  $({ target: 'JSON', stat: true, forced: FORCED_JSON_STRINGIFY }, {
+    // eslint-disable-next-line no-unused-vars -- required for `.length`
+    stringify: function stringify(it, replacer, space) {
+      var args = [it];
+      var index = 1;
+      var $replacer;
+      while (arguments.length > index) args.push(arguments[index++]);
+      $replacer = replacer;
+      if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
+      if (!isArray(replacer)) replacer = function (key, value) {
+        if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
+        if (!isSymbol(value)) return value;
+      };
+      args[1] = replacer;
+      return $stringify.apply(null, args);
+    }
+  });
+}
+
+// `Symbol.prototype[@@toPrimitive]` method
+// https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive
+if (!$Symbol[PROTOTYPE][TO_PRIMITIVE]) {
+  createNonEnumerableProperty($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
+}
+// `Symbol.prototype[@@toStringTag]` property
+// https://tc39.es/ecma262/#sec-symbol.prototype-@@tostringtag
+setToStringTag($Symbol, SYMBOL);
+
+hiddenKeys[HIDDEN] = true;
+
+
+/***/ }),
+
+/***/ "a691":
+/***/ (function(module, exports) {
+
+var ceil = Math.ceil;
+var floor = Math.floor;
+
+// `ToInteger` abstract operation
+// https://tc39.es/ecma262/#sec-tointeger
+module.exports = function (argument) {
+  return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);
+};
+
+
+/***/ }),
+
+/***/ "ac1f":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__("23e7");
+var exec = __webpack_require__("9263");
+
+// `RegExp.prototype.exec` method
+// https://tc39.es/ecma262/#sec-regexp.prototype.exec
+$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {
+  exec: exec
+});
+
+
+/***/ }),
+
+/***/ "ad6d":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var anObject = __webpack_require__("825a");
+
+// `RegExp.prototype.flags` getter implementation
+// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags
+module.exports = function () {
+  var that = anObject(this);
+  var result = '';
+  if (that.global) result += 'g';
+  if (that.ignoreCase) result += 'i';
+  if (that.multiline) result += 'm';
+  if (that.dotAll) result += 's';
+  if (that.unicode) result += 'u';
+  if (that.sticky) result += 'y';
+  return result;
+};
+
+
+/***/ }),
+
+/***/ "ae93":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var fails = __webpack_require__("d039");
+var getPrototypeOf = __webpack_require__("e163");
+var createNonEnumerableProperty = __webpack_require__("9112");
+var has = __webpack_require__("5135");
+var wellKnownSymbol = __webpack_require__("b622");
+var IS_PURE = __webpack_require__("c430");
+
+var ITERATOR = wellKnownSymbol('iterator');
+var BUGGY_SAFARI_ITERATORS = false;
+
+var returnThis = function () { return this; };
+
+// `%IteratorPrototype%` object
+// https://tc39.es/ecma262/#sec-%iteratorprototype%-object
+var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;
+
+if ([].keys) {
+  arrayIterator = [].keys();
+  // Safari 8 has buggy iterators w/o `next`
+  if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;
+  else {
+    PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));
+    if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;
+  }
+}
+
+var NEW_ITERATOR_PROTOTYPE = IteratorPrototype == undefined || fails(function () {
+  var test = {};
+  // FF44- legacy iterators case
+  return IteratorPrototype[ITERATOR].call(test) !== test;
+});
+
+if (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};
+
+// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
+if ((!IS_PURE || NEW_ITERATOR_PROTOTYPE) && !has(IteratorPrototype, ITERATOR)) {
+  createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis);
+}
+
+module.exports = {
+  IteratorPrototype: IteratorPrototype,
+  BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS
+};
+
+
+/***/ }),
+
+/***/ "b041":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var TO_STRING_TAG_SUPPORT = __webpack_require__("00ee");
+var classof = __webpack_require__("f5df");
+
+// `Object.prototype.toString` method implementation
+// https://tc39.es/ecma262/#sec-object.prototype.tostring
+module.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {
+  return '[object ' + classof(this) + ']';
+};
+
+
+/***/ }),
+
+/***/ "b622":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+var shared = __webpack_require__("5692");
+var has = __webpack_require__("5135");
+var uid = __webpack_require__("90e3");
+var NATIVE_SYMBOL = __webpack_require__("4930");
+var USE_SYMBOL_AS_UID = __webpack_require__("fdbf");
+
+var WellKnownSymbolsStore = shared('wks');
+var Symbol = global.Symbol;
+var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;
+
+module.exports = function (name) {
+  if (!has(WellKnownSymbolsStore, name)) {
+    if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name];
+    else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);
+  } return WellKnownSymbolsStore[name];
+};
+
+
+/***/ }),
+
+/***/ "b727":
+/***/ (function(module, exports, __webpack_require__) {
+
+var bind = __webpack_require__("0366");
+var IndexedObject = __webpack_require__("44ad");
+var toObject = __webpack_require__("7b0b");
+var toLength = __webpack_require__("50c4");
+var arraySpeciesCreate = __webpack_require__("65f0");
+
+var push = [].push;
+
+// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterOut }` methods implementation
+var createMethod = function (TYPE) {
+  var IS_MAP = TYPE == 1;
+  var IS_FILTER = TYPE == 2;
+  var IS_SOME = TYPE == 3;
+  var IS_EVERY = TYPE == 4;
+  var IS_FIND_INDEX = TYPE == 6;
+  var IS_FILTER_OUT = TYPE == 7;
+  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
+  return function ($this, callbackfn, that, specificCreate) {
+    var O = toObject($this);
+    var self = IndexedObject(O);
+    var boundFunction = bind(callbackfn, that, 3);
+    var length = toLength(self.length);
+    var index = 0;
+    var create = specificCreate || arraySpeciesCreate;
+    var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_OUT ? create($this, 0) : undefined;
+    var value, result;
+    for (;length > index; index++) if (NO_HOLES || index in self) {
+      value = self[index];
+      result = boundFunction(value, index, O);
+      if (TYPE) {
+        if (IS_MAP) target[index] = result; // map
+        else if (result) switch (TYPE) {
+          case 3: return true;              // some
+          case 5: return value;             // find
+          case 6: return index;             // findIndex
+          case 2: push.call(target, value); // filter
+        } else switch (TYPE) {
+          case 4: return false;             // every
+          case 7: push.call(target, value); // filterOut
+        }
+      }
+    }
+    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;
+  };
+};
+
+module.exports = {
+  // `Array.prototype.forEach` method
+  // https://tc39.es/ecma262/#sec-array.prototype.foreach
+  forEach: createMethod(0),
+  // `Array.prototype.map` method
+  // https://tc39.es/ecma262/#sec-array.prototype.map
+  map: createMethod(1),
+  // `Array.prototype.filter` method
+  // https://tc39.es/ecma262/#sec-array.prototype.filter
+  filter: createMethod(2),
+  // `Array.prototype.some` method
+  // https://tc39.es/ecma262/#sec-array.prototype.some
+  some: createMethod(3),
+  // `Array.prototype.every` method
+  // https://tc39.es/ecma262/#sec-array.prototype.every
+  every: createMethod(4),
+  // `Array.prototype.find` method
+  // https://tc39.es/ecma262/#sec-array.prototype.find
+  find: createMethod(5),
+  // `Array.prototype.findIndex` method
+  // https://tc39.es/ecma262/#sec-array.prototype.findIndex
+  findIndex: createMethod(6),
+  // `Array.prototype.filterOut` method
+  // https://github.com/tc39/proposal-array-filtering
+  filterOut: createMethod(7)
+};
+
+
+/***/ }),
+
+/***/ "c04e":
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__("861d");
+
+// `ToPrimitive` abstract operation
+// https://tc39.es/ecma262/#sec-toprimitive
+// instead of the ES6 spec version, we didn't implement @@toPrimitive case
+// and the second argument - flag - preferred type is a string
+module.exports = function (input, PREFERRED_STRING) {
+  if (!isObject(input)) return input;
+  var fn, val;
+  if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
+  if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;
+  if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
+  throw TypeError("Can't convert object to primitive value");
+};
+
+
+/***/ }),
+
+/***/ "c430":
+/***/ (function(module, exports) {
+
+module.exports = false;
+
+
+/***/ }),
+
+/***/ "c6b6":
+/***/ (function(module, exports) {
+
+var toString = {}.toString;
+
+module.exports = function (it) {
+  return toString.call(it).slice(8, -1);
+};
+
+
+/***/ }),
+
+/***/ "c6cd":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+var setGlobal = __webpack_require__("ce4e");
+
+var SHARED = '__core-js_shared__';
+var store = global[SHARED] || setGlobal(SHARED, {});
+
+module.exports = store;
+
+
+/***/ }),
+
+/***/ "c8ba":
+/***/ (function(module, exports) {
+
+var g;
+
+// This works in non-strict mode
+g = (function() {
+	return this;
+})();
+
+try {
+	// This works if eval is allowed (see CSP)
+	g = g || new Function("return this")();
+} catch (e) {
+	// This works if the window reference is available
+	if (typeof window === "object") g = window;
+}
+
+// g can still be undefined, but nothing to do about it...
+// We return undefined, instead of nothing here, so it's
+// easier to handle this case. if(!global) { ...}
+
+module.exports = g;
+
+
+/***/ }),
+
+/***/ "ca84":
+/***/ (function(module, exports, __webpack_require__) {
+
+var has = __webpack_require__("5135");
+var toIndexedObject = __webpack_require__("fc6a");
+var indexOf = __webpack_require__("4d64").indexOf;
+var hiddenKeys = __webpack_require__("d012");
+
+module.exports = function (object, names) {
+  var O = toIndexedObject(object);
+  var i = 0;
+  var result = [];
+  var key;
+  for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);
+  // Don't enum bug & hidden keys
+  while (names.length > i) if (has(O, key = names[i++])) {
+    ~indexOf(result, key) || result.push(key);
+  }
+  return result;
+};
+
+
+/***/ }),
+
+/***/ "cc12":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+var isObject = __webpack_require__("861d");
+
+var document = global.document;
+// typeof document.createElement is 'object' in old IE
+var EXISTS = isObject(document) && isObject(document.createElement);
+
+module.exports = function (it) {
+  return EXISTS ? document.createElement(it) : {};
+};
+
+
+/***/ }),
+
+/***/ "ce4e":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+var createNonEnumerableProperty = __webpack_require__("9112");
+
+module.exports = function (key, value) {
+  try {
+    createNonEnumerableProperty(global, key, value);
+  } catch (error) {
+    global[key] = value;
+  } return value;
+};
+
+
+/***/ }),
+
+/***/ "d012":
+/***/ (function(module, exports) {
+
+module.exports = {};
+
+
+/***/ }),
+
+/***/ "d039":
+/***/ (function(module, exports) {
+
+module.exports = function (exec) {
+  try {
+    return !!exec();
+  } catch (error) {
+    return true;
+  }
+};
+
+
+/***/ }),
+
+/***/ "d066":
+/***/ (function(module, exports, __webpack_require__) {
+
+var path = __webpack_require__("428f");
+var global = __webpack_require__("da84");
+
+var aFunction = function (variable) {
+  return typeof variable == 'function' ? variable : undefined;
+};
+
+module.exports = function (namespace, method) {
+  return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])
+    : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];
+};
+
+
+/***/ }),
+
+/***/ "d1e7":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var nativePropertyIsEnumerable = {}.propertyIsEnumerable;
+var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
+
+// Nashorn ~ JDK8 bug
+var NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);
+
+// `Object.prototype.propertyIsEnumerable` method implementation
+// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
+exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
+  var descriptor = getOwnPropertyDescriptor(this, V);
+  return !!descriptor && descriptor.enumerable;
+} : nativePropertyIsEnumerable;
+
+
+/***/ }),
+
+/***/ "d28b":
+/***/ (function(module, exports, __webpack_require__) {
+
+var defineWellKnownSymbol = __webpack_require__("746f");
+
+// `Symbol.iterator` well-known symbol
+// https://tc39.es/ecma262/#sec-symbol.iterator
+defineWellKnownSymbol('iterator');
+
+
+/***/ }),
+
+/***/ "d2bb":
+/***/ (function(module, exports, __webpack_require__) {
+
+/* eslint-disable no-proto -- safe */
+var anObject = __webpack_require__("825a");
+var aPossiblePrototype = __webpack_require__("3bbe");
+
+// `Object.setPrototypeOf` method
+// https://tc39.es/ecma262/#sec-object.setprototypeof
+// Works with __proto__ only. Old v8 can't work with null proto objects.
+module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {
+  var CORRECT_SETTER = false;
+  var test = {};
+  var setter;
+  try {
+    setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;
+    setter.call(test, []);
+    CORRECT_SETTER = test instanceof Array;
+  } catch (error) { /* empty */ }
+  return function setPrototypeOf(O, proto) {
+    anObject(O);
+    aPossiblePrototype(proto);
+    if (CORRECT_SETTER) setter.call(O, proto);
+    else O.__proto__ = proto;
+    return O;
+  };
+}() : undefined);
+
+
+/***/ }),
+
+/***/ "d3b7":
+/***/ (function(module, exports, __webpack_require__) {
+
+var TO_STRING_TAG_SUPPORT = __webpack_require__("00ee");
+var redefine = __webpack_require__("6eeb");
+var toString = __webpack_require__("b041");
+
+// `Object.prototype.toString` method
+// https://tc39.es/ecma262/#sec-object.prototype.tostring
+if (!TO_STRING_TAG_SUPPORT) {
+  redefine(Object.prototype, 'toString', toString, { unsafe: true });
+}
+
+
+/***/ }),
+
+/***/ "d44e":
+/***/ (function(module, exports, __webpack_require__) {
+
+var defineProperty = __webpack_require__("9bf2").f;
+var has = __webpack_require__("5135");
+var wellKnownSymbol = __webpack_require__("b622");
+
+var TO_STRING_TAG = wellKnownSymbol('toStringTag');
+
+module.exports = function (it, TAG, STATIC) {
+  if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {
+    defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });
+  }
+};
+
+
+/***/ }),
+
+/***/ "d784":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+// TODO: Remove from `core-js@4` since it's moved to entry points
+__webpack_require__("ac1f");
+var redefine = __webpack_require__("6eeb");
+var fails = __webpack_require__("d039");
+var wellKnownSymbol = __webpack_require__("b622");
+var regexpExec = __webpack_require__("9263");
+var createNonEnumerableProperty = __webpack_require__("9112");
+
+var SPECIES = wellKnownSymbol('species');
+
+var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
+  // #replace needs built-in support for named groups.
+  // #match works fine because it just return the exec results, even if it has
+  // a "grops" property.
+  var re = /./;
+  re.exec = function () {
+    var result = [];
+    result.groups = { a: '7' };
+    return result;
+  };
+  return ''.replace(re, '$<a>') !== '7';
+});
+
+// IE <= 11 replaces $0 with the whole match, as if it was $&
+// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0
+var REPLACE_KEEPS_$0 = (function () {
+  return 'a'.replace(/./, '$0') === '$0';
+})();
+
+var REPLACE = wellKnownSymbol('replace');
+// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string
+var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {
+  if (/./[REPLACE]) {
+    return /./[REPLACE]('a', '$0') === '';
+  }
+  return false;
+})();
+
+// Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
+// Weex JS has frozen built-in prototypes, so use try / catch wrapper
+var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {
+  // eslint-disable-next-line regexp/no-empty-group -- required for testing
+  var re = /(?:)/;
+  var originalExec = re.exec;
+  re.exec = function () { return originalExec.apply(this, arguments); };
+  var result = 'ab'.split(re);
+  return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';
+});
+
+module.exports = function (KEY, length, exec, sham) {
+  var SYMBOL = wellKnownSymbol(KEY);
+
+  var DELEGATES_TO_SYMBOL = !fails(function () {
+    // String methods call symbol-named RegEp methods
+    var O = {};
+    O[SYMBOL] = function () { return 7; };
+    return ''[KEY](O) != 7;
+  });
+
+  var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {
+    // Symbol-named RegExp methods call .exec
+    var execCalled = false;
+    var re = /a/;
+
+    if (KEY === 'split') {
+      // We can't use real regex here since it causes deoptimization
+      // and serious performance degradation in V8
+      // https://github.com/zloirock/core-js/issues/306
+      re = {};
+      // RegExp[@@split] doesn't call the regex's exec method, but first creates
+      // a new one. We need to return the patched regex when creating the new one.
+      re.constructor = {};
+      re.constructor[SPECIES] = function () { return re; };
+      re.flags = '';
+      re[SYMBOL] = /./[SYMBOL];
+    }
+
+    re.exec = function () { execCalled = true; return null; };
+
+    re[SYMBOL]('');
+    return !execCalled;
+  });
+
+  if (
+    !DELEGATES_TO_SYMBOL ||
+    !DELEGATES_TO_EXEC ||
+    (KEY === 'replace' && !(
+      REPLACE_SUPPORTS_NAMED_GROUPS &&
+      REPLACE_KEEPS_$0 &&
+      !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE
+    )) ||
+    (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
+  ) {
+    var nativeRegExpMethod = /./[SYMBOL];
+    var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {
+      if (regexp.exec === regexpExec) {
+        if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
+          // The native String method already delegates to @@method (this
+          // polyfilled function), leasing to infinite recursion.
+          // We avoid it by directly calling the native @@method method.
+          return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
+        }
+        return { done: true, value: nativeMethod.call(str, regexp, arg2) };
+      }
+      return { done: false };
+    }, {
+      REPLACE_KEEPS_$0: REPLACE_KEEPS_$0,
+      REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE
+    });
+    var stringMethod = methods[0];
+    var regexMethod = methods[1];
+
+    redefine(String.prototype, KEY, stringMethod);
+    redefine(RegExp.prototype, SYMBOL, length == 2
+      // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
+      // 21.2.5.11 RegExp.prototype[@@split](string, limit)
+      ? function (string, arg) { return regexMethod.call(string, this, arg); }
+      // 21.2.5.6 RegExp.prototype[@@match](string)
+      // 21.2.5.9 RegExp.prototype[@@search](string)
+      : function (string) { return regexMethod.call(string, this); }
+    );
+  }
+
+  if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);
+};
+
+
+/***/ }),
+
+/***/ "da84":
+/***/ (function(module, exports, __webpack_require__) {
+
+/* WEBPACK VAR INJECTION */(function(global) {var check = function (it) {
+  return it && it.Math == Math && it;
+};
+
+// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
+module.exports =
+  /* global globalThis -- safe */
+  check(typeof globalThis == 'object' && globalThis) ||
+  check(typeof window == 'object' && window) ||
+  check(typeof self == 'object' && self) ||
+  check(typeof global == 'object' && global) ||
+  // eslint-disable-next-line no-new-func -- fallback
+  (function () { return this; })() || Function('return this')();
+
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("c8ba")))
+
+/***/ }),
+
+/***/ "ddb0":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("da84");
+var DOMIterables = __webpack_require__("fdbc");
+var ArrayIteratorMethods = __webpack_require__("e260");
+var createNonEnumerableProperty = __webpack_require__("9112");
+var wellKnownSymbol = __webpack_require__("b622");
+
+var ITERATOR = wellKnownSymbol('iterator');
+var TO_STRING_TAG = wellKnownSymbol('toStringTag');
+var ArrayValues = ArrayIteratorMethods.values;
+
+for (var COLLECTION_NAME in DOMIterables) {
+  var Collection = global[COLLECTION_NAME];
+  var CollectionPrototype = Collection && Collection.prototype;
+  if (CollectionPrototype) {
+    // some Chrome versions have non-configurable methods on DOMTokenList
+    if (CollectionPrototype[ITERATOR] !== ArrayValues) try {
+      createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);
+    } catch (error) {
+      CollectionPrototype[ITERATOR] = ArrayValues;
+    }
+    if (!CollectionPrototype[TO_STRING_TAG]) {
+      createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);
+    }
+    if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {
+      // some Chrome versions have non-configurable methods on DOMTokenList
+      if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {
+        createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);
+      } catch (error) {
+        CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];
+      }
+    }
+  }
+}
+
+
+/***/ }),
+
+/***/ "df75":
+/***/ (function(module, exports, __webpack_require__) {
+
+var internalObjectKeys = __webpack_require__("ca84");
+var enumBugKeys = __webpack_require__("7839");
+
+// `Object.keys` method
+// https://tc39.es/ecma262/#sec-object.keys
+module.exports = Object.keys || function keys(O) {
+  return internalObjectKeys(O, enumBugKeys);
+};
+
+
+/***/ }),
+
+/***/ "e01a":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+// `Symbol.prototype.description` getter
+// https://tc39.es/ecma262/#sec-symbol.prototype.description
+
+var $ = __webpack_require__("23e7");
+var DESCRIPTORS = __webpack_require__("83ab");
+var global = __webpack_require__("da84");
+var has = __webpack_require__("5135");
+var isObject = __webpack_require__("861d");
+var defineProperty = __webpack_require__("9bf2").f;
+var copyConstructorProperties = __webpack_require__("e893");
+
+var NativeSymbol = global.Symbol;
+
+if (DESCRIPTORS && typeof NativeSymbol == 'function' && (!('description' in NativeSymbol.prototype) ||
+  // Safari 12 bug
+  NativeSymbol().description !== undefined
+)) {
+  var EmptyStringDescriptionStore = {};
+  // wrap Symbol constructor for correct work with undefined description
+  var SymbolWrapper = function Symbol() {
+    var description = arguments.length < 1 || arguments[0] === undefined ? undefined : String(arguments[0]);
+    var result = this instanceof SymbolWrapper
+      ? new NativeSymbol(description)
+      // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)'
+      : description === undefined ? NativeSymbol() : NativeSymbol(description);
+    if (description === '') EmptyStringDescriptionStore[result] = true;
+    return result;
+  };
+  copyConstructorProperties(SymbolWrapper, NativeSymbol);
+  var symbolPrototype = SymbolWrapper.prototype = NativeSymbol.prototype;
+  symbolPrototype.constructor = SymbolWrapper;
+
+  var symbolToString = symbolPrototype.toString;
+  var native = String(NativeSymbol('test')) == 'Symbol(test)';
+  var regexp = /^Symbol\((.*)\)[^)]+$/;
+  defineProperty(symbolPrototype, 'description', {
+    configurable: true,
+    get: function description() {
+      var symbol = isObject(this) ? this.valueOf() : this;
+      var string = symbolToString.call(symbol);
+      if (has(EmptyStringDescriptionStore, symbol)) return '';
+      var desc = native ? string.slice(7, -1) : string.replace(regexp, '$1');
+      return desc === '' ? undefined : desc;
+    }
+  });
+
+  $({ global: true, forced: true }, {
+    Symbol: SymbolWrapper
+  });
+}
+
+
+/***/ }),
+
+/***/ "e163":
+/***/ (function(module, exports, __webpack_require__) {
+
+var has = __webpack_require__("5135");
+var toObject = __webpack_require__("7b0b");
+var sharedKey = __webpack_require__("f772");
+var CORRECT_PROTOTYPE_GETTER = __webpack_require__("e177");
+
+var IE_PROTO = sharedKey('IE_PROTO');
+var ObjectPrototype = Object.prototype;
+
+// `Object.getPrototypeOf` method
+// https://tc39.es/ecma262/#sec-object.getprototypeof
+module.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {
+  O = toObject(O);
+  if (has(O, IE_PROTO)) return O[IE_PROTO];
+  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
+    return O.constructor.prototype;
+  } return O instanceof Object ? ObjectPrototype : null;
+};
+
+
+/***/ }),
+
+/***/ "e177":
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__("d039");
+
+module.exports = !fails(function () {
+  function F() { /* empty */ }
+  F.prototype.constructor = null;
+  return Object.getPrototypeOf(new F()) !== F.prototype;
+});
+
+
+/***/ }),
+
+/***/ "e260":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var toIndexedObject = __webpack_require__("fc6a");
+var addToUnscopables = __webpack_require__("44d2");
+var Iterators = __webpack_require__("3f8c");
+var InternalStateModule = __webpack_require__("69f3");
+var defineIterator = __webpack_require__("7dd0");
+
+var ARRAY_ITERATOR = 'Array Iterator';
+var setInternalState = InternalStateModule.set;
+var getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);
+
+// `Array.prototype.entries` method
+// https://tc39.es/ecma262/#sec-array.prototype.entries
+// `Array.prototype.keys` method
+// https://tc39.es/ecma262/#sec-array.prototype.keys
+// `Array.prototype.values` method
+// https://tc39.es/ecma262/#sec-array.prototype.values
+// `Array.prototype[@@iterator]` method
+// https://tc39.es/ecma262/#sec-array.prototype-@@iterator
+// `CreateArrayIterator` internal method
+// https://tc39.es/ecma262/#sec-createarrayiterator
+module.exports = defineIterator(Array, 'Array', function (iterated, kind) {
+  setInternalState(this, {
+    type: ARRAY_ITERATOR,
+    target: toIndexedObject(iterated), // target
+    index: 0,                          // next index
+    kind: kind                         // kind
+  });
+// `%ArrayIteratorPrototype%.next` method
+// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next
+}, function () {
+  var state = getInternalState(this);
+  var target = state.target;
+  var kind = state.kind;
+  var index = state.index++;
+  if (!target || index >= target.length) {
+    state.target = undefined;
+    return { value: undefined, done: true };
+  }
+  if (kind == 'keys') return { value: index, done: false };
+  if (kind == 'values') return { value: target[index], done: false };
+  return { value: [index, target[index]], done: false };
+}, 'values');
+
+// argumentsList[@@iterator] is %ArrayProto_values%
+// https://tc39.es/ecma262/#sec-createunmappedargumentsobject
+// https://tc39.es/ecma262/#sec-createmappedargumentsobject
+Iterators.Arguments = Iterators.Array;
+
+// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
+addToUnscopables('keys');
+addToUnscopables('values');
+addToUnscopables('entries');
+
+
+/***/ }),
+
+/***/ "e538":
+/***/ (function(module, exports, __webpack_require__) {
+
+var wellKnownSymbol = __webpack_require__("b622");
+
+exports.f = wellKnownSymbol;
+
+
+/***/ }),
+
+/***/ "e893":
+/***/ (function(module, exports, __webpack_require__) {
+
+var has = __webpack_require__("5135");
+var ownKeys = __webpack_require__("56ef");
+var getOwnPropertyDescriptorModule = __webpack_require__("06cf");
+var definePropertyModule = __webpack_require__("9bf2");
+
+module.exports = function (target, source) {
+  var keys = ownKeys(source);
+  var defineProperty = definePropertyModule.f;
+  var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
+  for (var i = 0; i < keys.length; i++) {
+    var key = keys[i];
+    if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));
+  }
+};
+
+
+/***/ }),
+
+/***/ "e8b5":
+/***/ (function(module, exports, __webpack_require__) {
+
+var classof = __webpack_require__("c6b6");
+
+// `IsArray` abstract operation
+// https://tc39.es/ecma262/#sec-isarray
+module.exports = Array.isArray || function isArray(arg) {
+  return classof(arg) == 'Array';
+};
+
+
+/***/ }),
+
+/***/ "f5df":
+/***/ (function(module, exports, __webpack_require__) {
+
+var TO_STRING_TAG_SUPPORT = __webpack_require__("00ee");
+var classofRaw = __webpack_require__("c6b6");
+var wellKnownSymbol = __webpack_require__("b622");
+
+var TO_STRING_TAG = wellKnownSymbol('toStringTag');
+// ES3 wrong here
+var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';
+
+// fallback for IE11 Script Access Denied error
+var tryGet = function (it, key) {
+  try {
+    return it[key];
+  } catch (error) { /* empty */ }
+};
+
+// getting tag from ES6+ `Object.prototype.toString`
+module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
+  var O, tag, result;
+  return it === undefined ? 'Undefined' : it === null ? 'Null'
+    // @@toStringTag case
+    : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag
+    // builtinTag case
+    : CORRECT_ARGUMENTS ? classofRaw(O)
+    // ES3 arguments fallback
+    : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;
+};
+
+
+/***/ }),
+
+/***/ "f772":
+/***/ (function(module, exports, __webpack_require__) {
+
+var shared = __webpack_require__("5692");
+var uid = __webpack_require__("90e3");
+
+var keys = shared('keys');
+
+module.exports = function (key) {
+  return keys[key] || (keys[key] = uid(key));
+};
+
+
+/***/ }),
+
+/***/ "fb15":
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+// ESM COMPAT FLAG
+__webpack_require__.r(__webpack_exports__);
+
+// CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js
+// This file is imported into lib/wc client bundles.
+
+if (typeof window !== 'undefined') {
+  var currentScript = window.document.currentScript
+  if (true) {
+    var getCurrentScript = __webpack_require__("8875")
+    currentScript = getCurrentScript()
+
+    // for backward compatibility, because previously we directly included the polyfill
+    if (!('currentScript' in document)) {
+      Object.defineProperty(document, 'currentScript', { get: getCurrentScript })
+    }
+  }
+
+  var src = currentScript && currentScript.src.match(/(.+\/)[^/]+\.js(\?.*)?$/)
+  if (src) {
+    __webpack_require__.p = src[1] // eslint-disable-line
+  }
+}
+
+// Indicate to webpack that this file can be concatenated
+/* harmony default export */ var setPublicPath = (null);
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.js
+var es_symbol = __webpack_require__("a4d3");
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.description.js
+var es_symbol_description = __webpack_require__("e01a");
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.to-string.js
+var es_object_to_string = __webpack_require__("d3b7");
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.iterator.js
+var es_symbol_iterator = __webpack_require__("d28b");
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.iterator.js
+var es_string_iterator = __webpack_require__("3ca3");
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom-collections.iterator.js
+var web_dom_collections_iterator = __webpack_require__("ddb0");
+
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/typeof/_index.mjs
+
+
+
+
+
+
+function _typeof(obj) {
+  "@babel/helpers - typeof";
+
+  if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
+    _typeof = function _typeof(obj) {
+      return typeof obj;
+    };
+  } else {
+    _typeof = function _typeof(obj) {
+      return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
+    };
+  }
+
+  return _typeof(obj);
+}
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/typeof.js
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.replace.js
+var es_string_replace = __webpack_require__("5319");
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.regexp.exec.js
+var es_regexp_exec = __webpack_require__("ac1f");
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.regexp.constructor.js
+var es_regexp_constructor = __webpack_require__("4d63");
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.regexp.to-string.js
+var es_regexp_to_string = __webpack_require__("25f0");
+
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/classCallCheck/_index.mjs
+function _classCallCheck(instance, Constructor) {
+  if (!(instance instanceof Constructor)) {
+    throw new TypeError("Cannot call a class as a function");
+  }
+}
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
+
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/createClass/_index.mjs
+function _defineProperties(target, props) {
+  for (var i = 0; i < props.length; i++) {
+    var descriptor = props[i];
+    descriptor.enumerable = descriptor.enumerable || false;
+    descriptor.configurable = true;
+    if ("value" in descriptor) descriptor.writable = true;
+    Object.defineProperty(target, descriptor.key, descriptor);
+  }
+}
+
+function _createClass(Constructor, protoProps, staticProps) {
+  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
+  if (staticProps) _defineProperties(Constructor, staticProps);
+  return Constructor;
+}
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
+
+// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.concat.js
+var es_array_concat = __webpack_require__("99af");
+
+// CONCATENATED MODULE: ./print/packages/printarea.js
+
+
+
+
+
+
+
+
+var isIE = function isIE() {
+  if (!!window.ActiveXobject || "ActiveXObject" in window) {
+    return true;
+  } else {
+    return false;
+  }
+};
+/**
+ * 鍒ゆ柇鏄惁鏄疘E11
+ * @returns boolean
+ */
+
+
+var isIE11 = function isIE11() {
+  if (/Trident\/7\./.test(navigator.userAgent)) {
+    return true;
+  } else {
+    return false;
+  }
+};
+
+var isRemove = function isRemove(dom) {
+  if (isIE() || isIE11()) {
+    dom.removeNode(true);
+  } else {
+    dom.remove();
+  }
+
+  return dom;
+};
+
+var printarea_default = /*#__PURE__*/function () {
+  function _default(option) {
+    _classCallCheck(this, _default);
+
+    this.standards = {
+      strict: 'strict',
+      loose: 'loose',
+      html5: 'html5'
+    };
+    this.previewBody = null;
+    this.close = null;
+    this.previewBodyUtilPrintBtn = null;
+    this.selectArray = []; // 瀛樺偍select鐨�
+
+    this.counter = 0;
+    this.settings = {
+      standard: this.standards.html5
+    };
+    Object.assign(this.settings, option);
+    this.init();
+  }
+
+  _createClass(_default, [{
+    key: "init",
+    value: function init() {
+      this.counter++;
+      this.settings.id = "printArea_".concat(this.counter);
+      var url = '';
+
+      if (this.settings.url && !this.settings.asyncUrl) {
+        url = this.settings.url;
+      }
+
+      var _this = this; // 濡傛灉鏄紓姝ョ殑
+
+
+      if (this.settings.asyncUrl) {
+        _this.settings.asyncUrl(function (url) {
+          var PrintAreaWindow = _this.getPrintWindow(url); // 鍒涘缓iframe
+
+
+          if (_this.settings.preview) {
+            // 鎵撳紑棰勮寮圭獥
+            _this.previewIfrmaeLoad();
+          } else {
+            // 鐩存帴鎵撳嵃
+            _this.print(PrintAreaWindow);
+          }
+        }, _this.settings.vue);
+
+        return;
+      }
+
+      var PrintAreaWindow = this.getPrintWindow(url); // 鍒涘缓iframe
+
+      if (!this.settings.url) {
+        this.write(PrintAreaWindow.doc); // 鍐欏叆鍐呭
+      }
+
+      if (this.settings.preview) {
+        // 鎵撳紑棰勮寮圭獥
+        this.previewIfrmaeLoad();
+      } else {
+        // 鐩存帴鎵撳嵃
+        this.print(PrintAreaWindow);
+      }
+    }
+  }, {
+    key: "addEvent",
+    value: function addEvent(element, type, callback) {
+      if (element.addEventListener) {
+        element.addEventListener(type, callback, false);
+      } else if (element.attachEvent) {
+        element.attachEvent('on' + type, callback);
+      } else {
+        element['on' + type] = callback;
+      }
+    }
+  }, {
+    key: "previewIfrmaeLoad",
+    value: function previewIfrmaeLoad() {
+      var box = document.getElementById('vue-pirnt-nb-previewBox');
+
+      if (box) {
+        var _this = this;
+
+        var iframe = box.querySelector('iframe');
+        this.settings.previewBeforeOpenCallback();
+        this.addEvent(iframe, 'load', function () {
+          _this.previewBoxShow();
+
+          _this.removeCanvasImg();
+
+          _this.settings.previewOpenCallback();
+        });
+        this.addEvent(box.querySelector('.previewBodyUtilPrintBtn'), 'click', function () {
+          _this.settings.beforeOpenCallback();
+
+          _this.settings.openCallback();
+
+          iframe.contentWindow.print();
+
+          _this.settings.closeCallback();
+        });
+      }
+    } // 鍒犻櫎鎵�鏈塩anva杞崲鐨勫浘鐗�
+
+  }, {
+    key: "removeCanvasImg",
+    value: function removeCanvasImg() {
+      var _this = this;
+
+      try {
+        if (_this.elsdom) {
+          // 鍒犻櫎canva杞彉鍥剧墖鐨刣om鑺傜偣
+          var canvasList = _this.elsdom.querySelectorAll('.canvasImg');
+
+          for (var i = 0; i < canvasList.length; i++) {
+            isRemove(canvasList[i]);
+          }
+        }
+      } catch (e) {
+        console.log(e);
+      }
+    }
+  }, {
+    key: "print",
+    value: function print(ifrmae) {
+      var _this = this;
+
+      var iframe = document.getElementById(this.settings.id) || ifrmae.f;
+      var iframeWin = document.getElementById(this.settings.id).contentWindow || ifrmae.f.contentWindow;
+
+      var _loaded = function _loaded() {
+        iframeWin.focus();
+
+        _this.settings.openCallback();
+
+        iframeWin.print();
+        isRemove(iframe);
+
+        _this.settings.closeCallback();
+
+        _this.removeCanvasImg();
+      };
+
+      _this.settings.beforeOpenCallback();
+
+      _this.addEvent(iframe, 'load', function () {
+        _loaded();
+      });
+    }
+  }, {
+    key: "write",
+    value: function write(PADocument) {
+      PADocument.open();
+      PADocument.write("".concat(this.docType(), "<html>").concat(this.getHead()).concat(this.getBody(), "</html>"));
+      PADocument.close();
+    }
+  }, {
+    key: "docType",
+    value: function docType() {
+      if (this.settings.standard === this.standards.html5) {
+        return '<!DOCTYPE html>';
+      }
+
+      var transitional = this.settings.standard === this.standards.loose ? ' Transitional' : '';
+      var dtd = this.settings.standard === this.standards.loose ? 'loose' : 'strict';
+      return "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01".concat(transitional, "//EN\" \"http://www.w3.org/TR/html4/").concat(dtd, ".dtd\">");
+    }
+  }, {
+    key: "getHead",
+    value: function getHead() {
+      var extraHead = '';
+      var links = '';
+      var style = '';
+
+      if (this.settings.extraHead) {
+        this.settings.extraHead.replace(/([^,]+)/g, function (m) {
+          extraHead += m;
+        });
+      } // 澶嶅埗鎵�鏈塴ink鏍囩
+
+
+      [].forEach.call(document.querySelectorAll('link'), function (item) {
+        if (item.href.indexOf('.css') >= 0) {
+          links += "<link type=\"text/css\" rel=\"stylesheet\" href=\"".concat(item.href, "\" >");
+        }
+      }); // 寰幆鑾峰彇style鏍囩鐨勬牱寮�
+
+      var domStyle = document.styleSheets;
+
+      if (domStyle && domStyle.length > 0) {
+        for (var i = 0; i < domStyle.length; i++) {
+          try {
+            if (domStyle[i].cssRules || domStyle[i].rules) {
+              var rules = domStyle[i].cssRules || domStyle[i].rules;
+
+              for (var b = 0; b < rules.length; b++) {
+                style += rules[b].cssText;
+              }
+            }
+          } catch (e) {
+            console.log(domStyle[i].href + e);
+          }
+        }
+      }
+
+      if (this.settings.extraCss) {
+        this.settings.extraCss.replace(/([^,\s]+)/g, function (m) {
+          links += "<link type=\"text/css\" rel=\"stylesheet\" href=\"".concat(m, "\">");
+        });
+      }
+
+      return "<head><title>".concat(this.settings.popTitle, "</title>").concat(extraHead).concat(links, "<style type=\"text/css\">").concat(style, "</style></head>");
+    }
+  }, {
+    key: "getBody",
+    value: function getBody() {
+      var ids = this.settings.ids;
+      ids = ids.replace(new RegExp("#", "g"), '');
+      this.elsdom = this.beforeHanler(document.getElementById(ids));
+      var ele = this.getFormData(this.elsdom);
+      var htm = ele.outerHTML;
+      return '<body>' + htm + '</body>';
+    } // 澶勭悊canva杞垚鍥剧墖
+
+  }, {
+    key: "beforeHanler",
+    value: function beforeHanler(elsdom) {
+      var canvasList = elsdom.querySelectorAll('canvas'); // canvas杞崲png鍥剧墖
+
+      for (var i = 0; i < canvasList.length; i++) {
+        if (!canvasList[i].style.display) {
+          var _parent = canvasList[i].parentNode;
+
+          var _canvasUrl = canvasList[i].toDataURL('image/png');
+
+          var _img = new Image();
+
+          _img.className = 'canvasImg';
+          _img.style.display = 'none';
+          _img.src = _canvasUrl;
+
+          _parent.appendChild(_img);
+        }
+      }
+
+      return elsdom;
+    } // 鏍规嵁type鍘诲鐞唂orm琛ㄥ崟
+
+  }, {
+    key: "getFormData",
+    value: function getFormData(ele) {
+      var copy = ele.cloneNode(true);
+      var copiedInputs = copy.querySelectorAll('input,select,textarea');
+      var canvasImgList = copy.querySelectorAll('.canvasImg,canvas');
+      var selectCount = -1; // 澶勭悊鎵�鏈塩anvas
+
+      for (var i = 0; i < canvasImgList.length; i++) {
+        var _parent = canvasImgList[i].parentNode;
+        var item = canvasImgList[i]; // 鍒犻櫎鍏嬮殕鍚庣殑canvas鑺傜偣
+
+        if (item.tagName.toLowerCase() === 'canvas') {
+          _parent.removeChild(item);
+        } else {
+          item.style.display = 'block';
+        }
+      } // 澶勭悊鎵�鏈夎緭鍏ユ
+
+
+      for (var _i = 0; _i < copiedInputs.length; _i++) {
+        var _item = copiedInputs[_i];
+
+        var typeInput = _item.getAttribute('type');
+
+        var copiedInput = copiedInputs[_i]; // 鑾峰彇select鏍囩
+
+        if (!typeInput) {
+          typeInput = _item.tagName === 'SELECT' ? 'select' : _item.tagName === 'TEXTAREA' ? 'textarea' : '';
+        } // 澶勭悊input妗�
+
+
+        if (_item.tagName === 'INPUT') {
+          // 闄や簡鍗曢�夋 澶氶�夋姣旇緝鐗瑰埆
+          if (typeInput === 'radio' || typeInput === 'checkbox') {
+            if (_item.checked) {
+              copiedInput.setAttribute('checked', _item.checked);
+            }
+          } else {
+            copiedInput.value = _item.value;
+            copiedInput.setAttribute('value', _item.value);
+          } // 澶勭悊select
+
+        } else if (typeInput === 'select') {
+          selectCount++;
+
+          for (var b = 0; b < ele.querySelectorAll('select').length; b++) {
+            var select = ele.querySelectorAll('select')[b]; // 鑾峰彇鍘熷灞傛瘡涓�涓猻elect
+
+            !select.getAttribute('newbs') && select.setAttribute('newbs', b); // 娣诲姞鏍囪瘑
+
+            if (select.getAttribute('newbs') == selectCount) {
+              var opSelectedIndex = ele.querySelectorAll('select')[selectCount].selectedIndex;
+
+              _item.options[opSelectedIndex].setAttribute('selected', true);
+            }
+          } // 澶勭悊textarea
+
+        } else {
+          copiedInput.innerHTML = _item.value;
+          copiedInput.setAttribute('html', _item.value);
+        }
+      }
+
+      return copy;
+    }
+  }, {
+    key: "getPrintWindow",
+    value: function getPrintWindow(url) {
+      var f = this.Iframe(url);
+      return {
+        f: f,
+        win: f.contentWindow || f,
+        doc: f.doc
+      };
+    }
+  }, {
+    key: "previewBoxShow",
+    value: function previewBoxShow() {
+      var box = document.getElementById('vue-pirnt-nb-previewBox');
+
+      if (box) {
+        document.querySelector('html').setAttribute('style', 'overflow: hidden');
+        box.style.display = 'block';
+      }
+    }
+  }, {
+    key: "previewBoxHide",
+    value: function previewBoxHide() {
+      var box = document.getElementById('vue-pirnt-nb-previewBox');
+
+      if (box) {
+        document.querySelector('html').setAttribute('style', 'overflow: visible;');
+        box.querySelector('iframe') && isRemove(box.querySelector('iframe'));
+        box.style.display = 'none';
+      }
+    }
+  }, {
+    key: "previewBox",
+    value: function previewBox() {
+      var box = document.getElementById('vue-pirnt-nb-previewBox');
+      var previewBodyClass = 'previewBody';
+
+      if (box) {
+        box.querySelector('iframe') && isRemove(box.querySelector('iframe'));
+        return {
+          close: box.querySelector('.previewClose'),
+          previewBody: box.querySelector(".".concat(previewBodyClass))
+        };
+      }
+
+      var previewContent = document.createElement('div');
+      previewContent.setAttribute('id', "vue-pirnt-nb-previewBox");
+      previewContent.setAttribute('style', 'position: fixed;top: 0px;left: 0px;width: 100%;height: 100%;background: white;display:none');
+      previewContent.style.zIndex = this.settings.zIndex; // 鎵撳嵃棰勮寮圭獥鐨刪eader
+
+      var previewHeader = document.createElement('div');
+      previewHeader.setAttribute('class', "previewHeader");
+      previewHeader.setAttribute('style', "padding: 5px 20px;");
+      previewHeader.innerHTML = this.settings.previewTitle;
+      previewContent.appendChild(previewHeader); // close鍏抽棴鎸夐挳
+
+      this.close = document.createElement('div');
+      var close = this.close;
+      close.setAttribute('class', "previewClose");
+      close.setAttribute('style', "position: absolute;top: 5px;right: 20px;width: 25px;height: 20px;cursor: pointer;");
+      var closeBefore = document.createElement('div');
+      var closeAfter = document.createElement('div');
+      closeBefore.setAttribute('class', "closeBefore");
+      closeBefore.setAttribute('style', "position: absolute;width: 3px;height: 100%;background: #040404;transform: rotate(45deg); top: 0px;left: 50%;");
+      closeAfter.setAttribute('class', "closeAfter");
+      closeAfter.setAttribute('style', "position: absolute;width: 3px;height: 100%;background: #040404;transform: rotate(-45deg); top: 0px;left: 50%;");
+      close.appendChild(closeBefore);
+      close.appendChild(closeAfter);
+      previewHeader.appendChild(close); // 鎵撳嵃棰勮寮圭獥鐨刡ody
+
+      this.previewBody = document.createElement('div');
+      var previewBody = this.previewBody;
+      previewBody.setAttribute('class', previewBodyClass);
+      previewBody.setAttribute('style', "display: flex;flex-direction: column; height: 100%;");
+      previewContent.appendChild(previewBody); // 鎵撳嵃棰勮寮圭獥鐨刡ody鐨勫伐鍏锋爮
+
+      var previewBodyUtil = document.createElement('div');
+      previewBodyUtil.setAttribute('class', "previewBodyUtil");
+      previewBodyUtil.setAttribute('style', "height: 32px;background: #474747;position: relative;");
+      previewBody.appendChild(previewBodyUtil); // 鎵撳嵃鐨勬寜閽�
+
+      this.previewBodyUtilPrintBtn = document.createElement('div');
+      var previewBodyUtilPrintBtn = this.previewBodyUtilPrintBtn;
+      previewBodyUtilPrintBtn.setAttribute('class', 'previewBodyUtilPrintBtn');
+      previewBodyUtilPrintBtn.innerHTML = this.settings.previewPrintBtnLabel;
+      previewBodyUtilPrintBtn.setAttribute('style', 'position: absolute;padding: 2px 10px;margin-top: 3px;left: 24px;font-size: 14px;color: white;cursor: pointer;background-color: rgba(0,0,0,.12);background-image: linear-gradient(hsla(0,0%,100%,.05),hsla(0,0%,100%,0));background-clip: padding-box;border: 1px solid rgba(0,0,0,.35);border-color: rgba(0,0,0,.32) rgba(0,0,0,.38) rgba(0,0,0,.42);box-shadow: inset 0 1px 0 hsla(0,0%,100%,.05), inset 0 0 1px hsla(0,0%,100%,.15), 0 1px 0 hsla(0,0%,100%,.05);');
+      previewBodyUtil.appendChild(previewBodyUtilPrintBtn); // 娣诲姞鏁翠釜棰勮鍒癰ody
+
+      document.body.appendChild(previewContent);
+      return {
+        close: this.close,
+        previewBody: this.previewBody
+      };
+    }
+  }, {
+    key: "iframeBox",
+    value: function iframeBox(frameId, url) {
+      var iframe = document.createElement('iframe');
+      iframe.style.border = '0px';
+      iframe.style.position = 'absolute';
+      iframe.style.width = '0px';
+      iframe.style.height = '0px';
+      iframe.style.right = '0px';
+      iframe.style.top = '0px';
+      iframe.setAttribute('id', frameId);
+      iframe.setAttribute('src', url);
+      return iframe;
+    }
+  }, {
+    key: "Iframe",
+    value: function Iframe(url) {
+      var frameId = this.settings.id; // 灞�閮ㄦ墦鍗� 鐢ㄥ綋鍓嶇殑鏃堕棿鍋歩frmae鐨剈rl
+
+      url = !url ? new Date().getTime() : url;
+
+      var _this = this;
+
+      var iframe = this.iframeBox(frameId, url); // let that = this
+
+      try {
+        // 鐩存帴鎵撳嵃 涓嶉瑙�
+        if (!this.settings.preview) {
+          document.body.appendChild(iframe);
+        } else {
+          iframe.setAttribute('style', 'border: 0px;flex: 1;'); // 棰勮鎵撳嵃
+
+          var previewBox = this.previewBox();
+          var previewBody = previewBox.previewBody;
+          var close = previewBox.close; // 娣诲姞ifrmae鍒伴瑙堝脊绐�
+
+          previewBody.appendChild(iframe);
+          this.addEvent(close, 'click', function () {
+            _this.previewBoxHide();
+          });
+        }
+
+        iframe.doc = null;
+        iframe.doc = iframe.contentDocument ? iframe.contentDocument : iframe.contentWindow ? iframe.contentWindow.document : iframe.document;
+      } catch (e) {
+        throw new Error(e + '. iframes may not be supported in this browser.');
+      }
+
+      if (iframe.doc == null) {
+        throw new Error('Cannot find document.');
+      }
+
+      return iframe;
+    }
+  }]);
+
+  return _default;
+}();
+
+
+// CONCATENATED MODULE: ./print/packages/print.js
+
+
+
+
+
+
+/*
+ * @Author: lee
+ * @Date: 2021-05-10 11:45:50
+ * @LastEditors: lee
+ * @LastEditTime: 2021-05-20 15:39:43
+ * @Description: file content
+ */
+
+/**
+ * @file 鎵撳嵃
+ * 鎸囦护`v-print`,榛樿鎵撳嵃鏁翠釜绐楀彛
+ * 浼犲叆鍙傛暟`v-print="'#id'"` , 鍙傛暟涓洪渶瑕佹墦鍗板眬閮ㄧ殑鐩掑瓙鏍囪瘑.
+ */
+
+var addEvent = function addEvent(element, type, callback) {
+  if (element.addEventListener) {
+    element.addEventListener(type, callback, false);
+  } else if (element.attachEvent) {
+    element.attachEvent('on' + type, callback);
+  } else {
+    element['on' + type] = callback;
+  }
+};
+
+/* harmony default export */ var print = ({
+  directiveName: 'print',
+  bind: function bind(el, binding, vnode) {
+    var vue = vnode.context;
+    var id = '';
+    addEvent(el, 'click', function () {
+      vue.$nextTick(function () {
+        var _binding$value, _binding$value2;
+
+        if (binding !== null && binding !== void 0 && (_binding$value = binding.value) !== null && _binding$value !== void 0 && _binding$value.clickMounted) {
+          binding.value.clickMounted(vue);
+        }
+
+        if (typeof binding.value === 'string') {
+          // 鍏ㄥ眬鎵撳嵃
+          id = binding.value;
+          localPrint();
+        } else if (_typeof(binding.value) === 'object' && !!binding.value.id) {
+          // 灞�閮ㄦ墦鍗�
+          id = binding.value.id;
+          var ids = id.replace(new RegExp("#", "g"), '');
+          var elsdom = document.getElementById(ids);
+          if (!elsdom) console.log("id in Error"), id = '';
+          localPrint();
+        } else if (binding !== null && binding !== void 0 && (_binding$value2 = binding.value) !== null && _binding$value2 !== void 0 && _binding$value2.preview) {
+          localPrint();
+        } else {
+          window.print();
+          return;
+        }
+      });
+    });
+
+    var localPrint = function localPrint() {
+      new printarea_default({
+        ids: id,
+        // * 灞�閮ㄦ墦鍗板繀浼犲叆id
+        vue: vue,
+        url: binding.value.url,
+        // 鎵撳嵃鎸囧畾鐨勭綉鍧�锛岃繖閲屼笉鑳借窡id鍏卞瓨 濡傛灉鍏卞瓨id鐨勪紭鍏堢骇浼氭瘮杈冮珮
+        standard: '',
+        // 鏂囨。绫诲瀷锛岄粯璁ゆ槸html5锛屽彲閫� html5锛宭oose锛宻trict
+        extraHead: binding.value.extraHead,
+        // 闄勫姞鍦╤ead鏍囩涓婄殑棰濆鏍囩,浣跨敤閫楀彿鍒嗛殧
+        extraCss: binding.value.extraCss,
+        // 棰濆鐨刢ss杩炴帴锛屽涓�楀彿鍒嗗紑
+        previewTitle: binding.value.previewTitle || '鎵撳嵃棰勮',
+        // 鎵撳嵃棰勮鐨勬爣棰�
+        zIndex: binding.value.zIndex || 20002,
+        // 棰勮绐楀彛鐨剒-index
+        previewPrintBtnLabel: binding.value.previewPrintBtnLabel || '鎵撳嵃',
+        // 鎵撳嵃棰勮鐨勬爣棰�
+        popTitle: binding.value.popTitle,
+        // title鐨勬爣棰�
+        preview: binding.value.preview || false,
+        // 鏄惁鍚姩棰勮妯″紡
+        asyncUrl: binding.value.asyncUrl,
+        previewBeforeOpenCallback: function previewBeforeOpenCallback() {
+          // 棰勮绐楀彛鎵撳紑涔嬪墠鐨刢allback
+          binding.value.previewBeforeOpenCallback && binding.value.previewBeforeOpenCallback(vue);
+        },
+        previewOpenCallback: function previewOpenCallback() {
+          // 棰勮绐楀彛鎵撳紑涔嬪悗鐨刢allback
+          binding.value.previewOpenCallback && binding.value.previewOpenCallback(vue);
+        },
+        openCallback: function openCallback() {
+          // 璋冪敤鎵撳嵃涔嬪悗鐨勫洖璋冧簨浠�
+          binding.value.openCallback && binding.value.openCallback(vue);
+        },
+        closeCallback: function closeCallback() {
+          binding.value.closeCallback && binding.value.closeCallback(vue);
+        },
+        beforeOpenCallback: function beforeOpenCallback() {
+          binding.value.beforeOpenCallback && binding.value.beforeOpenCallback(vue);
+        }
+      });
+    };
+  }
+});
+// CONCATENATED MODULE: ./print/index.js
+
+
+print.install = function (Vue) {
+  Vue.directive('print', print);
+};
+
+/* harmony default export */ var print_0 = (print);
+// CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/entry-lib.js
+
+
+/* harmony default export */ var entry_lib = __webpack_exports__["default"] = (print_0);
+
+
+
+/***/ }),
+
+/***/ "fc6a":
+/***/ (function(module, exports, __webpack_require__) {
+
+// toObject with fallback for non-array-like ES3 strings
+var IndexedObject = __webpack_require__("44ad");
+var requireObjectCoercible = __webpack_require__("1d80");
+
+module.exports = function (it) {
+  return IndexedObject(requireObjectCoercible(it));
+};
+
+
+/***/ }),
+
+/***/ "fdbc":
+/***/ (function(module, exports) {
+
+// iterable DOM collections
+// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods
+module.exports = {
+  CSSRuleList: 0,
+  CSSStyleDeclaration: 0,
+  CSSValueList: 0,
+  ClientRectList: 0,
+  DOMRectList: 0,
+  DOMStringList: 0,
+  DOMTokenList: 1,
+  DataTransferItemList: 0,
+  FileList: 0,
+  HTMLAllCollection: 0,
+  HTMLCollection: 0,
+  HTMLFormElement: 0,
+  HTMLSelectElement: 0,
+  MediaList: 0,
+  MimeTypeArray: 0,
+  NamedNodeMap: 0,
+  NodeList: 1,
+  PaintRequestList: 0,
+  Plugin: 0,
+  PluginArray: 0,
+  SVGLengthList: 0,
+  SVGNumberList: 0,
+  SVGPathSegList: 0,
+  SVGPointList: 0,
+  SVGStringList: 0,
+  SVGTransformList: 0,
+  SourceBufferList: 0,
+  StyleSheetList: 0,
+  TextTrackCueList: 0,
+  TextTrackList: 0,
+  TouchList: 0
+};
+
+
+/***/ }),
+
+/***/ "fdbf":
+/***/ (function(module, exports, __webpack_require__) {
+
+var NATIVE_SYMBOL = __webpack_require__("4930");
+
+module.exports = NATIVE_SYMBOL
+  /* global Symbol -- safe */
+  && !Symbol.sham
+  && typeof Symbol.iterator == 'symbol';
+
+
+/***/ })
+
+/******/ });
+});
+//# sourceMappingURL=print.umd.js.map
\ No newline at end of file
diff --git a/src/components/Print/vue-print-nb/lib/print.umd.min.js b/src/components/Print/vue-print-nb/lib/print.umd.min.js
new file mode 100644
index 0000000..5b3a458
--- /dev/null
+++ b/src/components/Print/vue-print-nb/lib/print.umd.min.js
@@ -0,0 +1,2 @@
+(function(t,e){"object"===typeof exports&&"object"===typeof module?module.exports=e():"function"===typeof define&&define.amd?define([],e):"object"===typeof exports?exports["print"]=e():t["print"]=e()})("undefined"!==typeof self?self:this,(function(){return function(t){var e={};function n(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},n.r=function(t){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"===typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)n.d(r,o,function(e){return t[e]}.bind(null,o));return r},n.n=function(t){var e=t&&t.__esModule?function(){return t["default"]}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s="fb15")}({"00ee":function(t,e,n){var r=n("b622"),o=r("toStringTag"),i={};i[o]="z",t.exports="[object z]"===String(i)},"0366":function(t,e,n){var r=n("1c0b");t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 0:return function(){return t.call(e)};case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},"057f":function(t,e,n){var r=n("fc6a"),o=n("241c").f,i={}.toString,c="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],a=function(t){try{return o(t)}catch(e){return c.slice()}};t.exports.f=function(t){return c&&"[object Window]"==i.call(t)?a(t):o(r(t))}},"06cf":function(t,e,n){var r=n("83ab"),o=n("d1e7"),i=n("5c6c"),c=n("fc6a"),a=n("c04e"),u=n("5135"),s=n("0cfb"),f=Object.getOwnPropertyDescriptor;e.f=r?f:function(t,e){if(t=c(t),e=a(e,!0),s)try{return f(t,e)}catch(n){}if(u(t,e))return i(!o.f.call(t,e),t[e])}},"0cb2":function(t,e,n){var r=n("7b0b"),o=Math.floor,i="".replace,c=/\$([$&'`]|\d\d?|<[^>]*>)/g,a=/\$([$&'`]|\d\d?)/g;t.exports=function(t,e,n,u,s,f){var l=n+t.length,d=u.length,p=a;return void 0!==s&&(s=r(s),p=c),i.call(f,p,(function(r,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return e.slice(0,n);case"'":return e.slice(l);case"<":c=s[i.slice(1,-1)];break;default:var a=+i;if(0===a)return r;if(a>d){var f=o(a/10);return 0===f?r:f<=d?void 0===u[f-1]?i.charAt(1):u[f-1]+i.charAt(1):r}c=u[a-1]}return void 0===c?"":c}))}},"0cfb":function(t,e,n){var r=n("83ab"),o=n("d039"),i=n("cc12");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},"14c3":function(t,e,n){var r=n("c6b6"),o=n("9263");t.exports=function(t,e){var n=t.exec;if("function"===typeof n){var i=n.call(t,e);if("object"!==typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},"1be4":function(t,e,n){var r=n("d066");t.exports=r("document","documentElement")},"1c0b":function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},"1d80":function(t,e){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},"1dde":function(t,e,n){var r=n("d039"),o=n("b622"),i=n("2d00"),c=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[],n=e.constructor={};return n[c]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},"23cb":function(t,e,n){var r=n("a691"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},"23e7":function(t,e,n){var r=n("da84"),o=n("06cf").f,i=n("9112"),c=n("6eeb"),a=n("ce4e"),u=n("e893"),s=n("94ca");t.exports=function(t,e){var n,f,l,d,p,v,b=t.target,y=t.global,h=t.stat;if(f=y?r:h?r[b]||a(b,{}):(r[b]||{}).prototype,f)for(l in e){if(p=e[l],t.noTargetGet?(v=o(f,l),d=v&&v.value):d=f[l],n=s(y?l:b+(h?".":"#")+l,t.forced),!n&&void 0!==d){if(typeof p===typeof d)continue;u(p,d)}(t.sham||d&&d.sham)&&i(p,"sham",!0),c(f,l,p,t)}}},"241c":function(t,e,n){var r=n("ca84"),o=n("7839"),i=o.concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,i)}},"25f0":function(t,e,n){"use strict";var r=n("6eeb"),o=n("825a"),i=n("d039"),c=n("ad6d"),a="toString",u=RegExp.prototype,s=u[a],f=i((function(){return"/a/b"!=s.call({source:"a",flags:"b"})})),l=s.name!=a;(f||l)&&r(RegExp.prototype,a,(function(){var t=o(this),e=String(t.source),n=t.flags,r=String(void 0===n&&t instanceof RegExp&&!("flags"in u)?c.call(t):n);return"/"+e+"/"+r}),{unsafe:!0})},2626:function(t,e,n){"use strict";var r=n("d066"),o=n("9bf2"),i=n("b622"),c=n("83ab"),a=i("species");t.exports=function(t){var e=r(t),n=o.f;c&&e&&!e[a]&&n(e,a,{configurable:!0,get:function(){return this}})}},"2d00":function(t,e,n){var r,o,i=n("da84"),c=n("342f"),a=i.process,u=a&&a.versions,s=u&&u.v8;s?(r=s.split("."),o=r[0]+r[1]):c&&(r=c.match(/Edge\/(\d+)/),(!r||r[1]>=74)&&(r=c.match(/Chrome\/(\d+)/),r&&(o=r[1]))),t.exports=o&&+o},"342f":function(t,e,n){var r=n("d066");t.exports=r("navigator","userAgent")||""},"37e8":function(t,e,n){var r=n("83ab"),o=n("9bf2"),i=n("825a"),c=n("df75");t.exports=r?Object.defineProperties:function(t,e){i(t);var n,r=c(e),a=r.length,u=0;while(a>u)o.f(t,n=r[u++],e[n]);return t}},"3bbe":function(t,e,n){var r=n("861d");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},"3ca3":function(t,e,n){"use strict";var r=n("6547").charAt,o=n("69f3"),i=n("7dd0"),c="String Iterator",a=o.set,u=o.getterFor(c);i(String,"String",(function(t){a(this,{type:c,string:String(t),index:0})}),(function(){var t,e=u(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},"3f8c":function(t,e){t.exports={}},"428f":function(t,e,n){var r=n("da84");t.exports=r},"44ad":function(t,e,n){var r=n("d039"),o=n("c6b6"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},"44d2":function(t,e,n){var r=n("b622"),o=n("7c73"),i=n("9bf2"),c=r("unscopables"),a=Array.prototype;void 0==a[c]&&i.f(a,c,{configurable:!0,value:o(null)}),t.exports=function(t){a[c][t]=!0}},"44e7":function(t,e,n){var r=n("861d"),o=n("c6b6"),i=n("b622"),c=i("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[c])?!!e:"RegExp"==o(t))}},4930:function(t,e,n){var r=n("d039");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},"4d63":function(t,e,n){var r=n("83ab"),o=n("da84"),i=n("94ca"),c=n("7156"),a=n("9bf2").f,u=n("241c").f,s=n("44e7"),f=n("ad6d"),l=n("9f7f"),d=n("6eeb"),p=n("d039"),v=n("69f3").set,b=n("2626"),y=n("b622"),h=y("match"),g=o.RegExp,m=g.prototype,x=/a/g,w=/a/g,S=new g(x)!==x,E=l.UNSUPPORTED_Y,O=r&&i("RegExp",!S||E||p((function(){return w[h]=!1,g(x)!=x||g(w)==w||"/a/i"!=g(x,"i")})));if(O){var A=function(t,e){var n,r=this instanceof A,o=s(t),i=void 0===e;if(!r&&o&&t.constructor===A&&i)return t;S?o&&!i&&(t=t.source):t instanceof A&&(i&&(e=f.call(t)),t=t.source),E&&(n=!!e&&e.indexOf("y")>-1,n&&(e=e.replace(/y/g,"")));var a=c(S?new g(t,e):g(t,e),r?this:m,A);return E&&n&&v(a,{sticky:n}),a},k=function(t){t in A||a(A,t,{configurable:!0,get:function(){return g[t]},set:function(e){g[t]=e}})},T=u(g),C=0;while(T.length>C)k(T[C++]);m.constructor=A,A.prototype=m,d(o,"RegExp",A)}b("RegExp")},"4d64":function(t,e,n){var r=n("fc6a"),o=n("50c4"),i=n("23cb"),c=function(t){return function(e,n,c){var a,u=r(e),s=o(u.length),f=i(c,s);if(t&&n!=n){while(s>f)if(a=u[f++],a!=a)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:c(!0),indexOf:c(!1)}},"50c4":function(t,e,n){var r=n("a691"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},5135:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},5319:function(t,e,n){"use strict";var r=n("d784"),o=n("825a"),i=n("50c4"),c=n("a691"),a=n("1d80"),u=n("8aa5"),s=n("0cb2"),f=n("14c3"),l=Math.max,d=Math.min,p=function(t){return void 0===t?t:String(t)};r("replace",2,(function(t,e,n,r){var v=r.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,b=r.REPLACE_KEEPS_$0,y=v?"$":"$0";return[function(n,r){var o=a(this),i=void 0==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,r){if(!v&&b||"string"===typeof r&&-1===r.indexOf(y)){var a=n(e,t,this,r);if(a.done)return a.value}var h=o(t),g=String(this),m="function"===typeof r;m||(r=String(r));var x=h.global;if(x){var w=h.unicode;h.lastIndex=0}var S=[];while(1){var E=f(h,g);if(null===E)break;if(S.push(E),!x)break;var O=String(E[0]);""===O&&(h.lastIndex=u(g,i(h.lastIndex),w))}for(var A="",k=0,T=0;T<S.length;T++){E=S[T];for(var C=String(E[0]),P=l(d(c(E.index),g.length),0),j=[],I=1;I<E.length;I++)j.push(p(E[I]));var B=E.groups;if(m){var L=[C].concat(j,P,g);void 0!==B&&L.push(B);var R=String(r.apply(void 0,L))}else R=s(C,g,P,j,B,r);P>=k&&(A+=g.slice(k,P)+R,k=P+C.length)}return A+g.slice(k)}]}))},5692:function(t,e,n){var r=n("c430"),o=n("c6cd");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.9.0",mode:r?"pure":"global",copyright:"漏 2021 Denis Pushkarev (zloirock.ru)"})},"56ef":function(t,e,n){var r=n("d066"),o=n("241c"),i=n("7418"),c=n("825a");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(c(t)),n=i.f;return n?e.concat(n(t)):e}},"5c6c":function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},6547:function(t,e,n){var r=n("a691"),o=n("1d80"),i=function(t){return function(e,n){var i,c,a=String(o(e)),u=r(n),s=a.length;return u<0||u>=s?t?"":void 0:(i=a.charCodeAt(u),i<55296||i>56319||u+1===s||(c=a.charCodeAt(u+1))<56320||c>57343?t?a.charAt(u):i:t?a.slice(u,u+2):c-56320+(i-55296<<10)+65536)}};t.exports={codeAt:i(!1),charAt:i(!0)}},"65f0":function(t,e,n){var r=n("861d"),o=n("e8b5"),i=n("b622"),c=i("species");t.exports=function(t,e){var n;return o(t)&&(n=t.constructor,"function"!=typeof n||n!==Array&&!o(n.prototype)?r(n)&&(n=n[c],null===n&&(n=void 0)):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},"69f3":function(t,e,n){var r,o,i,c=n("7f9a"),a=n("da84"),u=n("861d"),s=n("9112"),f=n("5135"),l=n("c6cd"),d=n("f772"),p=n("d012"),v=a.WeakMap,b=function(t){return i(t)?o(t):r(t,{})},y=function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}};if(c){var h=l.state||(l.state=new v),g=h.get,m=h.has,x=h.set;r=function(t,e){return e.facade=t,x.call(h,t,e),e},o=function(t){return g.call(h,t)||{}},i=function(t){return m.call(h,t)}}else{var w=d("state");p[w]=!0,r=function(t,e){return e.facade=t,s(t,w,e),e},o=function(t){return f(t,w)?t[w]:{}},i=function(t){return f(t,w)}}t.exports={set:r,get:o,has:i,enforce:b,getterFor:y}},"6eeb":function(t,e,n){var r=n("da84"),o=n("9112"),i=n("5135"),c=n("ce4e"),a=n("8925"),u=n("69f3"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,a){var u,s=!!a&&!!a.unsafe,d=!!a&&!!a.enumerable,p=!!a&&!!a.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),u=f(n),u.source||(u.source=l.join("string"==typeof e?e:""))),t!==r?(s?!p&&t[e]&&(d=!0):delete t[e],d?t[e]=n:o(t,e,n)):d?t[e]=n:c(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||a(this)}))},7156:function(t,e,n){var r=n("861d"),o=n("d2bb");t.exports=function(t,e,n){var i,c;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(c=i.prototype)&&c!==n.prototype&&o(t,c),t}},7418:function(t,e){e.f=Object.getOwnPropertySymbols},"746f":function(t,e,n){var r=n("428f"),o=n("5135"),i=n("e538"),c=n("9bf2").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||c(e,t,{value:i.f(t)})}},7839:function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},"7b0b":function(t,e,n){var r=n("1d80");t.exports=function(t){return Object(r(t))}},"7c73":function(t,e,n){var r,o=n("825a"),i=n("37e8"),c=n("7839"),a=n("d012"),u=n("1be4"),s=n("cc12"),f=n("f772"),l=">",d="<",p="prototype",v="script",b=f("IE_PROTO"),y=function(){},h=function(t){return d+v+l+t+d+"/"+v+l},g=function(t){t.write(h("")),t.close();var e=t.parentWindow.Object;return t=null,e},m=function(){var t,e=s("iframe"),n="java"+v+":";return e.style.display="none",u.appendChild(e),e.src=String(n),t=e.contentWindow.document,t.open(),t.write(h("document.F=Object")),t.close(),t.F},x=function(){try{r=document.domain&&new ActiveXObject("htmlfile")}catch(e){}x=r?g(r):m();var t=c.length;while(t--)delete x[p][c[t]];return x()};a[b]=!0,t.exports=Object.create||function(t,e){var n;return null!==t?(y[p]=o(t),n=new y,y[p]=null,n[b]=t):n=x(),void 0===e?n:i(n,e)}},"7dd0":function(t,e,n){"use strict";var r=n("23e7"),o=n("9ed3"),i=n("e163"),c=n("d2bb"),a=n("d44e"),u=n("9112"),s=n("6eeb"),f=n("b622"),l=n("c430"),d=n("3f8c"),p=n("ae93"),v=p.IteratorPrototype,b=p.BUGGY_SAFARI_ITERATORS,y=f("iterator"),h="keys",g="values",m="entries",x=function(){return this};t.exports=function(t,e,n,f,p,w,S){o(n,e,f);var E,O,A,k=function(t){if(t===p&&I)return I;if(!b&&t in P)return P[t];switch(t){case h:return function(){return new n(this,t)};case g:return function(){return new n(this,t)};case m:return function(){return new n(this,t)}}return function(){return new n(this)}},T=e+" Iterator",C=!1,P=t.prototype,j=P[y]||P["@@iterator"]||p&&P[p],I=!b&&j||k(p),B="Array"==e&&P.entries||j;if(B&&(E=i(B.call(new t)),v!==Object.prototype&&E.next&&(l||i(E)===v||(c?c(E,v):"function"!=typeof E[y]&&u(E,y,x)),a(E,T,!0,!0),l&&(d[T]=x))),p==g&&j&&j.name!==g&&(C=!0,I=function(){return j.call(this)}),l&&!S||P[y]===I||u(P,y,I),d[e]=I,p)if(O={values:k(g),keys:w?I:k(h),entries:k(m)},S)for(A in O)(b||C||!(A in P))&&s(P,A,O[A]);else r({target:e,proto:!0,forced:b||C},O);return O}},"7f9a":function(t,e,n){var r=n("da84"),o=n("8925"),i=r.WeakMap;t.exports="function"===typeof i&&/native code/.test(o(i))},"825a":function(t,e,n){var r=n("861d");t.exports=function(t){if(!r(t))throw TypeError(String(t)+" is not an object");return t}},"83ab":function(t,e,n){var r=n("d039");t.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},8418:function(t,e,n){"use strict";var r=n("c04e"),o=n("9bf2"),i=n("5c6c");t.exports=function(t,e,n){var c=r(e);c in t?o.f(t,c,i(0,n)):t[c]=n}},"861d":function(t,e){t.exports=function(t){return"object"===typeof t?null!==t:"function"===typeof t}},8875:function(t,e,n){var r,o,i;(function(n,c){o=[],r=c,i="function"===typeof r?r.apply(e,o):r,void 0===i||(t.exports=i)})("undefined"!==typeof self&&self,(function(){function t(){var e=Object.getOwnPropertyDescriptor(document,"currentScript");if(!e&&"currentScript"in document&&document.currentScript)return document.currentScript;if(e&&e.get!==t&&document.currentScript)return document.currentScript;try{throw new Error}catch(p){var n,r,o,i=/.*at [^(]*\((.*):(.+):(.+)\)$/gi,c=/@([^@]*):(\d+):(\d+)\s*$/gi,a=i.exec(p.stack)||c.exec(p.stack),u=a&&a[1]||!1,s=a&&a[2]||!1,f=document.location.href.replace(document.location.hash,""),l=document.getElementsByTagName("script");u===f&&(n=document.documentElement.outerHTML,r=new RegExp("(?:[^\\n]+?\\n){0,"+(s-2)+"}[^<]*<script>([\\d\\D]*?)<\\/script>[\\d\\D]*","i"),o=n.replace(r,"$1").trim());for(var d=0;d<l.length;d++){if("interactive"===l[d].readyState)return l[d];if(l[d].src===u)return l[d];if(u===f&&l[d].innerHTML&&l[d].innerHTML.trim()===o)return l[d]}return null}}return t}))},8925:function(t,e,n){var r=n("c6cd"),o=Function.toString;"function"!=typeof r.inspectSource&&(r.inspectSource=function(t){return o.call(t)}),t.exports=r.inspectSource},"8aa5":function(t,e,n){"use strict";var r=n("6547").charAt;t.exports=function(t,e,n){return e+(n?r(t,e).length:1)}},"90e3":function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++n+r).toString(36)}},9112:function(t,e,n){var r=n("83ab"),o=n("9bf2"),i=n("5c6c");t.exports=r?function(t,e,n){return o.f(t,e,i(1,n))}:function(t,e,n){return t[e]=n,t}},9263:function(t,e,n){"use strict";var r=n("ad6d"),o=n("9f7f"),i=RegExp.prototype.exec,c=String.prototype.replace,a=i,u=function(){var t=/a/,e=/b*/g;return i.call(t,"a"),i.call(e,"a"),0!==t.lastIndex||0!==e.lastIndex}(),s=o.UNSUPPORTED_Y||o.BROKEN_CARET,f=void 0!==/()??/.exec("")[1],l=u||f||s;l&&(a=function(t){var e,n,o,a,l=this,d=s&&l.sticky,p=r.call(l),v=l.source,b=0,y=t;return d&&(p=p.replace("y",""),-1===p.indexOf("g")&&(p+="g"),y=String(t).slice(l.lastIndex),l.lastIndex>0&&(!l.multiline||l.multiline&&"\n"!==t[l.lastIndex-1])&&(v="(?: "+v+")",y=" "+y,b++),n=new RegExp("^(?:"+v+")",p)),f&&(n=new RegExp("^"+v+"$(?!\\s)",p)),u&&(e=l.lastIndex),o=i.call(d?n:l,y),d?o?(o.input=o.input.slice(b),o[0]=o[0].slice(b),o.index=l.lastIndex,l.lastIndex+=o[0].length):l.lastIndex=0:u&&o&&(l.lastIndex=l.global?o.index+o[0].length:e),f&&o&&o.length>1&&c.call(o[0],n,(function(){for(a=1;a<arguments.length-2;a++)void 0===arguments[a]&&(o[a]=void 0)})),o}),t.exports=a},"94ca":function(t,e,n){var r=n("d039"),o=/#|\.prototype\./,i=function(t,e){var n=a[c(t)];return n==s||n!=u&&("function"==typeof e?r(e):!!e)},c=i.normalize=function(t){return String(t).replace(o,".").toLowerCase()},a=i.data={},u=i.NATIVE="N",s=i.POLYFILL="P";t.exports=i},"99af":function(t,e,n){"use strict";var r=n("23e7"),o=n("d039"),i=n("e8b5"),c=n("861d"),a=n("7b0b"),u=n("50c4"),s=n("8418"),f=n("65f0"),l=n("1dde"),d=n("b622"),p=n("2d00"),v=d("isConcatSpreadable"),b=9007199254740991,y="Maximum allowed index exceeded",h=p>=51||!o((function(){var t=[];return t[v]=!1,t.concat()[0]!==t})),g=l("concat"),m=function(t){if(!c(t))return!1;var e=t[v];return void 0!==e?!!e:i(t)},x=!h||!g;r({target:"Array",proto:!0,forced:x},{concat:function(t){var e,n,r,o,i,c=a(this),l=f(c,0),d=0;for(e=-1,r=arguments.length;e<r;e++)if(i=-1===e?c:arguments[e],m(i)){if(o=u(i.length),d+o>b)throw TypeError(y);for(n=0;n<o;n++,d++)n in i&&s(l,d,i[n])}else{if(d>=b)throw TypeError(y);s(l,d++,i)}return l.length=d,l}})},"9bf2":function(t,e,n){var r=n("83ab"),o=n("0cfb"),i=n("825a"),c=n("c04e"),a=Object.defineProperty;e.f=r?a:function(t,e,n){if(i(t),e=c(e,!0),i(n),o)try{return a(t,e,n)}catch(r){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[e]=n.value),t}},"9ed3":function(t,e,n){"use strict";var r=n("ae93").IteratorPrototype,o=n("7c73"),i=n("5c6c"),c=n("d44e"),a=n("3f8c"),u=function(){return this};t.exports=function(t,e,n){var s=e+" Iterator";return t.prototype=o(r,{next:i(1,n)}),c(t,s,!1,!0),a[s]=u,t}},"9f7f":function(t,e,n){"use strict";var r=n("d039");function o(t,e){return RegExp(t,e)}e.UNSUPPORTED_Y=r((function(){var t=o("a","y");return t.lastIndex=2,null!=t.exec("abcd")})),e.BROKEN_CARET=r((function(){var t=o("^r","gy");return t.lastIndex=2,null!=t.exec("str")}))},a4d3:function(t,e,n){"use strict";var r=n("23e7"),o=n("da84"),i=n("d066"),c=n("c430"),a=n("83ab"),u=n("4930"),s=n("fdbf"),f=n("d039"),l=n("5135"),d=n("e8b5"),p=n("861d"),v=n("825a"),b=n("7b0b"),y=n("fc6a"),h=n("c04e"),g=n("5c6c"),m=n("7c73"),x=n("df75"),w=n("241c"),S=n("057f"),E=n("7418"),O=n("06cf"),A=n("9bf2"),k=n("d1e7"),T=n("9112"),C=n("6eeb"),P=n("5692"),j=n("f772"),I=n("d012"),B=n("90e3"),L=n("b622"),R=n("e538"),_=n("746f"),M=n("d44e"),N=n("69f3"),U=n("b727").forEach,D=j("hidden"),H="Symbol",$="prototype",q=L("toPrimitive"),F=N.set,W=N.getterFor(H),G=Object[$],z=o.Symbol,V=i("JSON","stringify"),Y=O.f,X=A.f,K=S.f,J=k.f,Q=P("symbols"),Z=P("op-symbols"),tt=P("string-to-symbol-registry"),et=P("symbol-to-string-registry"),nt=P("wks"),rt=o.QObject,ot=!rt||!rt[$]||!rt[$].findChild,it=a&&f((function(){return 7!=m(X({},"a",{get:function(){return X(this,"a",{value:7}).a}})).a}))?function(t,e,n){var r=Y(G,e);r&&delete G[e],X(t,e,n),r&&t!==G&&X(G,e,r)}:X,ct=function(t,e){var n=Q[t]=m(z[$]);return F(n,{type:H,tag:t,description:e}),a||(n.description=e),n},at=s?function(t){return"symbol"==typeof t}:function(t){return Object(t)instanceof z},ut=function(t,e,n){t===G&&ut(Z,e,n),v(t);var r=h(e,!0);return v(n),l(Q,r)?(n.enumerable?(l(t,D)&&t[D][r]&&(t[D][r]=!1),n=m(n,{enumerable:g(0,!1)})):(l(t,D)||X(t,D,g(1,{})),t[D][r]=!0),it(t,r,n)):X(t,r,n)},st=function(t,e){v(t);var n=y(e),r=x(n).concat(vt(n));return U(r,(function(e){a&&!lt.call(n,e)||ut(t,e,n[e])})),t},ft=function(t,e){return void 0===e?m(t):st(m(t),e)},lt=function(t){var e=h(t,!0),n=J.call(this,e);return!(this===G&&l(Q,e)&&!l(Z,e))&&(!(n||!l(this,e)||!l(Q,e)||l(this,D)&&this[D][e])||n)},dt=function(t,e){var n=y(t),r=h(e,!0);if(n!==G||!l(Q,r)||l(Z,r)){var o=Y(n,r);return!o||!l(Q,r)||l(n,D)&&n[D][r]||(o.enumerable=!0),o}},pt=function(t){var e=K(y(t)),n=[];return U(e,(function(t){l(Q,t)||l(I,t)||n.push(t)})),n},vt=function(t){var e=t===G,n=K(e?Z:y(t)),r=[];return U(n,(function(t){!l(Q,t)||e&&!l(G,t)||r.push(Q[t])})),r};if(u||(z=function(){if(this instanceof z)throw TypeError("Symbol is not a constructor");var t=arguments.length&&void 0!==arguments[0]?String(arguments[0]):void 0,e=B(t),n=function(t){this===G&&n.call(Z,t),l(this,D)&&l(this[D],e)&&(this[D][e]=!1),it(this,e,g(1,t))};return a&&ot&&it(G,e,{configurable:!0,set:n}),ct(e,t)},C(z[$],"toString",(function(){return W(this).tag})),C(z,"withoutSetter",(function(t){return ct(B(t),t)})),k.f=lt,A.f=ut,O.f=dt,w.f=S.f=pt,E.f=vt,R.f=function(t){return ct(L(t),t)},a&&(X(z[$],"description",{configurable:!0,get:function(){return W(this).description}}),c||C(G,"propertyIsEnumerable",lt,{unsafe:!0}))),r({global:!0,wrap:!0,forced:!u,sham:!u},{Symbol:z}),U(x(nt),(function(t){_(t)})),r({target:H,stat:!0,forced:!u},{for:function(t){var e=String(t);if(l(tt,e))return tt[e];var n=z(e);return tt[e]=n,et[n]=e,n},keyFor:function(t){if(!at(t))throw TypeError(t+" is not a symbol");if(l(et,t))return et[t]},useSetter:function(){ot=!0},useSimple:function(){ot=!1}}),r({target:"Object",stat:!0,forced:!u,sham:!a},{create:ft,defineProperty:ut,defineProperties:st,getOwnPropertyDescriptor:dt}),r({target:"Object",stat:!0,forced:!u},{getOwnPropertyNames:pt,getOwnPropertySymbols:vt}),r({target:"Object",stat:!0,forced:f((function(){E.f(1)}))},{getOwnPropertySymbols:function(t){return E.f(b(t))}}),V){var bt=!u||f((function(){var t=z();return"[null]"!=V([t])||"{}"!=V({a:t})||"{}"!=V(Object(t))}));r({target:"JSON",stat:!0,forced:bt},{stringify:function(t,e,n){var r,o=[t],i=1;while(arguments.length>i)o.push(arguments[i++]);if(r=e,(p(e)||void 0!==t)&&!at(t))return d(e)||(e=function(t,e){if("function"==typeof r&&(e=r.call(this,t,e)),!at(e))return e}),o[1]=e,V.apply(null,o)}})}z[$][q]||T(z[$],q,z[$].valueOf),M(z,H),I[D]=!0},a691:function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},ac1f:function(t,e,n){"use strict";var r=n("23e7"),o=n("9263");r({target:"RegExp",proto:!0,forced:/./.exec!==o},{exec:o})},ad6d:function(t,e,n){"use strict";var r=n("825a");t.exports=function(){var t=r(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},ae93:function(t,e,n){"use strict";var r,o,i,c=n("d039"),a=n("e163"),u=n("9112"),s=n("5135"),f=n("b622"),l=n("c430"),d=f("iterator"),p=!1,v=function(){return this};[].keys&&(i=[].keys(),"next"in i?(o=a(a(i)),o!==Object.prototype&&(r=o)):p=!0);var b=void 0==r||c((function(){var t={};return r[d].call(t)!==t}));b&&(r={}),l&&!b||s(r,d)||u(r,d,v),t.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:p}},b041:function(t,e,n){"use strict";var r=n("00ee"),o=n("f5df");t.exports=r?{}.toString:function(){return"[object "+o(this)+"]"}},b622:function(t,e,n){var r=n("da84"),o=n("5692"),i=n("5135"),c=n("90e3"),a=n("4930"),u=n("fdbf"),s=o("wks"),f=r.Symbol,l=u?f:f&&f.withoutSetter||c;t.exports=function(t){return i(s,t)||(a&&i(f,t)?s[t]=f[t]:s[t]=l("Symbol."+t)),s[t]}},b727:function(t,e,n){var r=n("0366"),o=n("44ad"),i=n("7b0b"),c=n("50c4"),a=n("65f0"),u=[].push,s=function(t){var e=1==t,n=2==t,s=3==t,f=4==t,l=6==t,d=7==t,p=5==t||l;return function(v,b,y,h){for(var g,m,x=i(v),w=o(x),S=r(b,y,3),E=c(w.length),O=0,A=h||a,k=e?A(v,E):n||d?A(v,0):void 0;E>O;O++)if((p||O in w)&&(g=w[O],m=S(g,O,x),t))if(e)k[O]=m;else if(m)switch(t){case 3:return!0;case 5:return g;case 6:return O;case 2:u.call(k,g)}else switch(t){case 4:return!1;case 7:u.call(k,g)}return l?-1:s||f?f:k}};t.exports={forEach:s(0),map:s(1),filter:s(2),some:s(3),every:s(4),find:s(5),findIndex:s(6),filterOut:s(7)}},c04e:function(t,e,n){var r=n("861d");t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},c430:function(t,e){t.exports=!1},c6b6:function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},c6cd:function(t,e,n){var r=n("da84"),o=n("ce4e"),i="__core-js_shared__",c=r[i]||o(i,{});t.exports=c},c8ba:function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(r){"object"===typeof window&&(n=window)}t.exports=n},ca84:function(t,e,n){var r=n("5135"),o=n("fc6a"),i=n("4d64").indexOf,c=n("d012");t.exports=function(t,e){var n,a=o(t),u=0,s=[];for(n in a)!r(c,n)&&r(a,n)&&s.push(n);while(e.length>u)r(a,n=e[u++])&&(~i(s,n)||s.push(n));return s}},cc12:function(t,e,n){var r=n("da84"),o=n("861d"),i=r.document,c=o(i)&&o(i.createElement);t.exports=function(t){return c?i.createElement(t):{}}},ce4e:function(t,e,n){var r=n("da84"),o=n("9112");t.exports=function(t,e){try{o(r,t,e)}catch(n){r[t]=e}return e}},d012:function(t,e){t.exports={}},d039:function(t,e){t.exports=function(t){try{return!!t()}catch(e){return!0}}},d066:function(t,e,n){var r=n("428f"),o=n("da84"),i=function(t){return"function"==typeof t?t:void 0};t.exports=function(t,e){return arguments.length<2?i(r[t])||i(o[t]):r[t]&&r[t][e]||o[t]&&o[t][e]}},d1e7:function(t,e,n){"use strict";var r={}.propertyIsEnumerable,o=Object.getOwnPropertyDescriptor,i=o&&!r.call({1:2},1);e.f=i?function(t){var e=o(this,t);return!!e&&e.enumerable}:r},d28b:function(t,e,n){var r=n("746f");r("iterator")},d2bb:function(t,e,n){var r=n("825a"),o=n("3bbe");t.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,n={};try{t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set,t.call(n,[]),e=n instanceof Array}catch(i){}return function(n,i){return r(n),o(i),e?t.call(n,i):n.__proto__=i,n}}():void 0)},d3b7:function(t,e,n){var r=n("00ee"),o=n("6eeb"),i=n("b041");r||o(Object.prototype,"toString",i,{unsafe:!0})},d44e:function(t,e,n){var r=n("9bf2").f,o=n("5135"),i=n("b622"),c=i("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,c)&&r(t,c,{configurable:!0,value:e})}},d784:function(t,e,n){"use strict";n("ac1f");var r=n("6eeb"),o=n("d039"),i=n("b622"),c=n("9263"),a=n("9112"),u=i("species"),s=!o((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),f=function(){return"$0"==="a".replace(/./,"$0")}(),l=i("replace"),d=function(){return!!/./[l]&&""===/./[l]("a","$0")}(),p=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,l){var v=i(t),b=!o((function(){var e={};return e[v]=function(){return 7},7!=""[t](e)})),y=b&&!o((function(){var e=!1,n=/a/;return"split"===t&&(n={},n.constructor={},n.constructor[u]=function(){return n},n.flags="",n[v]=/./[v]),n.exec=function(){return e=!0,null},n[v](""),!e}));if(!b||!y||"replace"===t&&(!s||!f||d)||"split"===t&&!p){var h=/./[v],g=n(v,""[t],(function(t,e,n,r,o){return e.exec===c?b&&!o?{done:!0,value:h.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:d}),m=g[0],x=g[1];r(String.prototype,t,m),r(RegExp.prototype,v,2==e?function(t,e){return x.call(t,this,e)}:function(t){return x.call(t,this)})}l&&a(RegExp.prototype[v],"sham",!0)}},da84:function(t,e,n){(function(e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof e&&e)||function(){return this}()||Function("return this")()}).call(this,n("c8ba"))},ddb0:function(t,e,n){var r=n("da84"),o=n("fdbc"),i=n("e260"),c=n("9112"),a=n("b622"),u=a("iterator"),s=a("toStringTag"),f=i.values;for(var l in o){var d=r[l],p=d&&d.prototype;if(p){if(p[u]!==f)try{c(p,u,f)}catch(b){p[u]=f}if(p[s]||c(p,s,l),o[l])for(var v in i)if(p[v]!==i[v])try{c(p,v,i[v])}catch(b){p[v]=i[v]}}}},df75:function(t,e,n){var r=n("ca84"),o=n("7839");t.exports=Object.keys||function(t){return r(t,o)}},e01a:function(t,e,n){"use strict";var r=n("23e7"),o=n("83ab"),i=n("da84"),c=n("5135"),a=n("861d"),u=n("9bf2").f,s=n("e893"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},d=function(){var t=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),e=this instanceof d?new f(t):void 0===t?f():f(t);return""===t&&(l[e]=!0),e};s(d,f);var p=d.prototype=f.prototype;p.constructor=d;var v=p.toString,b="Symbol(test)"==String(f("test")),y=/^Symbol\((.*)\)[^)]+$/;u(p,"description",{configurable:!0,get:function(){var t=a(this)?this.valueOf():this,e=v.call(t);if(c(l,t))return"";var n=b?e.slice(7,-1):e.replace(y,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:d})}},e163:function(t,e,n){var r=n("5135"),o=n("7b0b"),i=n("f772"),c=n("e177"),a=i("IE_PROTO"),u=Object.prototype;t.exports=c?Object.getPrototypeOf:function(t){return t=o(t),r(t,a)?t[a]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},e177:function(t,e,n){var r=n("d039");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},e260:function(t,e,n){"use strict";var r=n("fc6a"),o=n("44d2"),i=n("3f8c"),c=n("69f3"),a=n("7dd0"),u="Array Iterator",s=c.set,f=c.getterFor(u);t.exports=a(Array,"Array",(function(t,e){s(this,{type:u,target:r(t),index:0,kind:e})}),(function(){var t=f(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},e538:function(t,e,n){var r=n("b622");e.f=r},e893:function(t,e,n){var r=n("5135"),o=n("56ef"),i=n("06cf"),c=n("9bf2");t.exports=function(t,e){for(var n=o(e),a=c.f,u=i.f,s=0;s<n.length;s++){var f=n[s];r(t,f)||a(t,f,u(e,f))}}},e8b5:function(t,e,n){var r=n("c6b6");t.exports=Array.isArray||function(t){return"Array"==r(t)}},f5df:function(t,e,n){var r=n("00ee"),o=n("c6b6"),i=n("b622"),c=i("toStringTag"),a="Arguments"==o(function(){return arguments}()),u=function(t,e){try{return t[e]}catch(n){}};t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=u(e=Object(t),c))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},f772:function(t,e,n){var r=n("5692"),o=n("90e3"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},fb15:function(t,e,n){"use strict";if(n.r(e),"undefined"!==typeof window){var r=window.document.currentScript,o=n("8875");r=o(),"currentScript"in document||Object.defineProperty(document,"currentScript",{get:o});var i=r&&r.src.match(/(.+\/)[^/]+\.js(\?.*)?$/);i&&(n.p=i[1])}n("a4d3"),n("e01a"),n("d3b7"),n("d28b"),n("3ca3"),n("ddb0");function c(t){return c="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"===typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},c(t)}n("5319"),n("ac1f"),n("4d63"),n("25f0");function a(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function u(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function s(t,e,n){return e&&u(t.prototype,e),n&&u(t,n),t}n("99af");var f=function(){return!(!window.ActiveXobject&&!("ActiveXObject"in window))},l=function(){return!!/Trident\/7\./.test(navigator.userAgent)},d=function(t){return f()||l()?t.removeNode(!0):t.remove(),t},p=function(){function t(e){a(this,t),this.standards={strict:"strict",loose:"loose",html5:"html5"},this.previewBody=null,this.close=null,this.previewBodyUtilPrintBtn=null,this.selectArray=[],this.counter=0,this.settings={standard:this.standards.html5},Object.assign(this.settings,e),this.init()}return s(t,[{key:"init",value:function(){this.counter++,this.settings.id="printArea_".concat(this.counter);var t="";this.settings.url&&!this.settings.asyncUrl&&(t=this.settings.url);var e=this;if(this.settings.asyncUrl)e.settings.asyncUrl((function(t){var n=e.getPrintWindow(t);e.settings.preview?e.previewIfrmaeLoad():e.print(n)}),e.settings.vue);else{var n=this.getPrintWindow(t);this.settings.url||this.write(n.doc),this.settings.preview?this.previewIfrmaeLoad():this.print(n)}}},{key:"addEvent",value:function(t,e,n){t.addEventListener?t.addEventListener(e,n,!1):t.attachEvent?t.attachEvent("on"+e,n):t["on"+e]=n}},{key:"previewIfrmaeLoad",value:function(){var t=document.getElementById("vue-pirnt-nb-previewBox");if(t){var e=this,n=t.querySelector("iframe");this.settings.previewBeforeOpenCallback(),this.addEvent(n,"load",(function(){e.previewBoxShow(),e.removeCanvasImg(),e.settings.previewOpenCallback()})),this.addEvent(t.querySelector(".previewBodyUtilPrintBtn"),"click",(function(){e.settings.beforeOpenCallback(),e.settings.openCallback(),n.contentWindow.print(),e.settings.closeCallback()}))}}},{key:"removeCanvasImg",value:function(){var t=this;try{if(t.elsdom)for(var e=t.elsdom.querySelectorAll(".canvasImg"),n=0;n<e.length;n++)d(e[n])}catch(r){console.log(r)}}},{key:"print",value:function(t){var e=this,n=document.getElementById(this.settings.id)||t.f,r=document.getElementById(this.settings.id).contentWindow||t.f.contentWindow,o=function(){r.focus(),e.settings.openCallback(),r.print(),d(n),e.settings.closeCallback(),e.removeCanvasImg()};e.settings.beforeOpenCallback(),e.addEvent(n,"load",(function(){o()}))}},{key:"write",value:function(t){t.open(),t.write("".concat(this.docType(),"<html>").concat(this.getHead()).concat(this.getBody(),"</html>")),t.close()}},{key:"docType",value:function(){if(this.settings.standard===this.standards.html5)return"<!DOCTYPE html>";var t=this.settings.standard===this.standards.loose?" Transitional":"",e=this.settings.standard===this.standards.loose?"loose":"strict";return'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01'.concat(t,'//EN" "http://www.w3.org/TR/html4/').concat(e,'.dtd">')}},{key:"getHead",value:function(){var t="",e="",n="";this.settings.extraHead&&this.settings.extraHead.replace(/([^,]+)/g,(function(e){t+=e})),[].forEach.call(document.querySelectorAll("link"),(function(t){t.href.indexOf(".css")>=0&&(e+='<link type="text/css" rel="stylesheet" href="'.concat(t.href,'" >'))}));var r=document.styleSheets;if(r&&r.length>0)for(var o=0;o<r.length;o++)try{if(r[o].cssRules||r[o].rules)for(var i=r[o].cssRules||r[o].rules,c=0;c<i.length;c++)n+=i[c].cssText}catch(a){console.log(r[o].href+a)}return this.settings.extraCss&&this.settings.extraCss.replace(/([^,\s]+)/g,(function(t){e+='<link type="text/css" rel="stylesheet" href="'.concat(t,'">')})),"<head><title>".concat(this.settings.popTitle,"</title>").concat(t).concat(e,'<style type="text/css">').concat(n,"</style></head>")}},{key:"getBody",value:function(){var t=this.settings.ids;t=t.replace(new RegExp("#","g"),""),this.elsdom=this.beforeHanler(document.getElementById(t));var e=this.getFormData(this.elsdom),n=e.outerHTML;return"<body>"+n+"</body>"}},{key:"beforeHanler",value:function(t){for(var e=t.querySelectorAll("canvas"),n=0;n<e.length;n++)if(!e[n].style.display){var r=e[n].parentNode,o=e[n].toDataURL("image/png"),i=new Image;i.className="canvasImg",i.style.display="none",i.src=o,r.appendChild(i)}return t}},{key:"getFormData",value:function(t){for(var e=t.cloneNode(!0),n=e.querySelectorAll("input,select,textarea"),r=e.querySelectorAll(".canvasImg,canvas"),o=-1,i=0;i<r.length;i++){var c=r[i].parentNode,a=r[i];"canvas"===a.tagName.toLowerCase()?c.removeChild(a):a.style.display="block"}for(var u=0;u<n.length;u++){var s=n[u],f=s.getAttribute("type"),l=n[u];if(f||(f="SELECT"===s.tagName?"select":"TEXTAREA"===s.tagName?"textarea":""),"INPUT"===s.tagName)"radio"===f||"checkbox"===f?s.checked&&l.setAttribute("checked",s.checked):(l.value=s.value,l.setAttribute("value",s.value));else if("select"===f){o++;for(var d=0;d<t.querySelectorAll("select").length;d++){var p=t.querySelectorAll("select")[d];if(!p.getAttribute("newbs")&&p.setAttribute("newbs",d),p.getAttribute("newbs")==o){var v=t.querySelectorAll("select")[o].selectedIndex;s.options[v].setAttribute("selected",!0)}}}else l.innerHTML=s.value,l.setAttribute("html",s.value)}return e}},{key:"getPrintWindow",value:function(t){var e=this.Iframe(t);return{f:e,win:e.contentWindow||e,doc:e.doc}}},{key:"previewBoxShow",value:function(){var t=document.getElementById("vue-pirnt-nb-previewBox");t&&(document.querySelector("html").setAttribute("style","overflow: hidden"),t.style.display="block")}},{key:"previewBoxHide",value:function(){var t=document.getElementById("vue-pirnt-nb-previewBox");t&&(document.querySelector("html").setAttribute("style","overflow: visible;"),t.querySelector("iframe")&&d(t.querySelector("iframe")),t.style.display="none")}},{key:"previewBox",value:function(){var t=document.getElementById("vue-pirnt-nb-previewBox"),e="previewBody";if(t)return t.querySelector("iframe")&&d(t.querySelector("iframe")),{close:t.querySelector(".previewClose"),previewBody:t.querySelector(".".concat(e))};var n=document.createElement("div");n.setAttribute("id","vue-pirnt-nb-previewBox"),n.setAttribute("style","position: fixed;top: 0px;left: 0px;width: 100%;height: 100%;background: white;display:none"),n.style.zIndex=this.settings.zIndex;var r=document.createElement("div");r.setAttribute("class","previewHeader"),r.setAttribute("style","padding: 5px 20px;"),r.innerHTML=this.settings.previewTitle,n.appendChild(r),this.close=document.createElement("div");var o=this.close;o.setAttribute("class","previewClose"),o.setAttribute("style","position: absolute;top: 5px;right: 20px;width: 25px;height: 20px;cursor: pointer;");var i=document.createElement("div"),c=document.createElement("div");i.setAttribute("class","closeBefore"),i.setAttribute("style","position: absolute;width: 3px;height: 100%;background: #040404;transform: rotate(45deg); top: 0px;left: 50%;"),c.setAttribute("class","closeAfter"),c.setAttribute("style","position: absolute;width: 3px;height: 100%;background: #040404;transform: rotate(-45deg); top: 0px;left: 50%;"),o.appendChild(i),o.appendChild(c),r.appendChild(o),this.previewBody=document.createElement("div");var a=this.previewBody;a.setAttribute("class",e),a.setAttribute("style","display: flex;flex-direction: column; height: 100%;"),n.appendChild(a);var u=document.createElement("div");u.setAttribute("class","previewBodyUtil"),u.setAttribute("style","height: 32px;background: #474747;position: relative;"),a.appendChild(u),this.previewBodyUtilPrintBtn=document.createElement("div");var s=this.previewBodyUtilPrintBtn;return s.setAttribute("class","previewBodyUtilPrintBtn"),s.innerHTML=this.settings.previewPrintBtnLabel,s.setAttribute("style","position: absolute;padding: 2px 10px;margin-top: 3px;left: 24px;font-size: 14px;color: white;cursor: pointer;background-color: rgba(0,0,0,.12);background-image: linear-gradient(hsla(0,0%,100%,.05),hsla(0,0%,100%,0));background-clip: padding-box;border: 1px solid rgba(0,0,0,.35);border-color: rgba(0,0,0,.32) rgba(0,0,0,.38) rgba(0,0,0,.42);box-shadow: inset 0 1px 0 hsla(0,0%,100%,.05), inset 0 0 1px hsla(0,0%,100%,.15), 0 1px 0 hsla(0,0%,100%,.05);"),u.appendChild(s),document.body.appendChild(n),{close:this.close,previewBody:this.previewBody}}},{key:"iframeBox",value:function(t,e){var n=document.createElement("iframe");return n.style.border="0px",n.style.position="absolute",n.style.width="0px",n.style.height="0px",n.style.right="0px",n.style.top="0px",n.setAttribute("id",t),n.setAttribute("src",e),n}},{key:"Iframe",value:function(t){var e=this.settings.id;t=t||(new Date).getTime();var n=this,r=this.iframeBox(e,t);try{if(this.settings.preview){r.setAttribute("style","border: 0px;flex: 1;");var o=this.previewBox(),i=o.previewBody,c=o.close;i.appendChild(r),this.addEvent(c,"click",(function(){n.previewBoxHide()}))}else document.body.appendChild(r);r.doc=null,r.doc=r.contentDocument?r.contentDocument:r.contentWindow?r.contentWindow.document:r.document}catch(a){throw new Error(a+". iframes may not be supported in this browser.")}if(null==r.doc)throw new Error("Cannot find document.");return r}}]),t}(),v=function(t,e,n){t.addEventListener?t.addEventListener(e,n,!1):t.attachEvent?t.attachEvent("on"+e,n):t["on"+e]=n},b={directiveName:"print",bind:function(t,e,n){var r=n.context,o="";v(t,"click",(function(){r.$nextTick((function(){var t,n;if(null!==e&&void 0!==e&&null!==(t=e.value)&&void 0!==t&&t.clickMounted&&e.value.clickMounted(r),"string"===typeof e.value)o=e.value,i();else if("object"===c(e.value)&&e.value.id){o=e.value.id;var a=o.replace(new RegExp("#","g"),""),u=document.getElementById(a);u||(console.log("id in Error"),o=""),i()}else{if(null===e||void 0===e||null===(n=e.value)||void 0===n||!n.preview)return void window.print();i()}}))}));var i=function(){new p({ids:o,vue:r,url:e.value.url,standard:"",extraHead:e.value.extraHead,extraCss:e.value.extraCss,previewTitle:e.value.previewTitle||"鎵撳嵃棰勮",zIndex:e.value.zIndex||20002,previewPrintBtnLabel:e.value.previewPrintBtnLabel||"鎵撳嵃",popTitle:e.value.popTitle,preview:e.value.preview||!1,asyncUrl:e.value.asyncUrl,previewBeforeOpenCallback:function(){e.value.previewBeforeOpenCallback&&e.value.previewBeforeOpenCallback(r)},previewOpenCallback:function(){e.value.previewOpenCallback&&e.value.previewOpenCallback(r)},openCallback:function(){e.value.openCallback&&e.value.openCallback(r)},closeCallback:function(){e.value.closeCallback&&e.value.closeCallback(r)},beforeOpenCallback:function(){e.value.beforeOpenCallback&&e.value.beforeOpenCallback(r)}})}},install:function(t){t.directive("print",b)}},y=b;e["default"]=y},fc6a:function(t,e,n){var r=n("44ad"),o=n("1d80");t.exports=function(t){return r(o(t))}},fdbc:function(t,e){t.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},fdbf:function(t,e,n){var r=n("4930");t.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator}})}));
+//# sourceMappingURL=print.umd.min.js.map
\ No newline at end of file
diff --git a/src/components/Print/vue-print-nb/package.json b/src/components/Print/vue-print-nb/package.json
new file mode 100644
index 0000000..29b02f5
--- /dev/null
+++ b/src/components/Print/vue-print-nb/package.json
@@ -0,0 +1,86 @@
+{
+  "_from": "vue-print-nb",
+  "_id": "vue-print-nb@1.7.5",
+  "_inBundle": false,
+  "_integrity": "sha512-iNbNyUVRWz0Ha1UTiCKxMPtHLUDGgNI8e8xmD3xqm9RlXIUeX9bT7DgNAfY8vPzqyFRHqGjxLI1rycKH366ziQ==",
+  "_location": "/vue-print-nb",
+  "_phantomChildren": {
+    "@vue/compiler-sfc": "2.7.2",
+    "csstype": "3.1.0"
+  },
+  "_requested": {
+    "type": "tag",
+    "registry": true,
+    "raw": "vue-print-nb",
+    "name": "vue-print-nb",
+    "escapedName": "vue-print-nb",
+    "rawSpec": "",
+    "saveSpec": null,
+    "fetchSpec": "latest"
+  },
+  "_requiredBy": [
+    "#USER",
+    "/"
+  ],
+  "_resolved": "https://registry.npmmirror.com/vue-print-nb/-/vue-print-nb-1.7.5.tgz",
+  "_shasum": "0eaaf9317c233028458e8dbe8aa76603fef63b95",
+  "_spec": "vue-print-nb",
+  "_where": "E:\\WebstormProjects\\VueUi",
+  "author": {
+    "name": "Power-kxLee"
+  },
+  "browserslist": [
+    "> 1%",
+    "last 2 versions",
+    "not dead"
+  ],
+  "bundleDependencies": false,
+  "dependencies": {
+    "vue": "^2.6.11"
+  },
+  "deprecated": false,
+  "description": "Vue plug-in, print! Good!",
+  "devDependencies": {
+    "@vue/cli-plugin-babel": "~4.5.0",
+    "@vue/cli-plugin-eslint": "~4.5.0",
+    "@vue/cli-service": "~4.5.0",
+    "babel-eslint": "^10.1.0",
+    "core-js": "^3.6.5",
+    "echarts": "^5.0.2",
+    "element-ui": "^2.15.5",
+    "eslint": "^6.7.2",
+    "eslint-plugin-vue": "^6.2.2",
+    "less": "^3.9.0",
+    "less-loader": "^4.1.0",
+    "qrcodejs2": "0.0.2",
+    "sass": "^1.32.8",
+    "sass-loader": "^7.3.1",
+    "vue-router": "^3.5.1",
+    "vue-template-compiler": "^2.6.11"
+  },
+  "eslintConfig": {
+    "root": true,
+    "env": {
+      "node": true
+    },
+    "extends": [
+      "plugin:vue/essential",
+      "eslint:recommended"
+    ],
+    "parserOptions": {
+      "parser": "babel-eslint"
+    },
+    "rules": {}
+  },
+  "license": "MIT",
+  "main": "lib/print.umd.min.js",
+  "name": "vue-print-nb",
+  "private": false,
+  "scripts": {
+    "build": "vue-cli-service build",
+    "lib": "vue-cli-service build --target lib --name print --dest lib print/index.js",
+    "lint": "vue-cli-service lint",
+    "serve": "vue-cli-service serve"
+  },
+  "version": "1.7.5"
+}
diff --git a/src/components/Print/vue-print-nb/print/index.js b/src/components/Print/vue-print-nb/print/index.js
new file mode 100644
index 0000000..703ab69
--- /dev/null
+++ b/src/components/Print/vue-print-nb/print/index.js
@@ -0,0 +1,6 @@
+import Print from './packages/print.js';
+Print.install = function(Vue) {
+    Vue.directive('print', Print);
+};
+
+export default Print;
\ No newline at end of file
diff --git a/src/components/Print/vue-print-nb/print/packages/css/print.css b/src/components/Print/vue-print-nb/print/packages/css/print.css
new file mode 100644
index 0000000..f8e9695
--- /dev/null
+++ b/src/components/Print/vue-print-nb/print/packages/css/print.css
@@ -0,0 +1,3 @@
+div{
+  
+}
\ No newline at end of file
diff --git a/src/components/Print/vue-print-nb/print/packages/images/print-icon.png b/src/components/Print/vue-print-nb/print/packages/images/print-icon.png
new file mode 100644
index 0000000..51275e5
--- /dev/null
+++ b/src/components/Print/vue-print-nb/print/packages/images/print-icon.png
Binary files differ
diff --git a/src/components/Print/vue-print-nb/print/packages/print.js b/src/components/Print/vue-print-nb/print/packages/print.js
new file mode 100644
index 0000000..3f1211a
--- /dev/null
+++ b/src/components/Print/vue-print-nb/print/packages/print.js
@@ -0,0 +1,90 @@
+/*
+ * @Author: lee
+ * @Date: 2021-05-10 11:45:50
+ * @LastEditors: lee
+ * @LastEditTime: 2021-05-20 15:39:43
+ * @Description: file content
+ */
+import Print from './printarea.js';
+/**
+ * @file 鎵撳嵃
+ * 鎸囦护`v-print`,榛樿鎵撳嵃鏁翠釜绐楀彛
+ * 浼犲叆鍙傛暟`v-print="'#id'"` , 鍙傛暟涓洪渶瑕佹墦鍗板眬閮ㄧ殑鐩掑瓙鏍囪瘑.
+ */
+const addEvent = (element, type, callback) => {
+  if (element.addEventListener) {
+    element.addEventListener(type, callback, false);
+  } else if (element.attachEvent) {
+    element.attachEvent('on' + type, callback);
+  } else {
+    element['on' + type] = callback;
+  }
+}
+export default {
+  directiveName: 'print',
+  bind (el, binding, vnode) {
+    let vue = vnode.context;
+    let id = '';
+    addEvent(el, 'click', () => {
+      vue.$nextTick(() => {
+        if (binding?.value?.clickMounted) {
+          binding.value.clickMounted(vue)
+        }
+        if (typeof binding.value === 'string') {
+          // 鍏ㄥ眬鎵撳嵃
+          id = binding.value;
+          localPrint();
+        } else if (typeof binding.value === 'object' && !!binding.value.id) {
+          // 灞�閮ㄦ墦鍗�
+          id = binding.value.id;
+          let ids = id.replace(new RegExp("#", "g"), '');
+          let elsdom = document.getElementById(ids);
+          if (!elsdom) console.log("id in Error"), id = '';
+          localPrint();
+
+        } else if(binding?.value?.preview) {
+          localPrint();
+        } else {
+          window.print();
+          return
+        }
+      });
+    })
+
+    const localPrint = () => {
+      new Print({
+        ids: id, // * 灞�閮ㄦ墦鍗板繀浼犲叆id
+        vue,
+        url: binding.value.url, // 鎵撳嵃鎸囧畾鐨勭綉鍧�锛岃繖閲屼笉鑳借窡id鍏卞瓨 濡傛灉鍏卞瓨id鐨勪紭鍏堢骇浼氭瘮杈冮珮
+        standard: '', // 鏂囨。绫诲瀷锛岄粯璁ゆ槸html5锛屽彲閫� html5锛宭oose锛宻trict
+        extraHead: binding.value.extraHead, // 闄勫姞鍦╤ead鏍囩涓婄殑棰濆鏍囩,浣跨敤閫楀彿鍒嗛殧
+        extraCss: binding.value.extraCss, // 棰濆鐨刢ss杩炴帴锛屽涓�楀彿鍒嗗紑
+        previewTitle: binding.value.previewTitle || '鎵撳嵃棰勮', // 鎵撳嵃棰勮鐨勬爣棰�
+        zIndex: binding.value.zIndex || 20002, // 棰勮绐楀彛鐨剒-index
+        previewPrintBtnLabel: binding.value.previewPrintBtnLabel || '鎵撳嵃', // 鎵撳嵃棰勮鐨勬爣棰�
+        popTitle: binding.value.popTitle, // title鐨勬爣棰�
+        preview: binding.value.preview || false, // 鏄惁鍚姩棰勮妯″紡
+        asyncUrl: binding.value.asyncUrl,
+        beforeEntryIframe(){
+          binding.value.beforeEntryIframe && binding.value.beforeEntryIframe(vue)
+        },
+        previewBeforeOpenCallback () { // 棰勮绐楀彛鎵撳紑涔嬪墠鐨刢allback
+          binding.value.previewBeforeOpenCallback && binding.value.previewBeforeOpenCallback(vue)
+        },
+        previewOpenCallback () { // 棰勮绐楀彛鎵撳紑涔嬪悗鐨刢allback
+          binding.value.previewOpenCallback && binding.value.previewOpenCallback(vue)
+        },
+        openCallback () { // 璋冪敤鎵撳嵃涔嬪悗鐨勫洖璋冧簨浠�
+          binding.value.openCallback && binding.value.openCallback(vue)
+        },
+        closeCallback () {
+          binding.value.closeCallback && binding.value.closeCallback(vue)
+        },
+        beforeOpenCallback () {
+          binding.value.beforeOpenCallback && binding.value.beforeOpenCallback(vue)
+        }
+      });
+
+    };
+  }
+};
diff --git a/src/components/Print/vue-print-nb/print/packages/printarea.js b/src/components/Print/vue-print-nb/print/packages/printarea.js
new file mode 100644
index 0000000..91bd9a8
--- /dev/null
+++ b/src/components/Print/vue-print-nb/print/packages/printarea.js
@@ -0,0 +1,430 @@
+
+ const isIE = () =>{
+	if (!!window.ActiveXobject || "ActiveXObject" in window) {
+		return true;
+	} else {
+		return false;
+	}
+}
+/**
+ * 鍒ゆ柇鏄惁鏄疘E11
+ * @returns boolean
+ */
+const isIE11 = () => {
+	if((/Trident\/7\./).test(navigator.userAgent)) {
+		return true;
+	} else {
+		return false;
+	}
+}
+const isRemove = (dom) => {
+  if (isIE() || isIE11()) {
+    dom.removeNode(true)
+  } else {
+    dom.remove()
+  }
+  return dom
+}
+export default class {
+  constructor(option) {
+
+    this.standards = {
+      strict: 'strict',
+      loose: 'loose',
+      html5: 'html5'
+    };
+    this.previewBody = null;
+    this.close = null;
+    this.previewBodyUtilPrintBtn = null;
+    this.selectArray = []; // 瀛樺偍select鐨�
+    this.counter = 0;
+    this.settings = {
+      standard: this.standards.html5,
+    };
+    Object.assign(this.settings, option);
+    this.init();
+  }
+  init () {
+    this.counter++;
+    this.settings.id = `printArea_${this.counter}`;
+    let url = ''
+    if (this.settings.url && !this.settings.asyncUrl) {
+      url = this.settings.url
+    }
+    let _this = this
+    // 濡傛灉鏄紓姝ョ殑
+    if (this.settings.asyncUrl) {
+
+      _this.settings.asyncUrl(function (url) {
+        let PrintAreaWindow = _this.getPrintWindow(url); // 鍒涘缓iframe
+        if (_this.settings.preview) {
+          // 鎵撳紑棰勮寮圭獥
+          _this.previewIfrmaeLoad()
+        } else {
+          // 鐩存帴鎵撳嵃
+          _this.print(PrintAreaWindow);
+        }
+      }, _this.settings.vue)
+      return
+    }
+    let PrintAreaWindow = this.getPrintWindow(url); // 鍒涘缓iframe
+
+    if (!this.settings.url) {
+      this.write(PrintAreaWindow.doc); // 鍐欏叆鍐呭
+    }
+
+    if (this.settings.preview) {
+      // 鎵撳紑棰勮寮圭獥
+      this.previewIfrmaeLoad()
+    } else {
+      // 鐩存帴鎵撳嵃
+      this.print(PrintAreaWindow);
+    }
+  }
+  addEvent (element, type, callback) {
+    if (element.addEventListener) {
+      element.addEventListener(type, callback, false);
+    } else if (element.attachEvent) {
+      element.attachEvent('on' + type, callback);
+    } else {
+      element['on' + type] = callback;
+    }
+  }
+  previewIfrmaeLoad () {
+    let box = document.getElementById('vue-pirnt-nb-previewBox')
+
+    if (box) {
+      let _this = this
+      let iframe = box.querySelector('iframe')
+      this.settings.previewBeforeOpenCallback()
+      this.addEvent(iframe, 'load', function () {
+        _this.previewBoxShow()
+        _this.removeCanvasImg()
+        _this.settings.previewOpenCallback()
+      })
+
+      this.addEvent(box.querySelector('.previewBodyUtilPrintBtn'), 'click', function () {
+        _this.settings.beforeOpenCallback()
+        _this.settings.openCallback();
+        iframe.contentWindow.print();
+        _this.settings.closeCallback()
+      })
+    }
+  }
+  // 鍒犻櫎鎵�鏈塩anva杞崲鐨勫浘鐗�
+  removeCanvasImg () {
+    let _this = this
+    try {
+      if (_this.elsdom) {
+        // 鍒犻櫎canva杞彉鍥剧墖鐨刣om鑺傜偣
+        let canvasList = _this.elsdom.querySelectorAll('.canvasImg')
+        for (let i = 0; i < canvasList.length; i++) {
+          isRemove(canvasList[i])
+        }
+      }
+    } catch (e) {
+      console.log(e);
+    }
+  }
+  print (ifrmae) {
+    var _this = this;
+    let iframe = document.getElementById(this.settings.id) || ifrmae.f;
+    let iframeWin = document.getElementById(this.settings.id).contentWindow || ifrmae.f.contentWindow;
+    var _loaded = function () {
+
+      iframeWin.focus();
+      _this.settings.openCallback();
+      iframeWin.print();
+      isRemove(iframe)
+      _this.settings.closeCallback()
+      _this.removeCanvasImg()
+    }
+    _this.settings.beforeOpenCallback()
+    _this.addEvent(iframe, 'load', function () {
+      _loaded()
+    })
+
+  }
+  write (PADocument) {
+    PADocument.open();
+    PADocument.write(`${this.docType()}<html>${this.getHead()}${this.getBody()}</html>`);
+    PADocument.close();
+
+  }
+  docType () {
+    if (this.settings.standard === this.standards.html5) {
+      return '<!DOCTYPE html>';
+    }
+    var transitional = this.settings.standard === this.standards.loose ? ' Transitional' : '';
+    var dtd = this.settings.standard === this.standards.loose ? 'loose' : 'strict';
+
+    return `<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01${transitional}//EN" "http://www.w3.org/TR/html4/${dtd}.dtd">`;
+  }
+  getHead () {
+    let extraHead = '';
+    let links = '';
+    let style = '';
+    if (this.settings.extraHead) {
+      this.settings.extraHead.replace(/([^,]+)/g, (m) => {
+        extraHead += m;
+      });
+    }
+    // 澶嶅埗鎵�鏈塴ink鏍囩
+    [].forEach.call(document.querySelectorAll('link'), function (item) {
+      if (item.href.indexOf('.css') >= 0) {
+        links += `<link type="text/css" rel="stylesheet" href="${item.href}" >`;
+      }
+    });
+    // 寰幆鑾峰彇style鏍囩鐨勬牱寮�
+    let domStyle = document.styleSheets;
+    if (domStyle && domStyle.length > 0) {
+      for (let i = 0; i < domStyle.length; i++) {
+        try {
+          if (domStyle[i].cssRules || domStyle[i].rules) {
+            let rules = domStyle[i].cssRules || domStyle[i].rules;
+            for (let b = 0; b < rules.length; b++) {
+              style += rules[b].cssText;
+            }
+          }
+        } catch (e) {
+          console.log(domStyle[i].href + e);
+        }
+      }
+    }
+
+    if (this.settings.extraCss) {
+      this.settings.extraCss.replace(/([^,\s]+)/g, (m) => {
+        links += `<link type="text/css" rel="stylesheet" href="${m}">`;
+      });
+
+    }
+
+    return `<head><title>${this.settings.popTitle}</title>${extraHead}${links}<style type="text/css">${style}</style></head>`;
+  }
+
+  getBody () {
+    let ids = this.settings.ids;
+    ids = ids.replace(new RegExp("#", "g"), '');
+    this.settings.beforeEntryIframe();
+    this.elsdom = this.beforeHanler(document.getElementById(ids));
+    let ele = this.getFormData(this.elsdom);
+    let htm = ele.outerHTML;
+    return '<body>' + htm + '</body>';
+  }
+  // 澶勭悊canva杞垚鍥剧墖
+  beforeHanler (elsdom) {
+    let canvasList = elsdom.querySelectorAll('canvas');
+    // canvas杞崲png鍥剧墖
+    for (let i = 0; i < canvasList.length; i++) {
+      if (!canvasList[i].style.display) {
+        let _parent = canvasList[i].parentNode
+        let _canvasUrl = canvasList[i].toDataURL('image/png')
+        let _img = new Image()
+        _img.className = 'canvasImg'
+        _img.style.display = 'none'
+        _img.src = _canvasUrl
+        _parent.appendChild(_img)
+      }
+    }
+    return elsdom
+  }
+  // 鏍规嵁type鍘诲鐞唂orm琛ㄥ崟
+  getFormData (ele) {
+    let copy = ele.cloneNode(true);
+    let copiedInputs = copy.querySelectorAll('input,select,textarea');
+    let canvasImgList = copy.querySelectorAll('.canvasImg,canvas');
+    let selectCount = -1;
+    // 澶勭悊鎵�鏈塩anvas
+    for (let i = 0; i < canvasImgList.length; i++) {
+      let _parent = canvasImgList[i].parentNode
+      let item = canvasImgList[i]
+      // 鍒犻櫎鍏嬮殕鍚庣殑canvas鑺傜偣
+      if (item.tagName.toLowerCase() === 'canvas') {
+        _parent.removeChild(item)
+      } else {
+        item.style.display = 'block'
+      }
+    }
+    // 澶勭悊鎵�鏈夎緭鍏ユ
+    for (let i = 0; i < copiedInputs.length; i++) {
+      let item = copiedInputs[i];
+      let typeInput = item.getAttribute('type');
+      let copiedInput = copiedInputs[i];
+      // 鑾峰彇select鏍囩
+      if (!typeInput) {
+        typeInput = item.tagName === 'SELECT' ? 'select' : item.tagName === 'TEXTAREA' ? 'textarea' : '';
+      }
+      // 澶勭悊input妗�
+      if (item.tagName === 'INPUT') {
+        // 闄や簡鍗曢�夋 澶氶�夋姣旇緝鐗瑰埆
+        if (typeInput === 'radio' || typeInput === 'checkbox') {
+          if (item.checked) {
+            copiedInput.setAttribute('checked', item.checked);
+          }
+
+        } else {
+          copiedInput.value = item.value;
+          copiedInput.setAttribute('value', item.value);
+        }
+        // 澶勭悊select
+      } else if (typeInput === 'select') {
+
+        selectCount++;
+        for (let b = 0; b < ele.querySelectorAll('select').length; b++) {
+          let select = ele.querySelectorAll('select')[b]; // 鑾峰彇鍘熷灞傛瘡涓�涓猻elect
+          !select.getAttribute('newbs') && select.setAttribute('newbs', b) // 娣诲姞鏍囪瘑
+          if (select.getAttribute('newbs') == selectCount) {
+            let opSelectedIndex = ele.querySelectorAll('select')[selectCount].selectedIndex;
+            item.options[opSelectedIndex].setAttribute('selected', true);
+
+          }
+        }
+        // 澶勭悊textarea
+      } else {
+        copiedInput.innerHTML = item.value;
+        copiedInput.setAttribute('html', item.value);
+      }
+    }
+
+    return copy;
+  }
+  getPrintWindow (url) {
+    var f = this.Iframe(url);
+    return {
+      f: f,
+      win: f.contentWindow || f,
+      doc: f.doc
+    };
+  }
+  previewBoxShow () {
+    let box = document.getElementById('vue-pirnt-nb-previewBox')
+    if (box) {
+      document.querySelector('html').setAttribute('style', 'overflow: hidden')
+      box.style.display = 'block'
+    }
+  }
+
+  previewBoxHide () {
+    let box = document.getElementById('vue-pirnt-nb-previewBox')
+    if (box) {
+      document.querySelector('html').setAttribute('style', 'overflow: visible;')
+
+      box.querySelector('iframe') && isRemove(box.querySelector('iframe'))
+      box.style.display = 'none'
+    }
+  }
+  previewBox () {
+
+    let box = document.getElementById('vue-pirnt-nb-previewBox')
+    let previewBodyClass = 'previewBody'
+    if (box) {
+      box.querySelector('iframe') && isRemove(box.querySelector('iframe'))
+      return {
+        close: box.querySelector('.previewClose'),
+        previewBody: box.querySelector(`.${previewBodyClass}`)
+      }
+    }
+    let previewContent = document.createElement('div');
+    previewContent.setAttribute('id', "vue-pirnt-nb-previewBox")
+    previewContent.setAttribute('style', 'position: fixed;top: 0px;left: 0px;width: 100%;height: 100%;background: white;display:none')
+    previewContent.style.zIndex = this.settings.zIndex
+    // 鎵撳嵃棰勮寮圭獥鐨刪eader
+    let previewHeader = document.createElement('div');
+    previewHeader.setAttribute('class', "previewHeader")
+    previewHeader.setAttribute('style', "padding: 5px 20px;")
+    previewHeader.innerHTML = this.settings.previewTitle
+    previewContent.appendChild(previewHeader)
+    // close鍏抽棴鎸夐挳
+    this.close = document.createElement('div');
+    let close = this.close
+    close.setAttribute('class', "previewClose")
+    close.setAttribute('style', "position: absolute;top: 5px;right: 20px;width: 25px;height: 20px;cursor: pointer;")
+    let closeBefore = document.createElement('div');
+    let closeAfter = document.createElement('div');
+    closeBefore.setAttribute('class', "closeBefore")
+    closeBefore.setAttribute('style', "position: absolute;width: 3px;height: 100%;background: #040404;transform: rotate(45deg); top: 0px;left: 50%;")
+    closeAfter.setAttribute('class', "closeAfter")
+    closeAfter.setAttribute('style', "position: absolute;width: 3px;height: 100%;background: #040404;transform: rotate(-45deg); top: 0px;left: 50%;")
+    close.appendChild(closeBefore)
+    close.appendChild(closeAfter)
+    previewHeader.appendChild(close)
+
+    // 鎵撳嵃棰勮寮圭獥鐨刡ody
+    this.previewBody = document.createElement('div');
+    let previewBody = this.previewBody
+    previewBody.setAttribute('class', previewBodyClass)
+    previewBody.setAttribute('style', "display: flex;flex-direction: column; height: 100%;")
+    previewContent.appendChild(previewBody)
+    // 鎵撳嵃棰勮寮圭獥鐨刡ody鐨勫伐鍏锋爮
+    let previewBodyUtil = document.createElement('div');
+    previewBodyUtil.setAttribute('class', "previewBodyUtil")
+    previewBodyUtil.setAttribute('style', "height: 32px;background: #474747;position: relative;")
+    previewBody.appendChild(previewBodyUtil)
+    // 鎵撳嵃鐨勬寜閽�
+    this.previewBodyUtilPrintBtn = document.createElement('div');
+    let previewBodyUtilPrintBtn = this.previewBodyUtilPrintBtn
+    previewBodyUtilPrintBtn.setAttribute('class', 'previewBodyUtilPrintBtn')
+    previewBodyUtilPrintBtn.innerHTML = this.settings.previewPrintBtnLabel
+    previewBodyUtilPrintBtn.setAttribute('style', 'position: absolute;padding: 2px 10px;margin-top: 3px;left: 24px;font-size: 14px;color: white;cursor: pointer;background-color: rgba(0,0,0,.12);background-image: linear-gradient(hsla(0,0%,100%,.05),hsla(0,0%,100%,0));background-clip: padding-box;border: 1px solid rgba(0,0,0,.35);border-color: rgba(0,0,0,.32) rgba(0,0,0,.38) rgba(0,0,0,.42);box-shadow: inset 0 1px 0 hsla(0,0%,100%,.05), inset 0 0 1px hsla(0,0%,100%,.15), 0 1px 0 hsla(0,0%,100%,.05);')
+    previewBodyUtil.appendChild(previewBodyUtilPrintBtn)
+
+    // 娣诲姞鏁翠釜棰勮鍒癰ody
+    document.body.appendChild(previewContent);
+
+    return {
+      close: this.close,
+      previewBody: this.previewBody
+    }
+  }
+  iframeBox (frameId, url) {
+    let iframe = document.createElement('iframe');
+    iframe.style.border = '0px';
+    iframe.style.position = 'absolute';
+    iframe.style.width = '0px';
+    iframe.style.height = '0px';
+    iframe.style.right = '0px';
+    iframe.style.top = '0px';
+    iframe.setAttribute('id', frameId);
+    iframe.setAttribute('src', url);
+
+    return iframe
+  }
+  Iframe (url) {
+    let frameId = this.settings.id;
+    // 灞�閮ㄦ墦鍗� 鐢ㄥ綋鍓嶇殑鏃堕棿鍋歩frmae鐨剈rl
+    url = !url ? new Date().getTime() : url
+    let _this = this
+
+    let iframe = this.iframeBox(frameId, url)
+
+    // let that = this
+    try {
+      // 鐩存帴鎵撳嵃 涓嶉瑙�
+      if (!this.settings.preview) {
+        document.body.appendChild(iframe);
+
+      } else {
+        iframe.setAttribute('style', 'border: 0px;flex: 1;')
+        // 棰勮鎵撳嵃
+        let previewBox = this.previewBox()
+        let previewBody = previewBox.previewBody
+        let close = previewBox.close
+        // 娣诲姞ifrmae鍒伴瑙堝脊绐�
+        previewBody.appendChild(iframe);
+        this.addEvent(close, 'click', function () {
+          _this.previewBoxHide()
+        })
+      }
+
+      iframe.doc = null;
+      iframe.doc = iframe.contentDocument ? iframe.contentDocument : (iframe.contentWindow ? iframe.contentWindow.document : iframe.document);
+    } catch (e) {
+      throw new Error(e + '. iframes may not be supported in this browser.');
+    }
+    if (iframe.doc == null) {
+      throw new Error('Cannot find document.');
+    }
+
+    return iframe;
+  }
+}
diff --git a/src/components/Print/vue-print-nb/src/App.vue b/src/components/Print/vue-print-nb/src/App.vue
new file mode 100644
index 0000000..516e7b2
--- /dev/null
+++ b/src/components/Print/vue-print-nb/src/App.vue
@@ -0,0 +1,310 @@
+<template>
+  <div id="app">
+    <div id="loading"></div>
+
+    <h3 style="text-align: left;margin-left: 30px;">鏀寔鐨勬墦鍗版柟寮�:</h3>
+    <el-divider><i class="el-icon-printer"></i></el-divider>
+    <el-row :gutter="20">
+      <el-col :span="8">
+        <el-button type="primary"
+                   icon="el-icon-printer"
+                   v-print>鍏ㄥ眬鎵撳嵃</el-button>
+        <el-card class="box-card">
+          瀵瑰綋鍓嶉〉闈㈠叏閮ㄨ繘琛屾墦鍗�
+        </el-card>
+      </el-col>
+    </el-row>
+    <el-divider><i class="el-icon-printer"></i></el-divider>
+    <el-row :gutter="20">
+      <el-col :span="8">
+        <el-button type="primary"
+                   icon="el-icon-magic-stick"
+                   v-print="'#printMe'">灞�閮ㄦ墦鍗�(蹇��)</el-button>
+                   <el-card class="box-card">
+          鍙互鎵撳嵃椤甸潰鏌愰儴鍒嗗唴瀹癸紝鐩存帴浼犲叆瀵瑰簲鐨勫敮涓�鏍囪瘑ID
+        </el-card>
+      </el-col>
+      <el-col :span="8">
+        <el-button type="primary"
+                   icon="el-icon-umbrella"
+                   v-print="printObj">灞�閮ㄦ墦鍗�(瀵硅薄閰嶇疆)</el-button>
+                   <el-card class="box-card">
+          涔熻浣犱細闇�瑕佷竴浜涢厤缃紝鍙帴鏀朵竴涓璞★紝鏍规嵁鏂囨。API杩涜璁剧疆
+        </el-card>
+      </el-col>
+    </el-row>
+    <el-divider><i class="el-icon-printer"></i></el-divider>
+    <el-row :gutter="20">
+      <el-col :span="8">
+        <el-button type="primary"
+                   icon="el-icon-bank-card"
+                   v-print="printUrl">棰勮缃戝潃</el-button>
+                   <el-card class="box-card">
+          鎴戦渶瑕佹墦鍗版寚瀹氱殑缃戝潃(瑕佺鍚堝悓婧愮瓥鐣�) 闇�瑕佷紶鍏ヤ竴涓璞★紝璇︾粏鐪嬫枃妗PI杩涜璁剧疆
+        </el-card>
+      </el-col>
+      <el-col :span="8">
+        <el-button type="primary"
+                   icon="el-icon-wallet"
+                   v-print="printAsyncUrl">棰勮缃戝潃(寮傛)</el-button>
+                   <el-card class="box-card">
+          浣犳墦鍗扮殑缃戝潃(URL)涔熸槸鍙互閫氳繃寮傛寰楀埌鐨�
+        </el-card>
+        寮傛鑾峰彇URL:<el-progress :text-inside="true" :stroke-width="20" :percentage="times"></el-progress>
+      </el-col>
+    </el-row>
+    <div>
+<el-divider><i class="el-icon-printer"></i></el-divider>
+      <div class="asyncTips">
+
+      </div>
+      <div class="box"
+           v-show="printLoading">
+        <div class="loader-04"></div>
+        姝e湪澶勭悊...璇风◢绛�
+      </div>
+      <h3  style="text-align: left;margin-left: 30px;">涓嬮潰鏄鎵撳嵃鐨勪緥瀛�:</h3>
+
+      <div id="printMe"
+           style="background: #dac9c9">
+        <div ref="qrcode"></div>
+        <div ref="echartMain"
+             :style="{width: '300px', height: '300px'}"></div>
+        <input type="number" />
+        <input type="time" />
+        <input type="checkbox" />
+        <input type="radio" />
+        <select>
+          <option value="volvo">Volvo</option>
+          <option value="saab">Saab</option>
+          <option value="mercedes">Mercedes</option>
+          <option value="audi">Audi</option>
+        </select>
+
+        <select>
+          <option value="volvo">Volvo</option>
+          <option value="saab">Saab</option>
+          <option value="mercedes">Mercedes</option>
+          <option value="audi">Audi</option>
+        </select>
+        <textarea name=""
+                  id=""
+                  cols="30"
+                  rows="10"></textarea>
+        <p>钁姦濞冿紝钁姦濞�</p>
+        <p style="background: yellow">涓�鏍硅棨涓婁竷鏈佃姳</p>
+        <p>灏忓皬鏍戣棨鏄垜瀹� 鍟﹀暒鍟﹀暒</p>
+        <p>鍙綋褰撳挌鍜氬綋褰� 娴囦笉澶�</p>
+        <p>鍙綋褰撳挌鍜氬綋褰� 鏄垜瀹�</p>
+        <p>鍟﹀暒鍟﹀暒</p>
+        <p>...</p>
+      </div>
+      <p>鍙綋褰撳挌鍜氬綋褰� 娴囦笉澶�</p>
+    </div>
+  </div>
+</template>
+<style type="text/css">
+p {
+  color: blue;
+}
+</style>
+<script>
+import QRCode from "qrcodejs2";
+import * as echarts from "echarts";
+export default {
+  name: "app",
+  data () {
+    return {
+      printLoading: false,
+      times: 0,
+      printAsyncUrl: {
+        preview: true,
+        previewTitle: 'Test Title',
+        previewPrintBtnLabel: 'Print',
+        asyncUrl (reslove, vue) {
+          const _set = setInterval(() => {
+            vue.times += 20
+          }, 1000)
+          setTimeout(() => {
+            reslove(process.env.NODE_ENV === 'production' ? 'https://power-kxlee.github.io/' : 'http://localhost:8080/')
+            clearInterval(_set)
+          }, 5000)
+        },
+        previewBeforeOpenCallback: this.previewBeforeOpenCallback ,
+        previewOpenCallback:this.previewOpenCallback,
+        beforeOpenCallback: this.beforeOpenCallback,
+        openCallback: this.openCallback,
+        closeCallback: this.closeCallback,
+        clickMounted: this.clickMounted
+      },
+      printUrl: {
+        url: process.env.NODE_ENV === 'production' ? 'https://power-kxlee.github.io/' : 'http://localhost:8080/',
+        preview: true,
+        previewTitle: 'Test Title',
+        previewPrintBtnLabel: 'Print',
+        previewBeforeOpenCallback: this.previewBeforeOpenCallback ,
+        previewOpenCallback:this.previewOpenCallback,
+        beforeOpenCallback: this.beforeOpenCallback,
+        openCallback: this.openCallback,
+        closeCallback: this.closeCallback,
+        clickMounted: this.clickMounted
+      },
+      printObj: {
+        id: "printMe",
+        popTitle: "good print",
+        extraCss: "https://cdn.bootcdn.net/ajax/libs/animate.css/4.1.1/animate.compat.css, https://cdn.bootcdn.net/ajax/libs/hover.css/2.3.1/css/hover-min.css",
+        extraHead: '<meta http-equiv="Content-Language"content="zh-cn"/>',
+        beforeOpenCallback: this.beforeOpenCallback,
+        openCallback: this.openCallback,
+        closeCallback: this.closeCallback,
+        clickMounted: this.clickMounted
+
+      },
+    };
+  },
+  mounted () {
+    this.$nextTick(() => {
+      this.echart();
+      new QRCode(this.$refs.qrcode, {
+        width: 100,
+        height: 100,
+        text: "https://www.baidu.com/",
+      });
+    });
+  },
+  methods: {
+    clickMounted(vue) {
+      vue.$notify({
+        title: '娑堟伅',
+        message: '鐐瑰嚮鎸夐挳鐨勫洖璋冧簨浠�',
+      });
+    },
+    previewBeforeOpenCallback(vue) {
+      vue.$notify({
+        title: '娑堟伅',
+        message: '姝e湪鍔犺浇棰勮绐楀彛',
+      });
+    },
+    previewOpenCallback(vue) {
+      vue.times = 0
+      vue.$notify({
+            title: '娑堟伅',
+            message: '宸茬粡鍔犺浇瀹岄瑙堢獥鍙�',
+            type: 'success'
+          });
+    },
+    beforeOpenCallback(vue) {
+      vue.printLoading = true
+      vue.$notify({
+        title: '娑堟伅',
+        message: '姝e湪鍑嗗鎵撳嵃鎺т欢',
+      });
+    },
+    openCallback(vue) {
+      vue.printLoading = false
+      vue.$notify({
+        title: '娑堟伅',
+        message: '宸茬粡鎵撳紑浜� 鎵撳嵃鎺т欢',
+      });
+    },
+    closeCallback(vue) {
+      vue.$notify({
+        title: '娑堟伅',
+        message: '鍏抽棴浜嗘墦鍗板伐鍏�',
+      });
+    },
+    beforeOpen () {
+      this.printLoading = true
+      console.log('鍑嗗鎵撳紑')
+    },
+    echart () {
+      let myChart = echarts.init(this.$refs.echartMain);
+      myChart.setOption({
+        title: {
+          text: "ECharts 鍏ラ棬绀轰緥",
+        },
+        tooltip: {},
+        xAxis: {
+          data: ["琛~", "缇婃瘺琛�", "闆汉琛�", "瑁ゅ瓙", "楂樿窡闉�", "琚滃瓙"],
+        },
+        yAxis: {},
+        series: [
+          {
+            name: "閿�閲�",
+            type: "bar",
+            data: [5, 20, 36, 10, 10, 20],
+          },
+        ],
+      });
+    },
+  },
+};
+</script>
+
+<style scoped lang="scss">
+#app::v-deep {
+  font-family: "Avenir", Helvetica, Arial, sans-serif;
+  -webkit-font-smoothing: antialiased;
+  -moz-osx-font-smoothing: grayscale;
+  text-align: center;
+  color: #2c3e50;
+  margin-top: 60px;
+      width: 800px;
+    margin: 0 auto;
+  .el-row {
+    margin-bottom: 20px;
+    &:last-child {
+      margin-bottom: 0;
+    }
+    .box-card {
+      margin-top: 10px;
+    }
+  }
+}
+[class*="loader-"] {
+  display: inline-block;
+  width: 1em;
+  height: 1em;
+  color: inherit;
+  vertical-align: middle;
+  pointer-events: none;
+}
+.loader-04 {
+  border: 1px solid currentcolor;
+  border-radius: 50%;
+  -webkit-animation: 1s loader-04 linear infinite;
+  animation: 1s loader-04 linear infinite;
+  position: relative;
+}
+.loader-04:before {
+  content: "";
+  display: block;
+  width: 0;
+  height: 0;
+  position: absolute;
+  top: -0.2em;
+  left: 50%;
+  border: 0.2em solid currentcolor;
+  border-radius: 50%;
+}
+@-webkit-keyframes loader-04 {
+  0% {
+    -webkit-transform: rotate(0deg);
+    transform: rotate(0deg);
+  }
+  100% {
+    -webkit-transform: rotate(360deg);
+    transform: rotate(360deg);
+  }
+}
+@keyframes loader-04 {
+  0% {
+    -webkit-transform: rotate(0deg);
+    transform: rotate(0deg);
+  }
+  100% {
+    -webkit-transform: rotate(360deg);
+    transform: rotate(360deg);
+  }
+}
+</style>
diff --git a/src/components/Print/vue-print-nb/src/img/Chrome.png b/src/components/Print/vue-print-nb/src/img/Chrome.png
new file mode 100644
index 0000000..c99e071
--- /dev/null
+++ b/src/components/Print/vue-print-nb/src/img/Chrome.png
Binary files differ
diff --git a/src/components/Print/vue-print-nb/src/img/Chrome1.png b/src/components/Print/vue-print-nb/src/img/Chrome1.png
new file mode 100644
index 0000000..c99e071
--- /dev/null
+++ b/src/components/Print/vue-print-nb/src/img/Chrome1.png
Binary files differ
diff --git a/src/components/Print/vue-print-nb/src/img/ie.png b/src/components/Print/vue-print-nb/src/img/ie.png
new file mode 100644
index 0000000..7fdeb9b
--- /dev/null
+++ b/src/components/Print/vue-print-nb/src/img/ie.png
Binary files differ
diff --git a/src/components/Print/vue-print-nb/src/main.js b/src/components/Print/vue-print-nb/src/main.js
new file mode 100644
index 0000000..8902d56
--- /dev/null
+++ b/src/components/Print/vue-print-nb/src/main.js
@@ -0,0 +1,20 @@
+/*
+ * @Author: lee
+ * @Date: 2021-05-10 11:45:50
+ * @LastEditors: lee
+ * @LastEditTime: 2021-05-12 14:18:39
+ * @Description: file content
+ */
+import Vue from 'vue'
+import App from './App.vue'
+import Print from '../print'
+import VueRouter from 'vue-router'
+import ElementUI from 'element-ui';
+import 'element-ui/lib/theme-chalk/index.css';
+Vue.config.productionTip = false
+Vue.use(Print)
+Vue.use(ElementUI);
+Vue.use(VueRouter)
+new Vue({
+  render: h => h(App),
+}).$mount('#app')
diff --git a/src/main.js b/src/main.js
index 89f4f2b..1ff9ba2 100644
--- a/src/main.js
+++ b/src/main.js
@@ -49,7 +49,8 @@
 import '../public/static/theme/index.css' /* icofont */
 
 // 鎵撳嵃
-import Print from 'vue-print-nb'
+// import Print from 'vue-print-nb'
+import Print from './components/Print/vue-print-nb'
 Vue.use(Print)
 
 // 姘村嵃
diff --git a/src/utils/global.js b/src/utils/global.js
index 19231f3..6e641e8 100644
--- a/src/utils/global.js
+++ b/src/utils/global.js
@@ -22,7 +22,7 @@
 }
 
 // 鏃堕棿澶勭悊鍑芥暟
-export function handleDatatime(value) {
+export function handleDatetime(value) {
   const data = new Date(value)
   const month = data.getMonth() < 9 ? '0' + (data.getMonth() + 1) : data.getMonth() + 1
   const date = data.getDate() <= 9 ? '0' + data.getDate() : data.getDate()
diff --git a/src/views/jcsz/jsqd.vue b/src/views/jcsz/jsqd.vue
index 40bbad5..7226df7 100644
--- a/src/views/jcsz/jsqd.vue
+++ b/src/views/jcsz/jsqd.vue
@@ -150,7 +150,7 @@
     <el-dialog
       :title="operation==='add'?'鏂板':'缂栬緫'"
       :visible.sync="dialogVisible"
-      width="65%"
+      width="800px"
       top="15vh"
       :close-on-click-modal="false"
       @closed="handleClose"
@@ -194,7 +194,7 @@
     <el-dialog
       title="璁剧疆"
       :visible.sync="settingDialogVisible"
-      width="50%"
+      width="800px"
       top="15vh"
       :close-on-click-modal="false"
       class="settingDialogVisible"
@@ -276,7 +276,7 @@
     <el-dialog
       title="瑙掕壊鍏宠仈鐢ㄦ埛"
       :visible.sync="userDialogVisible"
-      width="80%"
+      width="1500px"
       :close-on-click-modal="false"
       top="15vh"
       :fullscreen="isFullscreen"
@@ -419,7 +419,7 @@
     <el-dialog
       title="瑙掕壊鍏宠仈鏉冮檺"
       :visible.sync="dialogVisibleRight"
-      width="50%"
+      width="800px"
       top="15vh"
       :fullscreen="isFullscreen"
       :close-on-click-modal="false"
@@ -813,7 +813,7 @@
     // 娣诲姞鎸夐挳
     addSetting() {
       let number = Math.random() * Math.random()// 浣滀负鍒犻櫎鏃剁殑鏍囪瘑绗�
-      number = number === 0 ? Math.random() * Math.random() : number
+      number = number === 0 ? (10 + Math.random()) : number
       const data = { roletype_code: '', roletype_name: '', isVisible: 1, number: number }
       this.RoleTypeCodeArr.unshift(data)
     },
@@ -1362,9 +1362,9 @@
   color: #606266;
 }
 
-//::v-deep .el-dialog__body {
-//  padding: 20px 100px !important;
-//}
+::v-deep .el-dialog__body {
+  padding: 20px 100px !important;
+}
 
 .settingDialogVisible, .userDialogVisible, .dialogVisibleRight {
   ::v-deep .el-dialog__body {
diff --git a/src/views/jcsz/wldw.vue b/src/views/jcsz/wldw.vue
index acef046..816270d 100644
--- a/src/views/jcsz/wldw.vue
+++ b/src/views/jcsz/wldw.vue
@@ -162,7 +162,7 @@
     <el-dialog
       :title="operation==='add'?'鏂板':'缂栬緫'"
       :visible.sync="dialogVisible"
-      width="50%"
+      width="800px"
       top="15vh"
       :close-on-click-modal="false"
       @closed="handleClose"
@@ -503,9 +503,9 @@
   color: #606266;
 }
 
-//::v-deep .el-dialog__body {
-//  padding: 20px 100px !important;
-//}
+::v-deep .el-dialog__body {
+  padding: 20px 100px !important;
+}
 
 ::v-deep .el-radio__input.is-checked .el-radio__inner {
   background-color: $main_color;
diff --git a/src/views/jcsz/yhqd.vue b/src/views/jcsz/yhqd.vue
index 3763d4f..a20ec9f 100644
--- a/src/views/jcsz/yhqd.vue
+++ b/src/views/jcsz/yhqd.vue
@@ -57,6 +57,7 @@
       <el-divider />
       <div style="margin-left: 10px;display: flex">
         <el-button type="primary" icon="el-icon-circle-plus-outline" @click="add('add')">鏂板</el-button>
+        <el-button type="primary" icon="el-icon-menu" @click="workingTramClick">鐢熶骇鐝粍</el-button>
         <el-button type="primary" icon="el-icon-upload2" @click="upload">瀵煎叆</el-button>
       </div>
       <el-divider />
@@ -102,8 +103,13 @@
             sortable="custom"
           />
           <el-table-column
+            prop="group_name"
+            label="鐢熶骇鐝粍"
+            sortable="custom"
+          />
+          <el-table-column
             prop="wagetype"
-            label="鎵�灞炵粍缁�"
+            label="宸ヨ祫绫诲瀷"
             sortable="custom"
           >
             <template slot-scope="{row}">
@@ -179,7 +185,7 @@
     <el-dialog
       :title="operation==='add'?'鏂板':'缂栬緫'"
       :visible.sync="dialogVisible"
-      width="65%"
+      width="800px"
       :close-on-click-modal="false"
       top="15vh"
       @closed="handleClose"
@@ -259,7 +265,7 @@
     <el-dialog
       title="鍏宠仈瑙掕壊"
       :visible.sync="dialogVisibleRoles"
-      width="65%"
+      width="800px"
       top="15vh"
       :fullscreen="isFullscreen"
       :close-on-click-modal="false"
@@ -323,6 +329,99 @@
         </div>
       </span>
     </el-dialog>
+
+    <!--    浜х粍鎸夐挳瀵硅瘽妗�-->
+    <el-dialog
+      title="鐢熶骇鐝粍"
+      :visible.sync="workingDialogVisible"
+      width="800px"
+      top="15vh"
+      :close-on-click-modal="false"
+      class="workingDialogVisible"
+      @close="handleCloseWorking"
+    >
+      <div style="margin-bottom: 20px;display: flex">
+        <el-button type="primary" icon="el-icon-circle-plus-outline" @click="addWorking">鏂板</el-button>
+        <!--        <el-button type="primary" icon="el-icon-delete" @click="delSetting">鍒犻櫎</el-button>-->
+      </div>
+      <el-table
+        :data="workingTableData"
+        border
+        height="300"
+        highlight-current-row
+        :header-cell-style="this.$headerCellStyle"
+        :cell-style="this.$cellStyle"
+        @sort-change="sortChangeOfWorking"
+      >
+        <!--        :style="{width: 100+'%',height:tableHeight-300+'px'}"-->
+
+        <!--        <el-table-column-->
+        <!--          type="selection"-->
+        <!--          width="50"-->
+        <!--        />-->
+        <el-table-column
+          width="50"
+          label="搴忓彿"
+          prop="RowNum"
+        />
+        <el-table-column
+          prop="group_code"
+          label="鐝粍缂栫爜"
+          sortable="custom"
+        >
+          <template slot-scope="{row}">
+            <el-input v-if="row.isVisible===1" v-model="row.group_code" placeholder="璇疯緭鍏�" />
+            <div v-else> {{ row.group_code }}</div>
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="group_name"
+          label="鐝粍鍚嶇О"
+          sortable="custom"
+        >
+          <template slot-scope="{row}">
+            <el-input v-if="row.isVisible===1" v-model="row.group_name" placeholder="璇疯緭鍏�" />
+            <div v-else> {{ row.group_name }}</div>
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="description"
+          label="鐝粍鎻忚堪"
+          sortable="custom"
+        >
+          <template slot-scope="{row}">
+            <el-input v-if="row.isVisible===1" v-model="row.description" placeholder="璇疯緭鍏�" />
+            <div v-else> {{ row.description }}</div>
+          </template>
+        </el-table-column>
+        <el-table-column label="鎿嶄綔">
+          <template slot-scope="{row}">
+            <div class="operationClass">
+              <el-button v-if="row.isVisible===0" type="text" @click="delWorking(row)">鍒犻櫎</el-button>
+              <el-button v-if="row.isVisible===1" type="text" @click="saveWorking(row)">淇濆瓨</el-button>
+              <el-button v-if="row.isVisible===1" type="text" @click="cancelWorking(row)">鍙栨秷</el-button>
+            </div>
+          </template>
+        </el-table-column>
+      </el-table>
+      <!--鍒嗛〉-->
+      <pagination
+        v-show="workingTableDataLength>0"
+        :total="workingTableDataLength"
+        :page.sync="formWorking.page"
+        :limit.sync="formWorking.rows"
+        align="right"
+        layout="prev, pager, next,sizes"
+        popper-class="select_bottom"
+        @pagination="getUserGroupSearch"
+      />
+      <span slot="footer" class="dialog-footer">
+        <div class="footerButton">
+          <el-button @click="WorkingDialogVisibleCancel">杩斿洖</el-button>
+          <!--          <el-button type="primary" @click="settingDialogVisibleConfirm">纭� 瀹�</el-button>-->
+        </div>
+      </span>
+    </el-dialog>
   </div>
 </template>
 
@@ -330,7 +429,14 @@
 import Pagination from '@/components/Pagination'
 import {
   AddUpdateUser,
-  DeleteUser, SaveUserAssoctRole, UserAssociationRole,
+  DeleteUser,
+  RoleTypeAdd,
+  RoleTypeDelete,
+  SaveUserAssoctRole,
+  UserAssociationRole,
+  UserGroupAdd,
+  UserGroupDelete,
+  UserGroupSearch,
   UserOrganization,
   UserSearch
 } from '@/api/jcsz'
@@ -436,8 +542,16 @@
         value: 'code',
         label: 'name',
         children: 'children'
+      },
+      workingDialogVisible: false,
+      workingTableData: [],
+      workingTableDataLength: 0,
+      formWorking: {
+        rows: 10,
+        page: 1,
+        prop: 'group_code',
+        order: 'desc'
       }
-
     }
   },
   created() {
@@ -879,8 +993,105 @@
       // })
       console.log(this.dialogFormRoles.rolesArrSelectedArr, 6666)
       console.log(this.dialogFormRoles.roleTreeSelectedArr, 6777)
-    }
+    },
 
+    /*
+      鐢熶骇鐝粍妯″潡
+   */
+    // 鐢熶骇鐝粍鎸夐挳鐐瑰嚮
+    workingTramClick() {
+      this.workingDialogVisible = true
+      this.getUserGroupSearch()
+    },
+    // 鐢熶骇鐝粍瀵硅瘽妗嗗叧闂簨浠�
+    handleCloseWorking() {
+      this.workingTableData.forEach((item, index) => {
+        if (item.isVisible === 1) {
+          this.workingTableData.splice(index, 1)
+        }
+      })
+      // this.getUserGroupSearch()
+    },
+    // 鐢熶骇鐝粍鎺掑簭
+    sortChangeOfWorking({ column, prop, order }) {
+      if (order === 'descending') {
+        order = 'desc'
+      } else if (order === 'ascending') {
+        order = 'asc'
+      } else {
+        order = 'desc'
+      }
+      this.form.order = order
+      this.form.prop = prop
+      this.getUserGroupSearch()
+    },
+    // 鑾峰彇鐢熶骇鐝粍鍒楄〃
+    async  getUserGroupSearch() {
+      const res = await UserGroupSearch(this.formWorking)
+      this.workingTableData = res.data
+      this.workingTableDataLength = res.count
+      this.workingTableData.forEach(item => {
+        item.isVisible = 0
+      })
+    },
+    // 鏂板
+    addWorking() {
+      let number = Math.random() * Math.random()// 浣滀负鍒犻櫎鏃剁殑鏍囪瘑绗�
+      number = number === 0 ? (10 + Math.random()) : number
+      const data = { group_code: '', group_name: '', description: '', isVisible: 1, number: number }
+      this.workingTableData.unshift(data)
+    },
+    // 鍒犻櫎
+    delWorking(row) {
+      this.$confirm('鏄惁纭鍒犻櫎?', '鎻愮ず', {
+        confirmButtonText: '纭畾',
+        cancelButtonText: '鍙栨秷',
+        type: 'warning'
+      }).then(() => {
+        UserGroupDelete({ UserGrupCode: row.group_code }).then(res => {
+          if (res.code === '200') {
+            this.$message.success('鍒犻櫎鎴愬姛!')
+            this.getUserGroupSearch()
+          }
+        })
+      }).catch(() => {
+        this.$message.info('宸插彇娑堝垹闄�')
+      })
+    },
+    // 淇濆瓨
+    async  saveWorking(row) {
+      if (row.group_code.trim().length < 1) {
+        return this.$message.info('鐝粍缂栫爜涓嶈兘涓虹┖锛�')
+      }
+      if (row.group_name.trim().length < 1) {
+        return this.$message.info('鐝粍鍚嶇О涓嶈兘涓虹┖锛�')
+      }
+      if (row.description.trim().length < 1) {
+        return this.$message.info('鐝粍鎻忚堪涓嶈兘涓虹┖锛�')
+      }
+      const data = {
+        code: row.group_code,
+        name: row.group_name,
+        flag: row.description
+      }
+      const res = await UserGroupAdd([data])
+      if (res.code === '200') {
+        this.$message.success('淇濆瓨鎴愬姛锛�')
+        await this.getUserGroupSearch()
+      }
+    },
+    // 鍙栨秷
+    cancelWorking(row) {
+      this.workingTableData.forEach((item, index) => {
+        if (item.isVisible === 1 && item.number === row.number) {
+          this.workingTableData.splice(index, 1)
+        }
+      })
+    },
+    // 鐢熶骇鐝粍杩斿洖鎸夐挳
+    WorkingDialogVisibleCancel() {
+      this.workingDialogVisible = false
+    }
   }
 }
 </script>
@@ -934,9 +1145,13 @@
   color: #606266;
 }
 
-//::v-deep .el-dialog__body {
-//  padding: 20px 100px !important;
-//}
+::v-deep .el-dialog__body {
+  padding: 20px 100px !important;
+}
+
+.workingDialogVisible ::v-deep .el-dialog__body{
+  padding: 20px 20px !important;
+}
 
 ::v-deep .el-radio__input.is-checked .el-radio__inner {
   background-color: $main_color;
diff --git a/src/views/jcsz/zzjg.vue b/src/views/jcsz/zzjg.vue
index 5a672ff..20be7ef 100644
--- a/src/views/jcsz/zzjg.vue
+++ b/src/views/jcsz/zzjg.vue
@@ -129,7 +129,7 @@
     <el-dialog
       :title="operation==='add'?'鏂板':'缂栬緫'"
       :visible.sync="dialogVisible"
-      width="60%"
+      width="800px"
       top="15vh"
       :close-on-click-modal="false"
       @closed="handleClose"
@@ -495,9 +495,9 @@
   color: #606266;
 }
 
-//::v-deep .el-dialog__body {
-//  padding: 20px 100px !important;
-//}
+::v-deep .el-dialog__body {
+  padding: 20px 100px !important;
+}
 
 ::v-deep .el-radio__input.is-checked .el-radio__inner {
   background-color: $main_color;
diff --git a/src/views/sbgl/sbqd.vue b/src/views/sbgl/sbqd.vue
index d9a8aa7..2ac7b63 100644
--- a/src/views/sbgl/sbqd.vue
+++ b/src/views/sbgl/sbqd.vue
@@ -200,7 +200,7 @@
       :close-on-click-modal="false"
       :title="operation==='add'?'鏂板':'缂栬緫'"
       :visible.sync="dialogVisible"
-      width="65%"
+      width="800px"
       top="15vh"
       @closed="handleClose"
       @close="handleClose"
@@ -288,7 +288,7 @@
     <el-dialog
       title="璁惧绫诲瀷"
       :visible.sync="DeviceTypeDialogVisible"
-      width="65%"
+      width="800px"
       top="15vh"
       :close-on-click-modal="false"
       class="DeviceTypeDialogVisible"
@@ -375,7 +375,7 @@
     <el-dialog
       title="璁惧缁�"
       :visible.sync="DeviceGroupDialogVisible"
-      width="70%"
+      width="800px"
       :close-on-click-modal="false"
       top="15vh"
       class="DeviceTypeDialogVisible"
@@ -492,7 +492,7 @@
   DeviceTypeSelectGroup,
   WorkShopSelect, WorkShopSelectLine
 } from '@/api/sbgl'
-import { handleDatatime } from '@/utils/global'
+import { handleDatetime } from '@/utils/global'
 
 const SER_HZ = /^[\u4e00-\u9fa5]+$/
 export default {
@@ -748,7 +748,7 @@
             devicename: this.dialogForm.devicename,
             devicetypecode: this.dialogForm.devicetypecode,
             devicegroupcode: this.dialogForm.devicegroupcode,
-            importdate: handleDatatime(this.dialogForm.importdate),
+            importdate: handleDatetime(this.dialogForm.importdate),
             workshopcode: this.dialogForm.workshopcode,
             linecode: this.dialogForm.linecode,
             status: this.dialogForm.status,
@@ -816,7 +816,8 @@
     },
     // 鏂板鎸夐挳
     addDeviceType() {
-      const number = Math.random() * Math.random()// 浣滀负鍒犻櫎鏃剁殑鏍囪瘑绗�
+      let number = Math.random() * Math.random()// 浣滀负鍒犻櫎鏃剁殑鏍囪瘑绗�
+      number = number === 0 ? (10 + Math.random()) : number
       this.DeviceTypeArray.unshift({ code: '', name: '', group: '', remark: '', isVisible: 1, number: number })
     },
     // 鍒犻櫎
@@ -892,7 +893,8 @@
     },
     // 鏂板
     addDeviceGroup() {
-      const number = Math.random() * Math.random()// 浣滀负鍒犻櫎鏃剁殑鏍囪瘑绗�
+      let number = Math.random() * Math.random()// 浣滀负鍒犻櫎鏃剁殑鏍囪瘑绗�
+      number = number === 0 ? (10 + Math.random()) : number
       this.DeviceGroupArray.unshift({ code: '', name: '', eqptype_code: '', eqptype_name: '', remark: '', isVisible: 1, number: number })
     },
     // 鎺掑簭
@@ -1024,9 +1026,9 @@
   color: #606266;
 }
 
-//::v-deep .el-dialog__body {
-//  padding: 20px 100px !important;
-//}
+::v-deep .el-dialog__body {
+  padding: 20px 100px !important;
+}
 
 .DeviceTypeDialogVisible {
   ::v-deep .el-dialog__body {
diff --git a/src/views/scgl/gd.vue b/src/views/scgl/gd.vue
index 65b42ea..9ee6dc7 100644
--- a/src/views/scgl/gd.vue
+++ b/src/views/scgl/gd.vue
@@ -46,31 +46,45 @@
             <el-form-item label="浜у搧瑙勬牸" style=" display: flex;">
               <el-input v-model="form.partspec" style="width: 200px" placeholder="璇疯緭鍏�" />
             </el-form-item>
-            <el-form-item label="浜や粯鏃堕棿" style=" display: flex;">
-              <el-date-picker
-                v-model="form.paydate"
-                type="date"
-                value-format="yyyy-MM-dd HH:mm:ss"
-                style="width: 200px"
-                placeholder="閫夋嫨鏃ユ湡"
-              />
-            </el-form-item>
             <el-form-item label="鍒涘缓浜哄憳" style=" display: flex;">
               <el-input v-model="form.creatuser" style="width: 200px" placeholder="璇疯緭鍏�" />
             </el-form-item>
             <el-form-item label="鍒涘缓鏃堕棿" style=" display: flex;">
+              <!--              <el-date-picker-->
+              <!--                v-model="form.createdate"-->
+              <!--                type="date"-->
+              <!--                value-format="yyyy-MM-dd HH:mm:ss"-->
+              <!--                style="width: 200px"-->
+              <!--                placeholder="閫夋嫨鏃ユ湡"-->
+              <!--              />-->
               <el-date-picker
                 v-model="form.createdate"
-                type="date"
-                value-format="yyyy-MM-dd HH:mm:ss"
-                style="width: 200px"
-                placeholder="閫夋嫨鏃ユ湡"
+                type="daterange"
+                range-separator="~"
+                start-placeholder="寮�濮嬫棩鏈�"
+                end-placeholder="缁撴潫鏃ユ湡"
+                size="mini"
               />
             </el-form-item>
           </div>
-          <div style="display: flex;align-items: start;margin-top: 5px;z-index: 2">
-            <el-button type="primary" icon="el-icon-search" @click="search">鏌ヨ</el-button>
-            <el-button type="info" icon="el-icon-refresh" @click="reset">閲嶇疆</el-button>
+          <div style="min-height: 100px">
+            <div style="display: flex;align-items: start;justify-content:end;margin-top: 5px;z-index: 2">
+              <el-button type="primary" icon="el-icon-search" @click="search">鏌ヨ</el-button>
+              <el-button type="info" icon="el-icon-refresh" @click="reset">閲嶇疆</el-button>
+            </div>
+            <!--            <div v-if="!isFullscreen" style="display: flex;align-items: start; margin-top: 15px;z-index: 2">-->
+            <!--              <el-button type="primary" icon="el-icon-circle-plus-outline" @click="add('add')">鏂板</el-button>-->
+            <!--              <el-button type="primary" icon="el-icon-connection" @click="send('send')">娲惧彂</el-button>-->
+            <!--              <el-button type="primary" icon="el-icon-switch-button">璁㈠崟鍏抽棴</el-button>-->
+            <!--            </div>-->
+            <!--            <div v-if="isFullscreen" style="display: flex;flex-direction: column;align-items: end">-->
+            <!--              <div style="display: flex;margin: 10px 0">-->
+            <!--                <el-button type="primary" icon="el-icon-circle-plus-outline" @click="add('add')">鏂板</el-button>-->
+            <!--                <el-button type="primary" icon="el-icon-connection" @click="send('send')">娲惧彂</el-button>-->
+            <!--              </div>-->
+            <!--              <el-button type="primary" icon="el-icon-switch-button">璁㈠崟鍏抽棴</el-button>-->
+            <!--            </div>-->
+
           </div>
         </el-form>
       </div>
@@ -78,11 +92,7 @@
       <div style="margin-left: 10px;display: flex">
         <el-button type="primary" icon="el-icon-circle-plus-outline" @click="add('add')">鏂板</el-button>
         <el-button type="primary" icon="el-icon-connection" @click="send('send')">娲惧彂</el-button>
-        <el-button
-          type="primary"
-          icon="el-icon-switch-button"
-        >璁㈠崟鍏抽棴
-        </el-button>
+        <el-button type="primary" icon="el-icon-switch-button" @click="orderClose">宸ュ崟鍏抽棴</el-button>
       </div>
       <el-divider />
       <div class="elTableDiv">
@@ -103,6 +113,7 @@
           <!--          />-->
           <el-table-column
             width="50"
+            fixed
           >
             <template slot-scope="{row}">
               <el-radio
@@ -126,17 +137,18 @@
           >
             <template slot-scope="{row}">
               <div v-if="row.status==='NEW'">鏂板伐鍗�</div>
-              <div v-if="row.status==='CREATING'">鎵ц涓�</div>
-              <div v-if="row.status==='CREATED'">宸插叧闂�</div>
-              <!--              <div v-if="row.status==='ALLOC'">宸叉淳鍙�</div>-->
-              <!--              <div v-if="row.status==='START'">寮�宸�</div>-->
-              <!--              <div v-if="row.status==='CLOSED'">瀹屽伐</div>-->
+              <!--              <div v-if="row.status==='CREATING'">鎵ц涓�</div>-->
+              <!--              <div v-if="row.status==='CREATED'">宸插叧闂�</div>-->
+              <div v-if="row.status==='ALLO'">宸叉淳鍙�</div>
+              <div v-if="row.status==='START'">寮�宸�</div>
+              <div v-if="row.status==='CLOSED'">瀹屽伐</div>
             </template>
           </el-table-column>
           <el-table-column
             prop="wo_code"
             label="宸ュ崟缂栧彿"
             sortable="custom"
+
             width="160"
           />
           <el-table-column
@@ -192,15 +204,21 @@
             label="宸ュ崟绛夌骇"
             sortable="custom"
             width="120"
-          />
+          >
+            <template slot-scope="{row}">
+              <div v-if="row.piroque==='1'">鐗圭骇</div>
+              <div v-if="row.piroque==='2'">绱ф��</div>
+              <div v-if="row.piroque==='3'">姝e父</div>
+            </template>
+          </el-table-column>
           <el-table-column
-            prop="createuser"
+            prop="lm_user"
             label="鍒涘缓浜哄憳"
             sortable="custom"
             width="120"
           />
           <el-table-column
-            prop="createdate"
+            prop="lm_date"
             label="鍒涘缓鏃堕棿"
             width="160"
             sortable="custom"
@@ -213,7 +231,7 @@
             <template slot-scope="{row}">
               <div class="operationClass">
                 <el-button type="text" @click="check(row)">宸ュ簭浠诲姟</el-button>
-                <el-button v-if="row.status==='NEW'" type="text" @click="del(row)">鍒犻櫎</el-button>
+                <el-button type="text" @click="del(row)">鍒犻櫎</el-button>
               </div>
             </template>
           </el-table-column>
@@ -231,24 +249,30 @@
         @pagination="getMesOrderSearch"
       />
     </div>
-
+    <!--鏂板娲惧彂瀵硅瘽妗�-->
     <el-dialog
       :title="operation==='add'?'鏂板':'娲惧彂'"
       :visible.sync="dialogVisible"
-      width="60%"
+      width="840px"
       top="15vh"
       :close-on-click-modal="false"
       @closed="handleClose"
       @close="handleClose"
     >
-      <el-form ref="dialogForm" inline :rules="dialogFormRules" :model="dialogForm" label-width="80px">
+      <el-form
+        ref="dialogForm"
+        inline
+        :rules="dialogFormRules"
+        :model="dialogForm"
+        label-width="110px"
+      >
         <el-form-item
           label="璁㈠崟鐘舵��"
           prop="mesorderstus"
         >
           <el-select
             v-model="dialogForm.mesorderstus"
-            :disabled="operation!=='add'"
+            disabled
             :popper-append-to-body="false"
             style="width: 200px"
             placeholder="璇烽�夋嫨"
@@ -261,35 +285,9 @@
             />
           </el-select>
         </el-form-item>
-        <el-form-item
-          v-if="operation==='add'"
-          label="浜у搧淇℃伅"
-          prop="partcode"
-        >
-          <el-select
-            v-model="dialogForm.partcode"
-            :disabled="operation!=='add'"
-            :popper-append-to-body="false"
-            style="width: 200px"
-            placeholder="璇烽�夋嫨"
-            @change="partcodeChange"
-          >
-            <el-option
-              v-for="item in partArr"
-              :key="item.partcode"
-              :label="item.partname"
-              :value="item.partcode"
-            />
-          </el-select>
-        </el-form-item>
+
         <el-form-item label="宸ュ崟缂栧彿" prop="mesordercode">
           <el-input v-model="dialogForm.mesordercode" :disabled="operation!=='add'" style="width: 200px" />
-        </el-form-item>
-        <el-form-item v-if="operation!=='add'" label="浜у搧缂栫爜" prop="partcode">
-          <el-input v-model="dialogForm.partcode" :disabled="operation!=='add'" style="width: 200px" />
-        </el-form-item>
-        <el-form-item v-if="operation!=='add'" label="浜у搧鍚嶇О" prop="partname">
-          <el-input v-model="dialogForm.partname" :disabled="operation!=='add'" style="width: 200px" />
         </el-form-item>
         <el-form-item label="宸ュ崟鏁伴噺" prop="mesqty">
           <el-input
@@ -299,54 +297,93 @@
             style="width: 200px"
           />
         </el-form-item>
-        <el-form-item v-if="operation!=='add'" label="浜у搧瑙勬牸" prop="partspec">
-          <el-input v-model="dialogForm.partspec" :disabled="operation!=='add'" style="width: 200px" />
-        </el-form-item>
-        <el-form-item label="鐢熶骇杞﹂棿" prop="wkshopcode">
+        <el-form-item
+          v-if="operation==='add'"
+          label="浜у搧鍚嶇О"
+          prop="partcode"
+        >
           <el-select
-            v-model="dialogForm.wkshopcode"
+            v-model="dialogForm.partcode"
+            :disabled="operation!=='add'"
             :popper-append-to-body="false"
             style="width: 200px"
             placeholder="璇烽�夋嫨"
+            @change="partcodeChangeDialog"
           >
             <el-option
-              v-for="item in wkshopArr"
-              :key="item.code"
-              :label="item.name"
-              :value="item.code"
+              v-for="item in partArr"
+              :key="item.partcode"
+              :label="item.partname"
+              :value="item.partcode"
             />
           </el-select>
         </el-form-item>
-        <el-form-item label="宸ヨ壓璺嚎" prop="routecode">
-          <el-select
-            v-model="dialogForm.routecode"
-            :disabled="dialogForm.partcode===''"
-            :popper-append-to-body="false"
-            style="width: 200px"
-            placeholder="璇烽�夋嫨"
-          >
-            <el-option
-              v-for="item in routeArr"
-              :key="item.route_code"
-              :label="item.route_name"
-              :value="item.route_code"
-            />
-          </el-select>
+        <el-form-item v-if="operation!=='add'" label="浜у搧鍚嶇О" prop="partname">
+          <el-input v-model="dialogForm.partname" disabled style="width: 200px" />
         </el-form-item>
-        <el-form-item label="寮�濮嬫椂闂�" prop="planstartdate">
+        <el-form-item label="浜у搧缂栫爜" prop="partcode">
+          <el-input v-model="dialogForm.partcode" disabled style="width: 200px" />
+        </el-form-item>
+        <el-form-item label="浜у搧瑙勬牸" prop="partspec">
+          <el-input v-model="dialogForm.partspec" disabled style="width: 200px" />
+        </el-form-item>
+        <div style="display: flex">
+          <el-form-item label="鐢熶骇杞﹂棿" prop="wkshopcode">
+            <el-select
+              v-model="dialogForm.wkshopcode"
+              :popper-append-to-body="false"
+              style="width: 200px"
+              placeholder="璇烽�夋嫨"
+            >
+              <el-option
+                v-for="item in wkshopArr"
+                :key="item.code"
+                :label="item.name"
+                :value="item.code"
+              />
+            </el-select>
+          </el-form-item>
+          <div style="display: flex;flex-wrap: nowrap">
+            <el-form-item label="宸ヨ壓璺嚎" prop="routecode">
+              <el-select
+                v-model="dialogForm.routecode"
+                :disabled="dialogForm.partcode===''"
+                :popper-append-to-body="false"
+                style="width: 160px"
+                placeholder="璇烽�夋嫨"
+              >
+                <el-option
+                  v-for="item in routeArr"
+                  :key="item.route_code"
+                  :label="item.route_name"
+                  :value="item.route_code"
+                />
+              </el-select>
+            </el-form-item>
+            <el-button
+              type="primary"
+              style="padding: 0 10px;margin-left: -8px;margin-top: 5px"
+              class="el-icon-search"
+              @click="searchClick"
+            />
+            <!--            :disabled="dialogForm.routecode===''"-->
+
+          </div>
+        </div>
+        <el-form-item label="璁″垝寮�濮嬫椂闂�" prop="planstartdate">
           <el-date-picker
             v-model="dialogForm.planstartdate"
             type="date"
-            value-format="yyyy-MM-dd HH:mm:ss"
+            value-format="yyyy-MM-dd"
             style="width: 200px"
             placeholder="閫夋嫨鏃ユ湡"
           />
         </el-form-item>
-        <el-form-item label="缁撴潫鏃堕棿" prop="planenddate">
+        <el-form-item label="璁″垝瀹屾垚鏃堕棿" prop="planenddate">
           <el-date-picker
             v-model="dialogForm.planenddate"
             type="date"
-            value-format="yyyy-MM-dd HH:mm:ss"
+            value-format="yyyy-MM-dd"
             style="width: 200px"
             placeholder="閫夋嫨鏃ユ湡"
           />
@@ -367,6 +404,54 @@
           </el-select>
         </el-form-item>
       </el-form>
+
+      <!--        宸ヨ壓璺嚎鏀惧ぇ闀滃璇濇-->
+      <el-dialog
+        title="宸ュ簭"
+        :visible.sync="dialogVisibleSearch"
+        width="540px"
+        top="25vh"
+        class="dialogVisibleSearch"
+        append-to-body
+      >
+        <el-table
+          :data="searchTableData"
+          border
+          stripe
+          height="300"
+          style="width: 100%;"
+          highlight-current-row
+          :header-cell-style="this.$headerCellStyle"
+          :cell-style="this.$cellStyle"
+        >
+          <el-table-column
+            prop="seq"
+            label="搴忓彿"
+            width="50"
+          />
+          <el-table-column
+            prop="stepcode"
+            label="宸ュ簭缂栫爜"
+          />
+          <el-table-column
+            prop="stepname"
+            label="宸ュ簭鍚嶇О"
+          />
+          <el-table-column
+            prop="flwtype"
+            label="宸ュ簭绫诲瀷"
+          >
+            <template slot-scope="{row}">
+              <div v-if="row.flwtype==='W'">澶栧崗</div>
+              <div v-if="row.flwtype==='Z'">鑷埗</div>
+            </template>
+          </el-table-column>
+          <el-table-column
+            prop="descr"
+            label="宸ュ簭鎻忚堪"
+          />
+        </el-table>
+      </el-dialog>
       <span slot="footer" class="dialog-footer">
         <div class="footerButton">
           <el-button @click="dialogVisibleCancel">鍙� 娑�</el-button>
@@ -374,14 +459,94 @@
         </div>
       </span>
     </el-dialog>
+
+    <!--    宸ュ簭浠诲姟瀵硅瘽妗�-->
+    <el-dialog
+      title="宸ュ簭浠诲姟"
+      :visible.sync="dialogVisibleTask"
+      width="840px"
+      top="15vh"
+      class="dialogVisibleSearch"
+      :close-on-click-modal="false"
+    >
+      <el-table
+        :data="taskTableData"
+        border
+        stripe
+        height="300"
+        style="width: 100%;"
+        highlight-current-row
+        :header-cell-style="this.$headerCellStyle"
+        :cell-style="this.$cellStyle"
+      >
+        <el-table-column
+          prop="seq"
+          width="50"
+          label="搴忓彿"
+        />
+        <el-table-column
+          prop="wo_code"
+          label="宸ュ崟缂栧彿"
+        />
+        <el-table-column
+          prop="stepcode"
+          label="宸ュ簭缂栫爜"
+        />
+        <el-table-column
+          prop="stepname"
+          label="宸ュ簭鍚嶇О"
+        />
+        <!--        <el-table-column-->
+        <!--          prop="flwtype"-->
+        <!--          label="宸ュ簭绫诲瀷"-->
+        <!--        >-->
+        <!--          <template slot-scope="{row}">-->
+        <!--            <div v-if="row.flwtype==='W'">澶栧崗</div>-->
+        <!--            <div v-if="row.flwtype==='Z'">鑷埗</div>-->
+        <!--          </template>-->
+        <!--        </el-table-column>-->
+        <!--        <el-table-column-->
+        <!--          prop="descr"-->
+        <!--          label="宸ュ簭鎻忚堪"-->
+        <!--        />-->
+        <el-table-column
+          prop="plan_qty"
+          label="浠诲姟鏁伴噺"
+        />
+        <el-table-column
+          prop="good_qty"
+          label="鍚堟牸鏁伴噺"
+        />
+        <el-table-column
+          prop="ng_qty"
+          label="涓嶈壇鏁伴噺"
+        />
+      </el-table>
+
+      <span slot="footer" class="dialog-footer">
+        <div class="footerButton">
+          <el-button @click="dialogVisibleBack">杩� 鍥�</el-button>
+          <!--          <el-button type="primary" @click="dialogVisibleConfirm">纭� 瀹�</el-button>-->
+        </div>
+      </span>
+    </el-dialog>
+
   </div>
 </template>
 
 <script>
 import Pagination from '@/components/Pagination'
-import { DeleteMesOrder, MesOrderSearch } from '@/api/scgl'
+import {
+  AddUpdateMesOrder,
+  ClosedErpOrder,
+  ClosedMesOrder,
+  DeleteMesOrder,
+  MesOrderSearch, SearchWorkStep,
+  SelectRouteStep
+} from '@/api/scgl'
 import { WorkShopSelect } from '@/api/sbgl'
 import { PartSelect, PartSelectRpute } from '@/api/zzmx'
+import { handleDatetime } from '@/utils/global'
 
 const SER_HZ = /^[\u4e00-\u9fa5]+$/
 export default {
@@ -402,6 +567,7 @@
       }
     }
     return {
+      isFullscreen: false,
       mainHeight: 0,
       tableHeight: 0,
       form: {
@@ -412,18 +578,18 @@
         partspec: '', // 浜у搧瑙勬牸
         creatuser: '', // 鍒涘缓浜哄憳
         createdate: '', // 鍒涘缓鏃堕棿
-        prop: 'partcode', // 鎺掑簭瀛楁
+        prop: 'lm_date', // 鎺掑簭瀛楁
         order: 'desc', // 鎺掑簭瀛楁
         page: 1, // 绗嚑椤�
         rows: 20 // 姣忛〉澶氬皯鏉�
       },
       erporderstusArr: [
         { code: 'NEW', name: '鏂板伐鍗�' },
-        { code: 'CREATING', name: '鎵ц涓�' },
-        { code: 'CREATED', name: '宸插叧闂�' }
-        // { code: 'ALLOC', name: '宸叉淳鍙�' },
-        // { code: 'START', name: '寮�宸�' },
-        // { code: 'CLOSED', name: '瀹屽伐' }
+        // { code: 'CREATING', name: '鎵ц涓�' },
+        // { code: 'CREATED', name: '宸插叧闂�' }
+        { code: 'ALLO', name: '宸叉淳鍙�' },
+        { code: 'START', name: '寮�宸�' },
+        { code: 'CLOSED', name: '瀹屽伐' }
       ],
       total: 10,
       radioSelected: '',
@@ -435,7 +601,7 @@
         wkshopname: '', // 鐢熶骇杞﹂棿鍚嶇О
         routename: '', // 宸ヨ壓璺嚎鍚嶇О
 
-        mesorderstus: '', // 宸ュ崟鐘舵�佺爜
+        mesorderstus: 'NEW', // 宸ュ崟鐘舵�佺爜
         mesordercode: '', // 宸ュ崟缂栧彿
         partcode: '', // 浜у搧缂栫爜
         mesqty: '', // 宸ュ崟鏁伴噺
@@ -452,9 +618,9 @@
       wkshopArr: [], // 鐢熶骇杞﹂棿鏁扮粍
       routeArr: [], // 宸ヨ壓璺嚎鏁扮粍
       orderlevArr: [
-        { code: '101', name: '涓�鑸�' },
-        { code: '102', name: '閲嶈' },
-        { code: '103', name: '鐗圭骇' }
+        { code: 1, name: '鐗圭骇' },
+        { code: 2, name: '绱ф��' },
+        { code: 3, name: '姝e父' }
       ], // 宸ュ崟绛夌骇鏁扮粍
       operation: '',
       dialogFormRules: {
@@ -486,8 +652,29 @@
           { required: true, message: '璇烽�夋嫨宸ュ崟绛夌骇', trigger: ['blur', 'change'] }
         ]
 
-      }
-
+      },
+      dialogVisibleTask: false,
+      taskTableData: [],
+      // dialogFormTask: {
+      //   partname: '', // 浜у搧鍚嶇О
+      //   partspec: '', // 浜у搧瑙勬牸
+      //   wkshopname: '', // 鐢熶骇杞﹂棿鍚嶇О
+      //   routename: '', // 宸ヨ壓璺嚎鍚嶇О
+      //
+      //   mesorderstusName: '', // 宸ュ崟鐘舵�佸悕绉�
+      //   mesorderstus: '', // 宸ュ崟鐘舵�佺爜
+      //   mesordercode: '', // 宸ュ崟缂栧彿
+      //   partcode: '', // 浜у搧缂栫爜
+      //   mesqty: '', // 宸ュ崟鏁伴噺
+      //
+      //   routecode: '', // 宸ヨ壓璺嚎缂栫爜
+      //   wkshopcode: '', // 鐢熶骇杞﹂棿缂栫爜
+      //   planstartdate: '', // 璁″垝寮�濮嬫椂闂�
+      //   planenddate: '', // 璁″垝瀹屾垚鏃堕棿
+      //   orderlev: '' // 宸ュ崟绛夌骇
+      // },
+      dialogVisibleSearch: false,
+      searchTableData: []
     }
   },
   created() {
@@ -500,11 +687,31 @@
   },
   methods: {
     async getMesOrderSearch() {
-      const res = await MesOrderSearch(this.form)
+      let tempDate = this.form.createdate
+      if (tempDate.length > 0) {
+        tempDate = handleDatetime(tempDate[0]) + '~' + handleDatetime(tempDate[1])
+      }
+
+      const data = {
+        mesorderstus: this.form.mesorderstus, // 宸ュ崟鐘舵�佺爜
+        mesordercode: this.form.mesordercode, // 宸ュ崟缂栧彿
+        partcode: this.form.partcode, // 浜у搧缂栫爜
+        partname: this.form.partname, // 浜у搧鍚嶇О
+        partspec: this.form.partspec, // 浜у搧瑙勬牸
+        creatuser: this.form.creatuser, // 鍒涘缓浜哄憳
+        createdate: tempDate, // 鍒涘缓鏃堕棿
+        prop: this.form.prop, // 鎺掑簭瀛楁
+        order: this.form.order, // 鎺掑簭瀛楁
+        page: this.form.page, // 绗嚑椤�
+        rows: this.form.rows // 姣忛〉澶氬皯鏉�
+      }
+      const res = await MesOrderSearch(data)
       this.tableData = res.data
       this.total = res.count
+
+      // this.form.createdate = tempDate
     },
-    async  getSelect() {
+    async getSelect() {
       // 鑾峰彇浜у搧淇℃伅
       const { data: res1 } = await PartSelect()
       this.partArr = res1
@@ -560,8 +767,13 @@
       this.dialogForm.routecode = ''
     },
     // 宸ュ簭浠诲姟
-    check() {
-
+    async  check(row) {
+      this.dialogVisibleTask = true
+      const { data: res } = await SearchWorkStep({ wo_code: row.wo_code })
+      this.taskTableData = res
+    },
+    dialogVisibleBack() {
+      this.dialogVisibleTask = false
     },
     // 娲惧彂
     send(operation) {
@@ -572,7 +784,7 @@
       const row = this.tableData.find(item => item.wo_code === this.radioSelected)
 
       if (row.status !== 'NEW') {
-        return this.$message.info('姝ゅ伐鍗曚负闈炴湭寮�濮嬬姸鎬侊紝涓嶅彲娲惧彂锛�')
+        return this.$message.info('姝ゅ伐鍗曚负闈炴柊宸ュ崟鐘舵�侊紝涓嶅彲娲惧彂锛�')
       }
       this.operation = operation
       this.dialogVisible = true
@@ -586,17 +798,18 @@
         this.dialogForm.partspec = row.partspec
         this.dialogForm.routecode = row.route_code// 宸ヨ壓璺嚎浠g爜
         this.dialogForm.wkshopcode = row.wkshp_code// 鐢熶骇杞﹂棿浠g爜
-        // handleDatatime(row.plan_startdate.toString().length > 0)
-        this.dialogForm.planstartdate = row.plan_startdate
-        this.dialogForm.planenddate = row.plan_enddate
-        this.dialogForm.orderlev = row.piroque // 绛夌骇
+
+        this.dialogForm.planstartdate = row.plan_startdate !== null ? row.plan_startdate : handleDatetime(new Date())
+        this.dialogForm.planenddate = row.plan_enddate !== null ? row.plan_enddate : handleDatetime(new Date())
+        this.dialogForm.orderlev = row.piroque !== null ? row.piroque : 3 // 绛夌骇
       })
     },
     // 鍒犻櫎鎸夐挳
     async del(row) {
-      // if (row.status !== 'NEW') {
-      //   return this.$message.success('')
-      // }
+      console.log(row.status)
+      if (row.status === 'START' || row.status === 'CLOSED') {
+        return this.$message.info('姝ゅ伐鍗曚笉鍙垹闄わ紒')
+      }
       this.$confirm('鏄惁纭鍒犻櫎?', '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
@@ -609,15 +822,62 @@
           orderqty: row.plan_qty
         }
         console.log(data, 2)
-        // DeleteMesOrder(data).then(res => {
-        //   if (res.code === '200') {
-        //     this.$message.success('鍒犻櫎鎴愬姛!')
-        //     this.getMesOrderSearch()
-        //   }
-        // })
+        DeleteMesOrder(data).then(res => {
+          if (res.code === '200') {
+            this.$message.success('鍒犻櫎鎴愬姛!')
+            this.getMesOrderSearch()
+          }
+        })
       }).catch(() => {
         this.$message.info('宸插彇娑堝垹闄�')
       })
+    },
+    // 宸ュ崟鍏抽棴浜嬩欢
+    orderClose() {
+      if (this.radioSelected.length < 1) {
+        return this.$message.info('璇峰厛閫夋嫨宸ュ崟锛�')
+      }
+      console.log('宸ュ崟鍏抽棴浜嬩欢')
+      this.tableData.forEach(item => {
+        if (item.wo_code === this.radioSelected) {
+          if (item.status === 'START') {
+            return this.$message.info('褰撳墠宸ュ崟鏈畬宸ワ紝鏃犳硶鍏抽棴锛�')
+          } else if (item.status === 'CLOSED') {
+            return this.$message.info('宸ュ崟宸插叧闂紝鏃犻渶鍐嶅叧闂紒')
+          } else {
+            this.$confirm('鏄惁纭鍏抽棴宸ュ崟?', '鎻愮ず', {
+              confirmButtonText: '纭畾',
+              cancelButtonText: '鍙栨秷',
+              type: 'warning'
+            }).then(() => {
+              const data = {
+                wocode: item.wo_code,
+                m_po: item.m_po
+              }
+              ClosedMesOrder(data).then(res => {
+                if (res.code === '200') {
+                  this.$message.success('宸ュ崟鍏抽棴鎴愬姛!')
+                  this.getMesOrderSearch()
+                  // this.radioSelected = ''
+                }
+              })
+            }).catch(() => {
+              this.$message.info('宸插彇娑堝叧闂紒')
+            })
+          }
+        }
+      })
+    },
+    // 瀵硅瘽妗嗕骇鍝佷俊鎭�兼敼鍙�
+    partcodeChangeDialog(val) {
+      console.log(val)
+      this.dialogForm.partname = this.partArr.find(item => item.partcode === val).partname
+      this.dialogForm.partcode = this.partArr.find(item => item.partcode === val).partcode
+      this.dialogForm.partspec = this.partArr.find(item => item.partcode === val).partspec
+      // const { data: res } = await PartSelectRpute({ partcode: val })
+      // this.routeArr = res
+      // this.dialogForm.routecode = ''
+      this.partcodeChange(val)
     },
     // 瀵硅瘽妗嗗叧闂簨浠�
     handleClose() {
@@ -626,7 +886,7 @@
       this.dialogForm.wkshopname = '' // 鐢熶骇杞﹂棿鍚嶇О
       this.dialogForm.routename = '' // 宸ヨ壓璺嚎鍚嶇О
 
-      this.dialogForm.mesorderstus = '' // 宸ュ崟鐘舵�佺爜
+      this.dialogForm.mesorderstus = 'NEW' // 宸ュ崟鐘舵�佺爜
       this.dialogForm.mesordercode = '' // 宸ュ崟缂栧彿
       this.dialogForm.partcode = '' // 浜у搧缂栫爜
       this.dialogForm.mesqty = '' // 宸ュ崟鏁伴噺
@@ -648,10 +908,10 @@
       this.$refs.dialogForm.validate(valid => {
         if (valid) {
           const data = {
-            partname: this.dialogForm.partname, // 浜у搧鍚嶇О
-            partspec: this.dialogForm.partspec, // 浜у搧瑙勬牸
-            wkshopname: this.dialogForm.wkshopname, // 鐢熶骇杞﹂棿鍚嶇О
-            routename: this.dialogForm.routename, // 宸ヨ壓璺嚎鍚嶇О
+            // partname: this.dialogForm.partname, // 浜у搧鍚嶇О
+            // partspec: this.dialogForm.partspec, // 浜у搧瑙勬牸
+            // wkshopname: this.dialogForm.wkshopname, // 鐢熶骇杞﹂棿鍚嶇О
+            // routename: this.dialogForm.routename, // 宸ヨ壓璺嚎鍚嶇О
 
             mesorderstus: this.dialogForm.mesorderstus, // 宸ュ崟鐘舵�佺爜
             mesordercode: this.dialogForm.mesordercode, // 宸ュ崟缂栧彿
@@ -666,15 +926,15 @@
             OperType: this.operation === 'add' ? 'Add' : 'Update'
           }
           console.log(data, 1)
-          // AddUpdateMesOrder(data).then(res => {
-          //   if (res.code === '200') {
-          //     this.$message.success(this.operation === 'add' ? '娣诲姞鎴愬姛锛�' : '淇敼鎴愬姛锛�')
-          //     this.dialogVisible = false
-          //     this.getMesOrderSearch()
-          //   } else {
-          //     this.$message.error(this.operation === 'add' ? '娣诲姞澶辫触锛�' : '淇敼澶辫触锛�')
-          //   }
-          // })
+          AddUpdateMesOrder(data).then(res => {
+            if (res.code === '200') {
+              this.$message.success(this.operation === 'add' ? '娣诲姞鎴愬姛锛�' : '娲惧彂鎴愬姛锛�')
+              this.dialogVisible = false
+              this.getMesOrderSearch()
+            } else {
+              this.$message.error(this.operation === 'add' ? '娣诲姞澶辫触锛�' : '娲惧彂澶辫触锛�')
+            }
+          })
         }
       })
     },
@@ -683,7 +943,23 @@
       this.$nextTick(() => {
         this.mainHeight = window.innerHeight - 250
         this.tableHeight = this.mainHeight - 100
+        this.isFullscreen = window.innerHeight < 800
+        if (this.isFullscreen) {
+          this.tableHeight = this.tableHeight - 50
+        }
       })
+    },
+    // 宸ヨ壓璺嚎鏀惧ぇ闀滅偣鍑�
+    async searchClick() {
+      if (this.dialogForm.routecode === '') {
+        return this.$message.info('璇峰厛閫夋嫨宸ヨ壓璺嚎锛�')
+      }
+      this.dialogVisibleSearch = true
+      const { data: res } = await SelectRouteStep({ routecode: this.dialogForm.routecode })
+      this.searchTableData = res
+    },
+    dialogVisibleSearchBack() {
+      this.dialogVisibleSearch = false
     }
   }
 }
@@ -741,6 +1017,9 @@
 ::v-deep .el-dialog__body {
   padding: 20px 100px !important;
 }
+.dialogVisibleSearch ::v-deep .el-dialog__body {
+  padding: 20px 20px !important;
+}
 
 ::v-deep .el-radio__input.is-checked .el-radio__inner {
   background-color: $main_color;
diff --git a/src/views/scgl/gdpg.vue b/src/views/scgl/gdpg.vue
index 620487b..565b40b 100644
--- a/src/views/scgl/gdpg.vue
+++ b/src/views/scgl/gdpg.vue
@@ -6,12 +6,12 @@
     <el-dialog
       title="棰勮"
       :visible.sync="dialogVisible"
-      width="70%"
+      width="1140"
     >
       <!-- 瑕佹墦鍗扮殑鍖哄煙 -->
-      <div id="printMe">
+      <div id="printMe" style="padding: 30px">
 
-        <div style="display: flex;justify-content: space-around">
+        <div style="display: flex;justify-content: space-around;">
           <!--          浜岀淮鐮侀儴鍒�-->
           <div>
             <div id="qrCode" ref="qrCodeDiv" />
@@ -28,30 +28,72 @@
           </div>
           <!--鍙充晶姘村嵃鍙婂鍚嶆棩鏈�-->
           <div>
-            <div ref="watermark" style="width: 100px;height:100px;" />
+            <!--            <div ref="watermark" style="width: 100px;height:100px;" />-->
+            <div style="color:#0f0f0f;;width: 100px;margin-top:40px;height: 50px;text-align: center">鍑开鍒堕��</div>
             <div style="font-weight: bolder">
               <div>濮撳悕锛氬紶涓�</div>
               <div>鏃ユ湡锛�2022-07-05</div>
             </div>
           </div>
         </div>
-        <el-divider />
+        <!--        <el-divider />-->
+        <div style="width:100%;height: 30px;border-bottom: 1px solid #eee;margin-bottom: 20px" />
         <el-table
+          id="table"
           :data="tableData"
           border
-          style="width: 100%"
+          class="elTable"
+          style="width: 100%;"
         >
           <el-table-column
+            id="column0"
             prop="date"
             label="鏃ユ湡"
-            width="180"
+            width="100"
           />
           <el-table-column
+            id="column1"
             prop="name"
             label="濮撳悕"
-            width="180"
+            width="100"
           />
           <el-table-column
+            id="column2"
+            prop="address"
+            label="鍦板潃"
+            width="150"
+          />
+          <el-table-column
+            id="column3"
+            prop="address"
+            label="鍦板潃"
+            width="150"
+          />
+          <el-table-column
+            id="column4"
+            prop="address"
+            width="150"
+
+            label="鍦板潃"
+          />
+          <el-table-column
+            id="column5"
+            width="150"
+
+            prop="address"
+            label="鍦板潃"
+          />
+          <el-table-column
+            id="column6"
+            prop="address"
+            width="120"
+
+            label="鍦板潃"
+          />
+          <el-table-column
+            id="column7"
+            width="119"
+
             prop="address"
             label="鍦板潃"
           />
@@ -71,20 +113,115 @@
         <el-button type="primary" @click="dialogVisible = false">纭� 瀹�</el-button>
       </span>
     </el-dialog>
+
+    <!--2222-->
+    <el-dialog
+      title="棰勮"
+      :visible.sync="dialogVisible2"
+      width="1140"
+    >
+      <!-- 瑕佹墦鍗扮殑鍖哄煙 -->
+      <div id="printMe2" style="padding: 30px;">
+        <!--        <div style="width: 500px; height: 300px;">-->
+
+        <div style="display: flex;width: 300px;height: 200px;border: 1px solid #000;text-align: center;font-size: 16px;">
+          <div style="width: 100px;display: flex;flex-direction: column;border-right: 1px solid #000">
+            <div style="display: flex;height: 75%;border-bottom:1px solid #000;justify-content: center;align-items: center ">
+              <div id="qrCode2" ref="qrCodeDiv2" />
+            </div>
+            <div style="display: flex;height: 25%;justify-content: center;align-items: center">
+              鏁伴噺锛�100
+            </div>
+          </div>
+          <div style="width:200px;display: flex;flex-direction: column">
+            <div style="display: flex;height: 25%;border-bottom:1px solid #000;justify-content: center;align-items: center ">
+              宸ュ崟缂栧彿锛�1403-001-0001
+            </div>
+            <div style="display: flex;height: 25%;border-bottom:1px solid #000;justify-content: center;align-items: center ">
+              宸ュ崟缂栧彿锛�1403-001-0001
+            </div>
+            <div style="display: flex;height: 25%;border-bottom:1px solid #000 ;justify-content: center;align-items: center">
+              宸ュ崟缂栧彿锛�1403-001-0001
+            </div>
+            <div style="display: flex;height: 25%;justify-content: center;align-items: center">
+              宸ュ崟缂栧彿锛�1403-001-0001
+            </div>
+
+          </div>
+
+        </div>
+
+        <!--        </div>-->
+      </div>
+
+      <!--      <vue-easy-print ref="printRef" :button-show="true">-->
+      <!--        x-->
+      <!--      </vue-easy-print>-->
+
+      <!-- 鎵撳嵃鐨勬寜閽紝鏄剧ず鎵撳嵃棰勮 -->
+      <!--    <el-button v-print="'#printMe'">鎵撳嵃</el-button>-->
+      <el-button v-print="printObj2">鎵撳嵃</el-button>
+
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="dialogVisible2 = false">鍙� 娑�</el-button>
+        <el-button type="primary" @click="dialogVisible2 = false">纭� 瀹�</el-button>
+      </span>
+    </el-dialog>
+
+    <el-button type="text" @click="outerVisible = true">鐐瑰嚮鎵撳紑澶栧眰 Dialog</el-button>
+
+    <el-dialog
+      title="澶栧眰 Dialog"
+      top="15vh"
+      :close-on-click-modal="false"
+      width="840"
+      :visible.sync="outerVisible"
+    >
+      <el-dialog
+        width="30%"
+        title="鍐呭眰 Dialog"
+        :visible.sync="innerVisible"
+        append-to-body
+      />
+      <div slot="footer" class="dialog-footer">
+        <el-button @click="outerVisible = false">鍙� 娑�</el-button>
+        <el-button type="primary" @click="innerVisible = true">鎵撳紑鍐呭眰 Dialog</el-button>
+      </div>
+    </el-dialog>
+
   </div>
 </template>
 <script>
-import vueEasyPrint from 'vue-easy-print'
+// import vueEasyPrint from 'vue-easy-print'
 import QRCode from 'qrcodejs2'
 // import QRCode from 'qrcode'
 
 export default {
   name: 'Gdpg',
-  components: {
-    vueEasyPrint
-  },
+  // components: {
+  //   vueEasyPrint
+  // },
   data() {
     return {
+      outerVisible: false,
+      innerVisible: false,
+      dialogVisible2: false,
+      printObj2: {
+        id: 'printMe2',
+        beforeOpenCallback(vue) {
+          vue.printLoading = true
+          console.log('鎵撳紑涔嬪墠')
+          console.log()
+        },
+        openCallback(vue) {
+          vue.printLoading = false
+          console.log('鎵ц浜嗘墦鍗�')
+        },
+        closeCallback(vue) {
+          console.log('鍏抽棴浜嗘墦鍗板伐鍏�')
+        }
+
+      },
       firstWatermark: true, // 绗竴娆℃樉绀烘按鍗�
       firstbindQRCode: true, // 绗竴娆℃樉绀轰簩缁寸爜
       form: {
@@ -96,7 +233,42 @@
       printObj: {
         id: 'printMe',
         popTitle: '鎵撳嵃妯℃澘',
-        extraHead: '<meta http-equiv="Content-Language" content="zh-cn"/>'
+        extraHead: '<meta http-equiv="Content-Language" content="zh-cn"/>',
+        previewBeforeOpenCallback() {
+        }, // 棰勮绐楀彛鎵撳紑涔嬪墠鐨刢allback锛堝紑鍚瑙堟ā寮忚皟鐢級
+        previewOpenCallback() {
+        }, // 棰勮绐楀彛鎵撳紑涔嬪悗鐨刢allback锛堝紑鍚瑙堟ā寮忚皟鐢級
+        beforeEntryIframe() {
+          const widthArr = ['10%', '10%', '15%', '15%', '15%', '15%', '10%', '10%']
+          // const tables = document.getElementById('table').getElementsByTagName('el-table') // 鑾峰彇鎵撳嵃鐨勮〃鏍�
+          const tables = document.getElementById('table') // 鑾峰彇鎵撳嵃鐨勮〃鏍�
+          // const headcolgroupCol0 = tables[0].getElementsByTagName('colgroup')[0].getElementsByTagName('col')
+          // const headcolgroupCol0 = document.getElementById('column0').style.width = '400px'
+          // const headcolgroupCol1 = document.getElementById('column1')
+          // const headcolgroupCol2 = document.getElementById('column2')
+          // const headcolgroupCol3 = document.getElementById('column3')
+          // const headcolgroupCol4 = document.getElementById('column4')
+          // const headcolgroupCol5 = document.getElementById('column5')
+          // const headcolgroupCol6 = document.getElementById('column6')
+          // const headcolgroupCol7 = document.getElementById('column7')
+          // const headcolgroupCol1 = tables[1].getElementsByTagName('colgroup')[0].getElementsByTagName('col')
+          // widthArr.forEach((val, index) => {
+          //   headcolgroupCol0[index].width = val
+          //   headcolgroupCol1[index].width = val
+          //   headcolgroupCol2[index].width = val
+          //   headcolgroupCol3[index].width = val
+          //   headcolgroupCol4[index].width = val
+          //   headcolgroupCol5[index].width = val
+          //   headcolgroupCol6[index].width = val
+          //   headcolgroupCol7[index].width = val
+          // })
+        },
+        openCallback() {
+
+        }, // 璋冪敤鎵撳嵃涔嬪悗鐨勫洖璋冧簨浠�
+        closeCallback() {
+        } // 鍏抽棴鎵撳嵃鐨勫洖璋冧簨浠讹紙鏃犳硶纭畾鐐瑰嚮鐨勬槸纭杩樻槸鍙栨秷锛�
+
         // id: 'printMe',
         // popTitle: '鎵撳嵃', // 鎵撳嵃閰嶇疆椤典笂鏂规爣棰�
         // extraHead: '', // 鏈�涓婃柟鐨勫ご閮ㄦ枃瀛楋紝闄勫姞鍦╤ead鏍囩涓婄殑棰濆鏍囩,浣跨敤閫楀彿鍒嗛殧
@@ -133,7 +305,9 @@
     }
   },
   mounted() {
-
+    this.$nextTick(() => {
+      this.bindQRCode()
+    })
   },
   methods: {
     addWatermark() {
@@ -148,15 +322,20 @@
       this.$nextTick(() => {
         this.bindQRCode()
         this.addWatermark()
+        console.log(document.getElementById('column0').style.width = '200px', 0)
+        console.log(document.getElementById('column7'), 7)
+        console.log(document.getElementById('table'), 2)
+        console.log(document.getElementById('table').getElementsByTagName('el-table'), 1)
       })
     },
     bindQRCode() {
       if (this.firstbindQRCode) {
-        new QRCode(this.$refs.qrCodeDiv, {
+        const text = 'PO202206280001;Step02'
+        new QRCode(this.$refs.qrCodeDiv2, {
           // text: 'Vue瀹炵幇鐢熸垚浜岀淮鐮侊紒',
-          text: 'Vue瀹炵幇鐢熸垚浜岀淮鐮侊紒',
-          width: 100,
-          height: 100,
+          text: text,
+          width: 80,
+          height: 80,
           colorDark: '#333333', // 浜岀淮鐮侀鑹�
           colorLight: '#ffffff', // 浜岀淮鐮佽儗鏅壊
           correctLevel: QRCode.CorrectLevel.L// 瀹归敊鐜囷紝L/M/H
@@ -189,7 +368,38 @@
 }
 </script>
 
-<style scoped>
+<style media="print">
+/*@media print {*/
+  @page {
+    /*size: auto;*/
+    size: auto;
+    margin: 3mm;
+    /*margin: 0mm;*/
+    /*padding: 0;*/
+  }
+/*}*/
+/*.elTable {*/
 
+/*::v-deep .el-table {*/
+/*  margin-top: 10px;*/
+/*}*/
+/*table {*/
+/*  width: 100% !important;*/
+/*}*/
+
+/*.el-table__body,*/
+/*.el-table__header {*/
+/*  width: 100% !important;*/
+/*}*/
+
+/*.el-table__body {*/
+/*  width: 100% !important;*/
+/*}*/
+
+/*}*/
+
+/*/deep/.el-table__body-wrapper::-webkit-scrollbar{*/
+/*  width: 0;*/
+/*}*/
 </style>
 
diff --git a/src/views/scgl/scdd.vue b/src/views/scgl/scdd.vue
index 0a366ff..0314c4e 100644
--- a/src/views/scgl/scdd.vue
+++ b/src/views/scgl/scdd.vue
@@ -39,30 +39,81 @@
               <el-input v-model="form.partspec" style="width: 200px" placeholder="璇疯緭鍏�" />
             </el-form-item>
             <el-form-item label="浜や粯鏃堕棿" style=" display: flex;">
+              <!--              <el-date-picker-->
+              <!--                v-model="form.paydate"-->
+              <!--                type="date"-->
+              <!--                value-format="yyyy-MM-dd HH:mm:ss"-->
+              <!--                style="width: 200px"-->
+              <!--                placeholder="閫夋嫨鏃ユ湡"-->
+              <!--              />-->
               <el-date-picker
                 v-model="form.paydate"
-                type="date"
-                value-format="yyyy-MM-dd HH:mm:ss"
-                style="width: 200px"
-                placeholder="閫夋嫨鏃ユ湡"
+                type="daterange"
+                range-separator="~"
+                size="mini"
+                start-placeholder="寮�濮嬫棩鏈�"
+                end-placeholder="缁撴潫鏃ユ湡"
               />
+              <!--              :picker-options="expireTimeOption"-->
+
             </el-form-item>
             <el-form-item label="鍒涘缓浜哄憳" style=" display: flex;">
               <el-input v-model="form.creatuser" style="width: 200px" placeholder="璇疯緭鍏�" />
             </el-form-item>
             <el-form-item label="鍒涘缓鏃堕棿" style=" display: flex;">
+              <!--              <el-date-picker-->
+              <!--                v-model="form.createdate"-->
+              <!--                type="date"-->
+              <!--                value-format="yyyy-MM-dd HH:mm:ss"-->
+              <!--                style="width: 200px"-->
+              <!--                placeholder="閫夋嫨鏃ユ湡"-->
+              <!--              />-->
               <el-date-picker
                 v-model="form.createdate"
-                type="date"
-                value-format="yyyy-MM-dd HH:mm:ss"
-                style="width: 200px"
-                placeholder="閫夋嫨鏃ユ湡"
+                type="daterange"
+                range-separator="~"
+                start-placeholder="寮�濮嬫棩鏈�"
+                end-placeholder="缁撴潫鏃ユ湡"
+                size="mini"
               />
+              <!--              :picker-options="expireTimeOption"-->
+
             </el-form-item>
           </div>
-          <div style="display: flex;align-items: start;margin-top: 5px;z-index: 2">
-            <el-button type="primary" icon="el-icon-search" @click="search">鏌ヨ</el-button>
-            <el-button type="info" icon="el-icon-refresh" @click="reset">閲嶇疆</el-button>
+          <div style="min-height: 100px">
+            <div style="display: flex;align-items: start;margin-top: 5px;z-index: 2;justify-content: end">
+              <el-button type="primary" icon="el-icon-search" @click="search">鏌ヨ</el-button>
+              <el-button type="info" icon="el-icon-refresh" @click="reset">閲嶇疆</el-button>
+            </div>
+            <!--                      <div v-if="!isFullscreen" style="display: flex;align-items: start; margin-top: 15px;z-index: 2">-->
+            <!--                        <el-button-->
+            <!--                          type="primary"-->
+            <!--                          icon="el-icon-refresh-right"-->
+            <!--                          @click="reset('update')"-->
+            <!--                        >鍚屾ERP-->
+            <!--                        </el-button>-->
+            <!--                        <el-button-->
+            <!--                          type="primary"-->
+            <!--                          icon="el-icon-switch-button"-->
+            <!--                          @click="orderClose"-->
+            <!--                        >鍏抽棴璁㈠崟-->
+            <!--                        </el-button>-->
+            <!--                      </div>-->
+            <!--                      <div v-if="isFullscreen" style="display: flex;flex-direction: column;align-items: end">-->
+            <!--                        <el-button-->
+            <!--                          type="primary"-->
+            <!--                          icon="el-icon-refresh-right"-->
+            <!--                          style="margin: 10px 0"-->
+            <!--                          @click="reset('update')"-->
+            <!--                        >鍚屾ERP-->
+            <!--                        </el-button>-->
+            <!--                        <el-button-->
+            <!--                          type="primary"-->
+            <!--                          icon="el-icon-switch-button"-->
+            <!--                          @click="orderClose"-->
+            <!--                        >鍏抽棴璁㈠崟-->
+            <!--                        </el-button>-->
+            <!--                      </div>-->
           </div>
         </el-form>
       </div>
@@ -134,16 +185,19 @@
             prop="wo"
             label="璁㈠崟缂栧彿"
             sortable="custom"
+            width="150"
           />
           <el-table-column
             prop="partcode"
             label="浜у搧缂栫爜"
             sortable="custom"
+            width="150"
           />
           <el-table-column
             prop="partname"
             label="浜у搧鍚嶇О"
             sortable="custom"
+            width="150"
           />
           <el-table-column
             prop="partspec"
@@ -154,12 +208,14 @@
           <el-table-column
             prop="qty"
             label="璁㈠崟鏁伴噺"
+            width="150"
             sortable="custom"
           />
           <el-table-column
             prop="wkshp_name"
             label="鐢熶骇杞﹂棿"
             sortable="custom"
+            width="150"
           />
           <el-table-column
             prop="paydate"
@@ -171,6 +227,7 @@
             prop="createuser"
             label="鍒涘缓浜哄憳"
             sortable="custom"
+            width="150"
           />
           <el-table-column
             prop="createdate"
@@ -180,6 +237,7 @@
           />
           <el-table-column
             label="鎿嶄綔"
+            fixed="right"
           >
             <template slot-scope="{row}">
               <div class="operationClass">
@@ -205,29 +263,29 @@
     <el-dialog
       :title="operation==='add'?'鏂板':'涓嬭揪'"
       :visible.sync="dialogVisible"
-      width="60%"
+      width="800px"
       top="15vh"
       :close-on-click-modal="false"
       @closed="handleClose"
       @close="handleClose"
     >
       <el-form ref="dialogForm" inline :rules="dialogFormRules" :model="dialogForm" label-width="80px">
-        <el-form-item label="璁㈠崟鐘舵��" prop="erporderstus">
-          <el-select
-            v-model="dialogForm.erporderstus"
-            disabled
-            :popper-append-to-body="false"
-            style="width: 200px"
-            placeholder="璇烽�夋嫨"
-          >
-            <el-option
-              v-for="item in erporderstusArr"
-              :key="item.code"
-              :label="item.name"
-              :value="item.code"
-            />
-          </el-select>
-        </el-form-item>
+        <!--        <el-form-item label="璁㈠崟鐘舵��" prop="erporderstus">-->
+        <!--          <el-select-->
+        <!--            v-model="dialogForm.erporderstus"-->
+        <!--            disabled-->
+        <!--            :popper-append-to-body="false"-->
+        <!--            style="width: 200px"-->
+        <!--            placeholder="璇烽�夋嫨"-->
+        <!--          >-->
+        <!--            <el-option-->
+        <!--              v-for="item in erporderstusArr"-->
+        <!--              :key="item.code"-->
+        <!--              :label="item.name"-->
+        <!--              :value="item.code"-->
+        <!--            />-->
+        <!--          </el-select>-->
+        <!--        </el-form-item>-->
         <el-form-item label="璁㈠崟缂栧彿" prop="erpordercode">
           <el-input v-model="dialogForm.erpordercode" disabled style="width: 200px" />
         </el-form-item>
@@ -237,9 +295,7 @@
         <el-form-item label="浜у搧鍚嶇О" prop="partname">
           <el-input v-model="dialogForm.partname" disabled style="width: 200px" />
         </el-form-item>
-        <el-form-item label="璁㈠崟鏁伴噺" prop="erpqty">
-          <el-input v-model="dialogForm.erpqty" disabled style="width: 200px" />
-        </el-form-item>
+
         <el-form-item label="浜у搧瑙勬牸" prop="partspec">
           <el-input v-model="dialogForm.partspec" disabled style="width: 200px" />
         </el-form-item>
@@ -248,6 +304,17 @@
         </el-form-item>
         <el-form-item label="鎵�灞炰粨搴�" prop="warehousename">
           <el-input v-model="dialogForm.warehousename" disabled style="width: 200px" />
+        </el-form-item>
+        <el-form-item label="璁㈠崟鏁伴噺" prop="erpqty">
+          <el-input v-model="dialogForm.erpqty" disabled style="width: 200px" />
+        </el-form-item>
+        <el-form-item label="宸蹭笅鍗曟暟" prop="relse_qty">
+          <el-input
+            v-model="dialogForm.relse_qty"
+            disabled
+            oninput="value=value.replace(/[^0-9.]/g,'')"
+            style="width: 200px"
+          />
         </el-form-item>
         <el-form-item label="涓嬪崟鏁伴噺" prop="markqty">
           <el-input
@@ -263,14 +330,7 @@
             style="width: 200px"
           />
         </el-form-item>
-        <el-form-item label="宸蹭笅鍗曟暟" prop="relse_qty">
-          <el-input
-            v-model="dialogForm.relse_qty"
-            disabled
-            oninput="value=value.replace(/[^0-9.]/g,'')"
-            style="width: 200px"
-          />
-        </el-form-item>
+
         <!--        <el-form-item label="浜や粯鏃堕棿" prop="">-->
         <!--          <el-date-picker-->
         <!--            v-model="dialogForm.markqty"-->
@@ -295,7 +355,7 @@
 <script>
 import Pagination from '@/components/Pagination'
 import { ClosedErpOrder, ErpOrderSearch, MarkSaveErpOrder } from '@/api/scgl'
-import { handleDatatime } from '@/utils/global'
+import { handleDatatime, handleDatetime } from '@/utils/global'
 
 const SER_HZ = /^[\u4e00-\u9fa5]+$/
 export default {
@@ -316,6 +376,7 @@
       }
     }
     return {
+      isFullscreen: false,
       mainHeight: 0,
       tableHeight: 0,
       form: {
@@ -327,7 +388,7 @@
         paydate: '', // 浜や粯鏃堕棿
         creatuser: '', // 鍒涘缓浜哄憳
         createdate: '', // 鍒涘缓鏃堕棿
-        prop: 'partcode', // 鎺掑簭瀛楁
+        prop: 'createdate', // 鎺掑簭瀛楁
         order: 'desc', // 鎺掑簭瀛楁
         page: 1, // 绗嚑椤�
         rows: 20 // 姣忛〉澶氬皯鏉�
@@ -376,6 +437,11 @@
         ]
 
       }
+      // expireTimeOption: {
+      //   disabledDate(time) {
+      //     return time.getTime() > Date.now() - 8.64e6 // 濡傛灉娌℃湁鍚庨潰鐨�-8.64e6灏辨槸涓嶅彲浠ラ�夋嫨浠婂ぉ鐨�
+      //   }
+      // }
 
     }
   },
@@ -389,7 +455,34 @@
   },
   methods: {
     async getErpOrderSearch() {
-      const res = await ErpOrderSearch(this.form)
+      console.log(this.form, 1)
+      let tempDate2 = this.form.paydate
+      if (tempDate2.length > 0) {
+        tempDate2 = handleDatetime(tempDate2[0]) + '~' + handleDatetime(tempDate2[1])
+      }
+
+      let tempDate = this.form.createdate
+      if (tempDate.length > 0) {
+        tempDate = handleDatetime(tempDate[0]) + '~' + handleDatetime(tempDate[1])
+      }
+
+      const data = {
+        erporderstus: this.form.erporderstus, // 璁㈠崟鐘舵�佺爜
+        erpordercode: this.form.erpordercode, // 璁㈠崟缂栧彿
+        partcode: this.form.partcode, // 浜у搧缂栫爜
+        partname: this.form.partname, // 浜у搧鍚嶇О
+        partspec: this.form.partspec, // 浜у搧瑙勬牸
+        paydate: tempDate2, // 浜や粯鏃堕棿
+        creatuser: this.form.creatuser, // 鍒涘缓浜哄憳
+        createdate: tempDate, // 鍒涘缓鏃堕棿
+        prop: this.form.prop, // 鎺掑簭瀛楁
+        order: this.form.order, // 鎺掑簭瀛楁
+        page: this.form.page, // 绗嚑椤�
+        rows: this.form.rows // 姣忛〉澶氬皯鏉�
+
+      }
+
+      const res = await ErpOrderSearch(data)
       this.tableData = res.data
       this.total = res.count
     },
@@ -430,11 +523,11 @@
       this.radioSelected = wo
     },
     // 璁㈠崟鍏抽棴
-    async  orderClose() {
+    async orderClose() {
       if (this.radioSelected.length < 1) {
         return this.$message.info('璇峰厛閫夋嫨璁㈠崟锛�')
       }
-      this.tableData.find(item => {
+      this.tableData.forEach(item => {
         if (item.wo === this.radioSelected) {
           if (item.status !== 'NEW') {
             return this.$message.info('姝よ鍗曢潪鏂拌鍗曪紝鏃犳硶鍏抽棴锛�')
@@ -519,7 +612,7 @@
       this.$refs.dialogForm.validate(valid => {
         if (valid) {
           const data = {
-            'erporderstus': this.dialogForm.erporderstus,
+            // 'erporderstus': this.dialogForm.erporderstus,
             'erpordercode': this.dialogForm.erpordercode,
             'partcode': this.dialogForm.partcode,
             'wkshopcode': this.dialogForm.wkshopcode,
@@ -547,6 +640,10 @@
       this.$nextTick(() => {
         this.mainHeight = window.innerHeight - 250
         this.tableHeight = this.mainHeight - 100
+        this.isFullscreen = window.innerHeight < 800
+        if (this.isFullscreen) {
+          this.tableHeight = this.tableHeight - 50
+        }
       })
     }
   }
@@ -717,8 +814,8 @@
   border-color: $main_color;
 }
 
-.elTableDiv{
-  ::v-deep .el-radio__label{
+.elTableDiv {
+  ::v-deep .el-radio__label {
     display: none;
   }
 }
diff --git a/src/views/scgl/sckbg.vue b/src/views/scgl/sckbg.vue
index 2068f1a..d68fd07 100644
--- a/src/views/scgl/sckbg.vue
+++ b/src/views/scgl/sckbg.vue
@@ -2,7 +2,7 @@
   <div>
     <div class="body" style="padding: 0;height: 100%" :style="{height:mainHeight+'px'}">
 
-      <el-tabs type="border-card">
+      <el-tabs ref="elTabs" type="border-card" @tab-click="tabClick">
         <el-tab-pane label="鐢熶骇鍒楄〃">
           <div style="margin-left: 10px;margin-top:10px;display: flex;justify-content: space-between">
             <div style="display: flex;align-items: center">
@@ -15,8 +15,14 @@
               />
             </div>
             <div style="display: flex;padding-right: 10px">
-              <el-button><svg-icon icon-class="start_time" style="margin-right: 2px" />寮�濮�</el-button>
-              <el-button><svg-icon icon-class="report_work" style="margin-right: 2px" />鎶ュ伐</el-button>
+              <el-button @click="ZZstart">
+                <svg-icon icon-class="start_time" style="margin-right: 2px" />
+                寮�濮�
+              </el-button>
+              <el-button @click="ZZreport">
+                <svg-icon icon-class="report_work" style="margin-right: 2px" />
+                鎶ュ伐
+              </el-button>
             </div>
           </div>
           <el-divider />
@@ -132,21 +138,27 @@
             <div style="display: flex;align-items: center">
               <div style="width: 70px">宸ュ簭鐮侊細</div>
               <el-input
-                v-model="produceCode"
+                v-model="WXproduceCode"
                 oninput="value=value.replace(/[^0-9.]/g,'')"
-                name="produceCode"
+                name="WXproduceCode"
                 style="width: 500px"
               />
             </div>
             <div style="display: flex;padding-right: 10px">
-              <el-button><svg-icon icon-class="start_time" style="margin-right: 2px" />鍙戞枡</el-button>
-              <el-button><svg-icon icon-class="report_work" style="margin-right: 2px" />鏀舵枡</el-button>
+              <el-button @click="WXsend">
+                <svg-icon icon-class="start_time" style="margin-right: 2px" />
+                鍙戞枡
+              </el-button>
+              <el-button @click="WXback">
+                <svg-icon icon-class="report_work" style="margin-right: 2px" />
+                鏀舵枡
+              </el-button>
             </div>
           </div>
           <el-divider />
           <div class="elTableDiv">
             <el-table
-              :data="tableData"
+              :data="WXtableData"
               :height="tableHeight"
               border
               stripe
@@ -241,10 +253,10 @@
           </div>
           <!--鍒嗛〉-->
           <pagination
-            v-show="total>0"
-            :total="total"
-            :page.sync="form.page"
-            :limit.sync="form.rows"
+            v-show="WXtotal>0"
+            :total="WXtotal"
+            :page.sync="WXform.page"
+            :limit.sync="WXform.rows"
             align="right"
             layout="prev, pager, next,sizes"
             popper-class="select_bottom"
@@ -257,41 +269,265 @@
     </div>
 
     <el-dialog
-      :title="operation==='add'?'鏂板':'缂栬緫'"
+      :title="dialogTitle"
       :visible.sync="dialogVisible"
-      width="60%"
-      top="15vh"
-      @closed="handleClose"
+      width="70%"
+      :close-on-click-modal="false"
       @close="handleClose"
+      @closed="handleClose"
     >
-      <el-form ref="dialogForm" :rules="dialogFormRules" :model="dialogForm" label-width="80px">
-        <el-form-item label="缁勭粐绫诲瀷" prop="OrgType" />
-        <el-form-item label="缁勭粐缂栫爜" prop="OrgCode">
-          <el-input v-model="dialogForm.OrgCode" :disabled="operation!=='add'" style="width: 200px" />
+      <el-form ref="dialogForm" inline :model="dialogForm" label-width="110px">
+        <el-form-item label="宸ュ崟缂栧彿锛�">
+          <!--          <el-input v-model="dialogForm.name"></el-input>-->
+          <div style="width: 200px">PO2022050500001</div>
         </el-form-item>
-        <el-form-item label="缁勭粐鍚嶇О" prop="OrgName">
-          <el-input v-model="dialogForm.OrgName" style="width: 200px" />
+        <el-form-item label="浜у搧缂栫爜锛�">
+          <div style="width: 200px">427100</div>
         </el-form-item>
-        <el-form-item prop="SupUnit" label="涓婄骇鍗曚綅">
+        <el-form-item label="浜у搧鍚嶇О锛�">
+          <div style="width: 200px">鏈虹鏉垮簳</div>
+        </el-form-item>
+        <el-form-item label="浜у搧瑙勬牸锛�">
+          <div style="width: 200px">鏈虹搴曟澘&1</div>
+        </el-form-item>
+        <el-form-item label="褰撳墠宸ュ簭锛�">
+          <div style="width: 200px">婵�鍏夊垏鍓�</div>
+        </el-form-item>
+        <el-form-item label="宸ュ簭鎻忚堪锛�">
+          <el-tooltip class="item" effect="dark" content="鍘熸潗鏂欏垏鎸夋潗鏂欏垏鎸夋潗鏂欏垏鎸夋椂鎵撳崱鏁版嵁鐨勫崱" placement="top-start">
+            <div style="width: 200px;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;">
+              鍘熸潗鏂欏垏鎸夋潗鏂欏垏鎸夋潗鏂欏垏鎸夋椂鎵撳崱鏁版嵁鐨勫崱
+            </div>
+          </el-tooltip>
+        </el-form-item>
+        <el-form-item label="浠诲姟鏁伴噺锛�">
+          <div style="width: 200px">1000</div>
+        </el-form-item>
+        <el-form-item label="鏈姤/宸叉姤锛�">
+          <div style="width: 200px">900/100</div>
+        </el-form-item>
+        <el-form-item v-if="dialogTitle==='鑷埗寮�濮�'" label="寮�宸ユ暟閲忥細">
+          <div style="width: 200px">1000</div>
+        </el-form-item>
+        <el-form-item v-if="dialogTitle==='鑷埗寮�濮�'" label="鐢熶骇璁惧锛�">
           <el-select
-            v-model="dialogForm.SupUnit"
-            style="width: 200px"
+            v-model="dialogForm.OrgType"
+            style="width: 200px;"
             placeholder="璇烽�夋嫨"
-            :popper-append-to-body="false"
           >
             <el-option
-              v-for="item in SupUnitArr"
-              :key="item.code"
-              :label="item.name"
-              :value="item.code"
+              v-for="item in options"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
             />
           </el-select>
         </el-form-item>
+        <el-form-item v-if="dialogTitle==='澶栧崗鍙戞枡'" label="澶栧崗渚涙柟锛�">
+          <el-select
+            v-model="dialogForm.OrgType"
+            style="width: 200px;"
+            placeholder="璇烽�夋嫨"
+          >
+            <el-option
+              v-for="item in options"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+        </el-form-item>
+        <el-form-item v-if="dialogTitle==='澶栧崗鍙戞枡'" label="鍙戞枡浜哄憳锛�">
+          <el-select
+            v-model="dialogForm.OrgType"
+            style="width: 200px;"
+            placeholder="璇烽�夋嫨"
+            multiple
+          >
+            <el-option
+              v-for="item in options"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+        </el-form-item>
+        <el-form-item v-if="dialogTitle==='澶栧崗鍙戞枡'" label="鍙戞枡鏁伴噺锛�">
+          <el-input v-model="dialogForm.OrgName" oninput="value=value.replace(/[^0-9.]/g,'')" style="width: 200px;" />
+        </el-form-item>
+        <el-form-item v-if="dialogTitle==='鑷埗鎶ュ伐'" label="涓嬮亾宸ュ簭锛�">
+          <div style="width: 200px">B宸ュ簭</div>
+        </el-form-item>
+        <el-form-item v-if="dialogTitle==='鑷埗鎶ュ伐'" label="璁惧鍚嶇О锛�">
+          <el-select
+            v-model="dialogForm.OrgType"
+            style="width: 200px;"
+            placeholder="璇烽�夋嫨"
+          >
+            <el-option
+              v-for="item in options"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+        </el-form-item>
+        <el-form-item v-if="dialogTitle==='鑷埗鎶ュ伐'" label="鐢熶骇鐝粍锛�">
+          <el-select
+            v-model="dialogForm.OrgType"
+            style="width: 200px;"
+            placeholder="璇烽�夋嫨"
+          >
+            <el-option
+              v-for="item in options"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+        </el-form-item>
+        <el-form-item v-if="dialogTitle==='鑷埗鎶ュ伐'" label="鎶ュ伐鏁伴噺锛�">
+          <el-input v-model="dialogForm.OrgName" oninput="value=value.replace(/[^0-9.]/g,'')" style="width: 200px;" />
+        </el-form-item>
+        <el-form-item v-if="dialogTitle==='鑷埗鎶ュ伐'" label="涓嶈壇鏁伴噺锛�">
+          <el-input v-model="dialogForm.OrgName" oninput="value=value.replace(/[^0-9.]/g,'')" style="width: 200px;" />
+        </el-form-item>
+        <el-form-item v-if="dialogTitle==='鑷埗鎶ュ伐'" label="涓嶈壇鍘熷洜锛�">
+          <el-select
+            v-model="dialogForm.OrgType"
+            style="width: 200px;"
+            placeholder="璇烽�夋嫨"
+          >
+            <el-option
+              v-for="item in options"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+        </el-form-item>
+        <div v-if="dialogTitle==='鑷埗鎶ュ伐'">
+          <i class="el-icon-s-operation" style="color:#42b983;" /> 浜哄憳鍒楄〃
+          <el-button type="primary" style="margin: 10px 0">澧炶</el-button>
+          <el-table
+            :data="userTableData"
+            border
+            stripe
+            :header-cell-style="this.$headerCellStyle"
+            :cell-style="this.$cellStyle"
+            height="180"
+            highlight-current-row
+            style="width: 100%"
+          >
+            <el-table-column
+              prop="RowNum"
+              label="搴忓彿"
+            />
+            <el-table-column
+              prop="RowNum"
+              label="浜哄憳鍚嶇О"
+            >
+              <template slot-scope="{row}">
+                <div v-if="row.isVisible===0">{{ row }}</div>
+                <el-select
+                  v-if="row.isVisible===1"
+                  v-model="dialogForm.OrgType"
+                  style="width: 200px;"
+                  placeholder="璇烽�夋嫨"
+                >
+                  <el-option
+                    v-for="item in options"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
+                  />
+                </el-select>
+              </template>
+            </el-table-column>
+            <el-table-column
+              prop="RowNum"
+              label="鎿嶄綔"
+            >
+              <template slot-scope="{row}">
+                <div class="operationClass">
+                  <el-button v-if="row.isVisible===0" type="text" @click="userDel(row)">鍒犻櫎</el-button>
+                  <el-button v-if="row.isVisible===1" type="text" @click="userSave(row)">淇濆瓨</el-button>
+                  <el-button v-if="row.isVisible===1" type="text" @click="userCancel(row)">鍙栨秷</el-button>
+                </div>
+              </template>
+            </el-table-column>
+          </el-table>
+          <!--鍒嗛〉-->
+          <pagination
+            v-show="UserTotal>0"
+            :total="UserTotal"
+            :page.sync="Userform.page"
+            :limit.sync="Userform.rows"
+            align="right"
+            layout="prev, pager, next,sizes"
+            popper-class="select_bottom"
+            @pagination="getMesOrderStepSearch"
+          />
+        </div>
+        <el-form-item v-if="dialogTitle==='澶栧崗鏀舵枡'" label="涓嬮亾宸ュ簭锛�">
+          <div style="width: 200px">B宸ュ簭</div>
+        </el-form-item>
+        <el-form-item v-if="dialogTitle==='澶栧崗鏀舵枡'" label="澶栧崗渚涙柟锛�">
+          <el-select
+            v-model="dialogForm.OrgType"
+            style="width: 200px;"
+            placeholder="璇烽�夋嫨"
+          >
+            <el-option
+              v-for="item in options"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+        </el-form-item>
+        <el-form-item v-if="dialogTitle==='澶栧崗鏀舵枡'" label="鏀舵枡浜哄憳锛�">
+          <el-select
+            v-model="dialogForm.OrgType"
+            style="width: 200px;"
+            placeholder="璇烽�夋嫨"
+            multiple
+          >
+            <el-option
+              v-for="item in options"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+        </el-form-item>
+        <el-form-item v-if="dialogTitle==='澶栧崗鏀舵枡'" label="鏀舵枡鏁伴噺锛�">
+          <el-input
+            v-model="dialogForm.OrgName"
+            style="width: 200px"
+            oninput="value=value.replace(/[^0-9.]/g,'')"
+          />
+        </el-form-item>
+        <el-form-item v-if="dialogTitle==='澶栧崗鏀舵枡'" label="涓嶈壇鍘熷洜锛�">
+          <el-select
+            v-model="dialogForm.OrgType"
+            style="width: 200px;"
+            placeholder="璇烽�夋嫨"
+          >
+            <el-option
+              v-for="item in options"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+        </el-form-item>
+
       </el-form>
       <span slot="footer" class="dialog-footer">
         <div class="footerButton">
           <el-button @click="dialogVisibleCancel">鍙� 娑�</el-button>
-          <el-button type="primary" @click="dialogVisibleConfirm">纭� 瀹�</el-button>
+          <el-button type="primary" @click="dialogVisible = false">纭� 瀹�</el-button>
         </div>
       </span>
     </el-dialog>
@@ -334,6 +570,7 @@
       mainHeight: 0,
       tableHeight: 0,
       produceCode: '', // 宸ュ簭鐮�
+      WXproduceCode: '', // 澶栧崗宸ュ簭鐮�
       form: {
         orderstepqrcode: '', // 鎵弿鐨勪簩缁寸爜淇℃伅
         prop: 'lm_date', // 鎺掑簭瀛楁
@@ -341,31 +578,48 @@
         page: 1, // 绗嚑椤�
         rows: 20 // 姣忛〉澶氬皯鏉�
       },
-
       total: 10,
       tableData: [],
+      WXform: { // 澶栧崗琛ㄥ崟
+        orderstepqrcode: '', // 鎵弿鐨勪簩缁寸爜淇℃伅
+        prop: 'lm_date', // 鎺掑簭瀛楁
+        order: 'desc', // 鎺掑簭瀛楁
+        page: 1, // 绗嚑椤�
+        rows: 20 // 姣忛〉澶氬皯鏉�
+      },
+      WXtotal: 10, // 澶栧崗琛ㄥ崟鎬绘暟
+      WXtableData: [], // 澶栧崗琛�
+
       dialogVisible: false,
+      dialogTitle: '',
       dialogForm: {
         OrgType: '',
         OrgCode: '',
         OrgName: '',
         SupUnit: ''// 涓婄骇鍗曚綅
       },
-      operation: '',
-      dialogFormRules: {
-        OrgType: [
-          { required: true, message: '璇疯緭鍏ラ�夋嫨绫诲瀷', trigger: ['blur', 'change'] }
-        ],
-        OrgCode: [
-          { required: true, validator: validateName, trigger: ['blur', 'change'] }
-        ],
-        OrgName: [
-          { required: true, message: '璇疯緭鍏ュ悕绉�', trigger: ['blur', 'change'] }
-        ],
-        SupUnit: [
-          { required: true, validator: validateTypeCode, trigger: ['blur', 'change'] }
-        ]
+      userTableData: [
+
+      ], // 浜哄憳鍒楄〃
+      UserTotal: 0,
+      Userform: {
+
       }
+      // operation: '',
+      // dialogFormRules: {
+      //   OrgType: [
+      //     { required: true, message: '璇疯緭鍏ラ�夋嫨绫诲瀷', trigger: ['blur', 'change'] }
+      //   ],
+      //   OrgCode: [
+      //     { required: true, validator: validateName, trigger: ['blur', 'change'] }
+      //   ],
+      //   OrgName: [
+      //     { required: true, message: '璇疯緭鍏ュ悕绉�', trigger: ['blur', 'change'] }
+      //   ],
+      //   SupUnit: [
+      //     { required: true, validator: validateTypeCode, trigger: ['blur', 'change'] }
+      //   ]
+      // }
 
     }
   },
@@ -377,7 +631,7 @@
     this.getHeight()
 
     this.$nextTick(() => {
-      $("input[name='produceCode']").focus()
+      $("input[name='produceCode']")[0].focus()
     })
   },
   methods: {
@@ -402,15 +656,58 @@
     getCurrentRow() {
 
     },
+    tabClick(val, d) {
+      console.log(val, d, 1)
+      if (this.$refs.elTabs.currentName === '0') {
+        this.$nextTick(() => {
+          $("input[name='produceCode']")[0].focus()
+        })
+      }
+      if (this.$refs.elTabs.currentName === '1') {
+        this.$nextTick(() => {
+          $("input[name='WXproduceCode']")[0].focus()
+        })
+      }
+    },
     // 鏌ヨ
     search() {
       this.getMesOrderStepSearch()
     },
-    upload() {
+    // 鑷埗寮�濮�
+    ZZstart() {
+      this.dialogTitle = '鑷埗寮�濮�'
+      this.dialogVisible = true
+    },
+    // 鑷埗鎶ュ伐
+    ZZreport() {
+      this.dialogTitle = '鑷埗鎶ュ伐'
+      this.dialogVisible = true
+    },
+    // 澶栧崗鍙戞枡
+    WXsend() {
+      this.dialogTitle = '澶栧崗鍙戞枡'
+      this.dialogVisible = true
+    },
+    // 澶栧崗鏀舵枡
+    WXback() {
+      this.dialogTitle = '澶栧崗鏀舵枡'
+      this.dialogVisible = true
+    },
+    // 鐢ㄦ埛鍒楄〃鍒犻櫎
+    userDel() {
+
+    },
+    // 鐢ㄦ埛鍒楄〃淇濆瓨
+    userSave() {
+
+    },
+    // 鐢ㄦ埛鍒楄〃鍙栨秷
+    userCancel() {
 
     },
     // 閲嶇疆
     reset() {
+      this.dialogTitle = ''
       this.form.OrgCode = ''
       this.form.OrgName = ''
       this.form.OrgType = ''
@@ -418,39 +715,6 @@
       this.getMesOrderStepSearch()
     },
 
-    // 鏂板鎸夐挳
-    add(operation) {
-      this.operation = operation
-      this.dialogVisible = true
-    },
-    // 淇敼鎸夐挳
-    edit(operation, row) {
-      this.operation = operation
-      this.dialogVisible = true
-
-      this.$nextTick(() => {
-        this.dialogForm.OrgCode = row.org_code
-        this.dialogForm.OrgName = row.org_name
-        this.dialogForm.SupUnit = row.parent_id
-      })
-    },
-    // 鍒犻櫎鎸夐挳
-    async del(row) {
-      this.$confirm('鏄惁纭鍒犻櫎?', '鎻愮ず', {
-        confirmButtonText: '纭畾',
-        cancelButtonText: '鍙栨秷',
-        type: 'warning'
-      }).then(() => {
-        DeleteOrganization({ orgid: row.code }).then(res => {
-          if (res.code === '200') {
-            this.$message.success('鍒犻櫎鎴愬姛!')
-            this.getMesOrderStepSearch()
-          }
-        })
-      }).catch(() => {
-        this.$message.info('宸插彇娑堝垹闄�')
-      })
-    },
     // 瀵硅瘽妗嗗叧闂簨浠�
     handleClose() {
       this.dialogForm.OrgType = ''
@@ -462,6 +726,13 @@
     // 瀵硅瘽妗嗗彇娑�
     dialogVisibleCancel() {
       this.dialogVisible = false
+      // if (this.dialogTitle === '鑷埗寮�濮�'||this.dialogTitle === '鑷埗鎶ュ伐') {
+      //   this.tabClick('0')
+      // }
+      // if (this.dialogTitle === '澶栧崗鍙戞枡'||this.dialogTitle === '澶栧崗鏀舵枡') {
+      //   this.tabClick('1')
+      // }
+      this.tabClick()
     },
     // 瀵硅瘽妗嗙‘璁�
     dialogVisibleConfirm() {
@@ -470,18 +741,18 @@
           const data = {
             OrganCode: this.dialogForm.OrgCode,
             OrganName: this.dialogForm.OrgName,
-            OperType: this.operation === 'add' ? 'Add' : 'Update',
             Operator: getCookie('admin')
           }
-          AddUpdateOrganization(data).then(res => {
-            if (res.code === '200') {
-              this.$message.success(this.operation === 'add' ? '娣诲姞鎴愬姛锛�' : '淇敼鎴愬姛锛�')
-              this.dialogVisible = false
-              this.getMesOrderStepSearch()
-            } else {
-              this.$message.error(this.operation === 'add' ? '娣诲姞澶辫触锛�' : '淇敼澶辫触锛�')
-            }
-          })
+          this.tabClick()
+          // AddUpdateOrganization(data).then(res => {
+          //   if (res.code === '200') {
+          //     // this.$message.success(this.operation === 'add' ? '娣诲姞鎴愬姛锛�' : '淇敼鎴愬姛锛�')
+          //     this.dialogVisible = false
+          //     this.getMesOrderStepSearch()
+          //   } else {
+          //     // this.$message.error(this.operation === 'add' ? '娣诲姞澶辫触锛�' : '淇敼澶辫触锛�')
+          //   }
+          // })
         }
       })
     },
@@ -489,7 +760,7 @@
     getHeight() {
       this.$nextTick(() => {
         this.mainHeight = window.innerHeight - 250
-        this.tableHeight = this.mainHeight - 100
+        this.tableHeight = this.mainHeight - 80
       })
     }
   }
@@ -507,9 +778,11 @@
   border: none;
   padding: 0 20px;
 }
+
 ::v-deep .el-button--primary:hover {
   border: none;
 }
+
 ::v-deep .el-button--info {
   height: 30px;
   display: flex;
@@ -543,9 +816,9 @@
   color: #606266;
 }
 
-::v-deep .el-dialog__body {
-  padding: 20px 100px !important;
-}
+//::v-deep .el-dialog__body {
+//  padding: 20px 100px !important;
+//}
 
 ::v-deep .el-radio__input.is-checked .el-radio__inner {
   background-color: $main_color;
@@ -565,6 +838,7 @@
   height: 30px;
   line-height: 30px;
 }
+
 ::v-deep .el-input__inner:focus {
   border-color: $main_color;
 }
@@ -641,17 +915,19 @@
   border-color: $main_color;
 }
 
-::v-deep .el-select .el-input__inner:focus{
+::v-deep .el-select .el-input__inner:focus {
   border-color: $main_color;
 }
 
-::v-deep .el-select-dropdown__item.selected{
+::v-deep .el-select-dropdown__item.selected {
   color: $main_color;
 }
-::v-deep .el-checkbox__inner:hover{
+
+::v-deep .el-checkbox__inner:hover {
   border-color: $main_color;
 }
-::v-deep .el-textarea__inner:focus{
+
+::v-deep .el-textarea__inner:focus {
   border-color: $main_color;
 }
 
diff --git a/src/views/wlgl/ckdy.vue b/src/views/wlgl/ckdy.vue
index 1811fed..1c2beaf 100644
--- a/src/views/wlgl/ckdy.vue
+++ b/src/views/wlgl/ckdy.vue
@@ -109,7 +109,7 @@
     <el-dialog
       :title="operation==='add'?'鏂板':'缂栬緫'"
       :visible.sync="dialogVisible"
-      width="50%"
+      width="800px"
       :close-on-click-modal="false"
       top="15vh"
       @closed="handleClose"
@@ -117,13 +117,13 @@
     >
       <el-form ref="dialogForm" inline :rules="dialogFormRules" :model="dialogForm" label-width="80px">
         <el-form-item label="浠撳簱缂栫爜" prop="warehousecode">
-          <el-input v-model="dialogForm.warehousecode" :disabled="operation!=='add'" style="width: 220px" />
+          <el-input v-model="dialogForm.warehousecode" :disabled="operation!=='add'" style="width: 200px" />
         </el-form-item>
         <el-form-item label="浠撳簱鍚嶇О" prop="warehousename">
-          <el-input v-model="dialogForm.warehousename" style="width: 220px" />
+          <el-input v-model="dialogForm.warehousename" style="width: 200px" />
         </el-form-item>
         <el-form-item label="浠撳簱鎻忚堪">
-          <el-input v-model="dialogForm.description" type="textarea" style="width: 220px" />
+          <el-input v-model="dialogForm.description" type="textarea" style="width: 200px" />
         </el-form-item>
       </el-form>
       <span slot="footer" class="dialog-footer">
diff --git a/src/views/wlgl/kwdy.vue b/src/views/wlgl/kwdy.vue
index 3b3a891..b8e649a 100644
--- a/src/views/wlgl/kwdy.vue
+++ b/src/views/wlgl/kwdy.vue
@@ -124,7 +124,7 @@
     <el-dialog
       :title="operation==='add'?'鏂板':'缂栬緫'"
       :visible.sync="dialogVisible"
-      width="50%"
+      width="800px"
       :close-on-click-modal="false"
       top="15vh"
       @closed="handleClose"
@@ -132,16 +132,16 @@
     >
       <el-form ref="dialogForm" inline :rules="dialogFormRules" :model="dialogForm" label-width="80px">
         <el-form-item label="搴撲綅缂栫爜" prop="storagecode">
-          <el-input v-model="dialogForm.storagecode" :disabled="operation!=='add'" style="width: 220px" />
+          <el-input v-model="dialogForm.storagecode" :disabled="operation!=='add'" style="width: 200px" />
         </el-form-item>
         <el-form-item label="搴撲綅鍚嶇О" prop="storagename">
-          <el-input v-model="dialogForm.storagename" style="width: 220px" />
+          <el-input v-model="dialogForm.storagename" style="width: 200px" />
         </el-form-item>
         <el-form-item label="鎵�灞炲簱浣�" prop="stockcode">
           <el-select
             v-model="dialogForm.stockcode"
             :popper-append-to-body="false"
-            style="width: 220px"
+            style="width: 200px"
             placeholder="璇烽�夋嫨"
           >
             <el-option
@@ -153,7 +153,7 @@
           </el-select>
         </el-form-item>
         <el-form-item label="搴撲綅鎻忚堪">
-          <el-input v-model="dialogForm.description" type="textarea" style="width: 220px" />
+          <el-input v-model="dialogForm.description" type="textarea" style="width: 200px" />
         </el-form-item>
       </el-form>
       <span slot="footer" class="dialog-footer">
diff --git a/src/views/zzmx/chda.vue b/src/views/zzmx/chda.vue
index 575d561..fe0cd74 100644
--- a/src/views/zzmx/chda.vue
+++ b/src/views/zzmx/chda.vue
@@ -160,6 +160,7 @@
             prop="lm_date"
             label="鍒涘缓鏃堕棿"
             sortable="custom"
+            width="160"
           />
           <el-table-column
             label="宸ヨ壓璺嚎"
@@ -201,7 +202,7 @@
       :close-on-click-modal="false"
       :title="operation==='add'?'鏂板':'缂栬緫'"
       :visible.sync="dialogVisible"
-      width="65%"
+      width="800px"
       top="15vh"
       @closed="handleClose"
       @close="handleClose"
@@ -298,7 +299,7 @@
       :close-on-click-modal="false"
       title="鍗曚綅璁剧疆"
       :visible.sync="officeDialogVisible"
-      width="65%"
+      width="800px"
       top="15vh"
       class="officeDialogVisible"
       @close="handleCloseOffice"
@@ -418,7 +419,7 @@
       :close-on-click-modal="false"
       title="鍏宠仈宸ヨ壓璺嚎"
       :visible.sync="dialogVisibleRoute"
-      width="50%"
+      width="800px"
       top="15vh"
       :fullscreen="isFullscreen"
       class="dialogVisibleRoute"
@@ -967,7 +968,7 @@
     // 鏂板
     addOffice() {
       let number = Math.random() * Math.random()// 浣滀负鍒犻櫎鏃剁殑鏍囪瘑绗�
-      number = number === 0 ? Math.random() * Math.random() : number
+      number = number === 0 ? (10 + Math.random()) : number
       const data = { code: '', name: '', digdect: '', r_ule: '', isVisible: 1, number: number }
       this.officeTableData.unshift(data)
     },
@@ -1101,9 +1102,9 @@
   color: #606266;
 }
 
-//::v-deep .el-dialog__body {
-//  padding: 20px 100px !important;
-//}
+::v-deep .el-dialog__body {
+  padding: 20px 100px !important;
+}
 
 .dialogVisibleRoute {
   ::v-deep .el-dialog__body {
diff --git a/src/views/zzmx/gxdy.vue b/src/views/zzmx/gxdy.vue
index 08a2747..be4ed1b 100644
--- a/src/views/zzmx/gxdy.vue
+++ b/src/views/zzmx/gxdy.vue
@@ -171,7 +171,7 @@
     <el-dialog
       :title="operation==='add'?'鏂板':'缂栬緫'"
       :visible.sync="dialogVisible"
-      width="50%"
+      width="800px"
       :close-on-click-modal="false"
       top="15vh"
       @closed="handleClose"
@@ -179,15 +179,15 @@
     >
       <el-form ref="dialogForm" inline :rules="dialogFormRules" :model="dialogForm" label-width="80px">
         <el-form-item label="宸ュ簭缂栫爜" prop="stepcode">
-          <el-input v-model="dialogForm.stepcode" :disabled="operation!=='add'" style="width: 220px" />
+          <el-input v-model="dialogForm.stepcode" :disabled="operation!=='add'" style="width: 200px" />
         </el-form-item>
         <el-form-item label="宸ュ簭鍚嶇О" prop="stepname">
-          <el-input v-model="dialogForm.stepname" style="width: 220px" />
+          <el-input v-model="dialogForm.stepname" style="width: 200px" />
         </el-form-item>
         <el-form-item prop="steptypecode" label="宸ュ簭绫诲瀷">
           <el-select
             v-model="dialogForm.steptypecode"
-            style="width: 220px"
+            style="width: 200px"
             placeholder="璇烽�夋嫨"
             :popper-append-to-body="false"
           >
@@ -202,7 +202,7 @@
         <el-form-item prop="enable" label="鍚敤鐘舵��">
           <el-select
             v-model="dialogForm.enable"
-            style="width: 220px"
+            style="width: 200px"
             placeholder="璇烽�夋嫨"
             :popper-append-to-body="false"
           >
@@ -215,7 +215,7 @@
           </el-select>
         </el-form-item>
         <el-form-item label="宸ュ簭鎻忚堪" prop="description">
-          <el-input v-model="dialogForm.description" type="textarea" style="width: 220px" />
+          <el-input v-model="dialogForm.description" type="textarea" style="width: 200px" />
         </el-form-item>
       </el-form>
       <span slot="footer" class="dialog-footer">
diff --git a/src/views/zzmx/gylx.vue b/src/views/zzmx/gylx.vue
index d88329d..2920da3 100644
--- a/src/views/zzmx/gylx.vue
+++ b/src/views/zzmx/gylx.vue
@@ -120,7 +120,7 @@
     <el-dialog
       :title="operation==='add'?'鏂板':'棰勮'"
       :visible.sync="dialogVisible"
-      width="70%"
+      width="1200px"
       :close-on-click-modal="false"
       top="15vh"
       :fullscreen="isFullscreen"
diff --git a/src/views/zzmx/jpgj.vue b/src/views/zzmx/jpgj.vue
index 40df116..e0cf030 100644
--- a/src/views/zzmx/jpgj.vue
+++ b/src/views/zzmx/jpgj.vue
@@ -199,7 +199,7 @@
     <el-dialog
       :title="operation==='add'?'鏂板':'缂栬緫'"
       :visible.sync="dialogVisible"
-      width="70%"
+      width="1200px"
       top="15vh"
       :fullscreen="isFullscreen"
       :close-on-click-modal="false"
diff --git a/src/views/zzmx/wllx.vue b/src/views/zzmx/wllx.vue
index b583071..5fac28a 100644
--- a/src/views/zzmx/wllx.vue
+++ b/src/views/zzmx/wllx.vue
@@ -113,7 +113,7 @@
     <el-dialog
       :title="operation==='add'?'鏂板':'缂栬緫'"
       :visible.sync="dialogVisible"
-      width="50%"
+      width="800px"
       top="15vh"
       :close-on-click-modal="false"
       @closed="handleClose"
@@ -121,13 +121,13 @@
     >
       <el-form ref="dialogForm" inline :rules="dialogFormRules" :model="dialogForm" label-width="80px">
         <el-form-item label="绫诲瀷缂栫爜" prop="materialtypecode">
-          <el-input v-model="dialogForm.materialtypecode" :disabled="operation!=='add'" style="width: 220px" />
+          <el-input v-model="dialogForm.materialtypecode" :disabled="operation!=='add'" style="width: 200px" />
         </el-form-item>
         <el-form-item label="绫诲瀷鍚嶇О" prop="materialtypename">
-          <el-input v-model="dialogForm.materialtypename" style="width: 220px" />
+          <el-input v-model="dialogForm.materialtypename" style="width: 200px" />
         </el-form-item>
         <el-form-item label="瀛樿揣绫诲瀷" prop="stocktypecode">
-          <el-select v-model="dialogForm.stocktypecode" :popper-append-to-body="false" style="width: 220px" placeholder="璇烽�夋嫨">
+          <el-select v-model="dialogForm.stocktypecode" :popper-append-to-body="false" style="width: 200px" placeholder="璇烽�夋嫨">
             <el-option
               v-for="item in stocktypeArr"
               :key="item.code"

--
Gitblit v1.9.3