| 1 |
- {"remainingRequest":"D:\\front\\item\\zyAdmin\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\front\\item\\zyAdmin\\src\\components\\verifition\\Verify\\VerifySlide.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\front\\item\\zyAdmin\\src\\components\\verifition\\Verify\\VerifySlide.vue","mtime":1761614938989},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1761614927801},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\babel-loader\\lib\\index.js","mtime":1761614927320},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1761614927801},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\vue-loader\\lib\\index.js","mtime":1761614937402}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:DQovKioNCiAqIFZlcmlmeVNsaWRlDQogKiBAZGVzY3JpcHRpb24g5ruR5Z2XDQogKiAqLw0KaW1wb3J0IHsgYWVzRW5jcnlwdCB9IGZyb20gJy4vLi4vdXRpbHMvYXNlJzsNCmltcG9ydCB7IHJlc2V0U2l6ZSB9IGZyb20gJy4vLi4vdXRpbHMvdXRpbCc7DQppbXBvcnQgeyBhakNhcHRjaGEsIGFqQ2FwdGNoYUNoZWNrIH0gZnJvbSAnLi4vLi4vLi4vYXBpL2NvbW1vbic7DQoNCi8vICAiY2FwdGNoYVR5cGUiOiJibG9ja1B1enpsZSIsDQpleHBvcnQgZGVmYXVsdCB7DQogIG5hbWU6ICdWZXJpZnlTbGlkZScsDQogIHByb3BzOiB7DQogICAgY2FwdGNoYVR5cGU6IHsNCiAgICAgIHR5cGU6IFN0cmluZywNCiAgICB9LA0KICAgIHR5cGU6IHsNCiAgICAgIHR5cGU6IFN0cmluZywNCiAgICAgIGRlZmF1bHQ6ICcxJywNCiAgICB9LA0KICAgIC8vIOW8ueWHuuW8j3BvcO+8jOWbuuWummZpeGVkDQogICAgbW9kZTogew0KICAgICAgdHlwZTogU3RyaW5nLA0KICAgICAgZGVmYXVsdDogJ2ZpeGVkJywNCiAgICB9LA0KICAgIHZTcGFjZTogew0KICAgICAgdHlwZTogTnVtYmVyLA0KICAgICAgZGVmYXVsdDogNSwNCiAgICB9LA0KICAgIGV4cGxhaW46IHsNCiAgICAgIHR5cGU6IFN0cmluZywNCiAgICAgIGRlZmF1bHQ6ICflkJHlj7Pmu5HliqjlrozmiJDpqozor4EnLA0KICAgIH0sDQogICAgaW1nU2l6ZTogew0KICAgICAgdHlwZTogT2JqZWN0LA0KICAgICAgZGVmYXVsdCgpIHsNCiAgICAgICAgcmV0dXJuIHsNCiAgICAgICAgICB3aWR0aDogJzMxMHB4JywNCiAgICAgICAgICBoZWlnaHQ6ICcxNTVweCcsDQogICAgICAgIH07DQogICAgICB9LA0KICAgIH0sDQogICAgYmxvY2tTaXplOiB7DQogICAgICB0eXBlOiBPYmplY3QsDQogICAgICBkZWZhdWx0KCkgew0KICAgICAgICByZXR1cm4gew0KICAgICAgICAgIHdpZHRoOiAnNTBweCcsDQogICAgICAgICAgaGVpZ2h0OiAnNTBweCcsDQogICAgICAgIH07DQogICAgICB9LA0KICAgIH0sDQogICAgYmFyU2l6ZTogew0KICAgICAgdHlwZTogT2JqZWN0LA0KICAgICAgZGVmYXVsdCgpIHsNCiAgICAgICAgcmV0dXJuIHsNCiAgICAgICAgICB3aWR0aDogJzMxMHB4JywNCiAgICAgICAgICBoZWlnaHQ6ICc0MHB4JywNCiAgICAgICAgfTsNCiAgICAgIH0sDQogICAgfSwNCiAgICBkZWZhdWx0SW1nOiB7DQogICAgICB0eXBlOiBTdHJpbmcsDQogICAgICBkZWZhdWx0OiAnJywNCiAgICB9LA0KICB9LA0KICBkYXRhKCkgew0KICAgIHJldHVybiB7DQogICAgICBzZWNyZXRLZXk6ICcnLCAvLyDlkI7nq6/ov5Tlm57nmoTliqDlr4bnp5jpkqUg5a2X5q61DQogICAgICBwYXNzRmxhZzogJycsIC8vIOaYr+WQpumAmui/h+eahOagh+ivhg0KICAgICAgYmFja0ltZ0Jhc2U6ICcnLCAvLyDpqozor4HnoIHog4zmma/lm77niYcNCiAgICAgIGJsb2NrQmFja0ltZ0Jhc2U6ICcnLCAvLyDpqozor4Hmu5HlnZfnmoTog4zmma/lm77niYcNCiAgICAgIGJhY2tUb2tlbjogJycsIC8vIOWQjuerr+i/lOWbnueahOWUr+S4gHRva2Vu5YC8DQogICAgICBzdGFydE1vdmVUaW1lOiAnJywgLy8g56e75Yqo5byA5aeL55qE5pe26Ze0DQogICAgICBlbmRNb3ZldGltZTogJycsIC8vIOenu+WKqOe7k+adn+eahOaXtumXtA0KICAgICAgdGlwc0JhY2tDb2xvcjogJycsIC8vIOaPkOekuuivjeeahOiDjOaZr+minOiJsg0KICAgICAgdGlwV29yZHM6ICcnLA0KICAgICAgdGV4dDogJycsDQogICAgICBmaW5pc2hUZXh0OiAnJywNCiAgICAgIHNldFNpemU6IHsNCiAgICAgICAgaW1nSGVpZ2h0OiAwLA0KICAgICAgICBpbWdXaWR0aDogMCwNCiAgICAgICAgYmFySGVpZ2h0OiAwLA0KICAgICAgICBiYXJXaWR0aDogMCwNCiAgICAgIH0sDQogICAgICB0b3A6IDAsDQogICAgICBsZWZ0OiAwLA0KICAgICAgbW92ZUJsb2NrTGVmdDogdW5kZWZpbmVkLA0KICAgICAgbGVmdEJhcldpZHRoOiB1bmRlZmluZWQsDQogICAgICAvLyDnp7vliqjkuK3moLflvI8NCiAgICAgIG1vdmVCbG9ja0JhY2tncm91bmRDb2xvcjogdW5kZWZpbmVkLA0KICAgICAgbGVmdEJhckJvcmRlckNvbG9yOiAnI2RkZCcsDQogICAgICBpY29uQ29sb3I6IHVuZGVmaW5lZCwNCiAgICAgIGljb25DbGFzczogJ2ljb24tcmlnaHQnLA0KICAgICAgc3RhdHVzOiBmYWxzZSwgLy8g6byg5qCH54q25oCBDQogICAgICBpc0VuZDogZmFsc2UsIC8vIOaYr+Wkn+mqjOivgeWujOaIkA0KICAgICAgc2hvd1JlZnJlc2g6IHRydWUsDQogICAgICB0cmFuc2l0aW9uTGVmdDogJycsDQogICAgICB0cmFuc2l0aW9uV2lkdGg6ICcnLA0KICAgIH07DQogIH0sDQogIGNvbXB1dGVkOiB7DQogICAgYmFyQXJlYSgpIHsNCiAgICAgIHJldHVybiB0aGlzLiRlbC5xdWVyeVNlbGVjdG9yKCcudmVyaWZ5LWJhci1hcmVhJyk7DQogICAgfSwNCiAgICByZXNldFNpemUoKSB7DQogICAgICByZXR1cm4gcmVzZXRTaXplOw0KICAgIH0sDQogIH0sDQogIHdhdGNoOiB7DQogICAgLy8gdHlwZeWPmOWMluWImeWFqOmdouWIt+aWsA0KICAgIHR5cGU6IHsNCiAgICAgIGltbWVkaWF0ZTogdHJ1ZSwNCiAgICAgIGhhbmRsZXIoKSB7DQogICAgICAgIHRoaXMuaW5pdCgpOw0KICAgICAgfSwNCiAgICB9LA0KICB9LA0KICBtb3VudGVkKCkgew0KICAgIC8vIOemgeatouaLluaLvQ0KICAgIHRoaXMuJGVsLm9uc2VsZWN0c3RhcnQgPSBmdW5jdGlvbiAoKSB7DQogICAgICByZXR1cm4gZmFsc2U7DQogICAgfTsNCiAgfSwNCiAgbWV0aG9kczogew0KICAgIGluaXQoKSB7DQogICAgICB0aGlzLnRleHQgPSB0aGlzLmV4cGxhaW47DQogICAgICB0aGlzLmdldFBpY3RydWUoKTsNCiAgICAgIHRoaXMuJG5leHRUaWNrKCgpID0+IHsNCiAgICAgICAgY29uc3Qgc2V0U2l6ZSA9IHRoaXMucmVzZXRTaXplKHRoaXMpOyAvLyDph43mlrDorr7nva7lrr3luqbpq5jluqYNCiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2V0U2l6ZSkgew0KICAgICAgICAgIHRoaXMuJHNldCh0aGlzLnNldFNpemUsIGtleSwgc2V0U2l6ZVtrZXldKTsNCiAgICAgICAgfQ0KICAgICAgICB0aGlzLiRwYXJlbnQuJGVtaXQoJ3JlYWR5JywgdGhpcyk7DQogICAgICB9KTsNCg0KICAgICAgdmFyIF90aGlzID0gdGhpczsNCg0KICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNobW92ZScsIGZ1bmN0aW9uIChlKSB7DQogICAgICAgIF90aGlzLm1vdmUoZSk7DQogICAgICB9KTsNCiAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCBmdW5jdGlvbiAoZSkgew0KICAgICAgICBfdGhpcy5tb3ZlKGUpOw0KICAgICAgfSk7DQoNCiAgICAgIC8vIOm8oOagh+advuW8gA0KICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNoZW5kJywgZnVuY3Rpb24gKCkgew0KICAgICAgICBfdGhpcy5lbmQoKTsNCiAgICAgIH0pOw0KICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNldXAnLCBmdW5jdGlvbiAoKSB7DQogICAgICAgIF90aGlzLmVuZCgpOw0KICAgICAgfSk7DQoNCiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCd0b3VjaG1vdmUnLCBmdW5jdGlvbiAoZSkgew0KICAgICAgICBfdGhpcy5tb3ZlKGUpOw0KICAgICAgfSk7DQogICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vtb3ZlJywgZnVuY3Rpb24gKGUpIHsNCiAgICAgICAgX3RoaXMubW92ZShlKTsNCiAgICAgIH0pOw0KDQogICAgICAvLyDpvKDmoIfmnb7lvIANCiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCd0b3VjaGVuZCcsIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgX3RoaXMuZW5kKCk7DQogICAgICB9KTsNCiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgZnVuY3Rpb24gKCkgew0KICAgICAgICBfdGhpcy5lbmQoKTsNCiAgICAgIH0pOw0KICAgIH0sDQoNCiAgICAvLyDpvKDmoIfmjInkuIsNCiAgICBzdGFydDogZnVuY3Rpb24gKGUpIHsNCiAgICAgIGUgPSBlIHx8IHdpbmRvdy5ldmVudDsNCiAgICAgIGlmICghZS50b3VjaGVzKSB7DQogICAgICAgIC8vIOWFvOWuuVBD56uvDQogICAgICAgIHZhciB4ID0gZS5jbGllbnRYOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgLy8g5YW85a6556e75Yqo56uvDQogICAgICAgIHZhciB4ID0gZS50b3VjaGVzWzBdLnBhZ2VYOw0KICAgICAgfQ0KICAgICAgdGhpcy5zdGFydExlZnQgPSBNYXRoLmZsb29yKHggLSB0aGlzLmJhckFyZWEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkubGVmdCk7DQogICAgICB0aGlzLnN0YXJ0TW92ZVRpbWUgPSArbmV3IERhdGUoKTsgLy8g5byA5aeL5ruR5Yqo55qE5pe26Ze0DQogICAgICBpZiAodGhpcy5pc0VuZCA9PSBmYWxzZSkgew0KICAgICAgICB0aGlzLnRleHQgPSAnJzsNCiAgICAgICAgdGhpcy5tb3ZlQmxvY2tCYWNrZ3JvdW5kQ29sb3IgPSAnIzMzN2FiNyc7DQogICAgICAgIHRoaXMubGVmdEJhckJvcmRlckNvbG9yID0gJyMzMzdBQjcnOw0KICAgICAgICB0aGlzLmljb25Db2xvciA9ICcjZmZmJzsNCiAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTsNCiAgICAgICAgdGhpcy5zdGF0dXMgPSB0cnVlOw0KICAgICAgfQ0KICAgIH0sDQogICAgLy8g6byg5qCH56e75YqoDQogICAgbW92ZTogZnVuY3Rpb24gKGUpIHsNCiAgICAgIGUgPSBlIHx8IHdpbmRvdy5ldmVudDsNCiAgICAgIGlmICh0aGlzLnN0YXR1cyAmJiB0aGlzLmlzRW5kID09IGZhbHNlKSB7DQogICAgICAgIGlmICghZS50b3VjaGVzKSB7DQogICAgICAgICAgLy8g5YW85a65UEPnq68NCiAgICAgICAgICB2YXIgeCA9IGUuY2xpZW50WDsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAvLyDlhbzlrrnnp7vliqjnq68NCiAgICAgICAgICB2YXIgeCA9IGUudG91Y2hlc1swXS5wYWdlWDsNCiAgICAgICAgfQ0KICAgICAgICB2YXIgYmFyX2FyZWFfbGVmdCA9IHRoaXMuYmFyQXJlYS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0Ow0KICAgICAgICB2YXIgbW92ZV9ibG9ja19sZWZ0ID0geCAtIGJhcl9hcmVhX2xlZnQ7IC8vIOWwj+aWueWdl+ebuOWvueS6jueItuWFg+e0oOeahGxlZnTlgLwNCiAgICAgICAgaWYgKG1vdmVfYmxvY2tfbGVmdCA+PSB0aGlzLmJhckFyZWEub2Zmc2V0V2lkdGggLSBwYXJzZUludChwYXJzZUludCh0aGlzLmJsb2NrU2l6ZS53aWR0aCkgLyAyKSAtIDIpIHsNCiAgICAgICAgICBtb3ZlX2Jsb2NrX2xlZnQgPSB0aGlzLmJhckFyZWEub2Zmc2V0V2lkdGggLSBwYXJzZUludChwYXJzZUludCh0aGlzLmJsb2NrU2l6ZS53aWR0aCkgLyAyKSAtIDI7DQogICAgICAgIH0NCiAgICAgICAgaWYgKG1vdmVfYmxvY2tfbGVmdCA8PSAwKSB7DQogICAgICAgICAgbW92ZV9ibG9ja19sZWZ0ID0gcGFyc2VJbnQocGFyc2VJbnQodGhpcy5ibG9ja1NpemUud2lkdGgpIC8gMik7DQogICAgICAgIH0NCiAgICAgICAgLy8g5ouW5Yqo5ZCO5bCP5pa55Z2X55qEbGVmdOWAvA0KICAgICAgICB0aGlzLm1vdmVCbG9ja0xlZnQgPSBtb3ZlX2Jsb2NrX2xlZnQgLSB0aGlzLnN0YXJ0TGVmdCArICdweCc7DQogICAgICAgIHRoaXMubGVmdEJhcldpZHRoID0gbW92ZV9ibG9ja19sZWZ0IC0gdGhpcy5zdGFydExlZnQgKyAncHgnOw0KICAgICAgfQ0KICAgIH0sDQoNCiAgICAvLyDpvKDmoIfmnb7lvIANCiAgICBlbmQ6IGZ1bmN0aW9uICgpIHsNCiAgICAgIHRoaXMuZW5kTW92ZXRpbWUgPSArbmV3IERhdGUoKTsNCiAgICAgIHZhciBfdGhpcyA9IHRoaXM7DQogICAgICAvLyDliKTmlq3mmK/lkKbph43lkIgNCiAgICAgIGlmICh0aGlzLnN0YXR1cyAmJiB0aGlzLmlzRW5kID09IGZhbHNlKSB7DQogICAgICAgIHZhciBtb3ZlTGVmdERpc3RhbmNlID0gcGFyc2VJbnQoKHRoaXMubW92ZUJsb2NrTGVmdCB8fCAnJykucmVwbGFjZSgncHgnLCAnJykpOw0KICAgICAgICBtb3ZlTGVmdERpc3RhbmNlID0gKG1vdmVMZWZ0RGlzdGFuY2UgKiAzMTApIC8gcGFyc2VJbnQodGhpcy5zZXRTaXplLmltZ1dpZHRoKTsNCiAgICAgICAgY29uc3QgZGF0YSA9IHsNCiAgICAgICAgICBjYXB0Y2hhVHlwZTogdGhpcy5jYXB0Y2hhVHlwZSwNCiAgICAgICAgICBwb2ludEpzb246IHRoaXMuc2VjcmV0S2V5DQogICAgICAgICAgICA/IGFlc0VuY3J5cHQoSlNPTi5zdHJpbmdpZnkoeyB4OiBtb3ZlTGVmdERpc3RhbmNlLCB5OiA1LjAgfSksIHRoaXMuc2VjcmV0S2V5KQ0KICAgICAgICAgICAgOiBKU09OLnN0cmluZ2lmeSh7IHg6IG1vdmVMZWZ0RGlzdGFuY2UsIHk6IDUuMCB9KSwNCiAgICAgICAgICB0b2tlbjogdGhpcy5iYWNrVG9rZW4sDQogICAgICAgIH07DQogICAgICAgIGFqQ2FwdGNoYUNoZWNrKGRhdGEpDQogICAgICAgICAgLnRoZW4oKHJlcykgPT4gew0KICAgICAgICAgICAgdGhpcy5tb3ZlQmxvY2tCYWNrZ3JvdW5kQ29sb3IgPSAnIzVjYjg1Yyc7DQogICAgICAgICAgICB0aGlzLmxlZnRCYXJCb3JkZXJDb2xvciA9ICcjNWNiODVjJzsNCiAgICAgICAgICAgIHRoaXMuaWNvbkNvbG9yID0gJyNmZmYnOw0KICAgICAgICAgICAgdGhpcy5pY29uQ2xhc3MgPSAnaWNvbi1jaGVjayc7DQogICAgICAgICAgICB0aGlzLnNob3dSZWZyZXNoID0gZmFsc2U7DQogICAgICAgICAgICB0aGlzLmlzRW5kID0gdHJ1ZTsNCiAgICAgICAgICAgIGlmICh0aGlzLm1vZGUgPT0gJ3BvcCcpIHsNCiAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7DQogICAgICAgICAgICAgICAgdGhpcy4kcGFyZW50LmNsaWNrU2hvdyA9IGZhbHNlOw0KICAgICAgICAgICAgICAgIHRoaXMucmVmcmVzaCgpOw0KICAgICAgICAgICAgICB9LCAxNTAwKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIHRoaXMucGFzc0ZsYWcgPSB0cnVlOw0KICAgICAgICAgICAgdGhpcy50aXBXb3JkcyA9IGAkeygodGhpcy5lbmRNb3ZldGltZSAtIHRoaXMuc3RhcnRNb3ZlVGltZSkgLyAxMDAwKS50b0ZpeGVkKDIpfXPpqozor4HmiJDlip9gOw0KICAgICAgICAgICAgdmFyIGNhcHRjaGFWZXJpZmljYXRpb24gPSB0aGlzLnNlY3JldEtleQ0KICAgICAgICAgICAgICA/IGFlc0VuY3J5cHQodGhpcy5iYWNrVG9rZW4gKyAnLS0tJyArIEpTT04uc3RyaW5naWZ5KHsgeDogbW92ZUxlZnREaXN0YW5jZSwgeTogNS4wIH0pLCB0aGlzLnNlY3JldEtleSkNCiAgICAgICAgICAgICAgOiB0aGlzLmJhY2tUb2tlbiArICctLS0nICsgSlNPTi5zdHJpbmdpZnkoeyB4OiBtb3ZlTGVmdERpc3RhbmNlLCB5OiA1LjAgfSk7DQogICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHsNCiAgICAgICAgICAgICAgdGhpcy50aXBXb3JkcyA9ICcnOw0KICAgICAgICAgICAgICB0aGlzLiRwYXJlbnQuY2xvc2VCb3goKTsNCiAgICAgICAgICAgICAgdGhpcy4kcGFyZW50LiRlbWl0KCdzdWNjZXNzJywgeyBjYXB0Y2hhVmVyaWZpY2F0aW9uIH0pOw0KICAgICAgICAgICAgfSwgMTAwMCk7DQogICAgICAgICAgfSkNCiAgICAgICAgICAuY2F0Y2goKHJlcykgPT4gew0KICAgICAgICAgICAgdGhpcy5tb3ZlQmxvY2tCYWNrZ3JvdW5kQ29sb3IgPSAnI2Q5NTM0Zic7DQogICAgICAgICAgICB0aGlzLmxlZnRCYXJCb3JkZXJDb2xvciA9ICcjZDk1MzRmJzsNCiAgICAgICAgICAgIHRoaXMuaWNvbkNvbG9yID0gJyNmZmYnOw0KICAgICAgICAgICAgdGhpcy5pY29uQ2xhc3MgPSAnaWNvbi1jbG9zZSc7DQogICAgICAgICAgICB0aGlzLnBhc3NGbGFnID0gZmFsc2U7DQogICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgX3RoaXMucmVmcmVzaCgpOw0KICAgICAgICAgICAgfSwgMTAwMCk7DQogICAgICAgICAgICB0aGlzLiRwYXJlbnQuJGVtaXQoJ2Vycm9yJywgdGhpcyk7DQogICAgICAgICAgICB0aGlzLnRpcFdvcmRzID0gJ+mqjOivgeWksei0pSc7DQogICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHsNCiAgICAgICAgICAgICAgdGhpcy50aXBXb3JkcyA9ICcnOw0KICAgICAgICAgICAgfSwgMTAwMCk7DQogICAgICAgICAgfSk7DQogICAgICAgIHRoaXMuc3RhdHVzID0gZmFsc2U7DQogICAgICB9DQogICAgfSwNCg0KICAgIHJlZnJlc2g6IGZ1bmN0aW9uICgpIHsNCiAgICAgIHRoaXMuc2hvd1JlZnJlc2ggPSB0cnVlOw0KICAgICAgdGhpcy5maW5pc2hUZXh0ID0gJyc7DQoNCiAgICAgIHRoaXMudHJhbnNpdGlvbkxlZnQgPSAnbGVmdCAuM3MnOw0KICAgICAgdGhpcy5tb3ZlQmxvY2tMZWZ0ID0gMDsNCg0KICAgICAgdGhpcy5sZWZ0QmFyV2lkdGggPSB1bmRlZmluZWQ7DQogICAgICB0aGlzLnRyYW5zaXRpb25XaWR0aCA9ICd3aWR0aCAuM3MnOw0KDQogICAgICB0aGlzLmxlZnRCYXJCb3JkZXJDb2xvciA9ICcjZGRkJzsNCiAgICAgIHRoaXMubW92ZUJsb2NrQmFja2dyb3VuZENvbG9yID0gJyNmZmYnOw0KICAgICAgdGhpcy5pY29uQ29sb3IgPSAnIzAwMCc7DQogICAgICB0aGlzLmljb25DbGFzcyA9ICdpY29uLXJpZ2h0JzsNCiAgICAgIHRoaXMuaXNFbmQgPSBmYWxzZTsNCg0KICAgICAgdGhpcy5nZXRQaWN0cnVlKCk7DQogICAgICBzZXRUaW1lb3V0KCgpID0+IHsNCiAgICAgICAgdGhpcy50cmFuc2l0aW9uV2lkdGggPSAnJzsNCiAgICAgICAgdGhpcy50cmFuc2l0aW9uTGVmdCA9ICcnOw0KICAgICAgICB0aGlzLnRleHQgPSB0aGlzLmV4cGxhaW47DQogICAgICB9LCAzMDApOw0KICAgIH0sDQoNCiAgICAvLyDor7fmsYLog4zmma/lm77niYflkozpqozor4Hlm77niYcNCiAgICBnZXRQaWN0cnVlKCkgew0KICAgICAgY29uc3QgZGF0YSA9IHsNCiAgICAgICAgY2FwdGNoYVR5cGU6IHRoaXMuY2FwdGNoYVR5cGUsDQogICAgICAgIGNsaWVudFVpZDogbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3NsaWRlcicpLA0KICAgICAgICB0czogRGF0ZS5ub3coKSwgLy8g546w5Zyo55qE5pe26Ze05oizDQogICAgICB9Ow0KICAgICAgYWpDYXB0Y2hhKGRhdGEpDQogICAgICAgIC50aGVuKChyZXMpID0+IHsNCiAgICAgICAgICB0aGlzLmJhY2tJbWdCYXNlID0gcmVzLmRhdGEub3JpZ2luYWxJbWFnZUJhc2U2NDsNCiAgICAgICAgICB0aGlzLmJsb2NrQmFja0ltZ0Jhc2UgPSByZXMuZGF0YS5qaWdzYXdJbWFnZUJhc2U2NDsNCiAgICAgICAgICB0aGlzLmJhY2tUb2tlbiA9IHJlcy5kYXRhLnRva2VuOw0KICAgICAgICAgIHRoaXMuc2VjcmV0S2V5ID0gcmVzLmRhdGEuc2VjcmV0S2V5Ow0KICAgICAgICB9KQ0KICAgICAgICAuY2F0Y2goKHJlcykgPT4gew0KICAgICAgICAgIHRoaXMudGlwV29yZHMgPSByZXMubXNnOw0KICAgICAgICAgIHRoaXMuYmFja0ltZ0Jhc2UgPSBudWxsOw0KICAgICAgICAgIHRoaXMuYmxvY2tCYWNrSW1nQmFzZSA9IG51bGw7DQogICAgICAgIH0pOw0KICAgIH0sDQogIH0sDQp9Ow0K"},{"version":3,"sources":["VerifySlide.vue"],"names":[],"mappings":";AAoEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"VerifySlide.vue","sourceRoot":"src/components/verifition/Verify","sourcesContent":["<template>\r\n <div style=\"position: relative\">\r\n <div v-if=\"type === '2'\" class=\"verify-img-out\" :style=\"{ height: parseInt(setSize.imgHeight) + vSpace + 'px' }\">\r\n <div class=\"verify-img-panel\" :style=\"{ width: setSize.imgWidth, height: setSize.imgHeight }\">\r\n <img\r\n :src=\"backImgBase ? 'data:image/png;base64,' + backImgBase : defaultImg\"\r\n alt=\"\"\r\n style=\"width: 100%; height: 100%; display: block\"\r\n />\r\n <div v-show=\"showRefresh\" class=\"verify-refresh\" v-db-click @click=\"refresh\">\r\n <i class=\"iconfont icon-refresh\" />\r\n </div>\r\n <transition name=\"tips\">\r\n <span v-if=\"tipWords\" class=\"verify-tips\" :class=\"passFlag ? 'suc-bg' : 'err-bg'\">{{ tipWords }}</span>\r\n </transition>\r\n </div>\r\n </div>\r\n <!-- 公共部分 -->\r\n <div\r\n class=\"verify-bar-area\"\r\n :style=\"{ width: setSize.imgWidth, height: barSize.height, 'line-height': barSize.height }\"\r\n >\r\n <span class=\"verify-msg\" v-text=\"text\" />\r\n <div\r\n class=\"verify-left-bar\"\r\n :style=\"{\r\n width: leftBarWidth !== undefined ? leftBarWidth : barSize.height,\r\n height: barSize.height,\r\n 'border-color': leftBarBorderColor,\r\n transaction: transitionWidth,\r\n }\"\r\n >\r\n <span class=\"verify-msg\" v-text=\"finishText\" />\r\n <div\r\n class=\"verify-move-block\"\r\n :style=\"{\r\n width: barSize.height,\r\n height: barSize.height,\r\n 'background-color': moveBlockBackgroundColor,\r\n left: moveBlockLeft,\r\n transition: transitionLeft,\r\n }\"\r\n @touchstart=\"start\"\r\n @mousedown=\"start\"\r\n >\r\n <i :class=\"['verify-icon iconfont', iconClass]\" :style=\"{ color: iconColor }\" />\r\n <div\r\n v-if=\"type === '2'\"\r\n class=\"verify-sub-block\"\r\n :style=\"{\r\n width: Math.floor((parseInt(setSize.imgWidth) * 47) / 310) + 'px',\r\n height: setSize.imgHeight,\r\n top: '-' + (parseInt(setSize.imgHeight) + vSpace) + 'px',\r\n 'background-size': setSize.imgWidth + ' ' + setSize.imgHeight,\r\n }\"\r\n >\r\n <img\r\n :src=\"'data:image/png;base64,' + blockBackImgBase\"\r\n alt=\"\"\r\n style=\"width: 100%; height: 100%; display: block\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</template>\r\n<script type=\"text/babel\">\r\n/**\r\n * VerifySlide\r\n * @description 滑块\r\n * */\r\nimport { aesEncrypt } from './../utils/ase';\r\nimport { resetSize } from './../utils/util';\r\nimport { ajCaptcha, ajCaptchaCheck } from '../../../api/common';\r\n\r\n// \"captchaType\":\"blockPuzzle\",\r\nexport default {\r\n name: 'VerifySlide',\r\n props: {\r\n captchaType: {\r\n type: String,\r\n },\r\n type: {\r\n type: String,\r\n default: '1',\r\n },\r\n // 弹出式pop,固定fixed\r\n mode: {\r\n type: String,\r\n default: 'fixed',\r\n },\r\n vSpace: {\r\n type: Number,\r\n default: 5,\r\n },\r\n explain: {\r\n type: String,\r\n default: '向右滑动完成验证',\r\n },\r\n imgSize: {\r\n type: Object,\r\n default() {\r\n return {\r\n width: '310px',\r\n height: '155px',\r\n };\r\n },\r\n },\r\n blockSize: {\r\n type: Object,\r\n default() {\r\n return {\r\n width: '50px',\r\n height: '50px',\r\n };\r\n },\r\n },\r\n barSize: {\r\n type: Object,\r\n default() {\r\n return {\r\n width: '310px',\r\n height: '40px',\r\n };\r\n },\r\n },\r\n defaultImg: {\r\n type: String,\r\n default: '',\r\n },\r\n },\r\n data() {\r\n return {\r\n secretKey: '', // 后端返回的加密秘钥 字段\r\n passFlag: '', // 是否通过的标识\r\n backImgBase: '', // 验证码背景图片\r\n blockBackImgBase: '', // 验证滑块的背景图片\r\n backToken: '', // 后端返回的唯一token值\r\n startMoveTime: '', // 移动开始的时间\r\n endMovetime: '', // 移动结束的时间\r\n tipsBackColor: '', // 提示词的背景颜色\r\n tipWords: '',\r\n text: '',\r\n finishText: '',\r\n setSize: {\r\n imgHeight: 0,\r\n imgWidth: 0,\r\n barHeight: 0,\r\n barWidth: 0,\r\n },\r\n top: 0,\r\n left: 0,\r\n moveBlockLeft: undefined,\r\n leftBarWidth: undefined,\r\n // 移动中样式\r\n moveBlockBackgroundColor: undefined,\r\n leftBarBorderColor: '#ddd',\r\n iconColor: undefined,\r\n iconClass: 'icon-right',\r\n status: false, // 鼠标状态\r\n isEnd: false, // 是够验证完成\r\n showRefresh: true,\r\n transitionLeft: '',\r\n transitionWidth: '',\r\n };\r\n },\r\n computed: {\r\n barArea() {\r\n return this.$el.querySelector('.verify-bar-area');\r\n },\r\n resetSize() {\r\n return resetSize;\r\n },\r\n },\r\n watch: {\r\n // type变化则全面刷新\r\n type: {\r\n immediate: true,\r\n handler() {\r\n this.init();\r\n },\r\n },\r\n },\r\n mounted() {\r\n // 禁止拖拽\r\n this.$el.onselectstart = function () {\r\n return false;\r\n };\r\n },\r\n methods: {\r\n init() {\r\n this.text = this.explain;\r\n this.getPictrue();\r\n this.$nextTick(() => {\r\n const setSize = this.resetSize(this); // 重新设置宽度高度\r\n for (const key in setSize) {\r\n this.$set(this.setSize, key, setSize[key]);\r\n }\r\n this.$parent.$emit('ready', this);\r\n });\r\n\r\n var _this = this;\r\n\r\n window.removeEventListener('touchmove', function (e) {\r\n _this.move(e);\r\n });\r\n window.removeEventListener('mousemove', function (e) {\r\n _this.move(e);\r\n });\r\n\r\n // 鼠标松开\r\n window.removeEventListener('touchend', function () {\r\n _this.end();\r\n });\r\n window.removeEventListener('mouseup', function () {\r\n _this.end();\r\n });\r\n\r\n window.addEventListener('touchmove', function (e) {\r\n _this.move(e);\r\n });\r\n window.addEventListener('mousemove', function (e) {\r\n _this.move(e);\r\n });\r\n\r\n // 鼠标松开\r\n window.addEventListener('touchend', function () {\r\n _this.end();\r\n });\r\n window.addEventListener('mouseup', function () {\r\n _this.end();\r\n });\r\n },\r\n\r\n // 鼠标按下\r\n start: function (e) {\r\n e = e || window.event;\r\n if (!e.touches) {\r\n // 兼容PC端\r\n var x = e.clientX;\r\n } else {\r\n // 兼容移动端\r\n var x = e.touches[0].pageX;\r\n }\r\n this.startLeft = Math.floor(x - this.barArea.getBoundingClientRect().left);\r\n this.startMoveTime = +new Date(); // 开始滑动的时间\r\n if (this.isEnd == false) {\r\n this.text = '';\r\n this.moveBlockBackgroundColor = '#337ab7';\r\n this.leftBarBorderColor = '#337AB7';\r\n this.iconColor = '#fff';\r\n e.stopPropagation();\r\n this.status = true;\r\n }\r\n },\r\n // 鼠标移动\r\n move: function (e) {\r\n e = e || window.event;\r\n if (this.status && this.isEnd == false) {\r\n if (!e.touches) {\r\n // 兼容PC端\r\n var x = e.clientX;\r\n } else {\r\n // 兼容移动端\r\n var x = e.touches[0].pageX;\r\n }\r\n var bar_area_left = this.barArea.getBoundingClientRect().left;\r\n var move_block_left = x - bar_area_left; // 小方块相对于父元素的left值\r\n if (move_block_left >= this.barArea.offsetWidth - parseInt(parseInt(this.blockSize.width) / 2) - 2) {\r\n move_block_left = this.barArea.offsetWidth - parseInt(parseInt(this.blockSize.width) / 2) - 2;\r\n }\r\n if (move_block_left <= 0) {\r\n move_block_left = parseInt(parseInt(this.blockSize.width) / 2);\r\n }\r\n // 拖动后小方块的left值\r\n this.moveBlockLeft = move_block_left - this.startLeft + 'px';\r\n this.leftBarWidth = move_block_left - this.startLeft + 'px';\r\n }\r\n },\r\n\r\n // 鼠标松开\r\n end: function () {\r\n this.endMovetime = +new Date();\r\n var _this = this;\r\n // 判断是否重合\r\n if (this.status && this.isEnd == false) {\r\n var moveLeftDistance = parseInt((this.moveBlockLeft || '').replace('px', ''));\r\n moveLeftDistance = (moveLeftDistance * 310) / parseInt(this.setSize.imgWidth);\r\n const data = {\r\n captchaType: this.captchaType,\r\n pointJson: this.secretKey\r\n ? aesEncrypt(JSON.stringify({ x: moveLeftDistance, y: 5.0 }), this.secretKey)\r\n : JSON.stringify({ x: moveLeftDistance, y: 5.0 }),\r\n token: this.backToken,\r\n };\r\n ajCaptchaCheck(data)\r\n .then((res) => {\r\n this.moveBlockBackgroundColor = '#5cb85c';\r\n this.leftBarBorderColor = '#5cb85c';\r\n this.iconColor = '#fff';\r\n this.iconClass = 'icon-check';\r\n this.showRefresh = false;\r\n this.isEnd = true;\r\n if (this.mode == 'pop') {\r\n setTimeout(() => {\r\n this.$parent.clickShow = false;\r\n this.refresh();\r\n }, 1500);\r\n }\r\n this.passFlag = true;\r\n this.tipWords = `${((this.endMovetime - this.startMoveTime) / 1000).toFixed(2)}s验证成功`;\r\n var captchaVerification = this.secretKey\r\n ? aesEncrypt(this.backToken + '---' + JSON.stringify({ x: moveLeftDistance, y: 5.0 }), this.secretKey)\r\n : this.backToken + '---' + JSON.stringify({ x: moveLeftDistance, y: 5.0 });\r\n setTimeout(() => {\r\n this.tipWords = '';\r\n this.$parent.closeBox();\r\n this.$parent.$emit('success', { captchaVerification });\r\n }, 1000);\r\n })\r\n .catch((res) => {\r\n this.moveBlockBackgroundColor = '#d9534f';\r\n this.leftBarBorderColor = '#d9534f';\r\n this.iconColor = '#fff';\r\n this.iconClass = 'icon-close';\r\n this.passFlag = false;\r\n setTimeout(function () {\r\n _this.refresh();\r\n }, 1000);\r\n this.$parent.$emit('error', this);\r\n this.tipWords = '验证失败';\r\n setTimeout(() => {\r\n this.tipWords = '';\r\n }, 1000);\r\n });\r\n this.status = false;\r\n }\r\n },\r\n\r\n refresh: function () {\r\n this.showRefresh = true;\r\n this.finishText = '';\r\n\r\n this.transitionLeft = 'left .3s';\r\n this.moveBlockLeft = 0;\r\n\r\n this.leftBarWidth = undefined;\r\n this.transitionWidth = 'width .3s';\r\n\r\n this.leftBarBorderColor = '#ddd';\r\n this.moveBlockBackgroundColor = '#fff';\r\n this.iconColor = '#000';\r\n this.iconClass = 'icon-right';\r\n this.isEnd = false;\r\n\r\n this.getPictrue();\r\n setTimeout(() => {\r\n this.transitionWidth = '';\r\n this.transitionLeft = '';\r\n this.text = this.explain;\r\n }, 300);\r\n },\r\n\r\n // 请求背景图片和验证图片\r\n getPictrue() {\r\n const data = {\r\n captchaType: this.captchaType,\r\n clientUid: localStorage.getItem('slider'),\r\n ts: Date.now(), // 现在的时间戳\r\n };\r\n ajCaptcha(data)\r\n .then((res) => {\r\n this.backImgBase = res.data.originalImageBase64;\r\n this.blockBackImgBase = res.data.jigsawImageBase64;\r\n this.backToken = res.data.token;\r\n this.secretKey = res.data.secretKey;\r\n })\r\n .catch((res) => {\r\n this.tipWords = res.msg;\r\n this.backImgBase = null;\r\n this.blockBackImgBase = null;\r\n });\r\n },\r\n },\r\n};\r\n</script>\r\n"]}]}
|