| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604 |
- (this["webpackJsonp"] = this["webpackJsonp"] || []).push([["app-service"],[
- /* 0 */
- /*!****************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/main.js ***!
- \****************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\n__webpack_require__(/*! uni-pages */ 6);\nvar _App = _interopRequireDefault(__webpack_require__(/*! ./App */ 45));\nvar _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 20));\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n_vue.default.config.productionTip = false;\n_App.default.mpType = 'app';\nvar app = new _vue.default(_objectSpread({}, _App.default));\napp.$mount();//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vbWFpbi5qcyJdLCJuYW1lcyI6WyJWdWUiLCJjb25maWciLCJwcm9kdWN0aW9uVGlwIiwiQXBwIiwibXBUeXBlIiwiYXBwIiwiJG1vdW50Il0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFBbUI7QUFHbkI7QUFBcUI7QUFBQTtBQUNyQkEsWUFBRyxDQUFDQyxNQUFNLENBQUNDLGFBQWEsR0FBRyxLQUFLO0FBQ2hDQyxZQUFHLENBQUNDLE1BQU0sR0FBRyxLQUFLO0FBQ2xCLElBQU1DLEdBQUcsR0FBRyxJQUFJTCxZQUFHLG1CQUNaRyxZQUFHLEVBQ1I7QUFDRkUsR0FBRyxDQUFDQyxNQUFNLEVBQUUiLCJmaWxlIjoiMC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAndW5pLXBhZ2VzJztpbXBvcnQgQXBwIGZyb20gJy4vQXBwJ1xyXG5cclxuXHJcbmltcG9ydCBWdWUgZnJvbSAndnVlJ1xyXG5WdWUuY29uZmlnLnByb2R1Y3Rpb25UaXAgPSBmYWxzZVxyXG5BcHAubXBUeXBlID0gJ2FwcCdcclxuY29uc3QgYXBwID0gbmV3IFZ1ZSh7XHJcbiAgICAuLi5BcHBcclxufSlcclxuYXBwLiRtb3VudCgpXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///0\n");
- /***/ }),
- /* 1 */
- /*!**********************************************************************!*\
- !*** ./node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
- \**********************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports) {
- function _interopRequireDefault(obj) {
- return obj && obj.__esModule ? obj : {
- "default": obj
- };
- }
- module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;
- /***/ }),
- /* 2 */
- /*!***************************************************************!*\
- !*** ./node_modules/@babel/runtime/helpers/defineProperty.js ***!
- \***************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ 3);
- function _defineProperty(obj, key, value) {
- key = toPropertyKey(key);
- if (key in obj) {
- Object.defineProperty(obj, key, {
- value: value,
- enumerable: true,
- configurable: true,
- writable: true
- });
- } else {
- obj[key] = value;
- }
- return obj;
- }
- module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports;
- /***/ }),
- /* 3 */
- /*!**************************************************************!*\
- !*** ./node_modules/@babel/runtime/helpers/toPropertyKey.js ***!
- \**************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- var _typeof = __webpack_require__(/*! ./typeof.js */ 4)["default"];
- var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ 5);
- function toPropertyKey(t) {
- var i = toPrimitive(t, "string");
- return "symbol" == _typeof(i) ? i : i + "";
- }
- module.exports = toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports;
- /***/ }),
- /* 4 */
- /*!*******************************************************!*\
- !*** ./node_modules/@babel/runtime/helpers/typeof.js ***!
- \*******************************************************/
- /*! no static exports found */
- /***/ (function(module, exports) {
- function _typeof(o) {
- "@babel/helpers - typeof";
- return (module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
- return typeof o;
- } : function (o) {
- return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
- }, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(o);
- }
- module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
- /***/ }),
- /* 5 */
- /*!************************************************************!*\
- !*** ./node_modules/@babel/runtime/helpers/toPrimitive.js ***!
- \************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- var _typeof = __webpack_require__(/*! ./typeof.js */ 4)["default"];
- function toPrimitive(t, r) {
- if ("object" != _typeof(t) || !t) return t;
- var e = t[Symbol.toPrimitive];
- if (void 0 !== e) {
- var i = e.call(t, r || "default");
- if ("object" != _typeof(i)) return i;
- throw new TypeError("@@toPrimitive must return a primitive value.");
- }
- return ("string" === r ? String : Number)(t);
- }
- module.exports = toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports;
- /***/ }),
- /* 6 */
- /*!*******************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/pages.json ***!
- \*******************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- if (typeof Promise !== 'undefined' && !Promise.prototype.finally) {
- Promise.prototype.finally = function (callback) {
- var promise = this.constructor;
- return this.then(function (value) {
- return promise.resolve(callback()).then(function () {
- return value;
- });
- }, function (reason) {
- return promise.resolve(callback()).then(function () {
- throw reason;
- });
- });
- };
- }
- if (typeof uni !== 'undefined' && uni && uni.requireGlobal) {
- var global = uni.requireGlobal();
- ArrayBuffer = global.ArrayBuffer;
- Int8Array = global.Int8Array;
- Uint8Array = global.Uint8Array;
- Uint8ClampedArray = global.Uint8ClampedArray;
- Int16Array = global.Int16Array;
- Uint16Array = global.Uint16Array;
- Int32Array = global.Int32Array;
- Uint32Array = global.Uint32Array;
- Float32Array = global.Float32Array;
- Float64Array = global.Float64Array;
- BigInt64Array = global.BigInt64Array;
- BigUint64Array = global.BigUint64Array;
- }
- if (uni.restoreGlobal) {
- uni.restoreGlobal(weex, plus, setTimeout, clearTimeout, setInterval, clearInterval);
- }
- __definePage('pages/login/login', function () {
- return Vue.extend(__webpack_require__(/*! pages/login/login.vue?mpType=page */ 7).default);
- });
- __definePage('pages/index/index', function () {
- return Vue.extend(__webpack_require__(/*! pages/index/index.vue?mpType=page */ 34).default);
- });
- __definePage('pages/mine/manage', function () {
- return Vue.extend(__webpack_require__(/*! pages/mine/manage.vue?mpType=page */ 39).default);
- });
- /***/ }),
- /* 7 */
- /*!******************************************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/pages/login/login.vue?mpType=page ***!
- \******************************************************************************/
- /*! no static exports found */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _login_vue_vue_type_template_id_5b26a3ac_mpType_page__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./login.vue?vue&type=template&id=5b26a3ac&mpType=page */ 8);\n/* harmony import */ var _login_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./login.vue?vue&type=script&lang=js&mpType=page */ 10);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _login_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_1__) if([\"default\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _login_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n/* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 27);\n\nvar renderjs\n\n\n\n\n/* normalize component */\n\nvar component = Object(_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(\n _login_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n _login_vue_vue_type_template_id_5b26a3ac_mpType_page__WEBPACK_IMPORTED_MODULE_0__[\"render\"],\n _login_vue_vue_type_template_id_5b26a3ac_mpType_page__WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"],\n false,\n null,\n null,\n null,\n false,\n _login_vue_vue_type_template_id_5b26a3ac_mpType_page__WEBPACK_IMPORTED_MODULE_0__[\"components\"],\n renderjs\n)\n\ncomponent.options.__file = \"pages/login/login.vue\"\n/* harmony default export */ __webpack_exports__[\"default\"] = (component.exports);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBNkg7QUFDN0g7QUFDb0U7QUFDTDs7O0FBRy9EO0FBQ3FMO0FBQ3JMLGdCQUFnQix5TEFBVTtBQUMxQixFQUFFLHNGQUFNO0FBQ1IsRUFBRSwyRkFBTTtBQUNSLEVBQUUsb0dBQWU7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEVBQUUsK0ZBQVU7QUFDWjtBQUNBOztBQUVBO0FBQ2UsZ0YiLCJmaWxlIjoiNy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zLCByZWN5Y2xhYmxlUmVuZGVyLCBjb21wb25lbnRzIH0gZnJvbSBcIi4vbG9naW4udnVlP3Z1ZSZ0eXBlPXRlbXBsYXRlJmlkPTViMjZhM2FjJm1wVHlwZT1wYWdlXCJcbnZhciByZW5kZXJqc1xuaW1wb3J0IHNjcmlwdCBmcm9tIFwiLi9sb2dpbi52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmbXBUeXBlPXBhZ2VcIlxuZXhwb3J0ICogZnJvbSBcIi4vbG9naW4udnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJm1wVHlwZT1wYWdlXCJcblxuXG4vKiBub3JtYWxpemUgY29tcG9uZW50ICovXG5pbXBvcnQgbm9ybWFsaXplciBmcm9tIFwiIS4uLy4uLy4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvdnVlLWxvYWRlci9saWIvcnVudGltZS9jb21wb25lbnROb3JtYWxpemVyLmpzXCJcbnZhciBjb21wb25lbnQgPSBub3JtYWxpemVyKFxuICBzY3JpcHQsXG4gIHJlbmRlcixcbiAgc3RhdGljUmVuZGVyRm5zLFxuICBmYWxzZSxcbiAgbnVsbCxcbiAgbnVsbCxcbiAgbnVsbCxcbiAgZmFsc2UsXG4gIGNvbXBvbmVudHMsXG4gIHJlbmRlcmpzXG4pXG5cbmNvbXBvbmVudC5vcHRpb25zLl9fZmlsZSA9IFwicGFnZXMvbG9naW4vbG9naW4udnVlXCJcbmV4cG9ydCBkZWZhdWx0IGNvbXBvbmVudC5leHBvcnRzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///7\n");
- /***/ }),
- /* 8 */
- /*!************************************************************************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/pages/login/login.vue?vue&type=template&id=5b26a3ac&mpType=page ***!
- \************************************************************************************************************/
- /*! exports provided: render, staticRenderFns, recyclableRender, components */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_login_vue_vue_type_template_id_5b26a3ac_mpType_page__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--11-0!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./login.vue?vue&type=template&id=5b26a3ac&mpType=page */ 9);
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_login_vue_vue_type_template_id_5b26a3ac_mpType_page__WEBPACK_IMPORTED_MODULE_0__["render"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_login_vue_vue_type_template_id_5b26a3ac_mpType_page__WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_login_vue_vue_type_template_id_5b26a3ac_mpType_page__WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_login_vue_vue_type_template_id_5b26a3ac_mpType_page__WEBPACK_IMPORTED_MODULE_0__["components"]; });
- /***/ }),
- /* 9 */
- /*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--11-0!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!D:/UserData/Desktop/w/UhfChengBangZi/pages/login/login.vue?vue&type=template&id=5b26a3ac&mpType=page ***!
- \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
- /*! exports provided: render, staticRenderFns, recyclableRender, components */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; });
- var components
- var render = function () {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "view",
- { staticClass: _vm._$s(0, "sc", "login"), attrs: { _i: 0 } },
- [
- _c(
- "view",
- { staticClass: _vm._$s(1, "sc", "content"), attrs: { _i: 1 } },
- [
- _c(
- "view",
- { staticClass: _vm._$s(2, "sc", "header"), attrs: { _i: 2 } },
- [
- _c("image", {
- attrs: {
- src: _vm._$s(3, "a-src", "../../static/123.png"),
- _i: 3,
- },
- }),
- ]
- ),
- _c(
- "view",
- { staticClass: _vm._$s(4, "sc", "main"), attrs: { _i: 4 } },
- [
- _c("wInput", {
- attrs: {
- type: "text",
- placeholder: "用户名",
- focus: _vm.isFocus,
- _i: 5,
- },
- model: {
- value: _vm._$s(5, "v-model", _vm.username),
- callback: function ($$v) {
- _vm.username = $$v
- },
- expression: "username",
- },
- }),
- _c("wInput", {
- attrs: { type: "text", placeholder: "登录密码", _i: 6 },
- model: {
- value: _vm._$s(6, "v-model", _vm.password),
- callback: function ($$v) {
- _vm.password = $$v
- },
- expression: "password",
- },
- }),
- ],
- 1
- ),
- _c("wButton", {
- staticClass: _vm._$s(7, "sc", "wbutton"),
- attrs: { text: "登 录", rotate: _vm.isRotate, _i: 7 },
- on: { click: _vm.startLogin },
- }),
- _c("view"),
- ],
- 1
- ),
- ]
- )
- }
- var recyclableRender = false
- var staticRenderFns = []
- render._withStripped = true
- /***/ }),
- /* 10 */
- /*!******************************************************************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/pages/login/login.vue?vue&type=script&lang=js&mpType=page ***!
- \******************************************************************************************************/
- /*! no static exports found */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_login_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--7-1!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/using-components.js!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./login.vue?vue&type=script&lang=js&mpType=page */ 11);\n/* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_login_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_login_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_login_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0__) if([\"default\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_login_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n /* harmony default export */ __webpack_exports__[\"default\"] = (_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_login_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0___default.a); //# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQW9uQixDQUFnQixzbkJBQUcsRUFBQyIsImZpbGUiOiIxMC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBtb2QgZnJvbSBcIi0hLi4vLi4vLi4vLi4vLi4vLi4vYW56aHVhbmdiYW8vSEJ1aWxkZXJYL3BsdWdpbnMvdW5pYXBwLWNsaS9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuLi8uLi8uLi8uLi8uLi8uLi9hbnpodWFuZ2Jhby9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3dlYnBhY2stcHJlcHJvY2Vzcy1sb2FkZXIvaW5kZXguanM/P3JlZi0tNy0xIS4uLy4uLy4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvd2VicGFjay11bmktYXBwLWxvYWRlci91c2luZy1jb21wb25lbnRzLmpzIS4uLy4uLy4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL2xvZ2luLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZtcFR5cGU9cGFnZVwiOyBleHBvcnQgZGVmYXVsdCBtb2Q7IGV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL2JhYmVsLWxvYWRlci9saWIvaW5kZXguanMhLi4vLi4vLi4vLi4vLi4vLi4vYW56aHVhbmdiYW8vSEJ1aWxkZXJYL3BsdWdpbnMvdW5pYXBwLWNsaS9ub2RlX21vZHVsZXMvQGRjbG91ZGlvL3Z1ZS1jbGktcGx1Z2luLXVuaS9wYWNrYWdlcy93ZWJwYWNrLXByZXByb2Nlc3MtbG9hZGVyL2luZGV4LmpzPz9yZWYtLTctMSEuLi8uLi8uLi8uLi8uLi8uLi9hbnpodWFuZ2Jhby9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3dlYnBhY2stdW5pLWFwcC1sb2FkZXIvdXNpbmctY29tcG9uZW50cy5qcyEuLi8uLi8uLi8uLi8uLi8uLi9hbnpodWFuZ2Jhby9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9sb2dpbi52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmbXBUeXBlPXBhZ2VcIiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///10\n");
- /***/ }),
- /* 11 */
- /*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--7-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/using-components.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!D:/UserData/Desktop/w/UhfChengBangZi/pages/login/login.vue?vue&type=script&lang=js&mpType=page ***!
- \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- eval("/* WEBPACK VAR INJECTION */(function(wx, __f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _watchInput = _interopRequireDefault(__webpack_require__(/*! ../../components/watch-login/watch-input.vue */ 22));\nvar _watchButton = _interopRequireDefault(__webpack_require__(/*! ../../components/watch-login/watch-button.vue */ 28));\nvar _index = _interopRequireDefault(__webpack_require__(/*! ../../api/index */ 33));\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nvar _self;\nvar code;\nvar _default = {\n data: function data() {\n return {\n logoImage: '',\n username: 'admin',\n //用户/电话\n password: '1111111',\n //密码\n isRotate: false,\n //是否加载旋转\n isFocus: true // 是否聚焦\n };\n },\n\n components: {\n wInput: _watchInput.default,\n wButton: _watchButton.default\n },\n mounted: function mounted() {},\n onLoad: function onLoad() {\n _self = this;\n _self.isLogin();\n wx.login({\n success: function success(res) {\n if (res.code) {\n code = res.code;\n }\n }\n });\n },\n methods: {\n isLogin: function isLogin() {\n //判断缓存中是否登录过,直接登录\n try {\n var token = uni.getStorageSync('equipment_token');\n var equipmentManage = uni.getStorageSync('equipment_manage');\n if (token) {\n //有登录信息\n getApp().globalData.token = token;\n getApp().globalData.equipmentManage = equipmentManage;\n var eventChannel = _self.getOpenerEventChannel();\n eventChannel.emit('isLoginFromLogin', {\n isLogin: true\n });\n uni.$emit('loginStatusEvent', {\n isLogin: true\n });\n }\n } catch (e) {\n // error\n }\n },\n startLogin: function startLogin(e) {\n //登录\n if (_self.isRotate) {\n //判断是否加载中,避免重复点击请求\n return false;\n }\n if (_self.username.length == \"\") {\n uni.showToast({\n title: '用户名不能为空',\n icon: 'none',\n position: 'center'\n });\n return;\n }\n if (_self.password.length < 5) {\n uni.showToast({\n title: '登录密码不正确',\n icon: 'none',\n position: 'center'\n });\n return;\n }\n _self.isRotate = true;\n uni.showLoading({\n title: '登录中.....'\n });\n uni.request({\n url: _index.default.Login,\n method: 'POST',\n data: {\n username: _self.username,\n password: _self.password\n },\n header: {\n 'content-type': 'application/json'\n },\n success: function success(res) {\n uni.hideLoading();\n _self.isRotate = false;\n __f__(\"log\", '登录用户响应返回数据信息:', res.data, \" at pages/login/login.vue:119\");\n\n // 检查响应是否有效\n if (!res.data) {\n _self.password = '';\n __f__(\"error\", '登录失败: 响应数据为空', \" at pages/login/login.vue:124\");\n uni.showToast({\n title: '登录失败: 服务器响应异常',\n icon: 'none',\n position: 'center'\n });\n return;\n }\n\n // 处理JSON响应\n var responseData = res.data;\n\n // 统一转换为对象格式(如果是字符串的话)\n if (typeof responseData === 'string') {\n try {\n responseData = JSON.parse(responseData);\n } catch (e) {\n __f__(\"error\", '解析响应数据失败:', e, \" at pages/login/login.vue:141\");\n uni.showToast({\n title: '登录失败: 服务器返回格式错误',\n icon: 'none',\n position: 'center'\n });\n return;\n }\n }\n\n // 根据code判断登录是否成功\n // 登录成功后增加本地存储\n if (responseData.code === 0 && responseData.msg === '登录成功') {\n // 登录成功,提取用户信息、token和过期时间\n var userInfo = responseData.data.user || {};\n var ID = userInfo.id || '';\n var token = responseData.data.token || '';\n var expireAt = responseData.data.expiresAt || '';\n var building = userInfo.building || '';\n var room = userInfo.room || '';\n var pen = userInfo.pen || '';\n\n // 设置全局登录状态和信息\n var app = getApp();\n // 确保globalData对象存在\n if (!app.globalData) {\n app.globalData = {};\n }\n\n // 统一设置全局数据\n app.globalData.ID = ID;\n app.globalData.token = token;\n app.globalData.userInfo = userInfo;\n app.globalData.isLoggedIn = true;\n app.globalData.expireAt = expireAt;\n // 设置全局数据\n app.globalData.building = building; // 栋舍编号\n app.globalData.room = room; // 房间编号\n app.globalData.pen = pen; // 栏位编号\n app.globalData.buildingName = building;\n app.globalData.roomName = room;\n app.globalData.penNo = pen;\n app.globalData.equipment_manage = '';\n\n // 持久化到本地存储,确保应用重启后仍能保留登录状态\n try {\n uni.setStorageSync('equipment_token', token);\n uni.setStorageSync('token_expire_time', expireAt);\n uni.setStorageSync('user_info', userInfo);\n uni.setStorageSync('building', building);\n uni.setStorageSync('room', room);\n uni.setStorageSync('pen', pen);\n __f__(\"log\", '登录信息已保存到本地存储', \" at pages/login/login.vue:193\");\n } catch (e) {\n __f__(\"error\", '保存登录信息到本地存储失败:', e, \" at pages/login/login.vue:195\");\n }\n\n // 触发登录状态更新事件\n uni.$emit('loginStatusEvent', {\n isLogin: true\n });\n setTimeout(function () {\n // 登录成功后跳转到首页,避免直接跳到个人中心导致页面切换问题\n uni.switchTab({\n url: '/pages/index/index',\n success: function success(res) {\n __f__(\"log\", '跳转到首页成功:', res, \" at pages/login/login.vue:208\");\n // 跳转成功后,通知首页加载用户编号信息\n uni.$emit('reloadUserSettings', {});\n },\n fail: function fail(err) {\n __f__(\"error\", '跳转到首页失败:', err, \" at pages/login/login.vue:213\");\n // 如果switchTab失败,尝试使用redirectTo作为备选方案\n if (err.errMsg && err.errMsg.includes('tabBar')) {\n __f__(\"warn\", 'switchTab失败,尝试使用redirectTo', \" at pages/login/login.vue:216\");\n uni.redirectTo({\n url: '/pages/index/index',\n success: function success(res) {\n __f__(\"log\", 'redirectTo到首页成功:', res, \" at pages/login/login.vue:220\");\n uni.$emit('reloadUserSettings', {});\n },\n fail: function fail(redirectErr) {\n __f__(\"error\", 'redirectTo到首页也失败:', redirectErr, \" at pages/login/login.vue:224\");\n uni.showToast({\n title: '跳转失败,请手动进入首页',\n icon: 'none'\n });\n }\n });\n }\n }\n });\n }, 500);\n } else {\n var errorMsg = responseData.msg || '登录失败';\n __f__(\"log\", '登录失败:', errorMsg, res, \" at pages/login/login.vue:237\");\n uni.showToast({\n title: errorMsg,\n icon: 'none',\n position: 'center'\n });\n }\n },\n fail: function fail(err) {\n __f__(\"error\", '登录请求失败:', err, \" at pages/login/login.vue:246\");\n uni.hideLoading();\n _self.isRotate = false;\n uni.showToast({\n title: '网络异常,请检查网络连接',\n icon: 'none',\n position: 'center'\n });\n }\n });\n },\n login_weixin: function login_weixin() {\n //微信登录\n uni.showToast({\n icon: 'none',\n position: 'bottom',\n title: '...'\n });\n },\n forget: function forget() {\n uni.showModal({\n title: '提示',\n content: '请联系系统管理员',\n showCancel: false,\n confirmText: '知道了',\n confirmColor: '#333333'\n });\n }\n }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! @dcloudio/uni-mp-weixin/dist/mp.js */ 12)[\"default\"], __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 21)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvbG9naW4vbG9naW4udnVlIl0sIm5hbWVzIjpbImRhdGEiLCJsb2dvSW1hZ2UiLCJ1c2VybmFtZSIsInBhc3N3b3JkIiwiaXNSb3RhdGUiLCJpc0ZvY3VzIiwiY29tcG9uZW50cyIsIndJbnB1dCIsIndCdXR0b24iLCJtb3VudGVkIiwib25Mb2FkIiwiX3NlbGYiLCJ3eCIsInN1Y2Nlc3MiLCJjb2RlIiwibWV0aG9kcyIsImlzTG9naW4iLCJnZXRBcHAiLCJldmVudENoYW5uZWwiLCJ1bmkiLCJzdGFydExvZ2luIiwidGl0bGUiLCJpY29uIiwicG9zaXRpb24iLCJ1cmwiLCJtZXRob2QiLCJoZWFkZXIiLCJyZXNwb25zZURhdGEiLCJhcHAiLCJzZXRUaW1lb3V0IiwiZmFpbCIsImxvZ2luX3dlaXhpbiIsImZvcmdldCIsImNvbnRlbnQiLCJzaG93Q2FuY2VsIiwiY29uZmlybVRleHQiLCJjb25maXJtQ29sb3IiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFtQkE7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBO0FBQ0E7QUFBQSxlQUNBO0VBQ0FBO0lBQ0E7TUFDQUM7TUFDQUM7TUFBQTtNQUNBQztNQUFBO01BQ0FDO01BQUE7TUFDQUM7SUFDQTtFQUNBOztFQUNBQztJQUNBQztJQUNBQztFQUNBO0VBQ0FDLDZCQUVBO0VBQ0FDO0lBQ0FDO0lBQ0FBO0lBRUFDO01BQ0FDO1FBQ0E7VUFDQUM7UUFDQTtNQUNBO0lBQ0E7RUFDQTtFQUNBQztJQUNBQztNQUNBO01BQ0E7UUFDQTtRQUNBO1FBQ0E7VUFDQTtVQUNBQztVQUNBQTtVQUNBO1VBQ0FDO1lBQ0FGO1VBQ0E7VUFFQUc7WUFDQUg7VUFDQTtRQUNBO01BQ0E7UUFDQTtNQUFBO0lBRUE7SUFDQUk7TUFDQTtNQUNBO1FBQ0E7UUFDQTtNQUNBO01BRUE7UUFDQUQ7VUFDQUU7VUFDQUM7VUFDQUM7UUFDQTtRQUNBO01BQ0E7TUFDQTtRQUNBSjtVQUNBRTtVQUNBQztVQUNBQztRQUNBO1FBQ0E7TUFDQTtNQUVBWjtNQUNBUTtRQUNBRTtNQUNBO01BRUFGO1FBQ0FLO1FBQ0FDO1FBQ0F6QjtVQUNBRTtVQUNBQztRQUNBO1FBQ0F1QjtVQUNBO1FBQ0E7UUFDQWI7VUFDQU07VUFDQVI7VUFDQTs7VUFFQTtVQUNBO1lBQ0FBO1lBQ0E7WUFDQVE7Y0FDQUU7Y0FDQUM7Y0FDQUM7WUFDQTtZQUNBO1VBQ0E7O1VBRUE7VUFDQTs7VUFFQTtVQUNBO1lBQ0E7Y0FDQUk7WUFDQTtjQUNBO2NBQ0FSO2dCQUNBRTtnQkFDQUM7Z0JBQ0FDO2NBQ0E7Y0FDQTtZQUNBO1VBQ0E7O1VBRUE7VUFDQTtVQUNBO1lBQ0E7WUFDQTtZQUNBO1lBQ0E7WUFDQTtZQUNBO1lBQ0E7WUFDQTs7WUFFQTtZQUNBO1lBQ0E7WUFDQTtjQUNBSztZQUNBOztZQUVBO1lBQ0FBO1lBQ0FBO1lBQ0FBO1lBQ0FBO1lBQ0FBO1lBQ0E7WUFDQUE7WUFDQUE7WUFDQUE7WUFDQUE7WUFDQUE7WUFDQUE7WUFDQUE7O1lBRUE7WUFDQTtjQUNBVDtjQUNBQTtjQUNBQTtjQUNBQTtjQUNBQTtjQUNBQTtjQUNBO1lBQ0E7Y0FDQTtZQUNBOztZQUVBO1lBQ0FBO2NBQ0FIO1lBQ0E7WUFFQWE7Y0FDQTtjQUNBVjtnQkFDQUs7Z0JBQ0FYO2tCQUNBO2tCQUNBO2tCQUNBTTtnQkFDQTtnQkFDQVc7a0JBQ0E7a0JBQ0E7a0JBQ0E7b0JBQ0E7b0JBQ0FYO3NCQUNBSztzQkFDQVg7d0JBQ0E7d0JBQ0FNO3NCQUNBO3NCQUNBVzt3QkFDQTt3QkFDQVg7MEJBQ0FFOzBCQUNBQzt3QkFDQTtzQkFDQTtvQkFDQTtrQkFDQTtnQkFDQTtjQUNBO1lBQ0E7VUFDQTtZQUNBO1lBQ0E7WUFDQUg7Y0FDQUU7Y0FDQUM7Y0FDQUM7WUFDQTtVQUNBO1FBQ0E7UUFDQU87VUFDQTtVQUNBWDtVQUNBUjtVQUNBUTtZQUNBRTtZQUNBQztZQUNBQztVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBQ0FRO01BQ0E7TUFDQVo7UUFDQUc7UUFDQUM7UUFDQUY7TUFDQTtJQUNBO0lBQ0FXO01BQ0FiO1FBQ0FFO1FBQ0FZO1FBQ0FDO1FBQ0FDO1FBQ0FDO01BQ0E7SUFDQTtFQUNBO0FBQ0E7QUFBQSwyQiIsImZpbGUiOiIxMS5qcyIsInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cclxuXHQ8dmlldyBjbGFzcz1cImxvZ2luXCI+XHJcblx0XHQ8dmlldyBjbGFzcz1cImNvbnRlbnRcIj5cclxuXHRcdFx0PCEtLSDlpLTpg6hsb2dvIC0tPlxyXG5cdFx0XHQ8dmlldyBjbGFzcz1cImhlYWRlclwiPlxyXG5cdFx0XHRcdDxpbWFnZSA6c3JjPVwiYC4uLy4uL3N0YXRpYy8xMjMucG5nYFwiPjwvaW1hZ2U+XHJcblx0XHRcdDwvdmlldz5cclxuXHRcdFx0PCEtLSDkuLvkvZPooajljZUgLS0+XHJcblx0XHRcdDx2aWV3IGNsYXNzPVwibWFpblwiPlxyXG5cdFx0XHRcdDx3SW5wdXQgdi1tb2RlbD1cInVzZXJuYW1lXCIgdHlwZT1cInRleHRcIiBwbGFjZWhvbGRlcj1cIueUqOaIt+WQjVwiIDpmb2N1cz1cImlzRm9jdXNcIj48L3dJbnB1dD5cclxuXHRcdFx0XHQ8d0lucHV0IHYtbW9kZWw9XCJwYXNzd29yZFwiIHR5cGU9XCJ0ZXh0XCIgcGxhY2Vob2xkZXI9XCLnmbvlvZXlr4bnoIFcIj48L3dJbnB1dD5cclxuXHRcdFx0PC92aWV3PlxyXG5cdFx0XHQ8d0J1dHRvbiBjbGFzcz1cIndidXR0b25cIiB0ZXh0PVwi55m7IOW9lVwiIDpyb3RhdGU9XCJpc1JvdGF0ZVwiIEBjbGljaz1cInN0YXJ0TG9naW5cIj48L3dCdXR0b24+XHJcblx0XHRcdDx2aWV3IHN0eWxlPVwiaGVpZ2h0OiAxMDBycHg7XCI+PC92aWV3PlxyXG5cdFx0PC92aWV3PlxyXG5cdDwvdmlldz5cclxuPC90ZW1wbGF0ZT5cclxuXHJcbjxzY3JpcHQ+XHJcbmltcG9ydCB3SW5wdXQgZnJvbSAnLi4vLi4vY29tcG9uZW50cy93YXRjaC1sb2dpbi93YXRjaC1pbnB1dC52dWUnXHJcbmltcG9ydCB3QnV0dG9uIGZyb20gJy4uLy4uL2NvbXBvbmVudHMvd2F0Y2gtbG9naW4vd2F0Y2gtYnV0dG9uLnZ1ZSdcclxuaW1wb3J0IEFQSSBmcm9tICcuLi8uLi9hcGkvaW5kZXgnXHJcbnZhciBfc2VsZlxyXG52YXIgY29kZVxyXG5cdGV4cG9ydCBkZWZhdWx0IHtcclxuXHRcdGRhdGEoKSB7XHJcblx0XHRcdHJldHVybiB7XHJcblx0XHRcdFx0bG9nb0ltYWdlOicnLFxyXG5cdFx0XHRcdHVzZXJuYW1lOiAnYWRtaW4nLCAvL+eUqOaIty/nlLXor51cclxuXHRcdFx0XHRwYXNzd29yZDogJzExMTExMTEnLCAvL+WvhueggVxyXG5cdFx0XHRcdGlzUm90YXRlOiBmYWxzZSwgLy/mmK/lkKbliqDovb3ml4vovaxcclxuXHRcdFx0XHRpc0ZvY3VzOiB0cnVlIC8vIOaYr+WQpuiBmueEplxyXG5cdFx0XHR9O1xyXG5cdFx0fSxcclxuXHRcdGNvbXBvbmVudHM6IHtcclxuXHRcdFx0d0lucHV0LFxyXG5cdFx0XHR3QnV0dG9uLFxyXG5cdFx0fSxcclxuXHRcdG1vdW50ZWQoKSB7XHJcblxyXG5cdFx0fSxcclxuXHRcdG9uTG9hZCgpIHtcclxuXHRcdFx0X3NlbGYgPSB0aGlzXHJcblx0XHRcdF9zZWxmLmlzTG9naW4oKVxyXG5cclxuXHRcdFx0d3gubG9naW4oe1xyXG5cdFx0XHRcdHN1Y2Nlc3MocmVzKSB7XHJcblx0XHRcdFx0XHRpZiAocmVzLmNvZGUpIHtcclxuXHRcdFx0XHRcdFx0Y29kZSA9IHJlcy5jb2RlXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9KVxyXG5cdFx0fSxcclxuXHRcdG1ldGhvZHM6IHtcclxuXHRcdFx0aXNMb2dpbigpIHtcclxuXHRcdFx0XHQvL+WIpOaWree8k+WtmOS4reaYr+WQpueZu+W9lei/h++8jOebtOaOpeeZu+W9lVxyXG5cdFx0XHRcdHRyeSB7XHJcblx0XHRcdFx0XHRjb25zdCB0b2tlbiA9IHVuaS5nZXRTdG9yYWdlU3luYygnZXF1aXBtZW50X3Rva2VuJyk7XHJcblx0XHRcdFx0XHRjb25zdCBlcXVpcG1lbnRNYW5hZ2UgPSB1bmkuZ2V0U3RvcmFnZVN5bmMoJ2VxdWlwbWVudF9tYW5hZ2UnKTtcclxuXHRcdFx0XHRcdGlmICh0b2tlbikge1xyXG5cdFx0XHRcdFx0XHQvL+acieeZu+W9leS/oeaBr1xyXG5cdFx0XHRcdFx0XHRnZXRBcHAoKS5nbG9iYWxEYXRhLnRva2VuID0gdG9rZW5cclxuXHRcdFx0XHRcdFx0Z2V0QXBwKCkuZ2xvYmFsRGF0YS5lcXVpcG1lbnRNYW5hZ2UgPSBlcXVpcG1lbnRNYW5hZ2VcclxuXHRcdFx0XHRcdFx0Y29uc3QgZXZlbnRDaGFubmVsID0gX3NlbGYuZ2V0T3BlbmVyRXZlbnRDaGFubmVsKClcclxuXHRcdFx0XHRcdFx0ZXZlbnRDaGFubmVsLmVtaXQoJ2lzTG9naW5Gcm9tTG9naW4nLCB7XHJcblx0XHRcdFx0XHRcdFx0aXNMb2dpbjogdHJ1ZVxyXG5cdFx0XHRcdFx0XHR9KVxyXG5cclxuXHRcdFx0XHRcdFx0dW5pLiRlbWl0KCdsb2dpblN0YXR1c0V2ZW50Jywge1xyXG5cdFx0XHRcdFx0XHRcdGlzTG9naW46IHRydWVcclxuXHRcdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9IGNhdGNoIChlKSB7XHJcblx0XHRcdFx0XHQvLyBlcnJvclxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSxcclxuXHRcdFx0c3RhcnRMb2dpbihlKSB7XHJcblx0XHRcdFx0Ly/nmbvlvZVcclxuXHRcdFx0XHRpZiAoX3NlbGYuaXNSb3RhdGUpIHtcclxuXHRcdFx0XHRcdC8v5Yik5pat5piv5ZCm5Yqg6L295Lit77yM6YG/5YWN6YeN5aSN54K55Ye76K+35rGCXHJcblx0XHRcdFx0XHRyZXR1cm4gZmFsc2VcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdGlmIChfc2VsZi51c2VybmFtZS5sZW5ndGggPT0gXCJcIikge1xyXG5cdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7XHJcblx0XHRcdFx0XHRcdHRpdGxlOiAn55So5oi35ZCN5LiN6IO95Li656m6JyxcclxuXHRcdFx0XHRcdFx0aWNvbjogJ25vbmUnLFxyXG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogJ2NlbnRlcidcclxuXHRcdFx0XHRcdH0pXHJcblx0XHRcdFx0XHRyZXR1cm5cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aWYgKF9zZWxmLnBhc3N3b3JkLmxlbmd0aCA8IDUpIHtcclxuXHRcdFx0XHRcdHVuaS5zaG93VG9hc3Qoe1xyXG5cdFx0XHRcdFx0XHR0aXRsZTogJ+eZu+W9leWvhueggeS4jeato+ehricsXHJcblx0XHRcdFx0XHRcdGljb246ICdub25lJyxcclxuXHRcdFx0XHRcdFx0cG9zaXRpb246ICdjZW50ZXInXHJcblx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdFx0cmV0dXJuXHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRfc2VsZi5pc1JvdGF0ZSA9IHRydWVcclxuXHRcdFx0XHR1bmkuc2hvd0xvYWRpbmcoe1xyXG5cdFx0XHRcdFx0dGl0bGU6ICfnmbvlvZXkuK0uLi4uLidcclxuXHRcdFx0XHR9KVxyXG5cclxuXHRcdFx0XHR1bmkucmVxdWVzdCh7XHJcblx0XHRcdFx0XHR1cmw6IEFQSS5Mb2dpbixcclxuXHRcdFx0XHRcdG1ldGhvZDogJ1BPU1QnLFxyXG5cdFx0XHRcdFx0ZGF0YToge1xyXG5cdFx0XHRcdFx0XHR1c2VybmFtZTogX3NlbGYudXNlcm5hbWUsXHJcblx0XHRcdFx0XHRcdHBhc3N3b3JkOiBfc2VsZi5wYXNzd29yZFxyXG5cdFx0XHRcdFx0fSxcclxuXHRcdFx0XHRcdGhlYWRlcjoge1xyXG5cdFx0XHRcdFx0XHQnY29udGVudC10eXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nXHJcblx0XHRcdFx0XHR9LFxyXG5cdFx0XHRcdFx0c3VjY2VzczogKHJlcykgPT4ge1xyXG5cdFx0XHRcdFx0XHR1bmkuaGlkZUxvYWRpbmcoKVxyXG5cdFx0XHRcdFx0XHRfc2VsZi5pc1JvdGF0ZSA9IGZhbHNlXHJcblx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKCfnmbvlvZXnlKjmiLflk43lupTov5Tlm57mlbDmja7kv6Hmga86JywgcmVzLmRhdGEpO1xyXG5cclxuXHRcdFx0XHRcdFx0Ly8g5qOA5p+l5ZON5bqU5piv5ZCm5pyJ5pWIXHJcblx0XHRcdFx0XHRcdGlmICghcmVzLmRhdGEpIHtcclxuXHRcdFx0XHRcdFx0XHRfc2VsZi5wYXNzd29yZCA9ICcnXHJcblx0XHRcdFx0XHRcdFx0Y29uc29sZS5lcnJvcign55m75b2V5aSx6LSlOiDlk43lupTmlbDmja7kuLrnqbonKTtcclxuXHRcdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHRcdFx0XHRcdHRpdGxlOiAn55m75b2V5aSx6LSlOiDmnI3liqHlmajlk43lupTlvILluLgnLFxyXG5cdFx0XHRcdFx0XHRcdFx0aWNvbjogJ25vbmUnLFxyXG5cdFx0XHRcdFx0XHRcdFx0cG9zaXRpb246ICdjZW50ZXInXHJcblx0XHRcdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdFx0XHRyZXR1cm47XHJcblx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdC8vIOWkhOeQhkpTT07lk43lupRcclxuXHRcdFx0XHRcdFx0bGV0IHJlc3BvbnNlRGF0YSA9IHJlcy5kYXRhO1xyXG5cdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdFx0Ly8g57uf5LiA6L2s5o2i5Li65a+56LGh5qC85byP77yI5aaC5p6c5piv5a2X56ym5Liy55qE6K+d77yJXHJcblx0XHRcdFx0XHRcdGlmICh0eXBlb2YgcmVzcG9uc2VEYXRhID09PSAnc3RyaW5nJykge1xyXG5cdFx0XHRcdFx0XHRcdHRyeSB7XHJcblx0XHRcdFx0XHRcdFx0XHRyZXNwb25zZURhdGEgPSBKU09OLnBhcnNlKHJlc3BvbnNlRGF0YSk7XHJcblx0XHRcdFx0XHRcdFx0fSBjYXRjaCAoZSkge1xyXG5cdFx0XHRcdFx0XHRcdFx0Y29uc29sZS5lcnJvcign6Kej5p6Q5ZON5bqU5pWw5o2u5aSx6LSlOicsIGUpO1xyXG5cdFx0XHRcdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7XHJcblx0XHRcdFx0XHRcdFx0XHRcdHRpdGxlOiAn55m75b2V5aSx6LSlOiDmnI3liqHlmajov5Tlm57moLzlvI/plJnor68nLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRpY29uOiAnbm9uZScsXHJcblx0XHRcdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiAnY2VudGVyJ1xyXG5cdFx0XHRcdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdFx0XHRcdHJldHVybjtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdC8vIOagueaNrmNvZGXliKTmlq3nmbvlvZXmmK/lkKbmiJDlip9cclxuXHRcdFx0XHRcdFx0Ly8g55m75b2V5oiQ5Yqf5ZCO5aKe5Yqg5pys5Zyw5a2Y5YKoXHJcblx0XHRcdFx0XHRcdGlmIChyZXNwb25zZURhdGEuY29kZSA9PT0gMCAmJiByZXNwb25zZURhdGEubXNnID09PSAn55m75b2V5oiQ5YqfJykge1xyXG5cdFx0XHRcdFx0XHRcdC8vIOeZu+W9leaIkOWKn++8jOaPkOWPlueUqOaIt+S/oeaBr+OAgXRva2Vu5ZKM6L+H5pyf5pe26Ze0XHJcblx0XHRcdFx0XHRcdFx0Y29uc3QgdXNlckluZm8gPSByZXNwb25zZURhdGEuZGF0YS51c2VyIHx8IHt9O1xyXG5cdFx0XHRcdFx0XHRcdGNvbnN0IElEID0gdXNlckluZm8uaWQgfHwgJyc7XHJcblx0XHRcdFx0XHRcdFx0Y29uc3QgdG9rZW4gPSByZXNwb25zZURhdGEuZGF0YS50b2tlbiB8fCAnJztcclxuXHRcdFx0XHRcdFx0XHRjb25zdCBleHBpcmVBdCA9IHJlc3BvbnNlRGF0YS5kYXRhLmV4cGlyZXNBdCB8fCAnJztcclxuXHRcdFx0XHRcdFx0XHRjb25zdCBidWlsZGluZyA9IHVzZXJJbmZvLmJ1aWxkaW5nIHx8ICcnO1xyXG5cdFx0XHRcdFx0XHRcdGNvbnN0IHJvb20gPSB1c2VySW5mby5yb29tIHx8ICcnO1xyXG5cdFx0XHRcdFx0XHRcdGNvbnN0IHBlbiA9IHVzZXJJbmZvLnBlbiB8fCAnJztcclxuXHRcdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdFx0XHQvLyDorr7nva7lhajlsYDnmbvlvZXnirbmgIHlkozkv6Hmga9cclxuXHRcdFx0XHRcdFx0XHRjb25zdCBhcHAgPSBnZXRBcHAoKTtcclxuXHRcdFx0XHRcdFx0XHQvLyDnoa7kv51nbG9iYWxEYXRh5a+56LGh5a2Y5ZyoXHJcblx0XHRcdFx0XHRcdFx0aWYgKCFhcHAuZ2xvYmFsRGF0YSkge1xyXG5cdFx0XHRcdFx0XHRcdCAgYXBwLmdsb2JhbERhdGEgPSB7fTtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRcdFx0Ly8g57uf5LiA6K6+572u5YWo5bGA5pWw5o2uXHJcblx0XHRcdFx0XHRcdFx0YXBwLmdsb2JhbERhdGEuSUQgPSBJRDtcclxuXHRcdFx0XHRcdFx0XHRhcHAuZ2xvYmFsRGF0YS50b2tlbiA9IHRva2VuO1xyXG5cdFx0XHRcdFx0XHRcdGFwcC5nbG9iYWxEYXRhLnVzZXJJbmZvID0gdXNlckluZm87XHJcblx0XHRcdFx0XHRcdFx0YXBwLmdsb2JhbERhdGEuaXNMb2dnZWRJbiA9IHRydWU7XHJcblx0XHRcdFx0XHRcdFx0YXBwLmdsb2JhbERhdGEuZXhwaXJlQXQgPSBleHBpcmVBdDtcclxuXHRcdFx0XHRcdFx0XHQvLyDorr7nva7lhajlsYDmlbDmja5cclxuXHRcdFx0XHRcdFx0XHRhcHAuZ2xvYmFsRGF0YS5idWlsZGluZyA9IGJ1aWxkaW5nOyAvLyDmoIvoiI3nvJblj7dcclxuXHRcdFx0XHRcdFx0XHRhcHAuZ2xvYmFsRGF0YS5yb29tID0gcm9vbTsgICAgICAgLy8g5oi/6Ze057yW5Y+3XHJcblx0XHRcdFx0XHRcdFx0YXBwLmdsb2JhbERhdGEucGVuID0gcGVuOyAgICAgICAgIC8vIOagj+S9jee8luWPt1xyXG5cdFx0XHRcdFx0XHRcdGFwcC5nbG9iYWxEYXRhLmJ1aWxkaW5nTmFtZSA9IGJ1aWxkaW5nO1xyXG5cdFx0XHRcdFx0XHRcdGFwcC5nbG9iYWxEYXRhLnJvb21OYW1lID0gcm9vbTtcclxuXHRcdFx0XHRcdFx0XHRhcHAuZ2xvYmFsRGF0YS5wZW5ObyA9IHBlbjtcclxuXHRcdFx0XHRcdFx0XHRhcHAuZ2xvYmFsRGF0YS5lcXVpcG1lbnRfbWFuYWdlID0gJyc7XHJcblx0XHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0XHRcdC8vIOaMgeS5heWMluWIsOacrOWcsOWtmOWCqO+8jOehruS/neW6lOeUqOmHjeWQr+WQjuS7jeiDveS/neeVmeeZu+W9leeKtuaAgVxyXG5cdFx0XHRcdFx0XHRcdHRyeSB7XHJcblx0XHRcdFx0XHRcdFx0ICB1bmkuc2V0U3RvcmFnZVN5bmMoJ2VxdWlwbWVudF90b2tlbicsIHRva2VuKTtcclxuXHRcdFx0XHRcdFx0XHQgIHVuaS5zZXRTdG9yYWdlU3luYygndG9rZW5fZXhwaXJlX3RpbWUnLCBleHBpcmVBdCk7XHJcblx0XHRcdFx0XHRcdFx0ICB1bmkuc2V0U3RvcmFnZVN5bmMoJ3VzZXJfaW5mbycsIHVzZXJJbmZvKTtcclxuXHRcdFx0XHRcdFx0XHQgIHVuaS5zZXRTdG9yYWdlU3luYygnYnVpbGRpbmcnLCBidWlsZGluZyk7XHJcblx0XHRcdFx0XHRcdFx0ICB1bmkuc2V0U3RvcmFnZVN5bmMoJ3Jvb20nLCByb29tKTtcclxuXHRcdFx0XHRcdFx0XHQgIHVuaS5zZXRTdG9yYWdlU3luYygncGVuJywgcGVuKTtcclxuXHRcdFx0XHRcdFx0XHQgIGNvbnNvbGUubG9nKCfnmbvlvZXkv6Hmga/lt7Lkv53lrZjliLDmnKzlnLDlrZjlgqgnKTtcclxuXHRcdFx0XHRcdFx0XHR9IGNhdGNoIChlKSB7XHJcblx0XHRcdFx0XHRcdFx0ICBjb25zb2xlLmVycm9yKCfkv53lrZjnmbvlvZXkv6Hmga/liLDmnKzlnLDlrZjlgqjlpLHotKU6JywgZSk7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdFx0XHQvLyDop6blj5HnmbvlvZXnirbmgIHmm7TmlrDkuovku7ZcclxuXHRcdFx0XHRcdFx0XHR1bmkuJGVtaXQoJ2xvZ2luU3RhdHVzRXZlbnQnLCB7XHJcblx0XHRcdFx0XHRcdFx0ICBpc0xvZ2luOiB0cnVlXHJcblx0XHRcdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRcdFx0c2V0VGltZW91dChmdW5jdGlvbigpIHtcclxuXHRcdFx0XHRcdFx0XHQgIC8vIOeZu+W9leaIkOWKn+WQjui3s+i9rOWIsOmmlumhte+8jOmBv+WFjeebtOaOpei3s+WIsOS4quS6uuS4reW/g+WvvOiHtOmhtemdouWIh+aNoumXrumimFxyXG5cdFx0XHRcdFx0XHRcdCAgdW5pLnN3aXRjaFRhYih7XHJcblx0XHRcdFx0XHRcdFx0ICAgIHVybDogJy9wYWdlcy9pbmRleC9pbmRleCcsXHJcblx0XHRcdFx0XHRcdFx0ICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uKHJlcykge1xyXG5cdFx0XHRcdFx0XHRcdCAgICAgIGNvbnNvbGUubG9nKCfot7PovazliLDpppbpobXmiJDlip86JywgcmVzKTtcclxuXHRcdFx0XHRcdFx0XHQgICAgICAvLyDot7PovazmiJDlip/lkI7vvIzpgJrnn6XpppbpobXliqDovb3nlKjmiLfnvJblj7fkv6Hmga9cclxuXHRcdFx0XHRcdFx0XHQgICAgICB1bmkuJGVtaXQoJ3JlbG9hZFVzZXJTZXR0aW5ncycsIHt9KTtcclxuXHRcdFx0XHRcdFx0XHQgICAgfSxcclxuXHRcdFx0XHRcdFx0XHQgICAgZmFpbDogZnVuY3Rpb24oZXJyKSB7XHJcblx0XHRcdFx0XHRcdFx0ICAgICAgY29uc29sZS5lcnJvcign6Lez6L2s5Yiw6aaW6aG15aSx6LSlOicsIGVycik7XHJcblx0XHRcdFx0XHRcdFx0ICAgICAgLy8g5aaC5p6cc3dpdGNoVGFi5aSx6LSl77yM5bCd6K+V5L2/55SocmVkaXJlY3RUb+S9nOS4uuWkh+mAieaWueahiFxyXG5cdFx0XHRcdFx0XHRcdCAgICAgIGlmIChlcnIuZXJyTXNnICYmIGVyci5lcnJNc2cuaW5jbHVkZXMoJ3RhYkJhcicpKSB7XHJcblx0XHRcdFx0XHRcdFx0ICAgICAgICBjb25zb2xlLndhcm4oJ3N3aXRjaFRhYuWksei0pe+8jOWwneivleS9v+eUqHJlZGlyZWN0VG8nKTtcclxuXHRcdFx0XHRcdFx0XHQgICAgICAgIHVuaS5yZWRpcmVjdFRvKHtcclxuXHRcdFx0XHRcdFx0XHQgICAgICAgICAgdXJsOiAnL3BhZ2VzL2luZGV4L2luZGV4JyxcclxuXHRcdFx0XHRcdFx0XHQgICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24ocmVzKSB7XHJcblx0XHRcdFx0XHRcdFx0ICAgICAgICAgICAgY29uc29sZS5sb2coJ3JlZGlyZWN0VG/liLDpppbpobXmiJDlip86JywgcmVzKTtcclxuXHRcdFx0XHRcdFx0XHQgICAgICAgICAgICB1bmkuJGVtaXQoJ3JlbG9hZFVzZXJTZXR0aW5ncycsIHt9KTtcclxuXHRcdFx0XHRcdFx0XHQgICAgICAgICAgfSxcclxuXHRcdFx0XHRcdFx0XHQgICAgICAgICAgZmFpbDogZnVuY3Rpb24ocmVkaXJlY3RFcnIpIHtcclxuXHRcdFx0XHRcdFx0XHQgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdyZWRpcmVjdFRv5Yiw6aaW6aG15Lmf5aSx6LSlOicsIHJlZGlyZWN0RXJyKTtcclxuXHRcdFx0XHRcdFx0XHQgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHRcdFx0XHQgICAgICAgICAgICAgIHRpdGxlOiAn6Lez6L2s5aSx6LSl77yM6K+35omL5Yqo6L+b5YWl6aaW6aG1JyxcclxuXHRcdFx0XHRcdFx0XHQgICAgICAgICAgICAgIGljb246ICdub25lJ1xyXG5cdFx0XHRcdFx0XHRcdCAgICAgICAgICAgIH0pO1xyXG5cdFx0XHRcdFx0XHRcdCAgICAgICAgICB9XHJcblx0XHRcdFx0XHRcdFx0ICAgICAgICB9KTtcclxuXHRcdFx0XHRcdFx0XHQgICAgICB9XHJcblx0XHRcdFx0XHRcdFx0ICAgIH1cclxuXHRcdFx0XHRcdFx0XHQgIH0pXHJcblx0XHRcdFx0XHRcdFx0fSwgNTAwKVxyXG5cdFx0XHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0XHRcdGNvbnN0IGVycm9yTXNnID0gcmVzcG9uc2VEYXRhLm1zZyB8fCAn55m75b2V5aSx6LSlJztcclxuXHRcdFx0XHRcdFx0XHRjb25zb2xlLmxvZygn55m75b2V5aSx6LSlOicsIGVycm9yTXNnLCByZXMpO1xyXG5cdFx0XHRcdFx0XHRcdHVuaS5zaG93VG9hc3Qoe1xyXG5cdFx0XHRcdFx0XHRcdFx0dGl0bGU6IGVycm9yTXNnLFxyXG5cdFx0XHRcdFx0XHRcdFx0aWNvbjogJ25vbmUnLFxyXG5cdFx0XHRcdFx0XHRcdFx0cG9zaXRpb246ICdjZW50ZXInXHJcblx0XHRcdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fSxcclxuXHRcdFx0XHRcdGZhaWw6IChlcnIpID0+IHtcclxuXHRcdFx0XHRcdFx0Y29uc29sZS5lcnJvcign55m75b2V6K+35rGC5aSx6LSlOicsIGVycik7XHJcblx0XHRcdFx0XHRcdHVuaS5oaWRlTG9hZGluZygpO1xyXG5cdFx0XHRcdFx0XHRfc2VsZi5pc1JvdGF0ZSA9IGZhbHNlO1xyXG5cdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHRcdFx0XHR0aXRsZTogJ+e9kee7nOW8guW4uO+8jOivt+ajgOafpee9kee7nOi/nuaOpScsXHJcblx0XHRcdFx0XHRcdFx0aWNvbjogJ25vbmUnLFxyXG5cdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiAnY2VudGVyJ1xyXG5cdFx0XHRcdFx0XHR9KTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9KVxyXG5cdFx0XHR9LFxyXG5cdFx0XHRsb2dpbl93ZWl4aW4oKSB7XHJcblx0XHRcdFx0Ly/lvq7kv6HnmbvlvZVcclxuXHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHRcdGljb246ICdub25lJyxcclxuXHRcdFx0XHRcdHBvc2l0aW9uOiAnYm90dG9tJyxcclxuXHRcdFx0XHRcdHRpdGxlOiAnLi4uJ1xyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHR9LFxyXG5cdFx0XHRmb3JnZXQoKSB7XHJcblx0XHRcdFx0dW5pLnNob3dNb2RhbCh7XHJcblx0XHRcdFx0XHR0aXRsZTogJ+aPkOekuicsXHJcblx0XHRcdFx0XHRjb250ZW50OiAn6K+36IGU57O757O757uf566h55CG5ZGYJyxcclxuXHRcdFx0XHRcdHNob3dDYW5jZWw6IGZhbHNlLFxyXG5cdFx0XHRcdFx0Y29uZmlybVRleHQ6ICfnn6XpgZPkuoYnLFxyXG5cdFx0XHRcdFx0Y29uZmlybUNvbG9yOiAnIzMzMzMzMydcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuPC9zY3JpcHQ+XHJcblxyXG48c3R5bGU+XHJcblx0QGltcG9ydCB1cmwoXCIuLi8uLi9jb21wb25lbnRzL3dhdGNoLWxvZ2luL2Nzcy9pY29uLmNzc1wiKTtcclxuXHRAaW1wb3J0IHVybChcIi4vY3NzL21haW4uY3NzXCIpO1xyXG5cdHBhZ2Uge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcclxuXHR9XHJcbjwvc3R5bGU+XHJcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///11\n");
- /***/ }),
- /* 12 */
- /*!*********************************************************!*\
- !*** ./node_modules/@dcloudio/uni-mp-weixin/dist/mp.js ***!
- \*********************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- /* WEBPACK VAR INJECTION */(function(global) {
- var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.Behavior = Behavior;
- exports.Component = Component;
- exports.Page = Page;
- exports.nextTick = exports.default = void 0;
- var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));
- var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ 14));
- var _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 20));
- var _PROP_DEFAULT_VALUES;
- function parseData(data, vueComponentOptions) {
- if (!data) {
- return;
- }
- vueComponentOptions.mpOptions.data = data;
- }
- function parseComponents(vueComponentOptions) {
- vueComponentOptions.components = global.__wxVueOptions.components;
- }
- var _toString = Object.prototype.toString;
- var hasOwnProperty = Object.prototype.hasOwnProperty;
- function isFn(fn) {
- return typeof fn === 'function';
- }
- function isPlainObject(obj) {
- return _toString.call(obj) === '[object Object]';
- }
- function hasOwn(obj, key) {
- return hasOwnProperty.call(obj, key);
- }
- function noop() {}
- /**
- * Create a cached version of a pure function.
- */
- function cached(fn) {
- var cache = Object.create(null);
- return function cachedFn(str) {
- var hit = cache[str];
- return hit || (cache[str] = fn(str));
- };
- }
- /**
- * Camelize a hyphen-delimited string.
- */
- var camelizeRE = /-(\w)/g;
- var camelize = cached(function (str) {
- return str.replace(camelizeRE, function (_, c) {
- return c ? c.toUpperCase() : '';
- });
- });
- var SOURCE_KEY = '__data__';
- var COMPONENT_LIFECYCLE = {
- created: 'onServiceCreated',
- attached: 'onServiceAttached',
- ready: 'mounted',
- moved: 'moved',
- detached: 'destroyed'
- };
- var COMPONENT_LIFECYCLE_KEYS = Object.keys(COMPONENT_LIFECYCLE);
- var PAGE_LIFETIMES = {
- show: 'onPageShow',
- hide: 'onPageHide',
- resize: 'onPageResize'
- };
- var PAGE_LIFETIMES_KEYS = Object.keys(PAGE_LIFETIMES);
- var PAGE_LIFECYCLE = ['onLoad', 'onShow', 'onReady', 'onHide', 'onUnload', 'onPullDownRefresh', 'onReachBottom', 'onShareAppMessage', 'onPageScroll', 'onResize', 'onTabItemTap'];
- function parsePageMethods(mpComponentOptions, vueComponentOptions) {
- var methods = Object.create(null);
- Object.keys(mpComponentOptions).forEach(function (key) {
- var value = mpComponentOptions[key];
- if (isFn(value) && PAGE_LIFECYCLE.indexOf(key) === -1) {
- methods[key] = value;
- }
- });
- vueComponentOptions.methods = methods;
- }
- function parsePageLifecycle(mpComponentOptions, vueComponentOptions) {
- Object.keys(mpComponentOptions).forEach(function (key) {
- if (PAGE_LIFECYCLE.indexOf(key) !== -1) {
- vueComponentOptions[key] = mpComponentOptions[key];
- }
- });
- }
- function parsePage(mpComponentOptions) {
- var vueComponentOptions = {
- mixins: [],
- mpOptions: {}
- };
- parseComponents(vueComponentOptions);
- parseData(mpComponentOptions.data, vueComponentOptions);
- parsePageMethods(mpComponentOptions, vueComponentOptions);
- parsePageLifecycle(mpComponentOptions, vueComponentOptions);
- return vueComponentOptions;
- }
- function parseProperties(properties, vueComponentOptions) {
- if (!properties) {
- return;
- }
- vueComponentOptions.mpOptions.properties = properties;
- }
- function parseOptions(options, vueComponentOptions) {
- if (!options) {
- return;
- }
- vueComponentOptions.mpOptions.options = options;
- }
- function parseMethods(methods, vueComponentOptions) {
- if (!methods) {
- return;
- }
- if (methods.$emit) {
- console.warn('Method "$emit" conflicts with an existing Vue instance method');
- delete methods.$emit;
- }
- vueComponentOptions.methods = methods;
- }
- function parseLifecycle(mpComponentOptions, vueComponentOptions) {
- COMPONENT_LIFECYCLE_KEYS.forEach(function (name) {
- if (hasOwn(mpComponentOptions, name)) {
- (vueComponentOptions[COMPONENT_LIFECYCLE[name]] || (vueComponentOptions[COMPONENT_LIFECYCLE[name]] = [])).push(mpComponentOptions[name]);
- }
- });
- }
- var mpBehaviors = {
- 'wx://form-field': {},
- 'wx://component-export': {}
- };
- function callDefinitionFilter(mpComponentOptions) {
- var behaviors = mpComponentOptions.behaviors,
- definitionFilter = mpComponentOptions.definitionFilter;
- var behaviorDefinitionFilters = [];
- if (Array.isArray(behaviors)) {
- behaviors.forEach(function (behavior) {
- behavior = typeof behavior === 'string' ? mpBehaviors[behavior] : behavior;
- if (behavior.definitionFilter) {
- behaviorDefinitionFilters.push(behavior.definitionFilter);
- behavior.definitionFilter.call(null, mpComponentOptions, []);
- }
- });
- }
- if (isFn(definitionFilter)) {
- return function (defFields) {
- definitionFilter(defFields, behaviorDefinitionFilters);
- };
- }
- }
- function parseDefinitionFilter(mpComponentOptions, vueComponentOptions) {
- callDefinitionFilter(mpComponentOptions);
- }
- function parseBehavior(behavior) {
- var data = behavior.data,
- methods = behavior.methods,
- behaviors = behavior.behaviors,
- properties = behavior.properties;
- var vueComponentOptions = {
- watch: {},
- mpOptions: {
- mpObservers: []
- }
- };
- parseData(data, vueComponentOptions);
- parseMethods(methods, vueComponentOptions);
- parseBehaviors(behaviors, vueComponentOptions);
- parseProperties(properties, vueComponentOptions);
- parseLifecycle(behavior, vueComponentOptions);
- parseDefinitionFilter(behavior);
- return vueComponentOptions;
- }
- var BEHAVIORS = {
- 'wx://form-field': {
- beforeCreate: function beforeCreate() {
- var mpOptions = this.$options.mpOptions;
- if (!mpOptions.properties) {
- mpOptions.properties = Object.create(null);
- }
- var props = mpOptions.properties;
- // TODO form submit,reset
- if (!hasOwn(props, 'name')) {
- props.name = {
- type: String
- };
- }
- if (!hasOwn(props, 'value')) {
- props.value = {
- type: String // 默认类型调整为 String,否则默认值为 null,导致一些自定义 input 显示不正确
- };
- }
- }
- }
- };
- function parseBehaviors(behaviors, vueComponentOptions) {
- if (!behaviors) {
- return;
- }
- behaviors.forEach(function (behavior) {
- if (typeof behavior === 'string') {
- BEHAVIORS[behavior] && vueComponentOptions.mixins.push(BEHAVIORS[behavior]);
- } else {
- vueComponentOptions.mixins.push(parseBehavior(behavior));
- }
- });
- }
- function parseSinglePath(path) {
- return path.split('.');
- }
- function parseMultiPaths(paths) {
- return paths.split(',').map(function (path) {
- return parseSinglePath(path);
- });
- }
- function parseObservers(observers, vueComponentOptions) {
- if (!observers) {
- return;
- }
- var mpObservers = vueComponentOptions.mpOptions.mpObservers;
- Object.keys(observers).forEach(function (path) {
- mpObservers.push({
- paths: parseMultiPaths(path),
- observer: observers[path]
- });
- });
- }
- function relative(from, to) {
- if (to.indexOf('/') === 0) {
- from = '';
- }
- var fromArr = from.split('/');
- var toArr = to.split('/');
- fromArr.pop();
- while (toArr.length) {
- var part = toArr.shift();
- if (part !== '' && part !== '.') {
- if (part !== '..') {
- fromArr.push(part);
- } else {
- fromArr.pop();
- }
- }
- }
- return fromArr.join('/');
- }
- function parseRelations(relations, vueComponentOptions) {
- if (!relations) {
- return;
- }
- Object.keys(relations).forEach(function (name) {
- var relation = relations[name];
- relation.name = name;
- relation.target = relation.target ? String(relation.target) : relative(global.__wxRoute, name);
- });
- vueComponentOptions.mpOptions.relations = relations;
- }
- function parseExternalClasses(externalClasses, vueComponentOptions) {
- if (!externalClasses) {
- return;
- }
- if (!Array.isArray(externalClasses)) {
- externalClasses = [externalClasses];
- }
- vueComponentOptions.mpOptions.externalClasses = externalClasses;
- if (!vueComponentOptions.mpOptions.properties) {
- vueComponentOptions.mpOptions.properties = Object.create(null);
- }
- externalClasses.forEach(function (externalClass) {
- vueComponentOptions.mpOptions.properties[camelize(externalClass)] = {
- type: String,
- value: ''
- };
- });
- }
- function parseLifetimes(lifetimes, vueComponentOptions) {
- if (!lifetimes) {
- return;
- }
- parseLifecycle(lifetimes, vueComponentOptions);
- }
- function parsePageLifetimes(pageLifetimes, vueComponentOptions) {
- if (!pageLifetimes) {
- return;
- }
- PAGE_LIFETIMES_KEYS.forEach(function (key) {
- var lifetimeFn = pageLifetimes[key];
- isFn(lifetimeFn) && (vueComponentOptions[PAGE_LIFETIMES[key]] = lifetimeFn);
- });
- }
- function parseComponent(mpComponentOptions) {
- var data = mpComponentOptions.data,
- options = mpComponentOptions.options,
- methods = mpComponentOptions.methods,
- behaviors = mpComponentOptions.behaviors,
- lifetimes = mpComponentOptions.lifetimes,
- observers = mpComponentOptions.observers,
- relations = mpComponentOptions.relations,
- properties = mpComponentOptions.properties,
- pageLifetimes = mpComponentOptions.pageLifetimes,
- externalClasses = mpComponentOptions.externalClasses;
- var vueComponentOptions = {
- mixins: [],
- props: {},
- watch: {},
- mpOptions: {
- mpObservers: []
- }
- };
- parseComponents(vueComponentOptions);
- parseData(data, vueComponentOptions);
- parseOptions(options, vueComponentOptions);
- parseMethods(methods, vueComponentOptions);
- parseBehaviors(behaviors, vueComponentOptions);
- parseLifetimes(lifetimes, vueComponentOptions);
- parseObservers(observers, vueComponentOptions);
- parseRelations(relations, vueComponentOptions);
- parseProperties(properties, vueComponentOptions);
- parsePageLifetimes(pageLifetimes, vueComponentOptions);
- parseExternalClasses(externalClasses, vueComponentOptions);
- parseLifecycle(mpComponentOptions, vueComponentOptions);
- parseDefinitionFilter(mpComponentOptions);
- return vueComponentOptions;
- }
- function initRelationHandlers(type, handler, target, ctx) {
- if (!handler) {
- return;
- }
- var name = "_$".concat(type, "Handlers");
- (ctx[name] || (ctx[name] = [])).push(function () {
- handler.call(ctx, target);
- });
- }
- function initLinkedHandlers(relation, target, ctx) {
- var type = 'linked';
- var name = relation.name;
- var relationNodes = ctx._$relationNodes || (ctx._$relationNodes = Object.create(null));
- (relationNodes[name] || (relationNodes[name] = [])).push(target);
- initRelationHandlers(type, relation[type], target, ctx);
- }
- function initUnlinkedHandlers(relation, target, ctx) {
- var type = 'unlinked';
- initRelationHandlers(type, relation[type], target, ctx);
- }
- function findParentRelation(parentVm, target, type) {
- var relations = parentVm && parentVm.$options.mpOptions && parentVm.$options.mpOptions.relations;
- if (!relations) {
- return [];
- }
- var name = Object.keys(relations).find(function (name) {
- var relation = relations[name];
- return relation.target === target && relation.type === type;
- });
- if (!name) {
- return [];
- }
- return [relations[name], parentVm];
- }
- function initParentRelation(vm, childRelation, match) {
- var _match = match(vm, vm.$options.mpOptions.path),
- _match2 = (0, _slicedToArray2.default)(_match, 2),
- parentRelation = _match2[0],
- parentVm = _match2[1];
- if (!parentRelation) {
- return;
- }
- initLinkedHandlers(parentRelation, vm, parentVm);
- initLinkedHandlers(childRelation, parentVm, vm);
- initUnlinkedHandlers(parentRelation, vm, parentVm);
- initUnlinkedHandlers(childRelation, parentVm, vm);
- }
- function initRelation(relation, vm) {
- var type = relation.type;
- if (type === 'parent') {
- initParentRelation(vm, relation, function matchParent(vm, target) {
- return findParentRelation(vm.$parent, target, 'child');
- });
- } else if (type === 'ancestor') {
- initParentRelation(vm, relation, function matchAncestor(vm, target) {
- var $parent = vm.$parent;
- while ($parent) {
- var ret = findParentRelation($parent, target, 'descendant');
- if (ret.length) {
- return ret;
- }
- $parent = $parent.$parent;
- }
- return [];
- });
- }
- }
- function initRelations(vm) {
- var _ref = vm.$options.mpOptions || {},
- relations = _ref.relations;
- if (!relations) {
- return;
- }
- Object.keys(relations).forEach(function (name) {
- initRelation(relations[name], vm);
- });
- }
- function handleRelations(vm, type) {
- // TODO 需要移除 relationNodes
- var handlers = vm["_$".concat(type, "Handlers")];
- if (!handlers) {
- return;
- }
- handlers.forEach(function (handler) {
- return handler();
- });
- }
- var sharedPropertyDefinition = {
- enumerable: true,
- configurable: true,
- get: noop,
- set: noop
- };
- function proxy(target, sourceKey, key) {
- sharedPropertyDefinition.get = function proxyGetter() {
- return this[sourceKey][key];
- };
- sharedPropertyDefinition.set = function proxySetter(val) {
- this[sourceKey][key] = val;
- };
- Object.defineProperty(target, key, sharedPropertyDefinition);
- }
- function setDataByExprPath(exprPath, value, data) {
- var keys = exprPath.replace(/\[(\d+?)\]/g, '.$1').split('.');
- keys.reduce(function (obj, key, idx) {
- if (idx === keys.length - 1) {
- obj[key] = value;
- } else {
- if (typeof obj[key] === 'undefined') {
- obj[key] = {};
- }
- return obj[key];
- }
- }, data);
- return keys.length === 1;
- }
- function setData(data, callback) {
- var _this = this;
- if (!isPlainObject(data)) {
- return;
- }
- Object.keys(data).forEach(function (key) {
- if (setDataByExprPath(key, data[key], _this.data)) {
- !hasOwn(_this, key) && proxy(_this, SOURCE_KEY, key);
- }
- });
- this.$forceUpdate();
- isFn(callback) && this.$nextTick(callback);
- }
- /**
- * https://github.com/swan-team/swan-js/blob/61e2a63f7aa576b5daafbe77fdfa7c65b977060c/src/utils/index.js
- */
- var _toString$1 = Object.prototype.toString;
- /**
- * 深度assign的函数
- * @param {Object} targetObject 要被拷贝的目标对象
- * @param {Object} originObject 拷贝的源对象
- * @return {Object} merge后的对象
- */
- var deepAssign = function deepAssign() {
- var targetObject = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- var originObject = arguments.length > 1 ? arguments[1] : undefined;
- var originType = _toString$1.call(originObject);
- if (originType === '[object Array]') {
- targetObject = originObject.slice(0);
- return targetObject;
- } else if (originType === '[object Object]') {
- for (var key in originObject) {
- targetObject[key] = deepAssign(targetObject[key], originObject[key]);
- }
- return targetObject;
- } else if (originType === '[object Date]') {
- return new Date(originObject.getTime());
- } else if (originType === '[object RegExp]') {
- var target = String(originObject);
- var lastIndex = target.lastIndexOf('/');
- return new RegExp(target.slice(1, lastIndex), target.slice(lastIndex + 1));
- }
- return originObject;
- };
- /**
- * 深度拷贝逻辑,不同于lodash等库,但是与微信一致
- * @param {*} [originObj] 原对象
- * @return {Object|Array} 拷贝结果
- */
- var deepClone = function deepClone(originObj) {
- return deepAssign(_toString$1.call(originObj) === '[object Array]' ? [] : {}, originObj);
- };
- var PROP_DEFAULT_VALUES = (_PROP_DEFAULT_VALUES = {}, (0, _defineProperty2.default)(_PROP_DEFAULT_VALUES, String, ''), (0, _defineProperty2.default)(_PROP_DEFAULT_VALUES, Number, 0), (0, _defineProperty2.default)(_PROP_DEFAULT_VALUES, Boolean, false), (0, _defineProperty2.default)(_PROP_DEFAULT_VALUES, Object, null), (0, _defineProperty2.default)(_PROP_DEFAULT_VALUES, Array, []), (0, _defineProperty2.default)(_PROP_DEFAULT_VALUES, null, null), _PROP_DEFAULT_VALUES);
- function getDefaultVal(propType) {
- return PROP_DEFAULT_VALUES[propType];
- }
- function getPropertyVal(options) {
- if (isPlainObject(options)) {
- if (hasOwn(options, 'value')) {
- return options.value;
- }
- return getDefaultVal(options.type);
- }
- return getDefaultVal(options);
- }
- function getType(propOptions) {
- return isPlainObject(propOptions) ? propOptions.type : propOptions;
- }
- function validateProp(key, propsOptions, propsData, vm) {
- var value = propsData[key];
- if (value !== undefined) {
- var propOptions = propsOptions[key];
- var type = getType(propOptions);
- value = formatVal(value, type);
- var observer = propOptions && propOptions.observer;
- if (observer) {
- // 初始化时,异步触发 observer,否则 observer 中无法访问 methods 或其他
- setTimeout(function () {
- observe(observer, vm, value);
- }, 4);
- }
- return value;
- }
- return getPropertyVal(propsOptions[key]);
- }
- function formatVal(val, type) {
- if (type === Boolean) {
- return !!val;
- } else if (type === String) {
- return String(val);
- }
- return val;
- }
- function observe(observer, vm, newVal, oldVal) {
- try {
- if (typeof observer === 'function') {
- observer.call(vm, newVal, oldVal);
- } else if (typeof observer === 'string' && typeof vm[observer] === 'function') {
- vm[observer](newVal, oldVal);
- }
- } catch (err) {
- console.error("execute observer ".concat(observer, " callback fail! err: ").concat(err));
- }
- }
- function initProperties(vm, instanceData) {
- var properties = vm.$options.mpOptions.properties;
- if (!properties) {
- return;
- }
- var propsData = deepClone(vm.$options.propsData) || {};
- var _loop = function _loop(key) {
- var observer = isPlainObject(properties[key]) ? properties[key].observer : false;
- var value = validateProp(key, properties, propsData, vm);
- Object.defineProperty(instanceData, key, {
- enumerable: true,
- configurable: true,
- get: function get() {
- return value;
- },
- set: function set(newVal) {
- var oldVal = value;
- /* eslint-disable no-self-compare */
- if (newVal === value || newVal !== newVal && value !== value) {
- return;
- }
- // TODO 临时方案,clone array
- value = Array.isArray(newVal) ? newVal.slice(0) : newVal;
- if (observer) {
- observe(observer, vm, newVal, oldVal);
- }
- // 触发渲染
- vm.$forceUpdate();
- }
- });
- };
- for (var key in properties) {
- _loop(key);
- }
- }
- function updateProperties(vm) {
- var properties = vm.$options.mpOptions && vm.$options.mpOptions.properties;
- var propsData = vm.$options.propsData;
- if (propsData && properties) {
- Object.keys(properties).forEach(function (key) {
- if (hasOwn(propsData, key)) {
- vm[key] = formatVal(propsData[key], getType(properties[key]));
- }
- });
- }
- }
- function initState(vm) {
- var instanceData = JSON.parse(JSON.stringify(vm.$options.mpOptions.data || {}));
- vm[SOURCE_KEY] = instanceData;
- var propertyDefinition = {
- get: function get() {
- return vm[SOURCE_KEY];
- },
- set: function set(value) {
- vm[SOURCE_KEY] = value;
- }
- };
- Object.defineProperties(vm, {
- data: propertyDefinition,
- properties: propertyDefinition
- });
- vm.setData = setData;
- initProperties(vm, instanceData);
- Object.keys(instanceData).forEach(function (key) {
- proxy(vm, SOURCE_KEY, key);
- });
- }
- function initMethods(vm) {
- var oldEmit = vm.$emit;
- vm.triggerEvent = function (eventName, detail, options) {
- var target = {
- dataset: vm.$el.dataset
- };
- var event = {
- target: target,
- currentTarget: target,
- detail: detail,
- preventDefault: noop,
- stopPropagation: noop
- };
- oldEmit.call(vm, eventName, event);
- };
- // 主要是Vant 自己封装了 $emit,放到 methods 中会触发 Vue 的警告,索性,框架直接重写该方法
- vm.$emit = function () {
- vm.triggerEvent.apply(vm, arguments);
- };
- vm.getRelationNodes = function (relationKey) {
- // 需要过滤已被销毁的vm
- /* eslint-disable no-mixed-operators */
- return (vm._$relationNodes && vm._$relationNodes[relationKey] || []).filter(function (vm) {
- return !vm._isDestroyed;
- });
- };
- vm._$updateProperties = updateProperties;
- }
- function handleObservers(vm) {
- var watch = vm.$options.watch;
- if (!watch) {
- return;
- }
- Object.keys(watch).forEach(function (name) {
- var observer = watch[name];
- if (observer.mounted) {
- var val = vm[name];
- var handler = observer.handler;
- if (typeof handler === 'string') {
- handler = vm[handler];
- }
- handler && handler.call(vm, val, val);
- }
- });
- }
- var polyfill = {
- beforeCreate: function beforeCreate() {
- // 取消 development 时的 Proxy,避免小程序组件模板中使用尚未定义的属性告警
- this._renderProxy = this;
- this._$self = this;
- this._$noop = noop;
- },
- created: function created() {
- // properties 中可能会访问 methods,故需要在 created 中初始化
- initState(this);
- initMethods(this);
- initRelations(this);
- },
- mounted: function mounted() {
- handleObservers(this);
- },
- destroyed: function destroyed() {
- handleRelations(this, 'unlinked');
- }
- };
- global.__wxRoute = '';
- global.__wxComponents = Object.create(null);
- global.__wxVueOptions = Object.create(null);
- function Page(options) {
- var pageOptions = parsePage(options);
- pageOptions.mixins.unshift(polyfill);
- pageOptions.mpOptions.path = global.__wxRoute;
- global.__wxComponents[global.__wxRoute] = pageOptions;
- }
- function initRelationsHandler(vueComponentOptions) {
- // linked 需要在当前组件 attached 之后再执行
- if (!vueComponentOptions.onServiceAttached) {
- vueComponentOptions.onServiceAttached = [];
- }
- vueComponentOptions.onServiceAttached.push(function onServiceAttached() {
- handleRelations(this, 'linked');
- });
- }
- function Component(options) {
- var componentOptions = parseComponent(options);
- componentOptions.mixins.unshift(polyfill);
- componentOptions.mpOptions.path = global.__wxRoute;
- initRelationsHandler(componentOptions);
- global.__wxComponents[global.__wxRoute] = componentOptions;
- }
- function Behavior(options) {
- return options;
- }
- var nextTick = _vue.default.nextTick;
- exports.nextTick = nextTick;
- var index = uni.__$wx__;
- var _default = index;
- exports.default = _default;
- /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../webpack/buildin/global.js */ 13)))
- /***/ }),
- /* 13 */
- /*!***********************************!*\
- !*** (webpack)/buildin/global.js ***!
- \***********************************/
- /*! no static exports found */
- /***/ (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;
- /***/ }),
- /* 14 */
- /*!**************************************************************!*\
- !*** ./node_modules/@babel/runtime/helpers/slicedToArray.js ***!
- \**************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ 15);
- var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ 16);
- var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ 17);
- var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ 19);
- function _slicedToArray(arr, i) {
- return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
- }
- module.exports = _slicedToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
- /***/ }),
- /* 15 */
- /*!***************************************************************!*\
- !*** ./node_modules/@babel/runtime/helpers/arrayWithHoles.js ***!
- \***************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports) {
- function _arrayWithHoles(arr) {
- if (Array.isArray(arr)) return arr;
- }
- module.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
- /***/ }),
- /* 16 */
- /*!*********************************************************************!*\
- !*** ./node_modules/@babel/runtime/helpers/iterableToArrayLimit.js ***!
- \*********************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports) {
- function _iterableToArrayLimit(r, l) {
- var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
- if (null != t) {
- var e,
- n,
- i,
- u,
- a = [],
- f = !0,
- o = !1;
- try {
- if (i = (t = t.call(r)).next, 0 === l) {
- if (Object(t) !== t) return;
- f = !1;
- } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0) {
- ;
- }
- } catch (r) {
- o = !0, n = r;
- } finally {
- try {
- if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
- } finally {
- if (o) throw n;
- }
- }
- return a;
- }
- }
- module.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports["default"] = module.exports;
- /***/ }),
- /* 17 */
- /*!***************************************************************************!*\
- !*** ./node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js ***!
- \***************************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ 18);
- function _unsupportedIterableToArray(o, minLen) {
- if (!o) return;
- if (typeof o === "string") return arrayLikeToArray(o, minLen);
- var n = Object.prototype.toString.call(o).slice(8, -1);
- if (n === "Object" && o.constructor) n = o.constructor.name;
- if (n === "Map" || n === "Set") return Array.from(o);
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
- }
- module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
- /***/ }),
- /* 18 */
- /*!*****************************************************************!*\
- !*** ./node_modules/@babel/runtime/helpers/arrayLikeToArray.js ***!
- \*****************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports) {
- function _arrayLikeToArray(arr, len) {
- if (len == null || len > arr.length) len = arr.length;
- for (var i = 0, arr2 = new Array(len); i < len; i++) {
- arr2[i] = arr[i];
- }
- return arr2;
- }
- module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
- /***/ }),
- /* 19 */
- /*!****************************************************************!*\
- !*** ./node_modules/@babel/runtime/helpers/nonIterableRest.js ***!
- \****************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports) {
- function _nonIterableRest() {
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
- }
- module.exports = _nonIterableRest, module.exports.__esModule = true, module.exports["default"] = module.exports;
- /***/ }),
- /* 20 */
- /*!**********************!*\
- !*** external "Vue" ***!
- \**********************/
- /*! no static exports found */
- /***/ (function(module, exports) {
- module.exports = Vue;
- /***/ }),
- /* 21 */
- /*!*********************************************************************!*\
- !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js ***!
- \*********************************************************************/
- /*! exports provided: log, default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "log", function() { return log; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return formatLog; });
- function typof (v) {
- var s = Object.prototype.toString.call(v)
- return s.substring(8, s.length - 1)
- }
- function isDebugMode () {
- /* eslint-disable no-undef */
- return typeof __channelId__ === 'string' && __channelId__
- }
- function jsonStringifyReplacer (k, p) {
- switch (typof(p)) {
- case 'Function':
- return 'function() { [native code] }'
- default :
- return p
- }
- }
- function log (type) {
- for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
- args[_key - 1] = arguments[_key]
- }
- console[type].apply(console, args)
- }
- function formatLog () {
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
- args[_key] = arguments[_key]
- }
- var type = args.shift()
- if (isDebugMode()) {
- args.push(args.pop().replace('at ', 'uni-app:///'))
- return console[type].apply(console, args)
- }
- var msgs = args.map(function (v) {
- var type = Object.prototype.toString.call(v).toLowerCase()
- if (type === '[object object]' || type === '[object array]') {
- try {
- v = '---BEGIN:JSON---' + JSON.stringify(v, jsonStringifyReplacer) + '---END:JSON---'
- } catch (e) {
- v = type
- }
- } else {
- if (v === null) {
- v = '---NULL---'
- } else if (v === undefined) {
- v = '---UNDEFINED---'
- } else {
- var vType = typof(v).toUpperCase()
- if (vType === 'NUMBER' || vType === 'BOOLEAN') {
- v = '---BEGIN:' + vType + '---' + v + '---END:' + vType + '---'
- } else {
- v = String(v)
- }
- }
- }
- return v
- })
- var msg = ''
- if (msgs.length > 1) {
- var lastMsg = msgs.pop()
- msg = msgs.join('---COMMA---')
- if (lastMsg.indexOf(' at ') === 0) {
- msg += lastMsg
- } else {
- msg += '---COMMA---' + lastMsg
- }
- } else {
- msg = msgs[0]
- }
- console[type](msg)
- }
- /***/ }),
- /* 22 */
- /*!***********************************************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/components/watch-login/watch-input.vue ***!
- \***********************************************************************************/
- /*! no static exports found */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _watch_input_vue_vue_type_template_id_697460bd___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./watch-input.vue?vue&type=template&id=697460bd& */ 23);\n/* harmony import */ var _watch_input_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./watch-input.vue?vue&type=script&lang=js& */ 25);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _watch_input_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if([\"default\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _watch_input_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n/* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 27);\n\nvar renderjs\n\n\n\n\n/* normalize component */\n\nvar component = Object(_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(\n _watch_input_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n _watch_input_vue_vue_type_template_id_697460bd___WEBPACK_IMPORTED_MODULE_0__[\"render\"],\n _watch_input_vue_vue_type_template_id_697460bd___WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"],\n false,\n null,\n null,\n null,\n false,\n _watch_input_vue_vue_type_template_id_697460bd___WEBPACK_IMPORTED_MODULE_0__[\"components\"],\n renderjs\n)\n\ncomponent.options.__file = \"components/watch-login/watch-input.vue\"\n/* harmony default export */ __webpack_exports__[\"default\"] = (component.exports);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBd0g7QUFDeEg7QUFDK0Q7QUFDTDs7O0FBRzFEO0FBQ3FMO0FBQ3JMLGdCQUFnQix5TEFBVTtBQUMxQixFQUFFLGlGQUFNO0FBQ1IsRUFBRSxzRkFBTTtBQUNSLEVBQUUsK0ZBQWU7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEVBQUUsMEZBQVU7QUFDWjtBQUNBOztBQUVBO0FBQ2UsZ0YiLCJmaWxlIjoiMjIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZW5kZXIsIHN0YXRpY1JlbmRlckZucywgcmVjeWNsYWJsZVJlbmRlciwgY29tcG9uZW50cyB9IGZyb20gXCIuL3dhdGNoLWlucHV0LnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD02OTc0NjBiZCZcIlxudmFyIHJlbmRlcmpzXG5pbXBvcnQgc2NyaXB0IGZyb20gXCIuL3dhdGNoLWlucHV0LnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIlxuZXhwb3J0ICogZnJvbSBcIi4vd2F0Y2gtaW5wdXQudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5cblxuLyogbm9ybWFsaXplIGNvbXBvbmVudCAqL1xuaW1wb3J0IG5vcm1hbGl6ZXIgZnJvbSBcIiEuLi8uLi8uLi8uLi8uLi8uLi9hbnpodWFuZ2Jhby9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3Z1ZS1sb2FkZXIvbGliL3J1bnRpbWUvY29tcG9uZW50Tm9ybWFsaXplci5qc1wiXG52YXIgY29tcG9uZW50ID0gbm9ybWFsaXplcihcbiAgc2NyaXB0LFxuICByZW5kZXIsXG4gIHN0YXRpY1JlbmRlckZucyxcbiAgZmFsc2UsXG4gIG51bGwsXG4gIG51bGwsXG4gIG51bGwsXG4gIGZhbHNlLFxuICBjb21wb25lbnRzLFxuICByZW5kZXJqc1xuKVxuXG5jb21wb25lbnQub3B0aW9ucy5fX2ZpbGUgPSBcImNvbXBvbmVudHMvd2F0Y2gtbG9naW4vd2F0Y2gtaW5wdXQudnVlXCJcbmV4cG9ydCBkZWZhdWx0IGNvbXBvbmVudC5leHBvcnRzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///22\n");
- /***/ }),
- /* 23 */
- /*!******************************************************************************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/components/watch-login/watch-input.vue?vue&type=template&id=697460bd& ***!
- \******************************************************************************************************************/
- /*! exports provided: render, staticRenderFns, recyclableRender, components */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_input_vue_vue_type_template_id_697460bd___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--11-0!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./watch-input.vue?vue&type=template&id=697460bd& */ 24);
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_input_vue_vue_type_template_id_697460bd___WEBPACK_IMPORTED_MODULE_0__["render"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_input_vue_vue_type_template_id_697460bd___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_input_vue_vue_type_template_id_697460bd___WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_input_vue_vue_type_template_id_697460bd___WEBPACK_IMPORTED_MODULE_0__["components"]; });
- /***/ }),
- /* 24 */
- /*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--11-0!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!D:/UserData/Desktop/w/UhfChengBangZi/components/watch-login/watch-input.vue?vue&type=template&id=697460bd& ***!
- \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
- /*! exports provided: render, staticRenderFns, recyclableRender, components */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; });
- var components
- var render = function () {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "view",
- { staticClass: _vm._$s(0, "sc", "main-list oBorder"), attrs: { _i: 0 } },
- [
- _c("input", {
- staticClass: _vm._$s(1, "sc", "main-input"),
- attrs: {
- value: _vm._$s(1, "a-value", _vm.value),
- type: _vm._$s(1, "a-type", _vm._type),
- focus: _vm._$s(1, "a-focus", _vm._focus),
- maxlength: _vm._$s(1, "a-maxlength", _vm.maxlength),
- placeholder: _vm._$s(1, "a-placeholder", _vm.placeholder),
- password: _vm._$s(
- 1,
- "a-password",
- _vm.type === "password" && !_vm.showPassword
- ),
- _i: 1,
- },
- on: {
- input: function ($event) {
- return _vm.$emit("input", $event.detail.value)
- },
- blur: function ($event) {
- return _vm.$emit("blur", $event)
- },
- focus: function ($event) {
- return _vm.$emit("focus", $event)
- },
- longpress: function ($event) {
- return _vm.$emit("longtap", $event)
- },
- confirm: function ($event) {
- return _vm.$emit("confirm", $event)
- },
- click: function ($event) {
- return _vm.$emit("click", $event)
- },
- touchcancel: function ($event) {
- return _vm.$emit("touchcancel", $event)
- },
- touchend: function ($event) {
- return _vm.$emit("touchend", $event)
- },
- touchmove: function ($event) {
- return _vm.$emit("touchmove", $event)
- },
- touchstart: function ($event) {
- return _vm.$emit("touchstart", $event)
- },
- },
- }),
- _vm._$s(
- 2,
- "i",
- _vm._isShowPass && _vm.type === "password" && !_vm._isShowCode
- )
- ? _c("image", {
- staticClass: _vm._$s(2, "sc", "img cuIcon"),
- class: _vm._$s(
- 2,
- "c",
- _vm.showPassword ? "cuIcon-attention" : "cuIcon-attentionforbid"
- ),
- attrs: { _i: 2 },
- on: { click: _vm.showPass },
- })
- : _vm._e(),
- _vm._$s(3, "i", _vm._isShowCode && !_vm._isShowPass)
- ? _c(
- "view",
- {
- class: _vm._$s(3, "c", [
- "vercode",
- { "vercode-run": _vm.second > 0 },
- ]),
- attrs: { _i: 3 },
- on: { click: _vm.setCode },
- },
- [_vm._v(_vm._$s(3, "t0-0", _vm._s(_vm.getVerCodeSecond)))]
- )
- : _vm._e(),
- ]
- )
- }
- var recyclableRender = false
- var staticRenderFns = []
- render._withStripped = true
- /***/ }),
- /* 25 */
- /*!************************************************************************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/components/watch-login/watch-input.vue?vue&type=script&lang=js& ***!
- \************************************************************************************************************/
- /*! no static exports found */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_input_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--7-1!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/using-components.js!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./watch-input.vue?vue&type=script&lang=js& */ 26);\n/* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_input_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_input_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_input_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if([\"default\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_input_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n /* harmony default export */ __webpack_exports__[\"default\"] = (_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_input_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a); //# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQSttQixDQUFnQixpbkJBQUcsRUFBQyIsImZpbGUiOiIyNS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBtb2QgZnJvbSBcIi0hLi4vLi4vLi4vLi4vLi4vLi4vYW56aHVhbmdiYW8vSEJ1aWxkZXJYL3BsdWdpbnMvdW5pYXBwLWNsaS9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuLi8uLi8uLi8uLi8uLi8uLi9hbnpodWFuZ2Jhby9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3dlYnBhY2stcHJlcHJvY2Vzcy1sb2FkZXIvaW5kZXguanM/P3JlZi0tNy0xIS4uLy4uLy4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvd2VicGFjay11bmktYXBwLWxvYWRlci91c2luZy1jb21wb25lbnRzLmpzIS4uLy4uLy4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL3dhdGNoLWlucHV0LnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIjsgZXhwb3J0IGRlZmF1bHQgbW9kOyBleHBvcnQgKiBmcm9tIFwiLSEuLi8uLi8uLi8uLi8uLi8uLi9hbnpodWFuZ2Jhby9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzIS4uLy4uLy4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvd2VicGFjay1wcmVwcm9jZXNzLWxvYWRlci9pbmRleC5qcz8/cmVmLS03LTEhLi4vLi4vLi4vLi4vLi4vLi4vYW56aHVhbmdiYW8vSEJ1aWxkZXJYL3BsdWdpbnMvdW5pYXBwLWNsaS9ub2RlX21vZHVsZXMvQGRjbG91ZGlvL3Z1ZS1jbGktcGx1Z2luLXVuaS9wYWNrYWdlcy93ZWJwYWNrLXVuaS1hcHAtbG9hZGVyL3VzaW5nLWNvbXBvbmVudHMuanMhLi4vLi4vLi4vLi4vLi4vLi4vYW56aHVhbmdiYW8vSEJ1aWxkZXJYL3BsdWdpbnMvdW5pYXBwLWNsaS9ub2RlX21vZHVsZXMvQGRjbG91ZGlvL3Z1ZS1jbGktcGx1Z2luLXVuaS9wYWNrYWdlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vd2F0Y2gtaW5wdXQudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///25\n");
- /***/ }),
- /* 26 */
- /*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--7-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/using-components.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!D:/UserData/Desktop/w/UhfChengBangZi/components/watch-login/watch-input.vue?vue&type=script&lang=js& ***!
- \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nvar _this, countDown;\nvar _default = {\n data: function data() {\n return {\n showPassword: false,\n //是否显示明文\n second: 0,\n //倒计时\n isRunCode: false //是否开始倒计时\n };\n },\n\n props: {\n type: String,\n //类型\n value: String,\n //值\n placeholder: String,\n //框内提示\n maxlength: {\n //最大长度\n type: [Number, String],\n default: 20\n },\n isShowPass: {\n //是否显示密码图标(二选一)\n type: [Boolean, String],\n default: false\n },\n isShowCode: {\n //是否显示获取验证码(二选一)\n type: [Boolean, String],\n default: false\n },\n codeText: {\n type: String,\n default: \"获取验证码\"\n },\n setTime: {\n //倒计时时间设置\n type: [Number, String],\n default: 60\n },\n focus: {\n //是否聚焦 \n type: [Boolean, String],\n default: false\n }\n },\n model: {\n prop: 'value',\n event: 'input'\n },\n mounted: function mounted() {\n var _this2 = this;\n _this = this;\n //准备触发\n this.$on('runCode', function (val) {\n _this2.runCode(val);\n });\n clearInterval(countDown); //先清理一次循环,避免缓存\n },\n\n methods: {\n showPass: function showPass() {\n //是否显示密码\n this.showPassword = !this.showPassword;\n },\n setCode: function setCode() {\n //设置获取验证码的事件\n if (this.isRunCode) {\n //判断是否开始倒计时,避免重复点击\n return false;\n }\n this.$emit('setCode');\n },\n runCode: function runCode(val) {\n //开始倒计时\n if (String(val) == \"0\") {\n //判断是否需要终止循环\n this.second = 0; //初始倒计时\n clearInterval(countDown); //清理循环\n this.isRunCode = false; //关闭循环状态\n return false;\n }\n if (this.isRunCode) {\n //判断是否开始倒计时,避免重复点击\n return false;\n }\n this.isRunCode = true;\n this.second = this._setTime; //倒数秒数\n\n var _this = this;\n countDown = setInterval(function () {\n _this.second--;\n if (_this.second == 0) {\n _this.isRunCode = false;\n clearInterval(countDown);\n }\n }, 1000);\n }\n },\n computed: {\n _type: function _type() {\n //处理值\n var type = this.type;\n return type == 'password' ? 'text' : type;\n },\n _isShowPass: function _isShowPass() {\n //处理值\n return String(this.isShowPass) !== 'false';\n },\n _isShowCode: function _isShowCode() {\n //处理值\n return String(this.isShowCode) !== 'false';\n },\n _setTime: function _setTime() {\n //处理值\n var setTime = Number(this.setTime);\n return setTime > 0 ? setTime : 60;\n },\n _focus: function _focus() {\n //处理值 \n return String(this.focus) !== 'false';\n },\n getVerCodeSecond: function getVerCodeSecond() {\n //验证码倒计时计算\n if (this.second <= 0) {\n return this.codeText;\n } else {\n if (this.second < 10) {\n return '0' + this.second;\n } else {\n return this.second;\n }\n }\n }\n }\n};\nexports.default = _default;//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vY29tcG9uZW50cy93YXRjaC1sb2dpbi93YXRjaC1pbnB1dC52dWUiXSwibmFtZXMiOlsiZGF0YSIsInNob3dQYXNzd29yZCIsInNlY29uZCIsImlzUnVuQ29kZSIsInByb3BzIiwidHlwZSIsInZhbHVlIiwicGxhY2Vob2xkZXIiLCJtYXhsZW5ndGgiLCJkZWZhdWx0IiwiaXNTaG93UGFzcyIsImlzU2hvd0NvZGUiLCJjb2RlVGV4dCIsInNldFRpbWUiLCJmb2N1cyIsIm1vZGVsIiwicHJvcCIsImV2ZW50IiwibW91bnRlZCIsIl90aGlzIiwiY2xlYXJJbnRlcnZhbCIsIm1ldGhvZHMiLCJzaG93UGFzcyIsInNldENvZGUiLCJydW5Db2RlIiwiY291bnREb3duIiwiY29tcHV0ZWQiLCJfdHlwZSIsIl9pc1Nob3dQYXNzIiwiX2lzU2hvd0NvZGUiLCJfc2V0VGltZSIsIl9mb2N1cyIsImdldFZlckNvZGVTZWNvbmQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXFCQTtBQUFBLGVBQ0E7RUFDQUE7SUFDQTtNQUNBQztNQUFBO01BQ0FDO01BQUE7TUFDQUM7SUFDQTtFQUNBOztFQUNBQztJQUNBQztJQUFBO0lBQ0FDO0lBQUE7SUFDQUM7SUFBQTtJQUNBQztNQUNBO01BQ0FIO01BQ0FJO0lBQ0E7SUFDQUM7TUFDQTtNQUNBTDtNQUNBSTtJQUNBO0lBQ0FFO01BQ0E7TUFDQU47TUFDQUk7SUFDQTtJQUNBRztNQUNBUDtNQUNBSTtJQUNBO0lBQ0FJO01BQ0E7TUFDQVI7TUFDQUk7SUFDQTtJQUNBSztNQUNBO01BQ0FUO01BQ0FJO0lBQ0E7RUFDQTtFQUNBTTtJQUNBQztJQUNBQztFQUNBO0VBQ0FDO0lBQUE7SUFDQUM7SUFDQTtJQUNBO01BQ0E7SUFDQTtJQUNBQztFQUNBOztFQUNBQztJQUNBQztNQUNBO01BQ0E7SUFDQTtJQUNBQztNQUNBO01BQ0E7UUFDQTtRQUNBO01BQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7TUFDQTtRQUVBO1FBQ0E7UUFDQUo7UUFDQTtRQUNBO01BQ0E7TUFDQTtRQUNBO1FBQ0E7TUFDQTtNQUNBO01BQ0E7O01BRUE7TUFDQUs7UUFDQU47UUFDQTtVQUNBQTtVQUNBQztRQUNBO01BQ0E7SUFDQTtFQUNBO0VBQ0FNO0lBQ0FDO01BQ0E7TUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtNQUNBO01BQ0E7SUFDQTtJQUNBQztNQUNBO01BQ0E7SUFDQTtJQUNBQztNQUNBO01BQ0E7UUFDQTtNQUNBO1FBQ0E7VUFDQTtRQUNBO1VBQ0E7UUFDQTtNQUNBO0lBRUE7RUFDQTtBQUNBO0FBQUEiLCJmaWxlIjoiMjYuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XHJcblx0PHZpZXcgY2xhc3M9XCJtYWluLWxpc3Qgb0JvcmRlclwiPlxyXG5cdFx0PCEtLSDmlofmnKzmoYYgLS0+XHJcblx0XHQ8aW5wdXQgY2xhc3M9XCJtYWluLWlucHV0XCIgOnZhbHVlPVwidmFsdWVcIiA6dHlwZT1cIl90eXBlXCIgOmZvY3VzPVwiX2ZvY3VzXCIgOm1heGxlbmd0aD1cIm1heGxlbmd0aFwiXHJcblx0XHRcdDpwbGFjZWhvbGRlcj1cInBsYWNlaG9sZGVyXCIgOnBhc3N3b3JkPVwidHlwZT09PSdwYXNzd29yZCcmJiFzaG93UGFzc3dvcmRcIlxyXG5cdFx0XHRAaW5wdXQ9XCIkZW1pdCgnaW5wdXQnLCAkZXZlbnQuZGV0YWlsLnZhbHVlKVwiIEBibHVyPVwiJGVtaXQoJ2JsdXInLCAkZXZlbnQpXCIgQGZvY3VzPVwiJGVtaXQoJ2ZvY3VzJywgJGV2ZW50KVwiXHJcblx0XHRcdEBsb25ncHJlc3M9XCIkZW1pdCgnbG9uZ3ByZXNzJywgJGV2ZW50KVwiIEBjb25maXJtPVwiJGVtaXQoJ2NvbmZpcm0nLCAkZXZlbnQpXCIgQGNsaWNrPVwiJGVtaXQoJ2NsaWNrJywgJGV2ZW50KVwiXHJcblx0XHRcdEBsb25ndGFwPVwiJGVtaXQoJ2xvbmd0YXAnLCAkZXZlbnQpXCIgQHRvdWNoY2FuY2VsPVwiJGVtaXQoJ3RvdWNoY2FuY2VsJywgJGV2ZW50KVwiXHJcblx0XHRcdEB0b3VjaGVuZD1cIiRlbWl0KCd0b3VjaGVuZCcsICRldmVudClcIiBAdG91Y2htb3ZlPVwiJGVtaXQoJ3RvdWNobW92ZScsICRldmVudClcIlxyXG5cdFx0XHRAdG91Y2hzdGFydD1cIiRlbWl0KCd0b3VjaHN0YXJ0JywgJGV2ZW50KVwiIC8+XHJcblx0XHQ8IS0tIOaYr+WQpuWPr+ingeWvhueggSAtLT5cclxuXHRcdDxpbWFnZSB2LWlmPVwiX2lzU2hvd1Bhc3MmJnR5cGU9PT0ncGFzc3dvcmQnJiYhX2lzU2hvd0NvZGVcIiBjbGFzcz1cImltZyBjdUljb25cIlxyXG5cdFx0XHQ6Y2xhc3M9XCJzaG93UGFzc3dvcmQ/J2N1SWNvbi1hdHRlbnRpb24nOidjdUljb24tYXR0ZW50aW9uZm9yYmlkJ1wiIEB0YXA9XCJzaG93UGFzc1wiPjwvaW1hZ2U+XHJcblx0XHQ8IS0tIOWAkuiuoeaXtiAtLT5cclxuXHRcdDx2aWV3IHYtaWY9XCJfaXNTaG93Q29kZSYmIV9pc1Nob3dQYXNzXCIgOmNsYXNzPVwiWyd2ZXJjb2RlJyx7J3ZlcmNvZGUtcnVuJzogc2Vjb25kPjB9XVwiIEBjbGljaz1cInNldENvZGVcIj5cclxuXHRcdFx0e3sgZ2V0VmVyQ29kZVNlY29uZCB9fTwvdmlldz5cclxuXHJcblx0PC92aWV3PlxyXG48L3RlbXBsYXRlPlxyXG5cclxuPHNjcmlwdD5cclxuXHRsZXQgX3RoaXMsIGNvdW50RG93bjtcclxuXHRleHBvcnQgZGVmYXVsdCB7XHJcblx0XHRkYXRhKCkge1xyXG5cdFx0XHRyZXR1cm4ge1xyXG5cdFx0XHRcdHNob3dQYXNzd29yZDogZmFsc2UsIC8v5piv5ZCm5pi+56S65piO5paHXHJcblx0XHRcdFx0c2Vjb25kOiAwLCAvL+WAkuiuoeaXtlxyXG5cdFx0XHRcdGlzUnVuQ29kZTogZmFsc2UsIC8v5piv5ZCm5byA5aeL5YCS6K6h5pe2XHJcblx0XHRcdH1cclxuXHRcdH0sXHJcblx0XHRwcm9wczoge1xyXG5cdFx0XHR0eXBlOiBTdHJpbmcsIC8v57G75Z6LXHJcblx0XHRcdHZhbHVlOiBTdHJpbmcsIC8v5YC8XHJcblx0XHRcdHBsYWNlaG9sZGVyOiBTdHJpbmcsIC8v5qGG5YaF5o+Q56S6XHJcblx0XHRcdG1heGxlbmd0aDoge1xyXG5cdFx0XHRcdC8v5pyA5aSn6ZW/5bqmXHJcblx0XHRcdFx0dHlwZTogW051bWJlciwgU3RyaW5nXSxcclxuXHRcdFx0XHRkZWZhdWx0OiAyMCxcclxuXHRcdFx0fSxcclxuXHRcdFx0aXNTaG93UGFzczoge1xyXG5cdFx0XHRcdC8v5piv5ZCm5pi+56S65a+G56CB5Zu+5qCH77yI5LqM6YCJ5LiA77yJXHJcblx0XHRcdFx0dHlwZTogW0Jvb2xlYW4sIFN0cmluZ10sXHJcblx0XHRcdFx0ZGVmYXVsdDogZmFsc2UsXHJcblx0XHRcdH0sXHJcblx0XHRcdGlzU2hvd0NvZGU6IHtcclxuXHRcdFx0XHQvL+aYr+WQpuaYvuekuuiOt+WPlumqjOivgeegge+8iOS6jOmAieS4gO+8iVxyXG5cdFx0XHRcdHR5cGU6IFtCb29sZWFuLCBTdHJpbmddLFxyXG5cdFx0XHRcdGRlZmF1bHQ6IGZhbHNlLFxyXG5cdFx0XHR9LFxyXG5cdFx0XHRjb2RlVGV4dDoge1xyXG5cdFx0XHRcdHR5cGU6IFN0cmluZyxcclxuXHRcdFx0XHRkZWZhdWx0OiBcIuiOt+WPlumqjOivgeeggVwiLFxyXG5cdFx0XHR9LFxyXG5cdFx0XHRzZXRUaW1lOiB7XHJcblx0XHRcdFx0Ly/lgJLorqHml7bml7bpl7Torr7nva5cclxuXHRcdFx0XHR0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxyXG5cdFx0XHRcdGRlZmF1bHQ6IDYwLFxyXG5cdFx0XHR9LFxyXG5cdFx0XHRmb2N1czoge1xyXG5cdFx0XHRcdC8v5piv5ZCm6IGa54SmICBcclxuXHRcdFx0XHR0eXBlOiBbQm9vbGVhbiwgU3RyaW5nXSxcclxuXHRcdFx0XHRkZWZhdWx0OiBmYWxzZVxyXG5cdFx0XHR9XHJcblx0XHR9LFxyXG5cdFx0bW9kZWw6IHtcclxuXHRcdFx0cHJvcDogJ3ZhbHVlJyxcclxuXHRcdFx0ZXZlbnQ6ICdpbnB1dCdcclxuXHRcdH0sXHJcblx0XHRtb3VudGVkKCkge1xyXG5cdFx0XHRfdGhpcyA9IHRoaXNcclxuXHRcdFx0Ly/lh4blpIfop6blj5FcclxuXHRcdFx0dGhpcy4kb24oJ3J1bkNvZGUnLCAodmFsKSA9PiB7XHJcblx0XHRcdFx0dGhpcy5ydW5Db2RlKHZhbCk7XHJcblx0XHRcdH0pO1xyXG5cdFx0XHRjbGVhckludGVydmFsKGNvdW50RG93bik7IC8v5YWI5riF55CG5LiA5qyh5b6q546v77yM6YG/5YWN57yT5a2YXHJcblx0XHR9LFxyXG5cdFx0bWV0aG9kczoge1xyXG5cdFx0XHRzaG93UGFzcygpIHtcclxuXHRcdFx0XHQvL+aYr+WQpuaYvuekuuWvhueggVxyXG5cdFx0XHRcdHRoaXMuc2hvd1Bhc3N3b3JkID0gIXRoaXMuc2hvd1Bhc3N3b3JkXHJcblx0XHRcdH0sXHJcblx0XHRcdHNldENvZGUoKSB7XHJcblx0XHRcdFx0Ly/orr7nva7ojrflj5bpqozor4HnoIHnmoTkuovku7ZcclxuXHRcdFx0XHRpZiAodGhpcy5pc1J1bkNvZGUpIHtcclxuXHRcdFx0XHRcdC8v5Yik5pat5piv5ZCm5byA5aeL5YCS6K6h5pe277yM6YG/5YWN6YeN5aSN54K55Ye7XHJcblx0XHRcdFx0XHRyZXR1cm4gZmFsc2U7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHRoaXMuJGVtaXQoJ3NldENvZGUnKVxyXG5cdFx0XHR9LFxyXG5cdFx0XHRydW5Db2RlKHZhbCkge1xyXG5cdFx0XHRcdC8v5byA5aeL5YCS6K6h5pe2XHJcblx0XHRcdFx0aWYgKFN0cmluZyh2YWwpID09IFwiMFwiKSB7XHJcblxyXG5cdFx0XHRcdFx0Ly/liKTmlq3mmK/lkKbpnIDopoHnu4jmraLlvqrnjq9cclxuXHRcdFx0XHRcdHRoaXMuc2Vjb25kID0gMDsgLy/liJ3lp4vlgJLorqHml7ZcclxuXHRcdFx0XHRcdGNsZWFySW50ZXJ2YWwoY291bnREb3duKTsgLy/muIXnkIblvqrnjq9cclxuXHRcdFx0XHRcdHRoaXMuaXNSdW5Db2RlID0gZmFsc2U7IC8v5YWz6Zet5b6q546v54q25oCBXHJcblx0XHRcdFx0XHRyZXR1cm4gZmFsc2U7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGlmICh0aGlzLmlzUnVuQ29kZSkge1xyXG5cdFx0XHRcdFx0Ly/liKTmlq3mmK/lkKblvIDlp4vlgJLorqHml7bvvIzpgb/lhY3ph43lpI3ngrnlh7tcclxuXHRcdFx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0dGhpcy5pc1J1bkNvZGUgPSB0cnVlXHJcblx0XHRcdFx0dGhpcy5zZWNvbmQgPSB0aGlzLl9zZXRUaW1lIC8v5YCS5pWw56eS5pWwXHJcblxyXG5cdFx0XHRcdGxldCBfdGhpcyA9IHRoaXM7XHJcblx0XHRcdFx0Y291bnREb3duID0gc2V0SW50ZXJ2YWwoZnVuY3Rpb24oKSB7XHJcblx0XHRcdFx0XHRfdGhpcy5zZWNvbmQtLVxyXG5cdFx0XHRcdFx0aWYgKF90aGlzLnNlY29uZCA9PSAwKSB7XHJcblx0XHRcdFx0XHRcdF90aGlzLmlzUnVuQ29kZSA9IGZhbHNlXHJcblx0XHRcdFx0XHRcdGNsZWFySW50ZXJ2YWwoY291bnREb3duKVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH0sIDEwMDApXHJcblx0XHRcdH1cclxuXHRcdH0sXHJcblx0XHRjb21wdXRlZDoge1xyXG5cdFx0XHRfdHlwZSgpIHtcclxuXHRcdFx0XHQvL+WkhOeQhuWAvFxyXG5cdFx0XHRcdGNvbnN0IHR5cGUgPSB0aGlzLnR5cGVcclxuXHRcdFx0XHRyZXR1cm4gdHlwZSA9PSAncGFzc3dvcmQnID8gJ3RleHQnIDogdHlwZVxyXG5cdFx0XHR9LFxyXG5cdFx0XHRfaXNTaG93UGFzcygpIHtcclxuXHRcdFx0XHQvL+WkhOeQhuWAvFxyXG5cdFx0XHRcdHJldHVybiBTdHJpbmcodGhpcy5pc1Nob3dQYXNzKSAhPT0gJ2ZhbHNlJ1xyXG5cdFx0XHR9LFxyXG5cdFx0XHRfaXNTaG93Q29kZSgpIHtcclxuXHRcdFx0XHQvL+WkhOeQhuWAvFxyXG5cdFx0XHRcdHJldHVybiBTdHJpbmcodGhpcy5pc1Nob3dDb2RlKSAhPT0gJ2ZhbHNlJ1xyXG5cdFx0XHR9LFxyXG5cdFx0XHRfc2V0VGltZSgpIHtcclxuXHRcdFx0XHQvL+WkhOeQhuWAvFxyXG5cdFx0XHRcdGNvbnN0IHNldFRpbWUgPSBOdW1iZXIodGhpcy5zZXRUaW1lKVxyXG5cdFx0XHRcdHJldHVybiBzZXRUaW1lID4gMCA/IHNldFRpbWUgOiA2MFxyXG5cdFx0XHR9LFxyXG5cdFx0XHRfZm9jdXMoKSB7XHJcblx0XHRcdFx0Ly/lpITnkIblgLwgIFxyXG5cdFx0XHRcdHJldHVybiBTdHJpbmcodGhpcy5mb2N1cykgIT09ICdmYWxzZSdcclxuXHRcdFx0fSxcclxuXHRcdFx0Z2V0VmVyQ29kZVNlY29uZCgpIHtcclxuXHRcdFx0XHQvL+mqjOivgeeggeWAkuiuoeaXtuiuoeeul1xyXG5cdFx0XHRcdGlmICh0aGlzLnNlY29uZCA8PSAwKSB7XHJcblx0XHRcdFx0XHRyZXR1cm4gdGhpcy5jb2RlVGV4dDtcclxuXHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0aWYgKHRoaXMuc2Vjb25kIDwgMTApIHtcclxuXHRcdFx0XHRcdFx0cmV0dXJuICcwJyArIHRoaXMuc2Vjb25kO1xyXG5cdFx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdFx0cmV0dXJuIHRoaXMuc2Vjb25kO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbjwvc2NyaXB0PlxyXG5cclxuPHN0eWxlPlxyXG5cdEBpbXBvcnQgdXJsKFwiLi9jc3MvaWNvbi5jc3NcIik7XHJcblxyXG5cdC5tYWluLWxpc3Qge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0LyogaGVpZ2h0OiAzNnJweDsgKi9cclxuXHRcdC8qIElucHV0IOmrmOW6piAqL1xyXG5cdFx0Y29sb3I6ICMzMzMzMzM7XHJcblx0XHRwYWRkaW5nOiAzMHJweCAzMnJweDtcclxuXHRcdG1hcmdpbjogMzJycHggMDtcblx0fVxyXG5cclxuXHQuaW1nIHtcclxuXHRcdHdpZHRoOiAzMnJweDtcclxuXHRcdGhlaWdodDogMzJycHg7XHJcblx0XHRmb250LXNpemU6IDMycnB4O1xyXG5cdH1cclxuXHJcblx0Lm1haW4taW5wdXQge1xyXG5cdFx0ZmxleDogMTtcclxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHRmb250LXNpemU6IDI4cnB4O1xyXG5cdFx0LyogbGluZS1oZWlnaHQ6IDEwMHJweDsgKi9cclxuXHRcdHBhZGRpbmctcmlnaHQ6IDEwcnB4O1xyXG5cdFx0bWFyZ2luLWxlZnQ6IDIwcnB4O1xyXG5cdH1cclxuXHJcblx0LnZlcmNvZGUge1xyXG5cdFx0Y29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcclxuXHRcdGZvbnQtc2l6ZTogMjRycHg7XHJcblx0XHQvKiBsaW5lLWhlaWdodDogMTAwcnB4OyAqL1xyXG5cdH1cclxuXHJcblx0LnZlcmNvZGUtcnVuIHtcclxuXHRcdGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCkgIWltcG9ydGFudDtcclxuXHR9XHJcblxyXG5cdC5vQm9yZGVyIHtcclxuXHRcdGJvcmRlcjogbm9uZTtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDIuNXJlbTtcclxuXHRcdC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDYwcnB4IDAgcmdiYSg0MywgODYsIDExMiwgLjEpO1xyXG5cdFx0Ym94LXNoYWRvdzogMCAwIDYwcnB4IDAgcmdiYSg0MywgODYsIDExMiwgLjEpO1xyXG5cdH1cclxuPC9zdHlsZT5cbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///26\n");
- /***/ }),
- /* 27 */
- /*!**********************************************************************************************************!*\
- !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js ***!
- \**********************************************************************************************************/
- /*! exports provided: default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return normalizeComponent; });
- /* globals __VUE_SSR_CONTEXT__ */
- // IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
- // This module is a runtime utility for cleaner component module output and will
- // be included in the final webpack user bundle.
- function normalizeComponent (
- scriptExports,
- render,
- staticRenderFns,
- functionalTemplate,
- injectStyles,
- scopeId,
- moduleIdentifier, /* server only */
- shadowMode, /* vue-cli only */
- components, // fixed by xxxxxx auto components
- renderjs // fixed by xxxxxx renderjs
- ) {
- // Vue.extend constructor export interop
- var options = typeof scriptExports === 'function'
- ? scriptExports.options
- : scriptExports
- // fixed by xxxxxx auto components
- if (components) {
- if (!options.components) {
- options.components = {}
- }
- var hasOwn = Object.prototype.hasOwnProperty
- for (var name in components) {
- if (hasOwn.call(components, name) && !hasOwn.call(options.components, name)) {
- options.components[name] = components[name]
- }
- }
- }
- // fixed by xxxxxx renderjs
- if (renderjs) {
- if(typeof renderjs.beforeCreate === 'function'){
- renderjs.beforeCreate = [renderjs.beforeCreate]
- }
- (renderjs.beforeCreate || (renderjs.beforeCreate = [])).unshift(function() {
- this[renderjs.__module] = this
- });
- (options.mixins || (options.mixins = [])).push(renderjs)
- }
- // render functions
- if (render) {
- options.render = render
- options.staticRenderFns = staticRenderFns
- options._compiled = true
- }
- // functional template
- if (functionalTemplate) {
- options.functional = true
- }
- // scopedId
- if (scopeId) {
- options._scopeId = 'data-v-' + scopeId
- }
- var hook
- if (moduleIdentifier) { // server build
- hook = function (context) {
- // 2.3 injection
- context =
- context || // cached call
- (this.$vnode && this.$vnode.ssrContext) || // stateful
- (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
- // 2.2 with runInNewContext: true
- if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
- context = __VUE_SSR_CONTEXT__
- }
- // inject component styles
- if (injectStyles) {
- injectStyles.call(this, context)
- }
- // register component module identifier for async chunk inferrence
- if (context && context._registeredComponents) {
- context._registeredComponents.add(moduleIdentifier)
- }
- }
- // used by ssr in case component is cached and beforeCreate
- // never gets called
- options._ssrRegister = hook
- } else if (injectStyles) {
- hook = shadowMode
- ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
- : injectStyles
- }
- if (hook) {
- if (options.functional) {
- // for template-only hot-reload because in that case the render fn doesn't
- // go through the normalizer
- options._injectStyles = hook
- // register for functioal component in vue file
- var originalRender = options.render
- options.render = function renderWithStyleInjection (h, context) {
- hook.call(context)
- return originalRender(h, context)
- }
- } else {
- // inject component registration as beforeCreate hook
- var existing = options.beforeCreate
- options.beforeCreate = existing
- ? [].concat(existing, hook)
- : [hook]
- }
- }
- return {
- exports: scriptExports,
- options: options
- }
- }
- /***/ }),
- /* 28 */
- /*!************************************************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/components/watch-login/watch-button.vue ***!
- \************************************************************************************/
- /*! no static exports found */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _watch_button_vue_vue_type_template_id_eb1fde62___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./watch-button.vue?vue&type=template&id=eb1fde62& */ 29);\n/* harmony import */ var _watch_button_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./watch-button.vue?vue&type=script&lang=js& */ 31);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _watch_button_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if([\"default\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _watch_button_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n/* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 27);\n\nvar renderjs\n\n\n\n\n/* normalize component */\n\nvar component = Object(_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(\n _watch_button_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n _watch_button_vue_vue_type_template_id_eb1fde62___WEBPACK_IMPORTED_MODULE_0__[\"render\"],\n _watch_button_vue_vue_type_template_id_eb1fde62___WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"],\n false,\n null,\n null,\n null,\n false,\n _watch_button_vue_vue_type_template_id_eb1fde62___WEBPACK_IMPORTED_MODULE_0__[\"components\"],\n renderjs\n)\n\ncomponent.options.__file = \"components/watch-login/watch-button.vue\"\n/* harmony default export */ __webpack_exports__[\"default\"] = (component.exports);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBeUg7QUFDekg7QUFDZ0U7QUFDTDs7O0FBRzNEO0FBQ3FMO0FBQ3JMLGdCQUFnQix5TEFBVTtBQUMxQixFQUFFLGtGQUFNO0FBQ1IsRUFBRSx1RkFBTTtBQUNSLEVBQUUsZ0dBQWU7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEVBQUUsMkZBQVU7QUFDWjtBQUNBOztBQUVBO0FBQ2UsZ0YiLCJmaWxlIjoiMjguanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZW5kZXIsIHN0YXRpY1JlbmRlckZucywgcmVjeWNsYWJsZVJlbmRlciwgY29tcG9uZW50cyB9IGZyb20gXCIuL3dhdGNoLWJ1dHRvbi52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9ZWIxZmRlNjImXCJcbnZhciByZW5kZXJqc1xuaW1wb3J0IHNjcmlwdCBmcm9tIFwiLi93YXRjaC1idXR0b24udnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5leHBvcnQgKiBmcm9tIFwiLi93YXRjaC1idXR0b24udnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5cblxuLyogbm9ybWFsaXplIGNvbXBvbmVudCAqL1xuaW1wb3J0IG5vcm1hbGl6ZXIgZnJvbSBcIiEuLi8uLi8uLi8uLi8uLi8uLi9hbnpodWFuZ2Jhby9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3Z1ZS1sb2FkZXIvbGliL3J1bnRpbWUvY29tcG9uZW50Tm9ybWFsaXplci5qc1wiXG52YXIgY29tcG9uZW50ID0gbm9ybWFsaXplcihcbiAgc2NyaXB0LFxuICByZW5kZXIsXG4gIHN0YXRpY1JlbmRlckZucyxcbiAgZmFsc2UsXG4gIG51bGwsXG4gIG51bGwsXG4gIG51bGwsXG4gIGZhbHNlLFxuICBjb21wb25lbnRzLFxuICByZW5kZXJqc1xuKVxuXG5jb21wb25lbnQub3B0aW9ucy5fX2ZpbGUgPSBcImNvbXBvbmVudHMvd2F0Y2gtbG9naW4vd2F0Y2gtYnV0dG9uLnZ1ZVwiXG5leHBvcnQgZGVmYXVsdCBjb21wb25lbnQuZXhwb3J0cyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///28\n");
- /***/ }),
- /* 29 */
- /*!*******************************************************************************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/components/watch-login/watch-button.vue?vue&type=template&id=eb1fde62& ***!
- \*******************************************************************************************************************/
- /*! exports provided: render, staticRenderFns, recyclableRender, components */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_button_vue_vue_type_template_id_eb1fde62___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--11-0!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./watch-button.vue?vue&type=template&id=eb1fde62& */ 30);
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_button_vue_vue_type_template_id_eb1fde62___WEBPACK_IMPORTED_MODULE_0__["render"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_button_vue_vue_type_template_id_eb1fde62___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_button_vue_vue_type_template_id_eb1fde62___WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_button_vue_vue_type_template_id_eb1fde62___WEBPACK_IMPORTED_MODULE_0__["components"]; });
- /***/ }),
- /* 30 */
- /*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--11-0!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!D:/UserData/Desktop/w/UhfChengBangZi/components/watch-login/watch-button.vue?vue&type=template&id=eb1fde62& ***!
- \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
- /*! exports provided: render, staticRenderFns, recyclableRender, components */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; });
- var components
- var render = function () {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c("view", [
- _c(
- "button",
- {
- class: _vm._$s(1, "c", [
- "buttonBorder",
- !_vm._rotate ? "dlbutton" : "dlbutton_loading",
- ]),
- style: _vm._$s(1, "s", {
- background: _vm.bgColor,
- color: _vm.fontColor,
- }),
- attrs: { _i: 1 },
- on: {
- click: function ($event) {
- return _vm.$emit("click", $event)
- },
- contact: function ($event) {
- return _vm.$emit("contact", $event)
- },
- error: function ($event) {
- return _vm.$emit("error", $event)
- },
- getphonenumber: function ($event) {
- return _vm.$emit("getphonenumber", $event)
- },
- getuserinfo: function ($event) {
- return _vm.$emit("getuserinfo", $event)
- },
- launchapp: function ($event) {
- return _vm.$emit("launchapp", $event)
- },
- opensetting: function ($event) {
- return _vm.$emit("opensetting", $event)
- },
- touchcancel: function ($event) {
- return _vm.$emit("touchcancel", $event)
- },
- touchend: function ($event) {
- return _vm.$emit("touchend", $event)
- },
- touchmove: function ($event) {
- return _vm.$emit("touchmove", $event)
- },
- touchstart: function ($event) {
- return _vm.$emit("touchstart", $event)
- },
- longpress: function ($event) {
- return _vm.$emit("longtap", $event)
- },
- },
- },
- [
- _c(
- "view",
- {
- class: _vm._$s(2, "c", _vm._rotate ? "rotate_loop" : ""),
- attrs: { _i: 2 },
- },
- [
- _vm._$s(3, "i", _vm._rotate)
- ? _c("text", {
- staticClass: _vm._$s(3, "sc", "cuIcon cuIcon-loading1 "),
- attrs: { _i: 3 },
- })
- : _vm._e(),
- _vm._$s(4, "i", !_vm._rotate)
- ? _c(
- "view",
- { attrs: { _i: 4 } },
- [
- _vm._t(
- "text",
- [_vm._v(_vm._$s(5, "t0-0", _vm._s(_vm.text)))],
- { _i: 5 }
- ),
- ],
- 2
- )
- : _vm._e(),
- ]
- ),
- ]
- ),
- ])
- }
- var recyclableRender = false
- var staticRenderFns = []
- render._withStripped = true
- /***/ }),
- /* 31 */
- /*!*************************************************************************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/components/watch-login/watch-button.vue?vue&type=script&lang=js& ***!
- \*************************************************************************************************************/
- /*! no static exports found */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_button_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--7-1!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/using-components.js!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./watch-button.vue?vue&type=script&lang=js& */ 32);\n/* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_button_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_button_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_button_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if([\"default\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_button_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n /* harmony default export */ __webpack_exports__[\"default\"] = (_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_watch_button_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a); //# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQWduQixDQUFnQixrbkJBQUcsRUFBQyIsImZpbGUiOiIzMS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBtb2QgZnJvbSBcIi0hLi4vLi4vLi4vLi4vLi4vLi4vYW56aHVhbmdiYW8vSEJ1aWxkZXJYL3BsdWdpbnMvdW5pYXBwLWNsaS9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuLi8uLi8uLi8uLi8uLi8uLi9hbnpodWFuZ2Jhby9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3dlYnBhY2stcHJlcHJvY2Vzcy1sb2FkZXIvaW5kZXguanM/P3JlZi0tNy0xIS4uLy4uLy4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvd2VicGFjay11bmktYXBwLWxvYWRlci91c2luZy1jb21wb25lbnRzLmpzIS4uLy4uLy4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL3dhdGNoLWJ1dHRvbi52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCI7IGV4cG9ydCBkZWZhdWx0IG1vZDsgZXhwb3J0ICogZnJvbSBcIi0hLi4vLi4vLi4vLi4vLi4vLi4vYW56aHVhbmdiYW8vSEJ1aWxkZXJYL3BsdWdpbnMvdW5pYXBwLWNsaS9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuLi8uLi8uLi8uLi8uLi8uLi9hbnpodWFuZ2Jhby9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3dlYnBhY2stcHJlcHJvY2Vzcy1sb2FkZXIvaW5kZXguanM/P3JlZi0tNy0xIS4uLy4uLy4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvd2VicGFjay11bmktYXBwLWxvYWRlci91c2luZy1jb21wb25lbnRzLmpzIS4uLy4uLy4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL3dhdGNoLWJ1dHRvbi52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///31\n");
- /***/ }),
- /* 32 */
- /*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--7-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/using-components.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!D:/UserData/Desktop/w/UhfChengBangZi/components/watch-login/watch-button.vue?vue&type=script&lang=js& ***!
- \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nvar _default = {\n props: {\n text: String,\n //显示文本\n rotate: {\n //是否启动加载\n type: [Boolean, String],\n default: false\n },\n bgColor: {\n //按钮背景颜色\n type: String,\n default: \"#333333\"\n },\n fontColor: {\n //按钮字体颜色\n type: String,\n default: \"#FFFFFF\"\n }\n },\n computed: {\n _rotate: function _rotate() {\n //处理值\n return String(this.rotate) !== 'false';\n }\n }\n};\nexports.default = _default;//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vY29tcG9uZW50cy93YXRjaC1sb2dpbi93YXRjaC1idXR0b24udnVlIl0sIm5hbWVzIjpbInByb3BzIiwidGV4dCIsInJvdGF0ZSIsInR5cGUiLCJkZWZhdWx0IiwiYmdDb2xvciIsImZvbnRDb2xvciIsImNvbXB1dGVkIiwiX3JvdGF0ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2VBc0JBO0VBQ0FBO0lBQ0FDO0lBQUE7SUFDQUM7TUFDQTtNQUNBQztNQUNBQztJQUNBO0lBQ0FDO01BQ0E7TUFDQUY7TUFDQUM7SUFDQTtJQUNBRTtNQUNBO01BQ0FIO01BQ0FDO0lBQ0E7RUFDQTtFQUNBRztJQUNBQztNQUNBO01BQ0E7SUFDQTtFQUNBO0FBQ0E7QUFBQSIsImZpbGUiOiIzMi5qcyIsInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cclxuXHQ8dmlldz5cclxuXHRcdDwhLS0g5oyJ6ZKuIC0tPlxyXG5cdFx0PGJ1dHRvbiA6Y2xhc3M9XCJbJ2J1dHRvbkJvcmRlcicsIV9yb3RhdGU/J2RsYnV0dG9uJzonZGxidXR0b25fbG9hZGluZyddXCJcclxuXHRcdFx0OnN0eWxlPVwieydiYWNrZ3JvdW5kJzpiZ0NvbG9yLCAnY29sb3InOiBmb250Q29sb3J9XCIgQGNsaWNrPVwiJGVtaXQoJ2NsaWNrJywgJGV2ZW50KVwiXHJcblx0XHRcdEBjb250YWN0PVwiJGVtaXQoJ2NvbnRhY3QnLCAkZXZlbnQpXCIgQGVycm9yPVwiJGVtaXQoJ2Vycm9yJywgJGV2ZW50KVwiXHJcblx0XHRcdEBnZXRwaG9uZW51bWJlcj1cIiRlbWl0KCdnZXRwaG9uZW51bWJlcicsICRldmVudClcIiBAZ2V0dXNlcmluZm89XCIkZW1pdCgnZ2V0dXNlcmluZm8nLCAkZXZlbnQpXCJcclxuXHRcdFx0QGxhdW5jaGFwcD1cIiRlbWl0KCdsYXVuY2hhcHAnLCAkZXZlbnQpXCIgQGxvbmd0YXA9XCIkZW1pdCgnbG9uZ3RhcCcsICRldmVudClcIlxyXG5cdFx0XHRAb3BlbnNldHRpbmc9XCIkZW1pdCgnb3BlbnNldHRpbmcnLCAkZXZlbnQpXCIgQHRvdWNoY2FuY2VsPVwiJGVtaXQoJ3RvdWNoY2FuY2VsJywgJGV2ZW50KVwiXHJcblx0XHRcdEB0b3VjaGVuZD1cIiRlbWl0KCd0b3VjaGVuZCcsICRldmVudClcIiBAdG91Y2htb3ZlPVwiJGVtaXQoJ3RvdWNobW92ZScsICRldmVudClcIlxyXG5cdFx0XHRAdG91Y2hzdGFydD1cIiRlbWl0KCd0b3VjaHN0YXJ0JywgJGV2ZW50KVwiPlxyXG5cdFx0XHQ8dmlldyA6Y2xhc3M9XCJfcm90YXRlPydyb3RhdGVfbG9vcCc6JydcIj5cclxuXHRcdFx0XHQ8dGV4dCB2LWlmPVwiX3JvdGF0ZVwiIGNsYXNzPVwiY3VJY29uIGN1SWNvbi1sb2FkaW5nMSBcIj48L3RleHQ+XHJcblx0XHRcdFx0PHZpZXcgdi1pZj1cIiFfcm90YXRlXCI+XHJcblx0XHRcdFx0XHQ8c2xvdCBuYW1lPVwidGV4dFwiPnt7IHRleHQgfX08L3Nsb3Q+XHJcblx0XHRcdFx0PC92aWV3PlxyXG5cdFx0XHQ8L3ZpZXc+XHJcblx0XHQ8L2J1dHRvbj5cclxuXHQ8L3ZpZXc+XHJcbjwvdGVtcGxhdGU+XHJcblxyXG48c2NyaXB0PlxyXG5cdGV4cG9ydCBkZWZhdWx0IHtcclxuXHRcdHByb3BzOiB7XHJcblx0XHRcdHRleHQ6IFN0cmluZywgLy/mmL7npLrmlofmnKxcclxuXHRcdFx0cm90YXRlOiB7XHJcblx0XHRcdFx0Ly/mmK/lkKblkK/liqjliqDovb1cclxuXHRcdFx0XHR0eXBlOiBbQm9vbGVhbiwgU3RyaW5nXSxcclxuXHRcdFx0XHRkZWZhdWx0OiBmYWxzZSxcclxuXHRcdFx0fSxcclxuXHRcdFx0YmdDb2xvcjoge1xyXG5cdFx0XHRcdC8v5oyJ6ZKu6IOM5pmv6aKc6ImyXHJcblx0XHRcdFx0dHlwZTogU3RyaW5nLFxyXG5cdFx0XHRcdGRlZmF1bHQ6IFwiIzMzMzMzM1wiLFxyXG5cdFx0XHR9LFxyXG5cdFx0XHRmb250Q29sb3I6IHtcclxuXHRcdFx0XHQvL+aMiemSruWtl+S9k+minOiJslxyXG5cdFx0XHRcdHR5cGU6IFN0cmluZyxcclxuXHRcdFx0XHRkZWZhdWx0OiBcIiNGRkZGRkZcIixcclxuXHRcdFx0fSxcclxuXHRcdH0sXHJcblx0XHRjb21wdXRlZDoge1xyXG5cdFx0XHRfcm90YXRlKCkge1xyXG5cdFx0XHRcdC8v5aSE55CG5YC8XHJcblx0XHRcdFx0cmV0dXJuIFN0cmluZyh0aGlzLnJvdGF0ZSkgIT09ICdmYWxzZSdcclxuXHRcdFx0fSxcclxuXHRcdH1cclxuXHR9XHJcbjwvc2NyaXB0PlxyXG5cclxuPHN0eWxlPlxyXG5cdEBpbXBvcnQgdXJsKFwiLi9jc3MvaWNvbi5jc3NcIik7XHJcblxyXG5cdGJ1dHRvbiB7XHJcblx0XHRvdXRsaW5lOiBub25lO1xyXG5cdFx0Lyog5oiW6ICFIG91dGxpbmU6IDAgKi9cclxuXHR9XHJcblxyXG5cdGJ1dHRvbjphZnRlciB7XHJcblx0XHRib3JkZXI6IG5vbmU7XHJcblx0fVxyXG5cclxuXHRidXR0b246Zm9jdXMge1xyXG5cdFx0b3V0bGluZTogbm9uZTtcclxuXHRcdC8qIOaIluiAhSBvdXRsaW5lOiAwICovXHJcblx0fVxyXG5cclxuXHQuZGxidXR0b24ge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdGNvbG9yOiAjRkZGRkZGO1xyXG5cdFx0Zm9udC1zaXplOiAzMHJweDtcclxuXHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdFx0Lyogd2lkdGg6IDYwMXJweDsgKi9cclxuXHRcdGhlaWdodDogMTAwcnB4O1xyXG5cdFx0YmFja2dyb3VuZDogIzMzMzMzMztcclxuXHRcdGJveC1zaGFkb3c6MHJweCAwcnB4IDEzcnB4IDBycHggcmdiYSgxNjQsMjE3LDIyOCwwLjQpO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogMi41cmVtO1xyXG5cdFx0bWFyZ2luOiAwIDcwcnB4O1xyXG5cdH1cclxuXHJcblx0LmRsYnV0dG9uX2xvYWRpbmcge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdGNvbG9yOiAjRkZGRkZGO1xyXG5cdFx0Zm9udC1zaXplOiAzMHJweDtcclxuXHRcdHdpZHRoOiAxMDBycHg7XHJcblx0XHRoZWlnaHQ6IDEwMHJweDtcclxuXHRcdGJhY2tncm91bmQ6ICMzMzMzMzM7XHJcblx0XHRib3gtc2hhZG93OiAwcnB4IDBycHggMTNycHggMHJweCByZ2JhKDE2NCwyMTcsMjI4LDAuNCk7XHJcblx0XHRib3JkZXItcmFkaXVzOiAyLjVyZW07XHJcblx0XHRtYXJnaW4tdG9wOiAwcnB4O1xyXG5cdH1cclxuXHJcblx0LmJ1dHRvbkJvcmRlciB7XHJcblx0XHRwYWRkaW5nOiAwIDQwcnB4O1xyXG5cdFx0Zm9udC1zaXplOiAzMnJweDtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDEwcnB4O1xyXG5cdFx0Ym9yZGVyOiBub25lO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogMi41cmVtO1xyXG5cdFx0LXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgNjBycHggMCByZ2JhKDAsIDAsIDAsIC4yKTtcclxuXHRcdGJveC1zaGFkb3c6IDAgMCA2MHJweCAwIHJnYmEoMCwwLDAsLjIpIDtcclxuXHRcdC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNHMgY3ViaWMtYmV6aWVyKC41NywgLjE5LCAuNTEsIC45NSk7XHJcblx0XHQtbW96LXRyYW5zaXRpb246IGFsbCAwLjRzIGN1YmljLWJlemllciguNTcsIC4xOSwgLjUxLCAuOTUpO1xyXG5cdFx0LW1zLXRyYW5zaXRpb246IGFsbCAwLjRzIGN1YmljLWJlemllciguNTcsIC4xOSwgLjUxLCAuOTUpO1xyXG5cdFx0LW8tdHJhbnNpdGlvbjogYWxsIDAuNHMgY3ViaWMtYmV6aWVyKC41NywgLjE5LCAuNTEsIC45NSk7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMC40cyBjdWJpYy1iZXppZXIoLjU3LCAuMTksIC41MSwgLjk1KTtcclxuXHR9XHJcblxyXG5cdC8qIOaXi+i9rOWKqOeUuyAqL1xyXG5cdC5yb3RhdGVfbG9vcCB7XHJcblx0XHQtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xyXG5cdFx0LXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAxcztcclxuXHRcdC1tb3otdHJhbnNpdGlvbi1wcm9wZXJ0eTogLW1vei10cmFuc2Zvcm07XHJcblx0XHQtbW96LXRyYW5zaXRpb24tZHVyYXRpb246IDFzO1xyXG5cdFx0LXdlYmtpdC1hbmltYXRpb246IHJvdGF0ZSAxcyBsaW5lYXIgaW5maW5pdGU7XHJcblx0XHQtbW96LWFuaW1hdGlvbjogcm90YXRlIDFzIGxpbmVhciBpbmZpbml0ZTtcclxuXHRcdC1vLWFuaW1hdGlvbjogcm90YXRlIDFzIGxpbmVhciBpbmZpbml0ZTtcclxuXHRcdGFuaW1hdGlvbjogcm90YXRlIDFzIGxpbmVhciBpbmZpbml0ZTtcclxuXHR9XHJcblxyXG5cdEAtd2Via2l0LWtleWZyYW1lcyByb3RhdGUge1xyXG5cdFx0ZnJvbSB7XHJcblx0XHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZylcclxuXHRcdH1cclxuXHJcblx0XHR0byB7XHJcblx0XHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0QC1tb3ota2V5ZnJhbWVzIHJvdGF0ZSB7XHJcblx0XHRmcm9tIHtcclxuXHRcdFx0LW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKVxyXG5cdFx0fVxyXG5cclxuXHRcdHRvIHtcclxuXHRcdFx0LW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpXHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRALW8ta2V5ZnJhbWVzIHJvdGF0ZSB7XHJcblx0XHRmcm9tIHtcclxuXHRcdFx0LW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZylcclxuXHRcdH1cclxuXHJcblx0XHR0byB7XHJcblx0XHRcdC1vLXRyYW5zZm9ybTogcm90YXRlKDM1OWRlZylcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEBrZXlmcmFtZXMgcm90YXRlIHtcclxuXHRcdGZyb20ge1xyXG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKVxyXG5cdFx0fVxyXG5cclxuXHRcdHRvIHtcclxuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKVxyXG5cdFx0fVxyXG5cdH1cclxuPC9zdHlsZT5cbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///32\n");
- /***/ }),
- /* 33 */
- /*!*********************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/api/index.js ***!
- \*********************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n// api/index.js - 集中管理API接口\n\n// 基础URL\n// 确保URL格式正确,包含完整协议前缀\n\n// 本地地址 \nvar BASE_URL = getApp().globalData.apiUrl || 'http://20.0.16.128:23608/api';\n\n// API接口集合\nvar API = {\n // 通过提交的用户id保存当前编号信息\n postUserSetup: \"\".concat(BASE_URL, \"/rfidApp/postUserSetup\"),\n // 获取栋舍列表\n getBuilding: \"\".concat(BASE_URL, \"/rfidApp/getBuilding\"),\n // 获取房间列表\n getRoom: \"\".concat(BASE_URL, \"/rfidApp/getRoom\"),\n // 获取栏位列表\n getPen: \"\".concat(BASE_URL, \"/rfidApp/getPen\"),\n //获取用户信息\n userList: \"\".concat(BASE_URL, \"/rfidApp/userList\"),\n // 提交数据\n postListAdd: \"\".concat(BASE_URL, \"/rfidApp/postListAdd\"),\n // 用户登录 - 直接使用完整URL避免拼接问题\n Login: \"\".concat(BASE_URL, \"/clientUser/login\")\n\n // 获取当前用户信息/rfidApp/userList\n // userList: `${BASE_URL}/clientuser/getUserInfo`,\n};\nvar _default = API;\nexports.default = _default;//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vYXBpL2luZGV4LmpzIl0sIm5hbWVzIjpbIkJBU0VfVVJMIiwiZ2V0QXBwIiwiZ2xvYmFsRGF0YSIsImFwaVVybCIsIkFQSSIsInBvc3RVc2VyU2V0dXAiLCJnZXRCdWlsZGluZyIsImdldFJvb20iLCJnZXRQZW4iLCJ1c2VyTGlzdCIsInBvc3RMaXN0QWRkIiwiTG9naW4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQSxJQUFNQSxRQUFRLEdBQUdDLE1BQU0sRUFBRSxDQUFDQyxVQUFVLENBQUNDLE1BQU0sSUFBSSw4QkFBOEI7O0FBRzdFO0FBQ0EsSUFBTUMsR0FBRyxHQUFHO0VBQ1Y7RUFDQUMsYUFBYSxZQUFLTCxRQUFRLDJCQUF3QjtFQUVsRDtFQUNBTSxXQUFXLFlBQUtOLFFBQVEseUJBQXNCO0VBRTlDO0VBQ0FPLE9BQU8sWUFBS1AsUUFBUSxxQkFBa0I7RUFFdEM7RUFDQVEsTUFBTSxZQUFLUixRQUFRLG9CQUFpQjtFQUVwQztFQUNBUyxRQUFRLFlBQUtULFFBQVEsc0JBQW1CO0VBRXhDO0VBQ0FVLFdBQVcsWUFBS1YsUUFBUSx5QkFBc0I7RUFFOUM7RUFDQVcsS0FBSyxZQUFLWCxRQUFROztFQUVsQjtFQUNBO0FBQ0YsQ0FBQztBQUFDLGVBRWFJLEdBQUc7QUFBQSIsImZpbGUiOiIzMy5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIGFwaS9pbmRleC5qcyAtIOmbhuS4reeuoeeQhkFQSeaOpeWPo1xyXG5cclxuLy8g5Z+656GAVVJMXHJcbi8vIOehruS/nVVSTOagvOW8j+ato+ehru+8jOWMheWQq+WujOaVtOWNj+iuruWJjee8gFxyXG5cclxuLy8g5pys5Zyw5Zyw5Z2AIFxyXG5jb25zdCBCQVNFX1VSTCA9IGdldEFwcCgpLmdsb2JhbERhdGEuYXBpVXJsIHx8ICdodHRwOi8vMjAuMC4xNi4xMjg6MjM2MDgvYXBpJztcclxuXHJcblxyXG4vLyBBUEnmjqXlj6Ppm4blkIhcclxuY29uc3QgQVBJID0ge1xyXG4gIC8vIOmAmui/h+aPkOS6pOeahOeUqOaIt2lk5L+d5a2Y5b2T5YmN57yW5Y+35L+h5oGvXHJcbiAgcG9zdFVzZXJTZXR1cDogYCR7QkFTRV9VUkx9L3JmaWRBcHAvcG9zdFVzZXJTZXR1cGAsXHJcblxyXG4gIC8vIOiOt+WPluagi+iIjeWIl+ihqFxyXG4gIGdldEJ1aWxkaW5nOiBgJHtCQVNFX1VSTH0vcmZpZEFwcC9nZXRCdWlsZGluZ2AsXHJcbiAgXHJcbiAgLy8g6I635Y+W5oi/6Ze05YiX6KGoXHJcbiAgZ2V0Um9vbTogYCR7QkFTRV9VUkx9L3JmaWRBcHAvZ2V0Um9vbWAsXHJcbiAgXHJcbiAgLy8g6I635Y+W5qCP5L2N5YiX6KGoXHJcbiAgZ2V0UGVuOiBgJHtCQVNFX1VSTH0vcmZpZEFwcC9nZXRQZW5gLFxyXG4gIFxyXG4gIC8v6I635Y+W55So5oi35L+h5oGvXHJcbiAgdXNlckxpc3Q6IGAke0JBU0VfVVJMfS9yZmlkQXBwL3VzZXJMaXN0YCxcclxuICBcclxuICAvLyDmj5DkuqTmlbDmja5cclxuICBwb3N0TGlzdEFkZDogYCR7QkFTRV9VUkx9L3JmaWRBcHAvcG9zdExpc3RBZGRgLFxyXG4gIFxyXG4gIC8vIOeUqOaIt+eZu+W9lSAtIOebtOaOpeS9v+eUqOWujOaVtFVSTOmBv+WFjeaLvOaOpemXrumimFxyXG4gIExvZ2luOiBgJHtCQVNFX1VSTH0vY2xpZW50VXNlci9sb2dpbmAsXHJcbiAgXHJcbiAgLy8g6I635Y+W5b2T5YmN55So5oi35L+h5oGvL3JmaWRBcHAvdXNlckxpc3RcclxuICAvLyB1c2VyTGlzdDogYCR7QkFTRV9VUkx9L2NsaWVudHVzZXIvZ2V0VXNlckluZm9gLFxyXG59O1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgQVBJOyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///33\n");
- /***/ }),
- /* 34 */
- /*!******************************************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/pages/index/index.vue?mpType=page ***!
- \******************************************************************************/
- /*! no static exports found */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _index_vue_vue_type_template_id_2be84a3c_mpType_page__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./index.vue?vue&type=template&id=2be84a3c&mpType=page */ 35);\n/* harmony import */ var _index_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./index.vue?vue&type=script&lang=js&mpType=page */ 37);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _index_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_1__) if([\"default\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _index_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n/* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 27);\n\nvar renderjs\n\n\n\n\n/* normalize component */\n\nvar component = Object(_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(\n _index_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n _index_vue_vue_type_template_id_2be84a3c_mpType_page__WEBPACK_IMPORTED_MODULE_0__[\"render\"],\n _index_vue_vue_type_template_id_2be84a3c_mpType_page__WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"],\n false,\n null,\n null,\n null,\n false,\n _index_vue_vue_type_template_id_2be84a3c_mpType_page__WEBPACK_IMPORTED_MODULE_0__[\"components\"],\n renderjs\n)\n\ncomponent.options.__file = \"pages/index/index.vue\"\n/* harmony default export */ __webpack_exports__[\"default\"] = (component.exports);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBNkg7QUFDN0g7QUFDb0U7QUFDTDs7O0FBRy9EO0FBQ3FMO0FBQ3JMLGdCQUFnQix5TEFBVTtBQUMxQixFQUFFLHNGQUFNO0FBQ1IsRUFBRSwyRkFBTTtBQUNSLEVBQUUsb0dBQWU7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEVBQUUsK0ZBQVU7QUFDWjtBQUNBOztBQUVBO0FBQ2UsZ0YiLCJmaWxlIjoiMzQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZW5kZXIsIHN0YXRpY1JlbmRlckZucywgcmVjeWNsYWJsZVJlbmRlciwgY29tcG9uZW50cyB9IGZyb20gXCIuL2luZGV4LnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD0yYmU4NGEzYyZtcFR5cGU9cGFnZVwiXG52YXIgcmVuZGVyanNcbmltcG9ydCBzY3JpcHQgZnJvbSBcIi4vaW5kZXgudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJm1wVHlwZT1wYWdlXCJcbmV4cG9ydCAqIGZyb20gXCIuL2luZGV4LnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZtcFR5cGU9cGFnZVwiXG5cblxuLyogbm9ybWFsaXplIGNvbXBvbmVudCAqL1xuaW1wb3J0IG5vcm1hbGl6ZXIgZnJvbSBcIiEuLi8uLi8uLi8uLi8uLi8uLi9hbnpodWFuZ2Jhby9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3Z1ZS1sb2FkZXIvbGliL3J1bnRpbWUvY29tcG9uZW50Tm9ybWFsaXplci5qc1wiXG52YXIgY29tcG9uZW50ID0gbm9ybWFsaXplcihcbiAgc2NyaXB0LFxuICByZW5kZXIsXG4gIHN0YXRpY1JlbmRlckZucyxcbiAgZmFsc2UsXG4gIG51bGwsXG4gIG51bGwsXG4gIG51bGwsXG4gIGZhbHNlLFxuICBjb21wb25lbnRzLFxuICByZW5kZXJqc1xuKVxuXG5jb21wb25lbnQub3B0aW9ucy5fX2ZpbGUgPSBcInBhZ2VzL2luZGV4L2luZGV4LnZ1ZVwiXG5leHBvcnQgZGVmYXVsdCBjb21wb25lbnQuZXhwb3J0cyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///34\n");
- /***/ }),
- /* 35 */
- /*!************************************************************************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/pages/index/index.vue?vue&type=template&id=2be84a3c&mpType=page ***!
- \************************************************************************************************************/
- /*! exports provided: render, staticRenderFns, recyclableRender, components */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_template_id_2be84a3c_mpType_page__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--11-0!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./index.vue?vue&type=template&id=2be84a3c&mpType=page */ 36);
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_template_id_2be84a3c_mpType_page__WEBPACK_IMPORTED_MODULE_0__["render"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_template_id_2be84a3c_mpType_page__WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_template_id_2be84a3c_mpType_page__WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_template_id_2be84a3c_mpType_page__WEBPACK_IMPORTED_MODULE_0__["components"]; });
- /***/ }),
- /* 36 */
- /*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--11-0!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!D:/UserData/Desktop/w/UhfChengBangZi/pages/index/index.vue?vue&type=template&id=2be84a3c&mpType=page ***!
- \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
- /*! exports provided: render, staticRenderFns, recyclableRender, components */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; });
- var components
- var render = function () {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "view",
- { staticClass: _vm._$s(0, "sc", "page"), attrs: { _i: 0 } },
- [
- _c(
- "button",
- {
- staticClass: _vm._$s(1, "sc", "nav-btn"),
- attrs: { _i: 1 },
- on: { click: _vm.logout },
- },
- [
- _c("text", {
- staticClass: _vm._$s(2, "sc", "icon fa fa-sign-out"),
- attrs: { _i: 2 },
- }),
- ]
- ),
- _c(
- "button",
- {
- staticClass: _vm._$s(3, "sc", "nav-btn"),
- attrs: { _i: 3 },
- on: { click: _vm.toggleServerConfig },
- },
- [
- _c("text", {
- staticClass: _vm._$s(4, "sc", "icon fa fa-cog"),
- attrs: { _i: 4 },
- }),
- ]
- ),
- _c(
- "scroll-view",
- { staticClass: _vm._$s(5, "sc", "scroll-area"), attrs: { _i: 5 } },
- [
- _vm._$s(6, "i", !_vm.showServerConfig)
- ? _c(
- "view",
- {
- staticClass: _vm._$s(6, "sc", "form-section"),
- attrs: { _i: 6 },
- },
- [
- _c(
- "view",
- {
- staticClass: _vm._$s(7, "sc", "section-title"),
- attrs: { _i: 7 },
- },
- [
- _c("text", {
- staticClass: _vm._$s(8, "sc", "title"),
- attrs: { _i: 8 },
- }),
- ]
- ),
- _c(
- "view",
- {
- staticClass: _vm._$s(9, "sc", "rfid-card"),
- attrs: { _i: 9 },
- },
- [
- _c("text", {
- staticClass: _vm._$s(
- 10,
- "sc",
- "icon fa fa-qrcode scan-icon"
- ),
- attrs: { _i: 10 },
- }),
- _c(
- "view",
- {
- staticClass: _vm._$s(11, "sc", "btn-group"),
- attrs: { _i: 11 },
- },
- [
- _c(
- "button",
- {
- staticClass: _vm._$s(12, "sc", "manual-btn"),
- attrs: {
- disabled: _vm._$s(
- 12,
- "a-disabled",
- _vm.isDisable
- ),
- _i: 12,
- },
- on: { click: _vm.init },
- },
- [
- _c("text", {
- staticClass: _vm._$s(
- 13,
- "sc",
- "fa fa-power-off"
- ),
- attrs: { _i: 13 },
- }),
- _vm._v(
- _vm._$s(
- 12,
- "t1-0",
- _vm._s(
- _vm.isDeviceReady ? "已开启" : "开启设备"
- )
- )
- ),
- ]
- ),
- _c(
- "button",
- {
- staticClass: _vm._$s(14, "sc", "scan-btn"),
- attrs: {
- disabled: _vm._$s(
- 14,
- "a-disabled",
- !_vm.isDisable
- ),
- _i: 14,
- },
- on: { click: _vm.toggleContinuousScan },
- },
- [
- _c("text", {
- staticClass: _vm._$s(15, "sc", "fa fa-camera"),
- attrs: { _i: 15 },
- }),
- _vm._v(
- _vm._$s(
- 14,
- "t1-0",
- _vm._s(
- _vm.isContinuousScanning
- ? "停止持续扫描"
- : "开始持续扫描"
- )
- )
- ),
- ]
- ),
- ]
- ),
- _c("input", {
- directives: [
- {
- name: "model",
- rawName: "v-model",
- value: _vm.form.earId,
- expression: "form.earId",
- },
- ],
- staticClass: _vm._$s(16, "sc", "input-box"),
- attrs: { _i: 16 },
- domProps: {
- value: _vm._$s(16, "v-model", _vm.form.earId),
- },
- on: {
- input: function ($event) {
- if ($event.target.composing) {
- return
- }
- _vm.$set(_vm.form, "earId", $event.target.value)
- },
- },
- }),
- _c(
- "scroll-view",
- {
- staticClass: _vm._$s(17, "sc", "sv"),
- attrs: { _i: 17 },
- },
- _vm._l(
- _vm._$s(18, "f", { forItems: _vm.dataList }),
- function (item, index, $20, $30) {
- return _c(
- "view",
- {
- key: _vm._$s(18, "f", {
- forIndex: $20,
- key: index,
- }),
- staticClass: _vm._$s(
- "18-" + $30,
- "sc",
- "data-item"
- ),
- attrs: { _i: "18-" + $30 },
- },
- [
- _c("p", [
- _vm._v(
- _vm._$s(
- "19-" + $30,
- "t0-0",
- _vm._s(item.id)
- )
- ),
- ]),
- _c(
- "picker",
- {
- attrs: {
- value: _vm._$s(
- "20-" + $30,
- "a-value",
- item.typeIndex
- ),
- range: _vm._$s(
- "20-" + $30,
- "a-range",
- _vm.types
- ),
- _i: "20-" + $30,
- },
- on: {
- change: function ($event) {
- return _vm.onTypeChange($event, index)
- },
- },
- },
- [
- _c(
- "view",
- {
- staticClass: _vm._$s(
- "21-" + $30,
- "sc",
- "picker"
- ),
- attrs: { _i: "21-" + $30 },
- },
- [
- _vm._v(
- _vm._$s(
- "21-" + $30,
- "t0-0",
- _vm._s(_vm.types[item.typeIndex])
- )
- ),
- ]
- ),
- ]
- ),
- _c("button", {
- staticClass: _vm._$s(
- "22-" + $30,
- "sc",
- "delete-btn"
- ),
- attrs: { _i: "22-" + $30 },
- on: {
- click: function ($event) {
- return _vm.deleteItem(index)
- },
- },
- }),
- ]
- )
- }
- ),
- 0
- ),
- ]
- ),
- _c(
- "view",
- {
- staticClass: _vm._$s(23, "sc", "btn-group"),
- attrs: { _i: 23 },
- },
- [
- _c("button", {
- staticClass: _vm._$s(24, "sc", "manual-btn"),
- attrs: { _i: 24 },
- on: { click: _vm.resetForm },
- }),
- _c("button", {
- staticClass: _vm._$s(25, "sc", "scan-btn"),
- attrs: { _i: 25 },
- on: { click: _vm.submitForm },
- }),
- ]
- ),
- ]
- )
- : _vm._e(),
- ]
- ),
- ]
- )
- }
- var recyclableRender = false
- var staticRenderFns = []
- render._withStripped = true
- /***/ }),
- /* 37 */
- /*!******************************************************************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/pages/index/index.vue?vue&type=script&lang=js&mpType=page ***!
- \******************************************************************************************************/
- /*! no static exports found */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--7-1!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/using-components.js!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./index.vue?vue&type=script&lang=js&mpType=page */ 38);\n/* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0__) if([\"default\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n /* harmony default export */ __webpack_exports__[\"default\"] = (_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0___default.a); //# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQW9uQixDQUFnQixzbkJBQUcsRUFBQyIsImZpbGUiOiIzNy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBtb2QgZnJvbSBcIi0hLi4vLi4vLi4vLi4vLi4vLi4vYW56aHVhbmdiYW8vSEJ1aWxkZXJYL3BsdWdpbnMvdW5pYXBwLWNsaS9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuLi8uLi8uLi8uLi8uLi8uLi9hbnpodWFuZ2Jhby9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3dlYnBhY2stcHJlcHJvY2Vzcy1sb2FkZXIvaW5kZXguanM/P3JlZi0tNy0xIS4uLy4uLy4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvd2VicGFjay11bmktYXBwLWxvYWRlci91c2luZy1jb21wb25lbnRzLmpzIS4uLy4uLy4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL2luZGV4LnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZtcFR5cGU9cGFnZVwiOyBleHBvcnQgZGVmYXVsdCBtb2Q7IGV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL2JhYmVsLWxvYWRlci9saWIvaW5kZXguanMhLi4vLi4vLi4vLi4vLi4vLi4vYW56aHVhbmdiYW8vSEJ1aWxkZXJYL3BsdWdpbnMvdW5pYXBwLWNsaS9ub2RlX21vZHVsZXMvQGRjbG91ZGlvL3Z1ZS1jbGktcGx1Z2luLXVuaS9wYWNrYWdlcy93ZWJwYWNrLXByZXByb2Nlc3MtbG9hZGVyL2luZGV4LmpzPz9yZWYtLTctMSEuLi8uLi8uLi8uLi8uLi8uLi9hbnpodWFuZ2Jhby9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3dlYnBhY2stdW5pLWFwcC1sb2FkZXIvdXNpbmctY29tcG9uZW50cy5qcyEuLi8uLi8uLi8uLi8uLi8uLi9hbnpodWFuZ2Jhby9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9pbmRleC52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmbXBUeXBlPXBhZ2VcIiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///37\n");
- /***/ }),
- /* 38 */
- /*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--7-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/using-components.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!D:/UserData/Desktop/w/UhfChengBangZi/pages/index/index.vue?vue&type=script&lang=js&mpType=page ***!
- \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _index = _interopRequireDefault(__webpack_require__(/*! @/api/index.js */ 33));\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n// 导入API配置\nvar _default = {\n data: function data() {\n return {\n dataList: [],\n // 存储扫描的耳标数据\n types: ['正常', '淘汰', '死亡'],\n // 耳标类型选项\n scanProgress: 0,\n // 当前扫描进度\n scanTotalAttempts: 0,\n // 总扫描尝试次数\n isDisable: false,\n // 设备禁用状态\n isDeviceReady: false,\n // 设备就绪状态\n isInitializing: false,\n // 设备初始化中状态\n currentDate: '',\n // 当前日期\n showServerConfig: false,\n // 是否显示服务器配置\n uhfSFHelper: null,\n // UHF插件实例\n scanTimeout: null,\n // 扫描超时计时器\n retryTimeout: null,\n // 重试计时器\n maxScanTimer: null,\n // 最大扫描时间计时器\n settingChangeListener: null,\n // 设置变化监听器\n isContinuousScanning: false,\n // 是否正在持续扫描\n continuousScanInterval: null,\n // 持续扫描间隔计时器\n\n // 列表数据\n buildingList: [],\n // 栋舍列表\n roomList: [],\n // 房间列表\n Fieldnumber: [],\n // 栏位列表\n\n // 表单数据\n form: {\n earId: '',\n // 耳标ID\n buildingName: '',\n // 栋舍名称\n roomName: '',\n // 房间名称\n penNo: '',\n // 栏位编号\n status: 'healthy',\n // 状态\n note: '' // 备注\n },\n\n // 提交状态\n isSubmitting: false\n };\n },\n mounted: function mounted() {\n var _this = this;\n // 标记组件已挂载\n this._isMounted = true;\n\n // 初始化日期\n var now = new Date();\n this.currentDate = now.toISOString().split('T')[0];\n\n // 加载已保存的设置\n this.loadSavedSettings();\n\n // 获取列表数据(即使插件未初始化也可以加载)\n this.fetchBuildingList();\n\n // 监听登录成功事件,重新加载用户设置并清空数据\n this.reloadUserSettingsListener = uni.$on('reloadUserSettings', function () {\n // 清空数据\n _this.resetForm();\n _this.loadSavedSettings();\n // 重新加载栋舍列表,确保使用最新的用户信息\n _this.fetchBuildingList();\n });\n\n // 初始化插件实例\n this.initializePluginWithRetry(0);\n\n // 监听全局设置变化\n this.settingChangeListener = uni.$on('settingsUpdated', function (settings) {\n __f__(\"log\", '监听到设置更新事件,更新设置:', settings, \" at pages/index/index.vue:130\");\n _this.loadSavedSettings(settings);\n });\n },\n /**\n * 带重试的插件初始化\n * @param {number} retryCount - 当前重试次数\n */\n initializePluginWithRetry: function initializePluginWithRetry() {\n var retryCount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n __f__(\"log\", '设备初始化成功', \" at pages/index/index.vue:140\");\n this.isDisable = false;\n },\n beforeUnmount: function beforeUnmount() {\n // 标记组件已卸载\n this._isMounted = false;\n // 停止持续扫描\n this.isContinuousScanning = false;\n if (this.continuousScanInterval) {\n clearTimeout(this.continuousScanInterval);\n this.continuousScanInterval = null;\n }\n // 清除所有计时器\n this.cancelScan();\n // 释放设备\n this.releaseDevice();\n // 清理插件实例\n this.uhfSFHelper = null;\n // 移除事件监听\n if (this.settingChangeListener) {\n uni.$off('settingsUpdated', this.settingChangeListener);\n }\n // 移除登录成功事件监听\n if (this.reloadUserSettingsListener) {\n uni.$off('reloadUserSettings', this.reloadUserSettingsListener);\n }\n },\n /**\n * 页面显示时触发,确保获取最新的编号信息并检查登录状态\n */\n onShow: function onShow() {\n this.loadSavedSettings();\n this.checkTokenExpiration();\n },\n methods: {\n /**\n * 检查token是否过期\n */\n checkTokenExpiration: function checkTokenExpiration() {\n var app = getApp();\n\n // 获取过期时间和token\n var expireAt = app.globalData.expireAt || uni.getStorageSync('token_expire_time') || '';\n var token = app.globalData.token || uni.getStorageSync('equipment_token') || '';\n\n // 如果没有token或过期时间,视为未登录\n if (!token || !expireAt) {\n __f__(\"log\", '未登录或缺少登录信息', \" at pages/index/index.vue:190\");\n // 不要直接跳转登录页,让App.vue的checkLoginStatus来处理\n return;\n }\n try {\n // 解析过期时间和当前时间\n var expireTime;\n\n // 处理不同类型的expireAt\n if (typeof expireAt === 'string') {\n // 尝试直接解析为数字\n var timestamp = parseInt(expireAt);\n if (!isNaN(timestamp)) {\n expireTime = timestamp;\n } else {\n // 如果不是数字字符串,尝试作为日期字符串解析\n expireTime = new Date(expireAt).getTime();\n }\n } else if (typeof expireAt === 'number') {\n // 如果已经是数字类型,直接使用\n expireTime = expireAt;\n }\n\n // 确保过期时间有效\n if (isNaN(expireTime)) {\n __f__(\"error\", '无效的过期时间:', expireAt, \" at pages/index/index.vue:216\");\n return;\n }\n var currentTime = new Date().getTime();\n\n // 提前1分钟检查过期,给用户预留时间\n var earlyCheckTime = 60 * 1000;\n if (currentTime + earlyCheckTime > expireTime) {\n __f__(\"log\", '登录即将过期或已过期', \" at pages/index/index.vue:225\");\n // 不要直接跳转登录页,让App.vue的checkLoginStatus来处理\n }\n } catch (error) {\n __f__(\"error\", '检查token过期时发生错误:', error, \" at pages/index/index.vue:229\");\n }\n },\n /**\n * 带重试的插件初始化\n * @param {number} retryCount - 当前重试次数\n */\n initializePluginWithRetry: function initializePluginWithRetry() {\n var _this2 = this;\n var retryCount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var MAX_RETRIES = 3; // 增加重试次数到3次\n var RETRY_DELAY = 2000; // 2秒\n\n __f__(\"log\", \"\\u5F00\\u59CB\\u63D2\\u4EF6\\u521D\\u59CB\\u5316\\u5C1D\\u8BD5 \".concat(retryCount + 1, \"/\").concat(MAX_RETRIES), \" at pages/index/index.vue:240\");\n var isPluginInitialized = this.initPluginInstance();\n if (!isPluginInitialized) {\n __f__(\"warn\", \"\\u63D2\\u4EF6\\u521D\\u59CB\\u5316\\u5931\\u8D25 (attempt \".concat(retryCount + 1, \"/\").concat(MAX_RETRIES, \")\"), \" at pages/index/index.vue:244\");\n this.isDisable = true; // 禁用依赖插件的按钮\n\n // 如果未达到最大重试次数,继续重试\n if (retryCount < MAX_RETRIES) {\n __f__(\"log\", \"Retrying plugin initialization after \".concat(RETRY_DELAY, \"ms\"), \" at pages/index/index.vue:249\");\n setTimeout(function () {\n if (_this2._isMounted) {\n _this2.initializePluginWithRetry(retryCount + 1);\n }\n }, RETRY_DELAY);\n } else {\n __f__(\"error\", 'Max retries reached for plugin initialization', \" at pages/index/index.vue:256\");\n uni.showToast({\n title: '设备初始化失败,请重启应用',\n icon: 'none',\n duration: 3000\n });\n }\n } else {\n __f__(\"log\", '插件初始化成功', \" at pages/index/index.vue:264\");\n this.isDisable = false;\n uni.showToast({\n title: '设备初始化成功',\n icon: 'success',\n duration: 2000\n });\n }\n },\n /**\n * 获取栋舍列表(带重试机制)\n * @param {number} retryCount - 当前重试次数(默认0)\n */\n fetchBuildingList: function fetchBuildingList() {\n var _this3 = this;\n var retryCount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var MAX_RETRIES = 2; // 最大重试次数\n\n // 显示加载提示\n if (retryCount === 0) {\n uni.showLoading({\n title: '加载栋舍列表...',\n mask: true\n });\n }\n\n //获取栋舍列表\n uni.request({\n url: _index.default.getBuilding,\n method: 'GET',\n timeout: 10000,\n // 增加超时时间到10秒\n header: {\n 'content-type': 'application/x-www-form-urlencoded',\n \"x-token\": uni.getStorageSync('equipment_token') || ''\n },\n success: function success(res) {\n // 隐藏加载提示\n if (retryCount === 0) {\n uni.hideLoading();\n }\n _this3.buildingList = res.data.data || [];\n },\n complete: function complete() {\n // 确保最终隐藏loading\n if (retryCount === MAX_RETRIES) {\n uni.hideLoading();\n }\n }\n });\n },\n /**\n * 加载已保存的设置\n */\n loadSavedSettings: function loadSavedSettings() {\n var settings = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var app = getApp();\n __f__(\"log\", '当前全局数据完整内容:', JSON.stringify(app.globalData), \" at pages/index/index.vue:317\");\n var buildingName = uni.getStorageSync('building') || '';\n var roomName = uni.getStorageSync('room') || '';\n var penNo = uni.getStorageSync('pen') || '';\n this.form.buildingName = buildingName;\n this.form.roomName = roomName;\n this.form.penNo = penNo;\n __f__(\"log\", '表单最终赋值结果', this.form.buildingName, \" at pages/index/index.vue:327\");\n __f__(\"log\", '表单最终赋值结果', this.form.roomName, \" at pages/index/index.vue:328\");\n __f__(\"log\", '表单最终赋值结果', this.form.penNo, \" at pages/index/index.vue:329\");\n\n // 如果栋舍不为空且房间列表为空,加载房间列表\n if (buildingName && this.roomList.length === 0) {\n this.fetchRoomList(buildingName);\n } else if (buildingName && this.roomList.length > 0 && roomName) {\n // 如果房间已变更,更新房间列表\n this.fetchRoomList(buildingName);\n }\n\n // 如果房间不为空且栏位列表为空,加载栏位列表\n if (roomName && this.Fieldnumber.length === 0) {\n this.fetchFieldList(roomName);\n } else if (roomName && this.Fieldnumber.length > 0 && penNo) {\n // 如果栏位已变更,更新栏位列表\n this.fetchFieldList(roomName);\n }\n },\n /**\n * 手动刷新全局数据\n */\n refreshGlobalData: function refreshGlobalData() {\n __f__(\"log\", '手动刷新全局数据', \" at pages/index/index.vue:352\");\n\n // 尝试从本地存储恢复最新数据到全局数据\n try {\n var app = getApp();\n var token = uni.getStorageSync('equipment_token') || '';\n var expireAt = uni.getStorageSync('token_expire_time') || '';\n var userInfo = uni.getStorageSync('user_info') || {};\n var building = uni.getStorageSync('building') || '';\n var room = uni.getStorageSync('room') || '';\n var pen = uni.getStorageSync('pen') || '';\n if (token && expireAt) {\n app.globalData.token = token;\n app.globalData.expireAt = expireAt;\n app.globalData.userInfo = userInfo;\n app.globalData.isLoggedIn = true;\n app.globalData.building = building;\n app.globalData.room = room;\n app.globalData.pen = pen;\n app.globalData.buildingName = building;\n app.globalData.roomName = room;\n app.globalData.penNo = pen;\n __f__(\"log\", '从本地存储恢复全局数据成功', \" at pages/index/index.vue:375\");\n }\n } catch (e) {\n __f__(\"error\", '从本地存储恢复全局数据失败:', e, \" at pages/index/index.vue:378\");\n }\n this.loadSavedSettings();\n // 刷新栋舍列表\n this.fetchBuildingList();\n },\n /**\n * 根据栋舍获取房间列表\n * @param {string} buildingName - 栋舍名称\n * @param {number} retryCount - 当前重试次数\n */\n fetchRoomList: function fetchRoomList(buildingName) {\n var _this4 = this;\n var retryCount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n // 显示加载提示\n if (retryCount === 0) {\n uni.showLoading({\n title: '加载房间列表...',\n mask: true\n });\n }\n\n // 发送请求到API获取房间列表\n uni.request({\n url: _index.default.getRoom,\n method: 'GET',\n data: {\n building: buildingName\n },\n timeout: 10000,\n // 增加超时时间到10秒\n header: {\n \"x-token\": uni.getStorageSync('equipment_token') || ''\n },\n success: function success(res) {\n // 隐藏加载提示\n if (retryCount === 0) {\n uni.hideLoading();\n }\n // 更新房间列表\n _this4.roomList = res.data.data || [];\n // 重置房间和栏位选择\n _this4.form.roomName = '';\n _this4.Fieldnumber = [];\n _this4.form.penNo = '';\n }\n });\n },\n /**\n * 根据房间名称获取栏位列表\n * @param {string} roomName - 房间名称\n * @param {number} retryCount - 当前重试次数(默认0)\n */\n fetchFieldList: function fetchFieldList(roomName) {\n var _this5 = this;\n var retryCount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n // 显示加载提示\n if (retryCount === 0) {\n uni.showLoading({\n title: '加载栏位列表...',\n mask: true\n });\n }\n var MAX_RETRIES = 1;\n var RETRY_DELAY = 2000; // 2秒\n\n // 发送请求到API获取栏位列表\n uni.request({\n url: _index.default.getPen,\n method: 'GET',\n timeout: 10000,\n // 增加超时时间到10秒\n header: {\n \"x-token\": uni.getStorageSync('equipment_token') || ''\n },\n success: function success(res) {\n // 隐藏加载提示\n if (retryCount === 0) {\n uni.hideLoading();\n }\n // 更新栏位列表\n _this5.Fieldnumber = res.data.data || [];\n // 重置栏位选择\n _this5.form.penNo = '';\n },\n fail: function fail(err) {\n // 隐藏加载提示\n if (retryCount === 0) {\n uni.hideLoading();\n }\n // 如果未达到最大重试次数,尝试重试\n if (retryCount < MAX_RETRIES) {\n __f__(\"log\", \"Retrying request (\".concat(retryCount + 1, \"/\").concat(MAX_RETRIES, \")\"), \" at pages/index/index.vue:460\");\n setTimeout(function () {\n _this5.fetchFieldList(roomName, retryCount + 1);\n }, RETRY_DELAY);\n } else {}\n }\n });\n },\n /**\n * 初始化UHF插件实例\n * @returns {boolean} 初始化是否成功\n */\n initPluginInstance: function initPluginInstance() {\n if (this.uhfSFHelper) {\n __f__(\"log\", '插件实例已存在', \" at pages/index/index.vue:477\");\n return true;\n }\n try {\n __f__(\"log\", '初始化UHF插件实例', \" at pages/index/index.vue:482\");\n\n // 检查运行环境是否支持原生插件\n if (typeof uni.requireNativePlugin !== 'function') {\n __f__(\"error\", '当前环境不支持uni.requireNativePlugin', \" at pages/index/index.vue:486\");\n return false;\n }\n\n // 尝试加载插件\n this.uhfSFHelper = uni.requireNativePlugin('Alvin-CBZUhfModule');\n\n // 验证插件实例是否有效\n if (!this.uhfSFHelper) {\n return false;\n }\n if (typeof this.uhfSFHelper.doInitDevice !== 'function') {\n //插件实例缺少必要方法: doInitDevice\n this.uhfSFHelper = null;\n return false;\n }\n __f__(\"log\", 'UHF插件实例创建成功', \" at pages/index/index.vue:503\");\n return true;\n } catch (e) {\n __f__(\"error\", '加载UHF插件失败:', e.message, \" at pages/index/index.vue:506\");\n __f__(\"error\", '错误栈:', e.stack, \" at pages/index/index.vue:507\");\n this.uhfSFHelper = null;\n uni.showToast({\n title: '设备功能不可用: ' + e.message,\n icon: 'none',\n duration: 3000\n });\n return false;\n }\n },\n /**\n * 检查并恢复插件实例\n * @param {number} retryCount - 当前重试次数(默认0)\n * @returns {boolean} 插件实例是否有效\n */\n checkAndRestorePluginInstance: function checkAndRestorePluginInstance() {\n var _this6 = this;\n var retryCount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n // 设置最大重试次数和超时时间\n var MAX_RETRIES = 1;\n var RETRY_DELAY = 1000; // 1秒\n\n // 如果实例不存在,尝试初始化\n if (!this.uhfSFHelper) {\n __f__(\"log\", \"\\u6CA1\\u6709\\u63D2\\u4EF6\\u5B9E\\u4F8B\\uFF0C\\u5C1D\\u8BD5\\u521D\\u59CB\\u5316 (\\u91CD\\u8BD5: \".concat(retryCount, \")\"), \" at pages/index/index.vue:530\");\n var result = this.initPluginInstance();\n\n // 如果初始化失败且未达到最大重试次数,递归重试\n if (!result && retryCount < MAX_RETRIES) {\n __f__(\"log\", \"\\u521D\\u59CB\\u5316\\u5931\\u8D25\\uFF0C\\u91CD\\u8BD5 (\".concat(retryCount + 1, \"/\").concat(MAX_RETRIES, \") \\u540E \").concat(RETRY_DELAY, \"ms\"), \" at pages/index/index.vue:535\");\n // 延迟后重试\n setTimeout(function () {\n _this6.checkAndRestorePluginInstance(retryCount + 1);\n }, RETRY_DELAY);\n return false;\n }\n return result;\n }\n\n // 检查实例方法是否存在且有效\n var requiredMethods = ['doInitDevice', 'doStartScan', 'doReleaseDevice'];\n var missingMethods = requiredMethods.filter(function (method) {\n return typeof _this6.uhfSFHelper[method] !== 'function';\n });\n if (missingMethods.length > 0) {\n __f__(\"error\", \"\\u63D2\\u4EF6\\u5B9E\\u4F8B\\u7F3A\\u5C11\\u5FC5\\u8981\\u65B9\\u6CD5: \".concat(missingMethods.join(', ')), \" at pages/index/index.vue:551\");\n this.uhfSFHelper = null;\n\n // 如果未达到最大重试次数,尝试重新初始化\n if (retryCount < MAX_RETRIES) {\n __f__(\"log\", \"Attempting to reinitialize plugin (\".concat(retryCount + 1, \"/\").concat(MAX_RETRIES, \") after \").concat(RETRY_DELAY, \"ms\"), \" at pages/index/index.vue:556\");\n setTimeout(function () {\n _this6.checkAndRestorePluginInstance(retryCount + 1);\n }, RETRY_DELAY);\n return false;\n }\n return false;\n }\n __f__(\"log\", '插件实例有效且准备使用', \" at pages/index/index.vue:566\");\n return true;\n },\n /**\n * 取消当前扫描操作\n */\n cancelScan: function cancelScan() {\n // 清除所有相关计时器\n if (this.scanTimeout) {\n clearTimeout(this.scanTimeout);\n this.scanTimeout = null;\n }\n if (this.retryTimeout) {\n clearTimeout(this.retryTimeout);\n this.retryTimeout = null;\n }\n if (this.maxScanTimer) {\n clearTimeout(this.maxScanTimer);\n this.maxScanTimer = null;\n }\n\n // 隐藏加载提示\n uni.hideLoading();\n __f__(\"log\", '扫描已取消', \" at pages/index/index.vue:593\");\n },\n /**\n * 释放设备资源\n */\n releaseDevice: function releaseDevice() {\n if (this.isDeviceReady && this.uhfSFHelper) {\n try {\n this.uhfSFHelper.doReleaseDevice();\n } catch (e) {\n __f__(\"error\", '释放设备失败', e, \" at pages/index/index.vue:604\");\n }\n this.isDeviceReady = false;\n this.isDisable = false;\n }\n },\n /**\n * 初始化设备\n */\n init: function init() {\n var _this7 = this;\n // 确保插件实例已初始化且有效\n if (!this.checkAndRestorePluginInstance()) {\n return;\n }\n if (this.isInitializing) {\n __f__(\"log\", '设备初始化已在进行中', \" at pages/index/index.vue:621\");\n return;\n }\n if (this.isDeviceReady) {\n __f__(\"log\", '设备已初始化', \" at pages/index/index.vue:626\");\n return uni.showToast({\n title: '设备已开启',\n icon: 'none'\n });\n }\n this.isDisable = false;\n this.isInitializing = true;\n try {\n __f__(\"log\", '开始初始化设备', \" at pages/index/index.vue:634\");\n // 再次检查插件实例是否有效\n if (!this.checkAndRestorePluginInstance()) {\n this.isInitializing = false;\n return;\n }\n this.uhfSFHelper.doInitDevice(function (res) {\n _this7.isInitializing = false;\n if (res === true) {\n _this7.isDeviceReady = true;\n _this7.isDisable = true;\n __f__(\"log\", 'Device initialized successfully', \" at pages/index/index.vue:647\");\n uni.showToast({\n title: '设备已开启',\n icon: 'success'\n });\n } else {\n _this7.isDisable = false;\n __f__(\"error\", '设备初始化失败', \" at pages/index/index.vue:651\");\n uni.showToast({\n title: '初始化失败',\n icon: 'none'\n });\n }\n });\n } catch (e) {\n this.isInitializing = false;\n __f__(\"error\", 'Error during device initialization:', e, \" at pages/index/index.vue:657\");\n this.isDisable = false;\n // 清除插件实例,以便下次初始化尝试\n this.uhfSFHelper = null;\n uni.showToast({\n title: '初始化异常',\n icon: 'none'\n });\n }\n },\n /**\n * 切换持续扫描状态\n */\n toggleContinuousScan: function toggleContinuousScan() {\n // 确保插件实例已初始化且有效\n if (!this.checkAndRestorePluginInstance()) {\n return;\n }\n if (!this.isDeviceReady) {\n return uni.showToast({\n title: '请先开启设备',\n icon: 'none'\n });\n }\n if (this.isContinuousScanning) {\n // 停止持续扫描\n this.isContinuousScanning = false;\n\n // 调用cancelScan方法清除所有计时器和加载提示\n this.cancelScan();\n\n // 清除持续扫描间隔计时器(双重保障)\n if (this.continuousScanInterval) {\n clearTimeout(this.continuousScanInterval);\n this.continuousScanInterval = null;\n }\n\n // 显示扫描停止提示\n uni.showToast({\n title: '已停止扫描',\n icon: 'none'\n });\n } else {\n // 开始持续扫描\n this.isContinuousScanning = true;\n\n // 显示持续扫描提示\n uni.showLoading({\n title: '持续扫描中...',\n mask: true\n });\n\n // 开始持续扫描\n this.performContinuousScan();\n }\n },\n /**\n * 开始扫描耳标(单次)\n */\n scan: function scan() {\n // 确保插件实例已初始化且有效\n if (!this.checkAndRestorePluginInstance()) {\n return;\n }\n if (!this.isDeviceReady) {\n return uni.showToast({\n title: '请先开启设备',\n icon: 'none'\n });\n }\n\n // 如果正在持续扫描,先停止\n if (this.isContinuousScanning) {\n this.toggleContinuousScan();\n }\n\n // 设置扫描参数 - 优化参数以提高成功率\n var scanConfig = {\n retryCount: 3,\n // 增加重试次数\n currentRetry: 0,\n timeout: 2000,\n // 增加超时时间\n interval: 400,\n // 增加间隔,给设备恢复时间\n signalThreshold: 0.5,\n // 降低信号阈值,接受更多信号\n continuous: false // 非持续扫描模式\n };\n\n // 初始化扫描进度变量\n this.scanProgress = 0;\n this.scanTotalAttempts = scanConfig.retryCount;\n\n // 显示扫描中提示,添加mask以禁止背景操作\n uni.showLoading({\n title: '正在扫描耳标...',\n mask: true\n });\n\n // 执行扫描函数\n this.performScan(scanConfig);\n },\n /**\n * 执行持续扫描\n */\n performContinuousScan: function performContinuousScan() {\n // 检查是否仍在持续扫描状态\n if (!this.isContinuousScanning || !this._isMounted || !this.isDeviceReady) {\n if (this.isContinuousScanning) {\n uni.hideLoading();\n }\n return;\n }\n\n // 检查并恢复插件实例\n if (!this.checkAndRestorePluginInstance()) {\n uni.hideLoading();\n this.isContinuousScanning = false;\n return uni.showToast({\n title: '设备功能异常,无法持续扫描',\n icon: 'none'\n });\n }\n\n // 设置持续扫描参数\n var scanConfig = {\n retryCount: 100,\n //重试次数\n currentRetry: 0,\n timeout: 1500,\n // 增加超时时间到1.5秒\n interval: 300,\n // 减少重试间隔到300ms\n signalThreshold: 0.3,\n // 降低信号阈值,提高扫描成功率\n continuous: true // 持续扫描模式\n };\n\n // 执行扫描\n this.performScan(scanConfig);\n },\n /**\n * 执行扫描(带重试机制)\n * @param {object} config - 扫描配置参数\n * @param {number} config.retryCount - 最大重试次数\n * @param {number} config.currentRetry - 当前重试次数\n * @param {number} config.timeout - 单次扫描超时时间(毫秒)\n * @param {number} config.interval - 重试间隔(毫秒)\n */\n /**\n * 处理类型选择变化\n */\n onTypeChange: function onTypeChange(e, index) {\n if (index >= 0 && index < this.dataList.length) {\n this.dataList[index].typeIndex = e.detail.value;\n __f__(\"log\", \"\\u8033\\u6807 \".concat(this.dataList[index].id, \" \\u7C7B\\u578B\\u53D8\\u66F4\\u4E3A: \").concat(this.types[e.detail.value]), \" at pages/index/index.vue:797\");\n }\n },\n /**\n * 删除耳标条目\n */\n deleteItem: function deleteItem(index) {\n if (index >= 0 && index < this.dataList.length) {\n var deletedItem = this.dataList.splice(index, 1);\n __f__(\"log\", \"\\u5220\\u9664\\u8033\\u6807: \".concat(deletedItem[0].id), \" at pages/index/index.vue:807\");\n uni.showToast({\n title: '删除成功',\n icon: 'success'\n });\n }\n },\n performScan: function performScan(config) {\n var _this8 = this;\n // 检查组件是否已卸载或设备是否已准备好\n if (!this._isMounted || !this.isDeviceReady) {\n uni.hideLoading();\n __f__(\"log\", 'Scan aborted: component not mounted or device not ready', \" at pages/index/index.vue:816\");\n return;\n }\n\n // 非持续扫描模式下才检查最大重试次数\n if (!config.continuous && config.currentRetry >= config.retryCount) {\n uni.hideLoading();\n __f__(\"log\", 'Scan failed after maximum retries', \" at pages/index/index.vue:823\");\n return uni.showToast({\n title: '扫描失败,请调整位置重试',\n icon: 'none'\n });\n }\n\n // 非持续扫描模式下才添加最大扫描时间限制\n if (!config.continuous) {\n var maxScanTime = config.timeout * config.retryCount;\n if (!this.maxScanTimer) {\n this.maxScanTimer = setTimeout(function () {\n __f__(\"log\", 'Maximum scan time exceeded', \" at pages/index/index.vue:832\");\n _this8.cancelScan();\n }, maxScanTime);\n }\n }\n\n // 增加重试计数\n config.currentRetry++;\n this.scanProgress = config.currentRetry;\n\n // 持续扫描模式下不更新加载提示,以避免干扰停止操作\n if (!config.continuous && (config.currentRetry % 2 === 0 || config.currentRetry === config.retryCount)) {\n uni.hideLoading();\n uni.showLoading({\n title: \"\\u626B\\u63CF\\u4E2D (\".concat(Math.round(config.currentRetry / config.retryCount * 100), \"%)...\"),\n mask: true\n });\n }\n __f__(\"log\", \"\\u5F00\\u59CB\\u626B\\u63CF\\u5C1D\\u8BD5 \".concat(config.currentRetry, \"/\").concat(config.retryCount, \"\\uFF0C\\u8D85\\u65F6\\u65F6\\u95F4: \").concat(config.timeout, \"ms\"), \" at pages/index/index.vue:851\");\n\n // 清除之前的超时\n if (this.scanTimeout) {\n clearTimeout(this.scanTimeout);\n this.scanTimeout = null;\n }\n\n // 设置超时机制\n this.scanTimeout = setTimeout(function () {\n __f__(\"log\", \"Scan timeout, retrying (\".concat(config.currentRetry, \"/\").concat(config.retryCount, \")\"), \" at pages/index/index.vue:861\");\n // 重试扫描前先检查实例\n if (_this8._isMounted) {\n // 检查并恢复插件实例\n if (_this8.checkAndRestorePluginInstance()) {\n _this8.retryTimeout = setTimeout(function () {\n return _this8.performScan(config);\n }, config.interval);\n } else {\n __f__(\"error\", 'Failed to restore plugin instance before retry', \" at pages/index/index.vue:868\");\n uni.hideLoading();\n return uni.showToast({\n title: '设备功能异常,无法重试',\n icon: 'none'\n });\n }\n }\n }, config.timeout);\n\n // 执行扫描\n try {\n // 清除之前可能存在的重试计时器\n if (this.retryTimeout) {\n clearTimeout(this.retryTimeout);\n this.retryTimeout = null;\n }\n\n // 检查插件实例是否有效\n if (!this.checkAndRestorePluginInstance()) {\n // 清除超时计时器\n if (this.scanTimeout) {\n clearTimeout(this.scanTimeout);\n this.scanTimeout = null;\n }\n __f__(\"error\", 'Invalid plugin instance for scanning after restore attempt', \" at pages/index/index.vue:891\");\n // 尝试重新初始化设备\n this.init(); // 修复:使用init而不是不存在的initDevice方法\n uni.hideLoading();\n return uni.showToast({\n title: '设备功能异常,正在重新初始化',\n icon: 'none'\n });\n }\n\n // 保存当前实例引用,防止闭包中实例变化\n var currentPluginInstance = this.uhfSFHelper;\n\n // 执行扫描命令\n try {\n currentPluginInstance.doStartScan(function (result) {\n // 再次检查插件实例是否与执行扫描时相同\n if (_this8.uhfSFHelper !== currentPluginInstance) {\n __f__(\"warn\", 'Plugin instance changed during scan, ignoring result', \" at pages/index/index.vue:906\");\n // 尝试重新扫描\n if (_this8._isMounted) {\n _this8.retryTimeout = setTimeout(function () {\n return _this8.performScan(config);\n }, config.interval);\n }\n return;\n }\n\n // 检查组件是否已卸载\n if (!_this8._isMounted) return;\n\n // 清除超时计时器\n if (_this8.scanTimeout) {\n clearTimeout(_this8.scanTimeout);\n _this8.scanTimeout = null;\n }\n if (result) {\n // 如果result只是ID字符串,将其包装成对象\n var scanResult = typeof result === 'string' ? {\n id: result,\n signalStrength: 1\n } : result;\n\n // 检查信号强度是否足够\n if (scanResult.signalStrength >= config.signalThreshold) {\n // 清除所有计时器\n if (_this8.maxScanTimer) {\n clearTimeout(_this8.maxScanTimer);\n _this8.maxScanTimer = null;\n }\n if (_this8.retryTimeout) {\n clearTimeout(_this8.retryTimeout);\n _this8.retryTimeout = null;\n }\n if (!config.continuous) {\n uni.hideLoading();\n }\n __f__(\"log\", '扫描成功:', scanResult, \" at pages/index/index.vue:942\");\n _this8.form.earId = scanResult.id;\n\n // 检查是否重复扫描\n var isDuplicate = _this8.dataList.some(function (item) {\n return item.id === scanResult.id;\n });\n if (isDuplicate) {\n __f__(\"log\", '耳标已存在:', scanResult.id, \" at pages/index/index.vue:949\");\n // 持续扫描模式下也显示重复提示,但持续时间较短\n uni.showToast({\n title: '该耳标已扫描过',\n icon: 'none',\n duration: config.continuous ? 500 : 2000\n });\n } else {\n // 默认添加为'正常'类型\n _this8.dataList.push({\n id: scanResult.id,\n typeIndex: 0\n });\n if (!config.continuous) {\n uni.showToast({\n title: '扫描成功',\n icon: 'success'\n });\n } else {\n // 持续扫描模式下,短暂提示后继续\n uni.showToast({\n title: '扫描到耳标',\n icon: 'success',\n duration: 500\n });\n }\n }\n\n // 持续扫描模式下,确保继续扫描\n if (config.continuous && _this8.isContinuousScanning) {\n // 清除可能存在的旧计时器\n if (_this8.continuousScanInterval) {\n clearTimeout(_this8.continuousScanInterval);\n _this8.continuousScanInterval = null;\n }\n // 设置新的计时器,确保持续扫描\n _this8.continuousScanInterval = setTimeout(function () {\n // 再次检查持续扫描状态\n if (_this8.isContinuousScanning && _this8.isDeviceReady) {\n _this8.performContinuousScan();\n }\n }, 500); // 短暂延迟后继续扫描\n }\n } else {\n __f__(\"log\", \"Scan result with weak signal (\".concat(scanResult.signalStrength, \"), retrying\"), \" at pages/index/index.vue:983\");\n // 信号太弱,继续重试前检查实例\n if (_this8._isMounted) {\n if (_this8.checkAndRestorePluginInstance()) {\n _this8.retryTimeout = setTimeout(function () {\n return _this8.performScan(config);\n }, config.interval);\n } else {\n __f__(\"error\", 'Failed to restore plugin instance for retry', \" at pages/index/index.vue:989\");\n uni.hideLoading();\n return uni.showToast({\n title: '设备功能异常',\n icon: 'none'\n });\n }\n }\n }\n } else {\n __f__(\"log\", \"Scan failed, retrying (\".concat(config.currentRetry, \"/\").concat(config.retryCount, \")\"), \" at pages/index/index.vue:996\");\n // 重试扫描前检查实例\n if (_this8._isMounted) {\n if (_this8.checkAndRestorePluginInstance()) {\n _this8.retryTimeout = setTimeout(function () {\n return _this8.performScan(config);\n }, config.interval);\n } else {\n __f__(\"error\", 'Failed to restore plugin instance for retry', \" at pages/index/index.vue:1002\");\n uni.hideLoading();\n return uni.showToast({\n title: '设备功能异常',\n icon: 'none'\n });\n }\n }\n }\n });\n } catch (e) {\n __f__(\"error\", 'Exception during scan execution:', e, \" at pages/index/index.vue:1010\");\n // 清除超时计时器\n if (this.scanTimeout) {\n clearTimeout(this.scanTimeout);\n this.scanTimeout = null;\n }\n\n // 检查是否是实例不可用错误,增强检测逻辑\n if (e.message && (e.message.includes('instance is not available') || e.message.includes('receiveTasks') || e.message.includes('Failed to receiveTasks'))) {\n __f__(\"error\", 'Plugin instance not available during scan', \" at pages/index/index.vue:1023\");\n // 尝试重新初始化\n this.uhfSFHelper = null;\n if (this.checkAndRestorePluginInstance()) {\n // 重新执行扫描\n if (this._isMounted) {\n this.retryTimeout = setTimeout(function () {\n return _this8.performScan(config);\n }, config.interval * 2);\n }\n } else {\n uni.hideLoading();\n return uni.showToast({\n title: '设备功能异常,无法扫描',\n icon: 'none'\n });\n }\n } else {\n // 其他错误\n if (this._isMounted) {\n this.retryTimeout = setTimeout(function () {\n return _this8.performScan(config);\n }, config.interval);\n }\n }\n }\n } catch (e) {\n // 清除超时计时器\n if (this.scanTimeout) {\n clearTimeout(this.scanTimeout);\n this.scanTimeout = null;\n }\n __f__(\"error\", 'Error during scan setup:', e, \" at pages/index/index.vue:1049\");\n // 检查错误是否与实例不可用相关,增强检测逻辑\n if (e.message && (e.message.includes('instance is not available') || e.message.includes('receiveTasks') || e.message.includes('Failed to receiveTasks'))) {\n __f__(\"error\", 'Plugin instance not available during scan setup', \" at pages/index/index.vue:1056\");\n // 清除当前实例\n this.uhfSFHelper = null;\n // 尝试重新初始化\n if (this.checkAndRestorePluginInstance()) {\n // 重新执行扫描\n if (this._isMounted) {\n this.retryTimeout = setTimeout(function () {\n return _this8.performScan(config);\n }, config.interval * 2); // 增加间隔\n }\n } else {\n uni.hideLoading();\n return uni.showToast({\n title: '设备功能异常',\n icon: 'none'\n });\n }\n } else {\n // 其他错误,继续重试\n if (this._isMounted) {\n this.retryTimeout = setTimeout(function () {\n return _this8.performScan(config);\n }, config.interval);\n }\n }\n }\n },\n /**\n * 提交表单数据\n */\n submitForm: function submitForm() {\n var _this9 = this;\n // 在验证前先尝试重新加载设置\n this.loadSavedSettings();\n __f__(\"log\", '提交表单数据:', this.form, \" at pages/index/index.vue:1084\");\n\n // 验证编号是否已选择\n var missingField = '';\n if (!this.form.buildingName) missingField = '栋舍';else if (!this.form.roomName) missingField = '房间';else if (!this.form.penNo) missingField = '栏位';\n if (missingField) {\n return uni.showToast({\n title: \"\\u672A\\u9009\\u62E9\".concat(missingField, \"\\u7F16\\u53F7\"),\n icon: 'none',\n duration: 3000\n });\n }\n\n // 验证耳标是否已扫描\n if (this.dataList.length === 0) {\n return uni.showToast({\n title: '请先扫描耳标',\n icon: 'none',\n duration: 3000\n });\n }\n\n // 验证用户ID是否存在\n var app = getApp();\n var userInfo = app.globalData.userInfo;\n __f__(\"log\", '用户信息:', userInfo, \" at pages/index/index.vue:1104\");\n\n // 更安全地获取用户ID,增加多重检查\n var userId = userInfo.ID;\n if (!userId) {\n return uni.showToast({\n title: '用户未登录',\n icon: 'none',\n duration: 3000\n });\n }\n uni.showLoading({\n title: '提交中...',\n mask: true\n });\n var rfidString = this.dataList.map(function (item) {\n return \"\".concat(item.id, \":\").concat(_this9.types[item.typeIndex]);\n }).join(',');\n\n // 获取设备信息\n var deviceInfo = {};\n try {\n deviceInfo = uni.getSystemInfoSync();\n } catch (e) {\n __f__(\"error\", '获取设备信息失败:', e, \" at pages/index/index.vue:1123\");\n }\n\n // 准备提交数据\n var submitData = {\n token: uni.getStorageSync('equipment_token'),\n rfid: rfidString,\n buildingName: this.form.buildingName,\n roomName: this.form.roomName,\n penNo: this.form.penNo,\n userId: userId,\n username: userInfo.username || '',\n time: new Date().toISOString(),\n deviceModel: deviceInfo.model || '未获取到设备型号',\n // 设备型号\n deviceVersion: deviceInfo.system || '未获取到设备版本号' // 设备版本号\n };\n\n // 发送请求到API\n this.submitData(submitData);\n },\n /**\n * 提交数据\n * @param {object} data - 要提交的数据\n */\n submitData: function submitData(data) {\n var _this10 = this;\n __f__(\"log\", 'token', uni.getStorageSync('equipment_token'), \" at pages/index/index.vue:1150\");\n __f__(\"log\", '提交的数据', data, \" at pages/index/index.vue:1151\");\n // 设置独立的提交加载状态标志\n this.isSubmitting = true;\n uni.request({\n url: _index.default.postListAdd,\n method: 'POST',\n data: data,\n header: {\n 'content-type': 'application/json',\n 'x-token': uni.getStorageSync('equipment_token') // 将token添加到请求头中\n },\n\n timeout: 10000,\n // 设置10秒超时\n success: function success(res) {\n __f__(\"log\", 'API响应:', res, \" at pages/index/index.vue:1165\");\n\n // 先隐藏加载提示\n if (_this10.isSubmitting) {\n uni.hideLoading();\n _this10.isSubmitting = false;\n }\n if (res.data) {\n __f__(\"log\", '服务器返回数据:', res.data, \" at pages/index/index.vue:1174\");\n var message = res.data.msg || '提交成功';\n __f__(\"log\", '显示提示:', message, \" at pages/index/index.vue:1176\");\n uni.showToast({\n title: message,\n icon: res.data.code === 0 ? 'success' : 'none',\n duration: 3000\n });\n if (res.data.code === 0) {\n // 添加本地记录\n _this10.records.unshift({\n rfid: data.rfid,\n building: data.buildingName,\n roomName: data.roomName,\n pen: data.penNo,\n userId: data.userId,\n time: new Date().toLocaleTimeString()\n });\n\n // 停止持续扫描\n if (_this10.isContinuousScanning) {\n _this10.toggleContinuousScan();\n }\n\n // 清空扫描数据\n _this10.resetForm();\n }\n } else {\n __f__(\"error\", '提交失败: 响应数据格式不正确', res, \" at pages/index/index.vue:1204\");\n // 显示错误提示\n uni.showToast({\n title: '提交失败,请重试',\n icon: 'none',\n duration: 3000\n });\n }\n },\n fail: function fail(err) {\n __f__(\"error\", '网络请求失败:', err, \" at pages/index/index.vue:1214\");\n // 隐藏加载提示并显示错误提示\n if (_this10.isSubmitting) {\n uni.hideLoading();\n _this10.isSubmitting = false;\n }\n uni.showToast({\n title: '网络请求失败,请重试',\n icon: 'none',\n duration: 3000\n });\n // 接口失败不影响耳标扫描,无需额外处理\n },\n\n complete: function complete() {\n // 确保加载提示被隐藏\n setTimeout(function () {\n if (_this10.isSubmitting) {\n uni.hideLoading();\n _this10.isSubmitting = false;\n }\n }, 2000);\n }\n });\n },\n // 重置\n resetForm: function resetForm() {\n this.form.earId = '';\n this.form.buildingName = '';\n this.form.roomName = '';\n this.form.penNo = '';\n this.form.status = 'healthy';\n this.form.note = '';\n // 清除扫描结果列表\n this.dataList = [];\n },\n // 选择\n onBuildingChange: function onBuildingChange(e) {\n var buildingName = this.buildingList[e.detail.value];\n this.form.buildingName = buildingName;\n // 根据选择的栋舍加载房间列表\n if (buildingName) {\n this.fetchRoomList(buildingName);\n } else {\n // 清空房间和栏位列表\n this.roomList = [];\n this.Fieldnumber = [];\n this.form.roomName = '';\n this.form.penNo = '';\n }\n },\n onRoomChange: function onRoomChange(e) {\n var roomName = this.roomList[e.detail.value];\n this.form.roomName = roomName;\n // 根据选择的房间加载栏位列表\n if (roomName) {\n this.fetchFieldList(roomName);\n } else {\n // 清空栏位列表\n this.Fieldnumber = [];\n this.form.penNo = '';\n }\n },\n onFieldChange: function onFieldChange(e) {\n this.form.penNo = this.Fieldnumber[e.detail.value];\n },\n // 其他\n logout: function logout() {\n // 清空数据\n this.resetForm();\n\n // 释放设备资源\n this.releaseDevice();\n\n // 清除全局用户信息和登录状态\n var app = getApp();\n app.globalData.userInfo = null;\n app.globalData.token = '';\n app.globalData.expireAt = '';\n app.globalData.isLoggedIn = false;\n app.globalData.building = '';\n app.globalData.room = '';\n app.globalData.pen = '';\n app.globalData.buildingName = '';\n app.globalData.roomName = '';\n app.globalData.penNo = '';\n\n // 清除本地缓存中的所有登录相关信息\n try {\n uni.removeStorageSync('user_info');\n uni.removeStorageSync('equipment_token');\n uni.removeStorageSync('token_expire_time');\n // 可选:清除编号相关的缓存\n // uni.removeStorageSync('building');\n // uni.removeStorageSync('room');\n // uni.removeStorageSync('pen');\n // uni.removeStorageSync('buildingName');\n // uni.removeStorageSync('roomName');\n // uni.removeStorageSync('penNo');\n } catch (e) {\n __f__(\"error\", '清除登录信息失败:', e, \" at pages/index/index.vue:1318\");\n }\n },\n toggleServerConfig: function toggleServerConfig() {\n this.showServerConfig = !this.showServerConfig;\n }\n }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 21)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvaW5kZXgvaW5kZXgudnVlIl0sIm5hbWVzIjpbImRhdGEiLCJkYXRhTGlzdCIsInR5cGVzIiwic2NhblByb2dyZXNzIiwic2NhblRvdGFsQXR0ZW1wdHMiLCJpc0Rpc2FibGUiLCJpc0RldmljZVJlYWR5IiwiaXNJbml0aWFsaXppbmciLCJjdXJyZW50RGF0ZSIsInNob3dTZXJ2ZXJDb25maWciLCJ1aGZTRkhlbHBlciIsInNjYW5UaW1lb3V0IiwicmV0cnlUaW1lb3V0IiwibWF4U2NhblRpbWVyIiwic2V0dGluZ0NoYW5nZUxpc3RlbmVyIiwiaXNDb250aW51b3VzU2Nhbm5pbmciLCJjb250aW51b3VzU2NhbkludGVydmFsIiwiYnVpbGRpbmdMaXN0Iiwicm9vbUxpc3QiLCJGaWVsZG51bWJlciIsImZvcm0iLCJlYXJJZCIsImJ1aWxkaW5nTmFtZSIsInJvb21OYW1lIiwicGVuTm8iLCJzdGF0dXMiLCJub3RlIiwiaXNTdWJtaXR0aW5nIiwibW91bnRlZCIsImluaXRpYWxpemVQbHVnaW5XaXRoUmV0cnkiLCJiZWZvcmVVbm1vdW50IiwiY2xlYXJUaW1lb3V0IiwidW5pIiwib25TaG93IiwibWV0aG9kcyIsImNoZWNrVG9rZW5FeHBpcmF0aW9uIiwiZXhwaXJlVGltZSIsInNldFRpbWVvdXQiLCJ0aXRsZSIsImljb24iLCJkdXJhdGlvbiIsImZldGNoQnVpbGRpbmdMaXN0IiwibWFzayIsInVybCIsIm1ldGhvZCIsInRpbWVvdXQiLCJoZWFkZXIiLCJzdWNjZXNzIiwiY29tcGxldGUiLCJsb2FkU2F2ZWRTZXR0aW5ncyIsInJlZnJlc2hHbG9iYWxEYXRhIiwiYXBwIiwiZmV0Y2hSb29tTGlzdCIsImJ1aWxkaW5nIiwiZmV0Y2hGaWVsZExpc3QiLCJmYWlsIiwiaW5pdFBsdWdpbkluc3RhbmNlIiwiY2hlY2tBbmRSZXN0b3JlUGx1Z2luSW5zdGFuY2UiLCJjYW5jZWxTY2FuIiwicmVsZWFzZURldmljZSIsImluaXQiLCJ0b2dnbGVDb250aW51b3VzU2NhbiIsInNjYW4iLCJyZXRyeUNvdW50IiwiY3VycmVudFJldHJ5IiwiaW50ZXJ2YWwiLCJzaWduYWxUaHJlc2hvbGQiLCJjb250aW51b3VzIiwicGVyZm9ybUNvbnRpbnVvdXNTY2FuIiwib25UeXBlQ2hhbmdlIiwiZGVsZXRlSXRlbSIsInBlcmZvcm1TY2FuIiwiY29uZmlnIiwiY3VycmVudFBsdWdpbkluc3RhbmNlIiwiaWQiLCJzaWduYWxTdHJlbmd0aCIsInR5cGVJbmRleCIsImUiLCJzdWJtaXRGb3JtIiwiZGV2aWNlSW5mbyIsInRva2VuIiwicmZpZCIsInVzZXJJZCIsInVzZXJuYW1lIiwidGltZSIsImRldmljZU1vZGVsIiwiZGV2aWNlVmVyc2lvbiIsInN1Ym1pdERhdGEiLCJwZW4iLCJyZXNldEZvcm0iLCJvbkJ1aWxkaW5nQ2hhbmdlIiwib25Sb29tQ2hhbmdlIiwib25GaWVsZENoYW5nZSIsImxvZ291dCIsInRvZ2dsZVNlcnZlckNvbmZpZyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQXlEQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFEQTtBQUFBLGVBR0E7RUFDQUE7SUFDQTtNQUNBQztNQUFBO01BQ0FDO01BQUE7TUFDQUM7TUFBQTtNQUNBQztNQUFBO01BQ0FDO01BQUE7TUFDQUM7TUFBQTtNQUNBQztNQUFBO01BQ0FDO01BQUE7TUFDQUM7TUFBQTtNQUNBQztNQUFBO01BQ0FDO01BQUE7TUFDQUM7TUFBQTtNQUNBQztNQUFBO01BQ0FDO01BQUE7TUFDQUM7TUFBQTtNQUNBQztNQUFBOztNQUVBO01BQ0FDO01BQUE7TUFDQUM7TUFBQTtNQUNBQztNQUFBOztNQUVBO01BQ0FDO1FBQ0FDO1FBQUE7UUFDQUM7UUFBQTtRQUNBQztRQUFBO1FBQ0FDO1FBQUE7UUFDQUM7UUFBQTtRQUNBQztNQUNBOztNQUVBO01BQ0FDO0lBRUE7RUFDQTtFQUVBQztJQUFBO0lBQ0E7SUFDQTs7SUFFQTtJQUNBO0lBQ0E7O0lBRUE7SUFDQTs7SUFFQTtJQUNBOztJQUVBO0lBQ0E7TUFDQTtNQUNBO01BRUE7TUFDQTtNQUNBO0lBQ0E7O0lBRUE7SUFDQTs7SUFFQTtJQUNBO01BQ0E7TUFDQTtJQUNBO0VBQ0E7RUFFQTtBQUNBO0FBQ0E7QUFDQTtFQUNBQztJQUFBO0lBQ0E7SUFDQTtFQUNBO0VBRUFDO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtNQUNBQztNQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO01BQ0FDO0lBQ0E7SUFDQTtJQUNBO01BQ0FBO0lBQ0E7RUFDQTtFQUVBO0FBQ0E7QUFDQTtFQUNBQztJQUNBO0lBQ0E7RUFDQTtFQUVBQztJQUNBO0FBQ0E7QUFDQTtJQUNBQztNQUNBOztNQUVBO01BQ0E7TUFDQTs7TUFFQTtNQUNBO1FBQ0E7UUFDQTtRQUNBO01BQ0E7TUFFQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtVQUNBO1VBQ0E7VUFDQTtZQUNBQztVQUNBO1lBQ0E7WUFDQUE7VUFDQTtRQUNBO1VBQ0E7VUFDQUE7UUFDQTs7UUFFQTtRQUNBO1VBQ0E7VUFDQTtRQUNBO1FBRUE7O1FBRUE7UUFDQTtRQUNBO1VBQ0E7VUFDQTtRQUNBO01BQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7QUFDQTtJQUNBUDtNQUFBO01BQUE7TUFDQTtNQUNBOztNQUVBO01BRUE7TUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtVQUNBO1VBQ0FRO1lBQ0E7Y0FDQTtZQUNBO1VBQ0E7UUFDQTtVQUNBO1VBQ0FMO1lBQ0FNO1lBQ0FDO1lBQ0FDO1VBQ0E7UUFDQTtNQUNBO1FBQ0E7UUFDQTtRQUNBUjtVQUNBTTtVQUNBQztVQUNBQztRQUNBO01BQ0E7SUFDQTtJQUNBO0FBQ0E7QUFDQTtBQUNBO0lBQ0FDO01BQUE7TUFBQTtNQUNBOztNQUVBO01BQ0E7UUFDQVQ7VUFBQU07VUFBQUk7UUFBQTtNQUNBOztNQUVBO01BQ0FWO1FBQ0FXO1FBQ0FDO1FBQ0FDO1FBQUE7UUFDQUM7VUFDQTtVQUNBO1FBQ0E7UUFDQUM7VUFDQTtVQUNBO1lBQ0FmO1VBQ0E7VUFDQTtRQUNBO1FBRUFnQjtVQUNBO1VBQ0E7WUFDQWhCO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQTtBQUNBO0FBQ0E7SUFDQWlCO01BQUE7TUFFQTtNQUNBO01BRUE7TUFDQTtNQUNBO01BRUE7TUFDQTtNQUNBO01BRUE7TUFDQTtNQUNBOztNQUVBO01BQ0E7UUFDQTtNQUNBO1FBQ0E7UUFDQTtNQUNBOztNQUVBO01BQ0E7UUFDQTtNQUNBO1FBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQTtBQUNBO0FBQ0E7SUFDQUM7TUFDQTs7TUFFQTtNQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFFQTtVQUNBQztVQUNBQTtVQUNBQTtVQUNBQTtVQUNBQTtVQUNBQTtVQUNBQTtVQUNBQTtVQUNBQTtVQUNBQTtVQUNBO1FBQ0E7TUFDQTtRQUNBO01BQ0E7TUFFQTtNQUNBO01BQ0E7SUFDQTtJQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQUM7TUFBQTtNQUFBO01BQ0E7TUFDQTtRQUNBcEI7VUFBQU07VUFBQUk7UUFBQTtNQUNBOztNQUVBO01BQ0FWO1FBQ0FXO1FBQ0FDO1FBQ0E1QztVQUFBcUQ7UUFBQTtRQUNBUjtRQUFBO1FBQ0FDO1VBQ0E7UUFDQTtRQUNBQztVQUNBO1VBQ0E7WUFDQWY7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtRQUNBO01BQ0E7SUFDQTtJQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQXNCO01BQUE7TUFBQTtNQUNBO01BQ0E7UUFDQXRCO1VBQUFNO1VBQUFJO1FBQUE7TUFDQTtNQUVBO01BQ0E7O01BRUE7TUFDQVY7UUFDQVc7UUFDQUM7UUFDQUM7UUFBQTtRQUNBQztVQUNBO1FBQ0E7UUFDQUM7VUFDQTtVQUNBO1lBQ0FmO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtRQUNBO1FBQ0F1QjtVQUNBO1VBQ0E7WUFDQXZCO1VBQ0E7VUFDQTtVQUNBO1lBQ0E7WUFDQUs7Y0FDQTtZQUNBO1VBQ0EsUUFFQTtRQUNBO01BQ0E7SUFDQTtJQUVBO0FBQ0E7QUFDQTtBQUNBO0lBQ0FtQjtNQUNBO1FBQ0E7UUFDQTtNQUNBO01BRUE7UUFDQTs7UUFFQTtRQUNBO1VBQ0E7VUFDQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtVQUNBO1FBQ0E7UUFFQTtVQUNBO1VBQ0E7VUFDQTtRQUNBO1FBQ0E7UUFDQTtNQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0F4QjtVQUNBTTtVQUNBQztVQUNBQztRQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtJQUNBaUI7TUFBQTtNQUFBO01BQ0E7TUFDQTtNQUNBOztNQUVBO01BQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7VUFDQTtVQUNBO1VBQ0FwQjtZQUNBO1VBQ0E7VUFDQTtRQUNBO1FBRUE7TUFDQTs7TUFFQTtNQUNBO01BQ0E7UUFBQTtNQUFBO01BRUE7UUFDQTtRQUNBOztRQUVBO1FBQ0E7VUFDQTtVQUNBQTtZQUNBO1VBQ0E7VUFDQTtRQUNBO1FBRUE7TUFDQTtNQUVBO01BQ0E7SUFDQTtJQUVBO0FBQ0E7QUFDQTtJQUNBcUI7TUFDQTtNQUNBO1FBQ0EzQjtRQUNBO01BQ0E7TUFFQTtRQUNBQTtRQUNBO01BQ0E7TUFFQTtRQUNBQTtRQUNBO01BQ0E7O01BRUE7TUFDQUM7TUFFQTtJQUNBO0lBRUE7QUFDQTtBQUNBO0lBQ0EyQjtNQUNBO1FBQ0E7VUFDQTtRQUNBO1VBQ0E7UUFDQTtRQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUE7QUFDQTtBQUNBO0lBQ0FDO01BQUE7TUFDQTtNQUNBO1FBQ0E7TUFDQTtNQUVBO1FBQ0E7UUFDQTtNQUNBO01BRUE7UUFDQTtRQUNBO1VBQUF0QjtVQUFBQztRQUFBO01BQ0E7TUFFQTtNQUNBO01BRUE7UUFDQTtRQUNBO1FBQ0E7VUFDQTtVQUNBO1FBQ0E7UUFFQTtVQUNBO1VBRUE7WUFDQTtZQUNBO1lBQ0E7WUFDQVA7Y0FBQU07Y0FBQUM7WUFBQTtVQUNBO1lBQ0E7WUFDQTtZQUNBUDtjQUFBTTtjQUFBQztZQUFBO1VBQ0E7UUFDQTtNQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBUDtVQUFBTTtVQUFBQztRQUFBO01BQ0E7SUFDQTtJQUVBO0FBQ0E7QUFDQTtJQUNBc0I7TUFDQTtNQUNBO1FBQ0E7TUFDQTtNQUVBO1FBQ0E7VUFBQXZCO1VBQUFDO1FBQUE7TUFDQTtNQUVBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBOztRQUVBO1FBQ0E7VUFDQVI7VUFDQTtRQUNBOztRQUVBO1FBQ0FDO1VBQUFNO1VBQUFDO1FBQUE7TUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQVA7VUFDQU07VUFDQUk7UUFDQTs7UUFFQTtRQUNBO01BQ0E7SUFDQTtJQUVBO0FBQ0E7QUFDQTtJQUNBb0I7TUFDQTtNQUNBO1FBQ0E7TUFDQTtNQUVBO1FBQ0E7VUFBQXhCO1VBQUFDO1FBQUE7TUFDQTs7TUFFQTtNQUNBO1FBQ0E7TUFDQTs7TUFFQTtNQUNBO1FBQ0F3QjtRQUFBO1FBQ0FDO1FBQ0FuQjtRQUFBO1FBQ0FvQjtRQUFBO1FBQ0FDO1FBQUE7UUFDQUM7TUFDQTs7TUFFQTtNQUNBO01BQ0E7O01BRUE7TUFDQW5DO1FBQ0FNO1FBQ0FJO01BQ0E7O01BRUE7TUFDQTtJQUNBO0lBRUE7QUFDQTtBQUNBO0lBQ0EwQjtNQUNBO01BQ0E7UUFDQTtVQUNBcEM7UUFDQTtRQUNBO01BQ0E7O01BRUE7TUFDQTtRQUNBQTtRQUNBO1FBQ0E7VUFBQU07VUFBQUM7UUFBQTtNQUNBOztNQUVBO01BQ0E7UUFDQXdCO1FBQUE7UUFDQUM7UUFDQW5CO1FBQUE7UUFDQW9CO1FBQUE7UUFDQUM7UUFBQTtRQUNBQztNQUNBOztNQUVBO01BQ0E7SUFDQTtJQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQTtBQUNBO0FBQ0E7SUFDQUU7TUFDQTtRQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUE7QUFDQTtBQUNBO0lBQ0FDO01BQ0E7UUFDQTtRQUNBO1FBQ0F0QztVQUFBTTtVQUFBQztRQUFBO01BQ0E7SUFDQTtJQUVBZ0M7TUFBQTtNQUNBO01BQ0E7UUFDQXZDO1FBQ0E7UUFDQTtNQUNBOztNQUVBO01BQ0E7UUFDQUE7UUFDQTtRQUNBO1VBQUFNO1VBQUFDO1FBQUE7TUFDQTs7TUFFQTtNQUNBO1FBQ0E7UUFDQTtVQUNBO1lBQ0E7WUFDQTtVQUNBO1FBQ0E7TUFDQTs7TUFFQTtNQUNBaUM7TUFDQTs7TUFFQTtNQUNBO1FBQ0F4QztRQUNBQTtVQUNBTTtVQUNBSTtRQUNBO01BQ0E7TUFFQTs7TUFFQTtNQUNBO1FBQ0FYO1FBQ0E7TUFDQTs7TUFFQTtNQUNBO1FBQ0E7UUFDQTtRQUNBO1VBQ0E7VUFDQTtZQUNBO2NBQUE7WUFBQTtVQUNBO1lBQ0E7WUFDQUM7WUFDQTtjQUFBTTtjQUFBQztZQUFBO1VBQ0E7UUFDQTtNQUNBOztNQUVBO01BQ0E7UUFDQTtRQUNBO1VBQ0FSO1VBQ0E7UUFDQTs7UUFFQTtRQUNBO1VBQ0E7VUFDQTtZQUNBQTtZQUNBO1VBQ0E7VUFFQTtVQUNBO1VBQ0E7VUFDQUM7VUFDQTtZQUFBTTtZQUFBQztVQUFBO1FBQ0E7O1FBRUE7UUFDQTs7UUFFQTtRQUNBO1VBQ0FrQztZQUNBO1lBQ0E7Y0FDQTtjQUNBO2NBQ0E7Z0JBQ0E7a0JBQUE7Z0JBQUE7Y0FDQTtjQUNBO1lBQ0E7O1lBRUE7WUFDQTs7WUFFQTtZQUNBO2NBQ0ExQztjQUNBO1lBQ0E7WUFFQTtjQUNBO2NBQ0E7Z0JBQUEyQztnQkFBQUM7Y0FBQTs7Y0FFQTtjQUNBO2dCQUNBO2dCQUNBO2tCQUNBNUM7a0JBQ0E7Z0JBQ0E7Z0JBQ0E7a0JBQ0FBO2tCQUNBO2dCQUNBO2dCQUVBO2tCQUNBQztnQkFDQTtnQkFDQTtnQkFDQTs7Z0JBRUE7Z0JBQ0E7a0JBQUE7Z0JBQUE7Z0JBRUE7a0JBQ0E7a0JBQ0E7a0JBQ0FBO29CQUNBTTtvQkFDQUM7b0JBQ0FDO2tCQUNBO2dCQUNBO2tCQUNBO2tCQUNBO29CQUFBa0M7b0JBQUFFO2tCQUFBO2tCQUNBO29CQUNBNUM7c0JBQUFNO3NCQUFBQztvQkFBQTtrQkFDQTtvQkFDQTtvQkFDQVA7c0JBQUFNO3NCQUFBQztzQkFBQUM7b0JBQUE7a0JBQ0E7Z0JBQ0E7O2dCQUVBO2dCQUNBO2tCQUNBO2tCQUNBO29CQUNBVDtvQkFDQTtrQkFDQTtrQkFDQTtrQkFDQTtvQkFDQTtvQkFDQTtzQkFDQTtvQkFDQTtrQkFDQTtnQkFDQTtjQUNBO2dCQUNBO2dCQUNBO2dCQUNBO2tCQUNBO29CQUNBO3NCQUFBO29CQUFBO2tCQUNBO29CQUNBO29CQUNBQztvQkFDQTtzQkFBQU07c0JBQUFDO29CQUFBO2tCQUNBO2dCQUNBO2NBQ0E7WUFDQTtjQUNBO2NBQ0E7Y0FDQTtnQkFDQTtrQkFDQTtvQkFBQTtrQkFBQTtnQkFDQTtrQkFDQTtrQkFDQVA7a0JBQ0E7b0JBQUFNO29CQUFBQztrQkFBQTtnQkFDQTtjQUNBO1lBQ0E7VUFDQTtRQUNBO1VBQ0E7VUFDQTtVQUNBO1lBQ0FSO1lBQ0E7VUFDQTs7VUFFQTtVQUNBLGtCQUNBOEMsbURBQ0FBLHNDQUNBQSw2Q0FDQTtZQUNBO1lBQ0E7WUFDQTtZQUNBO2NBQ0E7Y0FDQTtnQkFDQTtrQkFBQTtnQkFBQTtjQUNBO1lBQ0E7Y0FDQTdDO2NBQ0E7Z0JBQUFNO2dCQUFBQztjQUFBO1lBQ0E7VUFDQTtZQUNBO1lBQ0E7Y0FDQTtnQkFBQTtjQUFBO1lBQ0E7VUFDQTtRQUNBO01BQ0E7UUFDQTtRQUNBO1VBQ0FSO1VBQ0E7UUFDQTtRQUVBO1FBQ0E7UUFDQSxrQkFDQThDLG1EQUNBQSxzQ0FDQUEsNkNBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1lBQ0E7WUFDQTtjQUNBO2dCQUFBO2NBQUE7WUFDQTtVQUNBO1lBQ0E3QztZQUNBO2NBQUFNO2NBQUFDO1lBQUE7VUFDQTtRQUNBO1VBQ0E7VUFDQTtZQUNBO2NBQUE7WUFBQTtVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUE7QUFDQTtBQUNBO0lBQ0F1QztNQUFBO01BQ0E7TUFDQTtNQUNBOztNQUVBO01BQ0E7TUFDQSxzREFDQSxrREFDQTtNQUVBO1FBQ0E7VUFBQXhDO1VBQUFDO1VBQUFDO1FBQUE7TUFDQTs7TUFFQTtNQUNBO1FBQ0E7VUFBQUY7VUFBQUM7VUFBQUM7UUFBQTtNQUNBOztNQUVBO01BQ0E7TUFDQTtNQUNBOztNQUVBO01BQ0E7TUFDQTtRQUNBO1VBQUFGO1VBQUFDO1VBQUFDO1FBQUE7TUFDQTtNQUVBUjtRQUFBTTtRQUFBSTtNQUFBO01BRUE7UUFDQTtNQUNBOztNQUVBO01BQ0E7TUFDQTtRQUNBcUM7TUFDQTtRQUNBO01BQ0E7O01BRUE7TUFDQTtRQUNBQztRQUNBQztRQUNBM0Q7UUFDQUM7UUFDQUM7UUFDQTBEO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQUE7UUFDQUM7TUFDQTs7TUFHQTtNQUNBO0lBQ0E7SUFFQTtBQUNBO0FBQ0E7QUFDQTtJQUNBQztNQUFBO01BQ0E7TUFDQTtNQUNBO01BQ0E7TUFFQXZEO1FBQ0FXO1FBQ0FDO1FBQ0E1QztRQUNBOEM7VUFDQTtVQUNBO1FBQ0E7O1FBQ0FEO1FBQUE7UUFDQUU7VUFDQTs7VUFFQTtVQUNBO1lBQ0FmO1lBQ0E7VUFDQTtVQUVBO1lBQ0E7WUFDQTtZQUNBO1lBRUFBO2NBQ0FNO2NBQ0FDO2NBQ0FDO1lBQ0E7WUFFQTtjQUNBO2NBQ0E7Z0JBQ0F5QztnQkFDQTVCO2dCQUNBOUI7Z0JBQ0FpRTtnQkFDQU47Z0JBQ0FFO2NBQ0E7O2NBRUE7Y0FDQTtnQkFDQTtjQUNBOztjQUVBO2NBQ0E7WUFDQTtVQUNBO1lBQ0E7WUFDQTtZQUNBcEQ7Y0FDQU07Y0FDQUM7Y0FDQUM7WUFDQTtVQUNBO1FBQ0E7UUFDQWU7VUFDQTtVQUNBO1VBQ0E7WUFDQXZCO1lBQ0E7VUFDQTtVQUNBQTtZQUNBTTtZQUNBQztZQUNBQztVQUNBO1VBQ0E7UUFDQTs7UUFDQVE7VUFDQTtVQUNBWDtZQUNBO2NBQ0FMO2NBQ0E7WUFDQTtVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUE7SUFDQXlEO01BQ0E7TUFDQTtNQUNBO01BQ0E7TUFDQTtNQUNBO01BQ0E7TUFDQTtJQUNBO0lBRUE7SUFDQUM7TUFDQTtNQUNBO01BQ0E7TUFDQTtRQUNBO01BQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO01BQ0E7SUFDQTtJQUVBQztNQUNBO01BQ0E7TUFDQTtNQUNBO1FBQ0E7TUFDQTtRQUNBO1FBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQUM7TUFDQTtJQUNBO0lBRUE7SUFDQUM7TUFDQTtNQUNBOztNQUVBO01BQ0E7O01BRUE7TUFDQTtNQUNBMUM7TUFDQUE7TUFDQUE7TUFDQUE7TUFDQUE7TUFDQUE7TUFDQUE7TUFDQUE7TUFDQUE7TUFDQUE7O01BRUE7TUFDQTtRQUNBbkI7UUFDQUE7UUFDQUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtNQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUE4RDtNQUNBO0lBQ0E7RUFDQTtBQUNBO0FBQUEsMkIiLCJmaWxlIjoiMzguanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG4gIDx2aWV3IGNsYXNzPVwicGFnZVwiPlxuICAgIDwhLS0g5a+86Iiq5oyJ6ZKuIC0tPlxuICAgIDxidXR0b24gQGNsaWNrPVwibG9nb3V0XCIgY2xhc3M9XCJuYXYtYnRuXCI+XG4gICAgICA8dGV4dCBjbGFzcz1cImljb24gZmEgZmEtc2lnbi1vdXRcIj48L3RleHQ+XG4gICAgPC9idXR0b24+XG4gICAgPGJ1dHRvbiBAY2xpY2s9XCJ0b2dnbGVTZXJ2ZXJDb25maWdcIiBjbGFzcz1cIm5hdi1idG5cIj5cbiAgICAgIDx0ZXh0IGNsYXNzPVwiaWNvbiBmYSBmYS1jb2dcIj48L3RleHQ+XG4gICAgPC9idXR0b24+XG5cbiAgICA8c2Nyb2xsLXZpZXcgc2Nyb2xsLXkgY2xhc3M9XCJzY3JvbGwtYXJlYVwiPlxuICAgICAgPHZpZXcgdi1pZj1cIiFzaG93U2VydmVyQ29uZmlnXCIgY2xhc3M9XCJmb3JtLXNlY3Rpb25cIj5cbiAgICAgICAgPHZpZXcgY2xhc3M9XCJzZWN0aW9uLXRpdGxlXCI+XG4gICAgICAgICAgPHRleHQgY2xhc3M9XCJ0aXRsZVwiPjwvdGV4dD5cbiAgICAgICAgPC92aWV3PlxuXG4gICAgICAgIDwhLS0gUkZJROaJq+aPj+WMuuWfnyAtLT5cbiAgICAgICAgPHZpZXcgY2xhc3M9XCJyZmlkLWNhcmRcIj5cbiAgICAgICAgICA8dGV4dCBjbGFzcz1cImljb24gZmEgZmEtcXJjb2RlIHNjYW4taWNvblwiPjwvdGV4dD5cbiAgICAgICAgICA8dmlldyBjbGFzcz1cImJ0bi1ncm91cFwiPlxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cIm1hbnVhbC1idG5cIiBAY2xpY2s9XCJpbml0XCIgOmRpc2FibGVkPVwiaXNEaXNhYmxlXCI+XG4gICAgICAgICAgICAgIDx0ZXh0IGNsYXNzPVwiZmEgZmEtcG93ZXItb2ZmXCI+PC90ZXh0PiB7eyBpc0RldmljZVJlYWR5ID8gJ+W3suW8gOWQrycgOiAn5byA5ZCv6K6+5aSHJyB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8IS0tIOmHiuaUvuerr+WPo+aMiemSriAtLT5cblx0XHRcdCAgICAgIDwhLS0gPGJ1dHRvbiBjbGFzcz1cImJ0blwiIHR5cGU9XCJwcmltYXJ5XCIgQGNsaWNrPVwicmVsZWFzZVwiIDpkaXNhYmxlZD1cImlzUmVEaXNhYmxlZFwiPnJlbGVhc2U8L2J1dHRvbj4gLS0+XG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwic2Nhbi1idG5cIiBAY2xpY2s9XCJ0b2dnbGVDb250aW51b3VzU2NhblwiIDpkaXNhYmxlZD1cIiFpc0Rpc2FibGVcIj5cbiAgICAgICAgICAgICAgPHRleHQgY2xhc3M9XCJmYSBmYS1jYW1lcmFcIj48L3RleHQ+IHt7IGlzQ29udGludW91c1NjYW5uaW5nID8gJ+WBnOatouaMgee7reaJq+aPjycgOiAn5byA5aeL5oyB57ut5omr5o+PJyB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC92aWV3PlxuICAgICAgICAgIDxpbnB1dCBjbGFzcz1cImlucHV0LWJveFwiIHYtbW9kZWw9XCJmb3JtLmVhcklkXCIgZGlzYWJsZWQgcGxhY2Vob2xkZXI9XCLlvZPliY1GSUTmoIfnrb7lj7fnoIHlsIbmmL7npLrlnKjov5nph4xcIiBzdHlsZT1cImhlaWdodDogMzBweDt3aWR0aDogOTUlO1wiIC8+XG5cbiAgICAgICAgICA8IS0tIOWtmOWCqOeahEZJROagh+etvuaVsOaNriAtLT5cbiAgICAgICAgICA8c2Nyb2xsLXZpZXcgc2Nyb2xsLXkgY2xhc3M9XCJzdlwiPlxuICAgICAgICAgICAgPHZpZXcgdi1mb3I9XCIoaXRlbSwgaW5kZXgpIGluIGRhdGFMaXN0XCIgOmtleT1cImluZGV4XCIgY2xhc3M9XCJkYXRhLWl0ZW1cIj5cbiAgICAgICAgICAgICAgPHAgc3R5bGU9XCJtYXJnaW4tbGVmdDogMTBweDtcIj57eyBpdGVtLmlkIH19PC9wPlxuICAgICAgICAgICAgICA8cGlja2VyIEBjaGFuZ2U9XCJvblR5cGVDaGFuZ2UoJGV2ZW50LCBpbmRleClcIiA6dmFsdWU9XCJpdGVtLnR5cGVJbmRleFwiIDpyYW5nZT1cInR5cGVzXCI+XG4gICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJwaWNrZXJcIj5cbiAgICAgICAgICAgICAgICAgIHt7IHR5cGVzW2l0ZW0udHlwZUluZGV4XSB9fVxuICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgPC9waWNrZXI+XG4gICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJkZWxldGUtYnRuXCIgQGNsaWNrPVwiZGVsZXRlSXRlbShpbmRleClcIj7liKDpmaQ8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICA8L3Njcm9sbC12aWV3PlxuICAgICAgICA8L3ZpZXc+XG5cbiAgICAgICAgPCEtLSDmk43kvZzmjInpkq7pg6jliIYgLS0+XG4gICAgICAgIDx2aWV3IGNsYXNzPVwiYnRuLWdyb3VwXCI+XG4gICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cIm1hbnVhbC1idG5cIiBAY2xpY2s9XCJyZXNldEZvcm1cIj7ph43nva48L2J1dHRvbj5cbiAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwic2Nhbi1idG5cIiBAY2xpY2s9XCJzdWJtaXRGb3JtXCI+5o+Q5Lqk5pWw5o2uPC9idXR0b24+XG4gICAgICAgIDwvdmlldz5cbiAgICAgIDwvdmlldz5cbiAgICA8L3Njcm9sbC12aWV3PlxuICA8L3ZpZXc+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuLy8g5a+85YWlQVBJ6YWN572uXG5pbXBvcnQgQVBJIGZyb20gJ0AvYXBpL2luZGV4LmpzJ1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGRhdGEoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBkYXRhTGlzdDogW10sICAgICAgICAgICAvLyDlrZjlgqjmiavmj4/nmoTogLPmoIfmlbDmja5cbiAgICAgICAgdHlwZXM6IFsn5q2j5bi4JywgJ+a3mOaxsCcsICfmrbvkuqEnXSwgIC8vIOiAs+agh+exu+Wei+mAiemhuVxuICAgICAgICBzY2FuUHJvZ3Jlc3M6IDAsICAgICAvLyDlvZPliY3miavmj4/ov5vluqZcbiAgICAgICAgc2NhblRvdGFsQXR0ZW1wdHM6IDAsIC8vIOaAu+aJq+aPj+WwneivleasoeaVsFxuICAgICAgICBpc0Rpc2FibGU6IGZhbHNlLCAgICAgICAvLyDorr7lpIfnpoHnlKjnirbmgIFcbiAgICAgICAgaXNEZXZpY2VSZWFkeTogZmFsc2UsICAgLy8g6K6+5aSH5bCx57uq54q25oCBXG4gICAgICAgIGlzSW5pdGlhbGl6aW5nOiBmYWxzZSwgIC8vIOiuvuWkh+WIneWni+WMluS4reeKtuaAgVxuICAgICAgICBjdXJyZW50RGF0ZTogJycsICAgICAgICAvLyDlvZPliY3ml6XmnJ9cbiAgICAgICAgc2hvd1NlcnZlckNvbmZpZzogZmFsc2UsLy8g5piv5ZCm5pi+56S65pyN5Yqh5Zmo6YWN572uXG4gICAgICAgIHVoZlNGSGVscGVyOiBudWxsLCAgICAgIC8vIFVIRuaPkuS7tuWunuS+i1xuICAgICAgICBzY2FuVGltZW91dDogbnVsbCwgICAgICAvLyDmiavmj4/otoXml7borqHml7blmahcbiAgICAgICAgcmV0cnlUaW1lb3V0OiBudWxsLCAgICAgLy8g6YeN6K+V6K6h5pe25ZmoXG4gICAgICAgIG1heFNjYW5UaW1lcjogbnVsbCwgICAgIC8vIOacgOWkp+aJq+aPj+aXtumXtOiuoeaXtuWZqFxuICAgICAgICBzZXR0aW5nQ2hhbmdlTGlzdGVuZXI6IG51bGwsIC8vIOiuvue9ruWPmOWMluebkeWQrOWZqFxuICAgICAgICBpc0NvbnRpbnVvdXNTY2FubmluZzogZmFsc2UsIC8vIOaYr+WQpuato+WcqOaMgee7reaJq+aPj1xuICAgICAgICBjb250aW51b3VzU2NhbkludGVydmFsOiBudWxsLCAvLyDmjIHnu63miavmj4/pl7TpmpTorqHml7blmahcbiAgICAgICAgXG4gICAgICAgIC8vIOWIl+ihqOaVsOaNrlxuICAgICAgICBidWlsZGluZ0xpc3Q6IFtdLCAgICAgICAvLyDmoIvoiI3liJfooahcbiAgICAgICAgcm9vbUxpc3Q6IFtdLCAgICAgICAgICAgLy8g5oi/6Ze05YiX6KGoXG4gICAgICAgIEZpZWxkbnVtYmVyOiBbXSwgICAgICAgIC8vIOagj+S9jeWIl+ihqFxuICAgICAgICBcbiAgICAgICAgLy8g6KGo5Y2V5pWw5o2uXG4gICAgICAgIGZvcm06IHtcbiAgICAgICAgICBlYXJJZDogJycsICAgICAgICAgICAgLy8g6ICz5qCHSURcbiAgICAgICAgICBidWlsZGluZ05hbWU6ICcnLCAgICAgLy8g5qCL6IiN5ZCN56ewXG4gICAgICAgICAgcm9vbU5hbWU6ICcnLCAgICAgICAgIC8vIOaIv+mXtOWQjeensFxuICAgICAgICAgIHBlbk5vOiAnJywgICAgICAgICAgICAvLyDmoI/kvY3nvJblj7dcbiAgICAgICAgICBzdGF0dXM6ICdoZWFsdGh5JywgICAgLy8g54q25oCBXG4gICAgICAgICAgbm90ZTogJycgICAgICAgICAgICAgIC8vIOWkh+azqFxuICAgICAgICB9LFxuICAgICAgICBcbiAgICAgICAgLy8g5o+Q5Lqk54q25oCBXG4gICAgICAgIGlzU3VibWl0dGluZzogZmFsc2UsXG4gICAgICBcbiAgICB9XG4gIH0sXG4gIFxuICBtb3VudGVkKCkge1xuICAgIC8vIOagh+iusOe7hOS7tuW3suaMgui9vVxuICAgIHRoaXMuX2lzTW91bnRlZCA9IHRydWU7XG4gICAgXG4gICAgLy8g5Yid5aeL5YyW5pel5pyfXG4gICAgY29uc3Qgbm93ID0gbmV3IERhdGUoKVxuICAgIHRoaXMuY3VycmVudERhdGUgPSBub3cudG9JU09TdHJpbmcoKS5zcGxpdCgnVCcpWzBdXG4gICAgXG4gICAgLy8g5Yqg6L295bey5L+d5a2Y55qE6K6+572uXG4gICAgdGhpcy5sb2FkU2F2ZWRTZXR0aW5ncygpO1xuICAgIFxuICAgIC8vIOiOt+WPluWIl+ihqOaVsOaNru+8iOWNs+S9v+aPkuS7tuacquWIneWni+WMluS5n+WPr+S7peWKoOi9ve+8iVxuICAgIHRoaXMuZmV0Y2hCdWlsZGluZ0xpc3QoKTtcbiAgICBcbiAgICAvLyDnm5HlkKznmbvlvZXmiJDlip/kuovku7bvvIzph43mlrDliqDovb3nlKjmiLforr7nva7lubbmuIXnqbrmlbDmja5cbiAgICB0aGlzLnJlbG9hZFVzZXJTZXR0aW5nc0xpc3RlbmVyID0gdW5pLiRvbigncmVsb2FkVXNlclNldHRpbmdzJywgKCkgPT4ge1xuICAgICAgLy8g5riF56m65pWw5o2uXG4gICAgICB0aGlzLnJlc2V0Rm9ybSgpO1xuICAgICAgXG4gICAgICB0aGlzLmxvYWRTYXZlZFNldHRpbmdzKCk7XG4gICAgICAvLyDph43mlrDliqDovb3moIvoiI3liJfooajvvIznoa7kv53kvb/nlKjmnIDmlrDnmoTnlKjmiLfkv6Hmga9cbiAgICAgIHRoaXMuZmV0Y2hCdWlsZGluZ0xpc3QoKTtcbiAgICB9KTtcbiAgICBcbiAgICAvLyDliJ3lp4vljJbmj5Lku7blrp7kvotcbiAgICB0aGlzLmluaXRpYWxpemVQbHVnaW5XaXRoUmV0cnkoMCk7XG4gICAgXG4gICAgLy8g55uR5ZCs5YWo5bGA6K6+572u5Y+Y5YyWXG4gICAgdGhpcy5zZXR0aW5nQ2hhbmdlTGlzdGVuZXIgPSB1bmkuJG9uKCdzZXR0aW5nc1VwZGF0ZWQnLCAoc2V0dGluZ3MpID0+IHtcbiAgICAgIGNvbnNvbGUubG9nKCfnm5HlkKzliLDorr7nva7mm7TmlrDkuovku7bvvIzmm7TmlrDorr7nva46Jywgc2V0dGluZ3MpO1xuICAgICAgdGhpcy5sb2FkU2F2ZWRTZXR0aW5ncyhzZXR0aW5ncyk7XG4gICAgfSk7XG4gIH0sXG4gIFxuICAvKipcbiAgICog5bim6YeN6K+V55qE5o+S5Lu25Yid5aeL5YyWXG4gICAqIEBwYXJhbSB7bnVtYmVyfSByZXRyeUNvdW50IC0g5b2T5YmN6YeN6K+V5qyh5pWwXG4gICAqL1xuICBpbml0aWFsaXplUGx1Z2luV2l0aFJldHJ5KHJldHJ5Q291bnQgPSAwKSB7XG5cdCAgY29uc29sZS5sb2coJ+iuvuWkh+WIneWni+WMluaIkOWKnycpO1xuICAgIHRoaXMuaXNEaXNhYmxlID0gZmFsc2U7XG4gIH0sXG5cbiAgYmVmb3JlVW5tb3VudCgpIHtcbiAgICAvLyDmoIforrDnu4Tku7blt7Lljbjovb1cbiAgICB0aGlzLl9pc01vdW50ZWQgPSBmYWxzZTtcbiAgICAvLyDlgZzmraLmjIHnu63miavmj49cbiAgICB0aGlzLmlzQ29udGludW91c1NjYW5uaW5nID0gZmFsc2U7XG4gICAgaWYgKHRoaXMuY29udGludW91c1NjYW5JbnRlcnZhbCkge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuY29udGludW91c1NjYW5JbnRlcnZhbCk7XG4gICAgICB0aGlzLmNvbnRpbnVvdXNTY2FuSW50ZXJ2YWwgPSBudWxsO1xuICAgIH1cbiAgICAvLyDmuIXpmaTmiYDmnInorqHml7blmahcbiAgICB0aGlzLmNhbmNlbFNjYW4oKTtcbiAgICAvLyDph4rmlL7orr7lpIdcbiAgICB0aGlzLnJlbGVhc2VEZXZpY2UoKTtcbiAgICAvLyDmuIXnkIbmj5Lku7blrp7kvotcbiAgICB0aGlzLnVoZlNGSGVscGVyID0gbnVsbDtcbiAgICAvLyDnp7vpmaTkuovku7bnm5HlkKxcbiAgICBpZiAodGhpcy5zZXR0aW5nQ2hhbmdlTGlzdGVuZXIpIHtcbiAgICAgIHVuaS4kb2ZmKCdzZXR0aW5nc1VwZGF0ZWQnLCB0aGlzLnNldHRpbmdDaGFuZ2VMaXN0ZW5lcik7XG4gICAgfVxuICAgIC8vIOenu+mZpOeZu+W9leaIkOWKn+S6i+S7tuebkeWQrFxuICAgIGlmICh0aGlzLnJlbG9hZFVzZXJTZXR0aW5nc0xpc3RlbmVyKSB7XG4gICAgICB1bmkuJG9mZigncmVsb2FkVXNlclNldHRpbmdzJywgdGhpcy5yZWxvYWRVc2VyU2V0dGluZ3NMaXN0ZW5lcik7XG4gICAgfVxuICB9LFxuICBcbiAgLyoqXG4gICAqIOmhtemdouaYvuekuuaXtuinpuWPke+8jOehruS/neiOt+WPluacgOaWsOeahOe8luWPt+S/oeaBr+W5tuajgOafpeeZu+W9leeKtuaAgVxuICAgKi9cbiAgb25TaG93KCkge1xuICAgIHRoaXMubG9hZFNhdmVkU2V0dGluZ3MoKTtcbiAgICB0aGlzLmNoZWNrVG9rZW5FeHBpcmF0aW9uKCk7XG4gIH0sXG4gIFxuICBtZXRob2RzOiB7XG4gICAgLyoqXG4gICAgICog5qOA5p+ldG9rZW7mmK/lkKbov4fmnJ9cbiAgICAgKi9cbiAgICBjaGVja1Rva2VuRXhwaXJhdGlvbigpIHtcbiAgICAgIGNvbnN0IGFwcCA9IGdldEFwcCgpO1xuXG4gICAgICAvLyDojrflj5bov4fmnJ/ml7bpl7Tlkox0b2tlblxuICAgICAgbGV0IGV4cGlyZUF0ID0gYXBwLmdsb2JhbERhdGEuZXhwaXJlQXQgfHwgdW5pLmdldFN0b3JhZ2VTeW5jKCd0b2tlbl9leHBpcmVfdGltZScpIHx8ICcnO1xuICAgICAgY29uc3QgdG9rZW4gPSBhcHAuZ2xvYmFsRGF0YS50b2tlbiB8fCB1bmkuZ2V0U3RvcmFnZVN5bmMoJ2VxdWlwbWVudF90b2tlbicpIHx8ICcnO1xuXG4gICAgICAvLyDlpoLmnpzmsqHmnIl0b2tlbuaIlui/h+acn+aXtumXtO+8jOinhuS4uuacqueZu+W9lVxuICAgICAgaWYgKCF0b2tlbiB8fCAhZXhwaXJlQXQpIHtcbiAgICAgICAgY29uc29sZS5sb2coJ+acqueZu+W9leaIlue8uuWwkeeZu+W9leS/oeaBrycpO1xuICAgICAgICAvLyDkuI3opoHnm7TmjqXot7PovaznmbvlvZXpobXvvIzorqlBcHAudnVl55qEY2hlY2tMb2dpblN0YXR1c+adpeWkhOeQhlxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRyeSB7XG4gICAgICAgIC8vIOino+aekOi/h+acn+aXtumXtOWSjOW9k+WJjeaXtumXtFxuICAgICAgICBsZXQgZXhwaXJlVGltZTtcbiAgICAgICAgXG4gICAgICAgIC8vIOWkhOeQhuS4jeWQjOexu+Wei+eahGV4cGlyZUF0XG4gICAgICAgIGlmICh0eXBlb2YgZXhwaXJlQXQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgLy8g5bCd6K+V55u05o6l6Kej5p6Q5Li65pWw5a2XXG4gICAgICAgICAgY29uc3QgdGltZXN0YW1wID0gcGFyc2VJbnQoZXhwaXJlQXQpO1xuICAgICAgICAgIGlmICghaXNOYU4odGltZXN0YW1wKSkge1xuICAgICAgICAgICAgZXhwaXJlVGltZSA9IHRpbWVzdGFtcDtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8g5aaC5p6c5LiN5piv5pWw5a2X5a2X56ym5Liy77yM5bCd6K+V5L2c5Li65pel5pyf5a2X56ym5Liy6Kej5p6QXG4gICAgICAgICAgICBleHBpcmVUaW1lID0gbmV3IERhdGUoZXhwaXJlQXQpLmdldFRpbWUoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGV4cGlyZUF0ID09PSAnbnVtYmVyJykge1xuICAgICAgICAgIC8vIOWmguaenOW3sue7j+aYr+aVsOWtl+exu+Wei++8jOebtOaOpeS9v+eUqFxuICAgICAgICAgIGV4cGlyZVRpbWUgPSBleHBpcmVBdDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIOehruS/nei/h+acn+aXtumXtOacieaViFxuICAgICAgICBpZiAoaXNOYU4oZXhwaXJlVGltZSkpIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCfml6DmlYjnmoTov4fmnJ/ml7bpl7Q6JywgZXhwaXJlQXQpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGN1cnJlbnRUaW1lID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7XG5cbiAgICAgICAgLy8g5o+Q5YmNMeWIhumSn+ajgOafpei/h+acn++8jOe7meeUqOaIt+mihOeVmeaXtumXtFxuICAgICAgY29uc3QgZWFybHlDaGVja1RpbWUgPSA2MCAqIDEwMDA7XG4gICAgICBpZiAoY3VycmVudFRpbWUgKyBlYXJseUNoZWNrVGltZSA+IGV4cGlyZVRpbWUpIHtcbiAgICAgICAgY29uc29sZS5sb2coJ+eZu+W9leWNs+Wwhui/h+acn+aIluW3sui/h+acnycpO1xuICAgICAgICAvLyDkuI3opoHnm7TmjqXot7PovaznmbvlvZXpobXvvIzorqlBcHAudnVl55qEY2hlY2tMb2dpblN0YXR1c+adpeWkhOeQhlxuICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcign5qOA5p+ldG9rZW7ov4fmnJ/ml7blj5HnlJ/plJnor686JywgZXJyb3IpO1xuICAgICAgfVxuICAgIH0sXG4gICAgLyoqXG4gICAqIOW4pumHjeivleeahOaPkuS7tuWIneWni+WMllxuICAgKiBAcGFyYW0ge251bWJlcn0gcmV0cnlDb3VudCAtIOW9k+WJjemHjeivleasoeaVsFxuICAgKi9cbiAgaW5pdGlhbGl6ZVBsdWdpbldpdGhSZXRyeShyZXRyeUNvdW50ID0gMCkge1xuICAgIGNvbnN0IE1BWF9SRVRSSUVTID0gMzsgLy8g5aKe5Yqg6YeN6K+V5qyh5pWw5YiwM+asoVxuICAgIGNvbnN0IFJFVFJZX0RFTEFZID0gMjAwMDsgLy8gMuenklxuICAgIFxuICAgIGNvbnNvbGUubG9nKGDlvIDlp4vmj5Lku7bliJ3lp4vljJblsJ3or5UgJHtyZXRyeUNvdW50ICsgMX0vJHtNQVhfUkVUUklFU31gKTtcbiAgICBcbiAgICBjb25zdCBpc1BsdWdpbkluaXRpYWxpemVkID0gdGhpcy5pbml0UGx1Z2luSW5zdGFuY2UoKTtcbiAgICBpZiAoIWlzUGx1Z2luSW5pdGlhbGl6ZWQpIHtcbiAgICAgIGNvbnNvbGUud2Fybihg5o+S5Lu25Yid5aeL5YyW5aSx6LSlIChhdHRlbXB0ICR7cmV0cnlDb3VudCArIDF9LyR7TUFYX1JFVFJJRVN9KWApO1xuICAgICAgdGhpcy5pc0Rpc2FibGUgPSB0cnVlOyAvLyDnpoHnlKjkvp3otZbmj5Lku7bnmoTmjInpkq5cbiAgICAgIFxuICAgICAgLy8g5aaC5p6c5pyq6L6+5Yiw5pyA5aSn6YeN6K+V5qyh5pWw77yM57un57ut6YeN6K+VXG4gICAgICBpZiAocmV0cnlDb3VudCA8IE1BWF9SRVRSSUVTKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKGBSZXRyeWluZyBwbHVnaW4gaW5pdGlhbGl6YXRpb24gYWZ0ZXIgJHtSRVRSWV9ERUxBWX1tc2ApO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICBpZiAodGhpcy5faXNNb3VudGVkKSB7XG4gICAgICAgICAgICB0aGlzLmluaXRpYWxpemVQbHVnaW5XaXRoUmV0cnkocmV0cnlDb3VudCArIDEpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSwgUkVUUllfREVMQVkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS5lcnJvcignTWF4IHJldHJpZXMgcmVhY2hlZCBmb3IgcGx1Z2luIGluaXRpYWxpemF0aW9uJyk7XG4gICAgICAgIHVuaS5zaG93VG9hc3Qoe1xuICAgICAgICAgIHRpdGxlOiAn6K6+5aSH5Yid5aeL5YyW5aSx6LSl77yM6K+36YeN5ZCv5bqU55SoJyxcbiAgICAgICAgICBpY29uOiAnbm9uZScsXG4gICAgICAgICAgZHVyYXRpb246IDMwMDBcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUubG9nKCfmj5Lku7bliJ3lp4vljJbmiJDlip8nKTtcbiAgICAgIHRoaXMuaXNEaXNhYmxlID0gZmFsc2U7XG4gICAgICB1bmkuc2hvd1RvYXN0KHtcbiAgICAgICAgdGl0bGU6ICforr7lpIfliJ3lp4vljJbmiJDlip8nLFxuICAgICAgICBpY29uOiAnc3VjY2VzcycsXG4gICAgICAgIGR1cmF0aW9uOiAyMDAwXG4gICAgICB9KTtcbiAgICB9XG4gIH0sXG4gICAgLyoqXG4gICAgICog6I635Y+W5qCL6IiN5YiX6KGo77yI5bim6YeN6K+V5py65Yi277yJXG4gICAgICogQHBhcmFtIHtudW1iZXJ9IHJldHJ5Q291bnQgLSDlvZPliY3ph43or5XmrKHmlbDvvIjpu5jorqQw77yJXG4gICAgICovXG4gICAgZmV0Y2hCdWlsZGluZ0xpc3QocmV0cnlDb3VudCA9IDApIHtcbiAgICAgIGNvbnN0IE1BWF9SRVRSSUVTID0gMjsgLy8g5pyA5aSn6YeN6K+V5qyh5pWwXG4gICAgICBcbiAgICAgIC8vIOaYvuekuuWKoOi9veaPkOekulxuICAgICAgaWYgKHJldHJ5Q291bnQgPT09IDApIHtcbiAgICAgICAgdW5pLnNob3dMb2FkaW5nKHsgdGl0bGU6ICfliqDovb3moIvoiI3liJfooaguLi4nLCBtYXNrOiB0cnVlIH0pO1xuICAgICAgfVxuICAgICAgXG4gICAgICAvL+iOt+WPluagi+iIjeWIl+ihqFxuICAgICAgdW5pLnJlcXVlc3Qoe1xuICAgICAgICB1cmw6IEFQSS5nZXRCdWlsZGluZyxcbiAgICAgICAgbWV0aG9kOiAnR0VUJyxcbiAgICAgICAgdGltZW91dDogMTAwMDAsIC8vIOWinuWKoOi2heaXtuaXtumXtOWIsDEw56eSXG4gICAgICAgIGhlYWRlcjoge1xuICAgICAgICAgICdjb250ZW50LXR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJyxcbiAgICAgICAgICBcIngtdG9rZW5cIjogdW5pLmdldFN0b3JhZ2VTeW5jKCdlcXVpcG1lbnRfdG9rZW4nKSB8fCAnJ1xuICAgICAgICB9LFxuICAgICAgICBzdWNjZXNzOiAocmVzKSA9PiB7XG4gICAgICAgICAgLy8g6ZqQ6JeP5Yqg6L295o+Q56S6XG4gICAgICAgICAgaWYgKHJldHJ5Q291bnQgPT09IDApIHtcbiAgICAgICAgICAgIHVuaS5oaWRlTG9hZGluZygpO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLmJ1aWxkaW5nTGlzdCA9IHJlcy5kYXRhLmRhdGEgfHwgW107XG4gICAgICAgIH0sXG5cbiAgICAgICAgY29tcGxldGU6ICgpID0+IHtcbiAgICAgICAgICAvLyDnoa7kv53mnIDnu4jpmpDol49sb2FkaW5nXG4gICAgICAgICAgaWYgKHJldHJ5Q291bnQgPT09IE1BWF9SRVRSSUVTKSB7XG4gICAgICAgICAgICB1bmkuaGlkZUxvYWRpbmcoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiDliqDovb3lt7Lkv53lrZjnmoTorr7nva5cbiAgICAgKi9cbiAgICBsb2FkU2F2ZWRTZXR0aW5ncyhzZXR0aW5ncyA9IG51bGwpIHtcbiAgICAgIFxuICAgIGNvbnN0IGFwcCA9IGdldEFwcCgpO1xuICAgIGNvbnNvbGUubG9nKCflvZPliY3lhajlsYDmlbDmja7lrozmlbTlhoXlrrk6JywgSlNPTi5zdHJpbmdpZnkoYXBwLmdsb2JhbERhdGEpKTtcbiAgICBcbiAgICBjb25zdCBidWlsZGluZ05hbWUgPSB1bmkuZ2V0U3RvcmFnZVN5bmMoJ2J1aWxkaW5nJykgfHwgJyc7XG4gICAgY29uc3Qgcm9vbU5hbWUgPSB1bmkuZ2V0U3RvcmFnZVN5bmMoJ3Jvb20nKSB8fCAnJztcbiAgICBjb25zdCBwZW5ObyA9IHVuaS5nZXRTdG9yYWdlU3luYygncGVuJykgfHwgJyc7XG5cbiAgICB0aGlzLmZvcm0uYnVpbGRpbmdOYW1lID0gYnVpbGRpbmdOYW1lO1xuICAgIHRoaXMuZm9ybS5yb29tTmFtZSA9IHJvb21OYW1lO1xuICAgIHRoaXMuZm9ybS5wZW5ObyA9IHBlbk5vO1xuXG4gICAgY29uc29sZS5sb2coJ+ihqOWNleacgOe7iOi1i+WAvOe7k+aenCcsIHRoaXMuZm9ybS5idWlsZGluZ05hbWUpO1xuICAgIGNvbnNvbGUubG9nKCfooajljZXmnIDnu4jotYvlgLznu5PmnpwnLCB0aGlzLmZvcm0ucm9vbU5hbWUpO1xuICAgIGNvbnNvbGUubG9nKCfooajljZXmnIDnu4jotYvlgLznu5PmnpwnLCB0aGlzLmZvcm0ucGVuTm8pO1xuICAgIFxuICAgIC8vIOWmguaenOagi+iIjeS4jeS4uuepuuS4lOaIv+mXtOWIl+ihqOS4uuepuu+8jOWKoOi9veaIv+mXtOWIl+ihqFxuICAgIGlmIChidWlsZGluZ05hbWUgJiYgdGhpcy5yb29tTGlzdC5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMuZmV0Y2hSb29tTGlzdChidWlsZGluZ05hbWUpO1xuICAgIH0gZWxzZSBpZiAoYnVpbGRpbmdOYW1lICYmIHRoaXMucm9vbUxpc3QubGVuZ3RoID4gMCAmJiByb29tTmFtZSkge1xuICAgICAgLy8g5aaC5p6c5oi/6Ze05bey5Y+Y5pu077yM5pu05paw5oi/6Ze05YiX6KGoXG4gICAgICB0aGlzLmZldGNoUm9vbUxpc3QoYnVpbGRpbmdOYW1lKTtcbiAgICB9XG4gICAgXG4gICAgLy8g5aaC5p6c5oi/6Ze05LiN5Li656m65LiU5qCP5L2N5YiX6KGo5Li656m677yM5Yqg6L295qCP5L2N5YiX6KGoXG4gICAgaWYgKHJvb21OYW1lICYmIHRoaXMuRmllbGRudW1iZXIubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLmZldGNoRmllbGRMaXN0KHJvb21OYW1lKTtcbiAgICB9IGVsc2UgaWYgKHJvb21OYW1lICYmIHRoaXMuRmllbGRudW1iZXIubGVuZ3RoID4gMCAmJiBwZW5Obykge1xuICAgICAgLy8g5aaC5p6c5qCP5L2N5bey5Y+Y5pu077yM5pu05paw5qCP5L2N5YiX6KGoXG4gICAgICB0aGlzLmZldGNoRmllbGRMaXN0KHJvb21OYW1lKTtcbiAgICB9XG4gIH0sXG4gIFxuICAvKipcbiAgICAgKiDmiYvliqjliLfmlrDlhajlsYDmlbDmja5cbiAgICAgKi9cbiAgcmVmcmVzaEdsb2JhbERhdGEoKSB7XG4gICAgY29uc29sZS5sb2coJ+aJi+WKqOWIt+aWsOWFqOWxgOaVsOaNricpO1xuICAgIFxuICAgIC8vIOWwneivleS7juacrOWcsOWtmOWCqOaBouWkjeacgOaWsOaVsOaNruWIsOWFqOWxgOaVsOaNrlxuICAgIHRyeSB7XG4gICAgICBjb25zdCBhcHAgPSBnZXRBcHAoKTtcbiAgICAgIGNvbnN0IHRva2VuID0gdW5pLmdldFN0b3JhZ2VTeW5jKCdlcXVpcG1lbnRfdG9rZW4nKSB8fCAnJztcbiAgICAgIGNvbnN0IGV4cGlyZUF0ID0gdW5pLmdldFN0b3JhZ2VTeW5jKCd0b2tlbl9leHBpcmVfdGltZScpIHx8ICcnO1xuICAgICAgY29uc3QgdXNlckluZm8gPSB1bmkuZ2V0U3RvcmFnZVN5bmMoJ3VzZXJfaW5mbycpIHx8IHt9O1xuICAgICAgY29uc3QgYnVpbGRpbmcgPSB1bmkuZ2V0U3RvcmFnZVN5bmMoJ2J1aWxkaW5nJykgfHwgJyc7XG4gICAgICBjb25zdCByb29tID0gdW5pLmdldFN0b3JhZ2VTeW5jKCdyb29tJykgfHwgJyc7XG4gICAgICBjb25zdCBwZW4gPSB1bmkuZ2V0U3RvcmFnZVN5bmMoJ3BlbicpIHx8ICcnO1xuICAgICAgXG4gICAgICBpZiAodG9rZW4gJiYgZXhwaXJlQXQpIHtcbiAgICAgICAgYXBwLmdsb2JhbERhdGEudG9rZW4gPSB0b2tlbjtcbiAgICAgICAgYXBwLmdsb2JhbERhdGEuZXhwaXJlQXQgPSBleHBpcmVBdDtcbiAgICAgICAgYXBwLmdsb2JhbERhdGEudXNlckluZm8gPSB1c2VySW5mbztcbiAgICAgICAgYXBwLmdsb2JhbERhdGEuaXNMb2dnZWRJbiA9IHRydWU7XG4gICAgICAgIGFwcC5nbG9iYWxEYXRhLmJ1aWxkaW5nID0gYnVpbGRpbmc7XG4gICAgICAgIGFwcC5nbG9iYWxEYXRhLnJvb20gPSByb29tO1xuICAgICAgICBhcHAuZ2xvYmFsRGF0YS5wZW4gPSBwZW47XG4gICAgICAgIGFwcC5nbG9iYWxEYXRhLmJ1aWxkaW5nTmFtZSA9IGJ1aWxkaW5nO1xuICAgICAgICBhcHAuZ2xvYmFsRGF0YS5yb29tTmFtZSA9IHJvb207XG4gICAgICAgIGFwcC5nbG9iYWxEYXRhLnBlbk5vID0gcGVuO1xuICAgICAgICBjb25zb2xlLmxvZygn5LuO5pys5Zyw5a2Y5YKo5oGi5aSN5YWo5bGA5pWw5o2u5oiQ5YqfJyk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgY29uc29sZS5lcnJvcign5LuO5pys5Zyw5a2Y5YKo5oGi5aSN5YWo5bGA5pWw5o2u5aSx6LSlOicsIGUpO1xuICAgIH1cbiAgICBcbiAgICB0aGlzLmxvYWRTYXZlZFNldHRpbmdzKCk7XG4gICAgLy8g5Yi35paw5qCL6IiN5YiX6KGoXG4gICAgdGhpcy5mZXRjaEJ1aWxkaW5nTGlzdCgpO1xuICB9LFxuICAgIFxuICAgIC8qKlxuICAgICAqIOagueaNruagi+iIjeiOt+WPluaIv+mXtOWIl+ihqFxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBidWlsZGluZ05hbWUgLSDmoIvoiI3lkI3np7BcbiAgICAgKiBAcGFyYW0ge251bWJlcn0gcmV0cnlDb3VudCAtIOW9k+WJjemHjeivleasoeaVsFxuICAgICAqL1xuICAgIGZldGNoUm9vbUxpc3QoYnVpbGRpbmdOYW1lLCByZXRyeUNvdW50ID0gMCkge1xuICAgICAgLy8g5pi+56S65Yqg6L295o+Q56S6XG4gICAgICBpZiAocmV0cnlDb3VudCA9PT0gMCkge1xuICAgICAgICB1bmkuc2hvd0xvYWRpbmcoeyB0aXRsZTogJ+WKoOi9veaIv+mXtOWIl+ihqC4uLicsIG1hc2s6IHRydWUgfSk7XG4gICAgICB9XG4gICAgICBcbiAgICAgIC8vIOWPkemAgeivt+axguWIsEFQSeiOt+WPluaIv+mXtOWIl+ihqFxuICAgICAgdW5pLnJlcXVlc3Qoe1xuICAgICAgICB1cmw6IEFQSS5nZXRSb29tLFxuICAgICAgICBtZXRob2Q6ICdHRVQnLFxuICAgICAgICBkYXRhOiB7IGJ1aWxkaW5nOiBidWlsZGluZ05hbWUgfSxcbiAgICAgICAgdGltZW91dDogMTAwMDAsIC8vIOWinuWKoOi2heaXtuaXtumXtOWIsDEw56eSXG4gICAgICAgIGhlYWRlcjoge1xuICAgICAgICAgIFwieC10b2tlblwiOiB1bmkuZ2V0U3RvcmFnZVN5bmMoJ2VxdWlwbWVudF90b2tlbicpIHx8ICcnXG4gICAgICAgIH0sXG4gICAgICAgIHN1Y2Nlc3M6IChyZXMpID0+IHtcbiAgICAgICAgICAvLyDpmpDol4/liqDovb3mj5DnpLpcbiAgICAgICAgICBpZiAocmV0cnlDb3VudCA9PT0gMCkge1xuICAgICAgICAgICAgdW5pLmhpZGVMb2FkaW5nKCk7XG4gICAgICAgICAgfVxuXHRcdFx0Ly8g5pu05paw5oi/6Ze05YiX6KGoXG5cdFx0XHR0aGlzLnJvb21MaXN0ID0gcmVzLmRhdGEuZGF0YSB8fCBbXTtcblx0XHRcdC8vIOmHjee9ruaIv+mXtOWSjOagj+S9jemAieaLqVxuXHRcdFx0dGhpcy5mb3JtLnJvb21OYW1lID0gJyc7XG5cdFx0XHR0aGlzLkZpZWxkbnVtYmVyID0gW107XG5cdFx0XHR0aGlzLmZvcm0ucGVuTm8gPSAnJztcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBcbiAgICAvKipcbiAgICAgKiDmoLnmja7miL/pl7TlkI3np7Dojrflj5bmoI/kvY3liJfooahcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gcm9vbU5hbWUgLSDmiL/pl7TlkI3np7BcbiAgICAgKiBAcGFyYW0ge251bWJlcn0gcmV0cnlDb3VudCAtIOW9k+WJjemHjeivleasoeaVsO+8iOm7mOiupDDvvIlcbiAgICAgKi9cbiAgICBmZXRjaEZpZWxkTGlzdChyb29tTmFtZSwgcmV0cnlDb3VudCA9IDApIHtcbiAgICAgIC8vIOaYvuekuuWKoOi9veaPkOekulxuICAgICAgaWYgKHJldHJ5Q291bnQgPT09IDApIHtcbiAgICAgICAgdW5pLnNob3dMb2FkaW5nKHsgdGl0bGU6ICfliqDovb3moI/kvY3liJfooaguLi4nLCBtYXNrOiB0cnVlIH0pO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBNQVhfUkVUUklFUyA9IDE7XG4gICAgICBjb25zdCBSRVRSWV9ERUxBWSA9IDIwMDA7IC8vIDLnp5JcblxuICAgICAgLy8g5Y+R6YCB6K+35rGC5YiwQVBJ6I635Y+W5qCP5L2N5YiX6KGoXG4gICAgICB1bmkucmVxdWVzdCh7XG4gICAgICAgIHVybDogQVBJLmdldFBlbixcbiAgICAgICAgbWV0aG9kOiAnR0VUJyxcbiAgICAgICAgdGltZW91dDogMTAwMDAsIC8vIOWinuWKoOi2heaXtuaXtumXtOWIsDEw56eSXG4gICAgICAgIGhlYWRlcjoge1xuICAgICAgICAgIFwieC10b2tlblwiOiB1bmkuZ2V0U3RvcmFnZVN5bmMoJ2VxdWlwbWVudF90b2tlbicpIHx8ICcnXG4gICAgICAgIH0sXG4gICAgICAgIHN1Y2Nlc3M6IChyZXMpID0+IHtcbiAgICAgICAgICAvLyDpmpDol4/liqDovb3mj5DnpLpcbiAgICAgICAgICBpZiAocmV0cnlDb3VudCA9PT0gMCkge1xuICAgICAgICAgIHVuaS5oaWRlTG9hZGluZygpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAvLyDmm7TmlrDmoI/kvY3liJfooahcbiAgICAgICAgICB0aGlzLkZpZWxkbnVtYmVyID0gcmVzLmRhdGEuZGF0YSB8fCBbXTtcbiAgICAgICAgICAvLyDph43nva7moI/kvY3pgInmi6lcbiAgICAgICAgICB0aGlzLmZvcm0ucGVuTm8gPSAnJzsgXG4gICAgICAgIH0sXG4gICAgICAgIGZhaWw6IChlcnIpID0+IHtcbiAgICAgICAgICAvLyDpmpDol4/liqDovb3mj5DnpLpcbiAgICAgICAgICBpZiAocmV0cnlDb3VudCA9PT0gMCkge1xuICAgICAgICAgICAgdW5pLmhpZGVMb2FkaW5nKCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC8vIOWmguaenOacqui+vuWIsOacgOWkp+mHjeivleasoeaVsO+8jOWwneivlemHjeivlVxuICAgICAgICAgIGlmIChyZXRyeUNvdW50IDwgTUFYX1JFVFJJRVMpIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGBSZXRyeWluZyByZXF1ZXN0ICgke3JldHJ5Q291bnQgKyAxfS8ke01BWF9SRVRSSUVTfSlgKTtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLmZldGNoRmllbGRMaXN0KHJvb21OYW1lLCByZXRyeUNvdW50ICsgMSk7XG4gICAgICAgICAgICB9LCBSRVRSWV9ERUxBWSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIOWIneWni+WMllVIRuaPkuS7tuWunuS+i1xuICAgICAqIEByZXR1cm5zIHtib29sZWFufSDliJ3lp4vljJbmmK/lkKbmiJDlip9cbiAgICAgKi9cbiAgICBpbml0UGx1Z2luSW5zdGFuY2UoKSB7XG4gICAgICBpZiAodGhpcy51aGZTRkhlbHBlcikge1xuICAgICAgICBjb25zb2xlLmxvZygn5o+S5Lu25a6e5L6L5bey5a2Y5ZyoJyk7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgICAgXG4gICAgICB0cnkge1xuICAgICAgICBjb25zb2xlLmxvZygn5Yid5aeL5YyWVUhG5o+S5Lu25a6e5L6LJyk7XG4gICAgICAgIFxuICAgICAgICAvLyDmo4Dmn6Xov5DooYznjq/looPmmK/lkKbmlK/mjIHljp/nlJ/mj5Lku7ZcbiAgICAgICAgaWYgKHR5cGVvZiB1bmkucmVxdWlyZU5hdGl2ZVBsdWdpbiAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ+W9k+WJjeeOr+Wig+S4jeaUr+aMgXVuaS5yZXF1aXJlTmF0aXZlUGx1Z2luJyk7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyDlsJ3or5XliqDovb3mj5Lku7ZcbiAgICAgICAgdGhpcy51aGZTRkhlbHBlciA9IHVuaS5yZXF1aXJlTmF0aXZlUGx1Z2luKCdBbHZpbi1DQlpVaGZNb2R1bGUnKTtcbiAgICAgICAgXG4gICAgICAgIC8vIOmqjOivgeaPkuS7tuWunuS+i+aYr+WQpuacieaViFxuICAgICAgICBpZiAoIXRoaXMudWhmU0ZIZWxwZXIpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy51aGZTRkhlbHBlci5kb0luaXREZXZpY2UgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAvL+aPkuS7tuWunuS+i+e8uuWwkeW/heimgeaWueazlTogZG9Jbml0RGV2aWNlXG4gICAgICAgICAgdGhpcy51aGZTRkhlbHBlciA9IG51bGw7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGNvbnNvbGUubG9nKCdVSEbmj5Lku7blrp7kvovliJvlu7rmiJDlip8nKTtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ+WKoOi9vVVIRuaPkuS7tuWksei0pTonLCBlLm1lc3NhZ2UpO1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ+mUmeivr+agiDonLCBlLnN0YWNrKTtcbiAgICAgICAgdGhpcy51aGZTRkhlbHBlciA9IG51bGw7XG4gICAgICAgIHVuaS5zaG93VG9hc3Qoe1xuICAgICAgICAgIHRpdGxlOiAn6K6+5aSH5Yqf6IO95LiN5Y+v55SoOiAnICsgZS5tZXNzYWdlLFxuICAgICAgICAgIGljb246ICdub25lJyxcbiAgICAgICAgICBkdXJhdGlvbjogMzAwMFxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH0sXG4gICAgXG4gICAgLyoqXG4gICAgICog5qOA5p+l5bm25oGi5aSN5o+S5Lu25a6e5L6LXG4gICAgICogQHBhcmFtIHtudW1iZXJ9IHJldHJ5Q291bnQgLSDlvZPliY3ph43or5XmrKHmlbDvvIjpu5jorqQw77yJXG4gICAgICogQHJldHVybnMge2Jvb2xlYW59IOaPkuS7tuWunuS+i+aYr+WQpuacieaViFxuICAgICAqL1xuICAgIGNoZWNrQW5kUmVzdG9yZVBsdWdpbkluc3RhbmNlKHJldHJ5Q291bnQgPSAwKSB7XG4gICAgICAvLyDorr7nva7mnIDlpKfph43or5XmrKHmlbDlkozotoXml7bml7bpl7RcbiAgICAgIGNvbnN0IE1BWF9SRVRSSUVTID0gMTtcbiAgICAgIGNvbnN0IFJFVFJZX0RFTEFZID0gMTAwMDsgLy8gMeenklxuICAgICAgXG4gICAgICAvLyDlpoLmnpzlrp7kvovkuI3lrZjlnKjvvIzlsJ3or5XliJ3lp4vljJZcbiAgICAgIGlmICghdGhpcy51aGZTRkhlbHBlcikge1xuICAgICAgICBjb25zb2xlLmxvZyhg5rKh5pyJ5o+S5Lu25a6e5L6L77yM5bCd6K+V5Yid5aeL5YyWICjph43or5U6ICR7cmV0cnlDb3VudH0pYCk7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuaW5pdFBsdWdpbkluc3RhbmNlKCk7XG4gICAgICAgIFxuICAgICAgICAvLyDlpoLmnpzliJ3lp4vljJblpLHotKXkuJTmnKrovr7liLDmnIDlpKfph43or5XmrKHmlbDvvIzpgJLlvZLph43or5VcbiAgICAgICAgaWYgKCFyZXN1bHQgJiYgcmV0cnlDb3VudCA8IE1BWF9SRVRSSUVTKSB7XG4gICAgICAgICAgY29uc29sZS5sb2coYOWIneWni+WMluWksei0pe+8jOmHjeivlSAoJHtyZXRyeUNvdW50ICsgMX0vJHtNQVhfUkVUUklFU30pIOWQjiAke1JFVFJZX0RFTEFZfW1zYCk7XG4gICAgICAgICAgLy8g5bu26L+f5ZCO6YeN6K+VXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNoZWNrQW5kUmVzdG9yZVBsdWdpbkluc3RhbmNlKHJldHJ5Q291bnQgKyAxKTtcbiAgICAgICAgICB9LCBSRVRSWV9ERUxBWSk7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgfVxuICAgICAgXG4gICAgICAvLyDmo4Dmn6Xlrp7kvovmlrnms5XmmK/lkKblrZjlnKjkuJTmnInmlYhcbiAgICAgIGNvbnN0IHJlcXVpcmVkTWV0aG9kcyA9IFsnZG9Jbml0RGV2aWNlJywgJ2RvU3RhcnRTY2FuJywgJ2RvUmVsZWFzZURldmljZSddO1xuICAgICAgY29uc3QgbWlzc2luZ01ldGhvZHMgPSByZXF1aXJlZE1ldGhvZHMuZmlsdGVyKG1ldGhvZCA9PiB0eXBlb2YgdGhpcy51aGZTRkhlbHBlclttZXRob2RdICE9PSAnZnVuY3Rpb24nKTtcbiAgICAgIFxuICAgICAgaWYgKG1pc3NpbmdNZXRob2RzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihg5o+S5Lu25a6e5L6L57y65bCR5b+F6KaB5pa55rOVOiAke21pc3NpbmdNZXRob2RzLmpvaW4oJywgJyl9YCk7XG4gICAgICAgIHRoaXMudWhmU0ZIZWxwZXIgPSBudWxsO1xuICAgICAgICBcbiAgICAgICAgLy8g5aaC5p6c5pyq6L6+5Yiw5pyA5aSn6YeN6K+V5qyh5pWw77yM5bCd6K+V6YeN5paw5Yid5aeL5YyWXG4gICAgICAgIGlmIChyZXRyeUNvdW50IDwgTUFYX1JFVFJJRVMpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZyhgQXR0ZW1wdGluZyB0byByZWluaXRpYWxpemUgcGx1Z2luICgke3JldHJ5Q291bnQgKyAxfS8ke01BWF9SRVRSSUVTfSkgYWZ0ZXIgJHtSRVRSWV9ERUxBWX1tc2ApO1xuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jaGVja0FuZFJlc3RvcmVQbHVnaW5JbnN0YW5jZShyZXRyeUNvdW50ICsgMSk7XG4gICAgICAgICAgfSwgUkVUUllfREVMQVkpO1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgICAgXG4gICAgICBjb25zb2xlLmxvZygn5o+S5Lu25a6e5L6L5pyJ5pWI5LiU5YeG5aSH5L2/55SoJyk7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9LFxuICAgIFxuICAgIC8qKlxuICAgICAqIOWPlua2iOW9k+WJjeaJq+aPj+aTjeS9nFxuICAgICAqL1xuICAgIGNhbmNlbFNjYW4oKSB7XG4gICAgICAvLyDmuIXpmaTmiYDmnInnm7jlhbPorqHml7blmahcbiAgICAgIGlmICh0aGlzLnNjYW5UaW1lb3V0KSB7XG4gICAgICAgIGNsZWFyVGltZW91dCh0aGlzLnNjYW5UaW1lb3V0KTtcbiAgICAgICAgdGhpcy5zY2FuVGltZW91dCA9IG51bGw7XG4gICAgICB9XG4gICAgICBcbiAgICAgIGlmICh0aGlzLnJldHJ5VGltZW91dCkge1xuICAgICAgICBjbGVhclRpbWVvdXQodGhpcy5yZXRyeVRpbWVvdXQpO1xuICAgICAgICB0aGlzLnJldHJ5VGltZW91dCA9IG51bGw7XG4gICAgICB9XG4gICAgICBcbiAgICAgIGlmICh0aGlzLm1heFNjYW5UaW1lcikge1xuICAgICAgICBjbGVhclRpbWVvdXQodGhpcy5tYXhTY2FuVGltZXIpO1xuICAgICAgICB0aGlzLm1heFNjYW5UaW1lciA9IG51bGw7XG4gICAgICB9XG4gICAgICBcbiAgICAgIC8vIOmakOiXj+WKoOi9veaPkOekulxuICAgICAgdW5pLmhpZGVMb2FkaW5nKCk7XG4gICAgICBcbiAgICAgIGNvbnNvbGUubG9nKCfmiavmj4/lt7Llj5bmtognKTtcbiAgICB9LFxuICAgIFxuICAgIC8qKlxuICAgICAqIOmHiuaUvuiuvuWkh+i1hOa6kFxuICAgICAqL1xuICAgIHJlbGVhc2VEZXZpY2UoKSB7XG4gICAgICBpZiAodGhpcy5pc0RldmljZVJlYWR5ICYmIHRoaXMudWhmU0ZIZWxwZXIpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICB0aGlzLnVoZlNGSGVscGVyLmRvUmVsZWFzZURldmljZSgpXG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCfph4rmlL7orr7lpIflpLHotKUnLCBlKVxuICAgICAgICB9XG4gICAgICAgIHRoaXMuaXNEZXZpY2VSZWFkeSA9IGZhbHNlXG4gICAgICAgIHRoaXMuaXNEaXNhYmxlID0gZmFsc2VcbiAgICAgIH1cbiAgICB9LFxuICAgIFxuICAgIC8qKlxuICAgICAqIOWIneWni+WMluiuvuWkh1xuICAgICAqL1xuICAgIGluaXQoKSB7XG4gICAgICAvLyDnoa7kv53mj5Lku7blrp7kvovlt7LliJ3lp4vljJbkuJTmnInmlYhcbiAgICAgIGlmICghdGhpcy5jaGVja0FuZFJlc3RvcmVQbHVnaW5JbnN0YW5jZSgpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgaWYgKHRoaXMuaXNJbml0aWFsaXppbmcpIHtcbiAgICAgICAgY29uc29sZS5sb2coJ+iuvuWkh+WIneWni+WMluW3suWcqOi/m+ihjOS4rScpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBcbiAgICAgIGlmICh0aGlzLmlzRGV2aWNlUmVhZHkpIHtcbiAgICAgICAgY29uc29sZS5sb2coJ+iuvuWkh+W3suWIneWni+WMlicpO1xuICAgICAgICByZXR1cm4gdW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn6K6+5aSH5bey5byA5ZCvJywgaWNvbjogJ25vbmUnIH0pO1xuICAgICAgfVxuICAgICAgXG4gICAgICB0aGlzLmlzRGlzYWJsZSA9IGZhbHNlO1xuICAgICAgdGhpcy5pc0luaXRpYWxpemluZyA9IHRydWU7XG4gICAgICBcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnNvbGUubG9nKCflvIDlp4vliJ3lp4vljJborr7lpIcnKTtcbiAgICAgICAgLy8g5YaN5qyh5qOA5p+l5o+S5Lu25a6e5L6L5piv5ZCm5pyJ5pWIXG4gICAgICAgIGlmICghdGhpcy5jaGVja0FuZFJlc3RvcmVQbHVnaW5JbnN0YW5jZSgpKSB7XG4gICAgICAgICAgdGhpcy5pc0luaXRpYWxpemluZyA9IGZhbHNlO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgdGhpcy51aGZTRkhlbHBlci5kb0luaXREZXZpY2UocmVzID0+IHtcbiAgICAgICAgICB0aGlzLmlzSW5pdGlhbGl6aW5nID0gZmFsc2U7XG4gICAgICAgICAgXG4gICAgICAgICAgaWYgKHJlcyA9PT0gdHJ1ZSkge1xuICAgICAgICAgICAgdGhpcy5pc0RldmljZVJlYWR5ID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuaXNEaXNhYmxlID0gdHJ1ZTtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdEZXZpY2UgaW5pdGlhbGl6ZWQgc3VjY2Vzc2Z1bGx5Jyk7XG4gICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICforr7lpIflt7LlvIDlkK8nLCBpY29uOiAnc3VjY2VzcycgfSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuaXNEaXNhYmxlID0gZmFsc2U7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCforr7lpIfliJ3lp4vljJblpLHotKUnKTtcbiAgICAgICAgICAgIHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+WIneWni+WMluWksei0pScsIGljb246ICdub25lJyB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICB0aGlzLmlzSW5pdGlhbGl6aW5nID0gZmFsc2U7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGR1cmluZyBkZXZpY2UgaW5pdGlhbGl6YXRpb246JywgZSk7XG4gICAgICAgIHRoaXMuaXNEaXNhYmxlID0gZmFsc2U7XG4gICAgICAgIC8vIOa4hemZpOaPkuS7tuWunuS+i++8jOS7peS+v+S4i+asoeWIneWni+WMluWwneivlVxuICAgICAgICB0aGlzLnVoZlNGSGVscGVyID0gbnVsbDtcbiAgICAgICAgdW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn5Yid5aeL5YyW5byC5bi4JywgaWNvbjogJ25vbmUnIH0pO1xuICAgICAgfVxuICAgIH0sXG4gICAgXG4gICAgLyoqXG4gICAgICog5YiH5o2i5oyB57ut5omr5o+P54q25oCBXG4gICAgICovXG4gICAgdG9nZ2xlQ29udGludW91c1NjYW4oKSB7XG4gICAgICAvLyDnoa7kv53mj5Lku7blrp7kvovlt7LliJ3lp4vljJbkuJTmnInmlYhcbiAgICAgIGlmICghdGhpcy5jaGVja0FuZFJlc3RvcmVQbHVnaW5JbnN0YW5jZSgpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgaWYgKCF0aGlzLmlzRGV2aWNlUmVhZHkpIHtcbiAgICAgICAgcmV0dXJuIHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+ivt+WFiOW8gOWQr+iuvuWkhycsIGljb246ICdub25lJyB9KVxuICAgICAgfVxuICAgICAgXG4gICAgICBpZiAodGhpcy5pc0NvbnRpbnVvdXNTY2FubmluZykge1xuICAgICAgICAvLyDlgZzmraLmjIHnu63miavmj49cbiAgICAgICAgdGhpcy5pc0NvbnRpbnVvdXNTY2FubmluZyA9IGZhbHNlO1xuICAgICAgICBcbiAgICAgICAgLy8g6LCD55SoY2FuY2VsU2NhbuaWueazlea4hemZpOaJgOacieiuoeaXtuWZqOWSjOWKoOi9veaPkOekulxuICAgICAgICB0aGlzLmNhbmNlbFNjYW4oKTtcbiAgICAgICAgXG4gICAgICAgIC8vIOa4hemZpOaMgee7reaJq+aPj+mXtOmalOiuoeaXtuWZqO+8iOWPjOmHjeS/nemanO+8iVxuICAgICAgICBpZiAodGhpcy5jb250aW51b3VzU2NhbkludGVydmFsKSB7XG4gICAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuY29udGludW91c1NjYW5JbnRlcnZhbCk7XG4gICAgICAgICAgdGhpcy5jb250aW51b3VzU2NhbkludGVydmFsID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8g5pi+56S65omr5o+P5YGc5q2i5o+Q56S6XG4gICAgICAgIHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+W3suWBnOatouaJq+aPjycsIGljb246ICdub25lJyB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIOW8gOWni+aMgee7reaJq+aPj1xuICAgICAgICB0aGlzLmlzQ29udGludW91c1NjYW5uaW5nID0gdHJ1ZTtcbiAgICAgICAgXG4gICAgICAgIC8vIOaYvuekuuaMgee7reaJq+aPj+aPkOekulxuICAgICAgICB1bmkuc2hvd0xvYWRpbmcoe1xuICAgICAgICAgIHRpdGxlOiAn5oyB57ut5omr5o+P5LitLi4uJyxcbiAgICAgICAgICBtYXNrOiB0cnVlXG4gICAgICAgIH0pO1xuICAgICAgICBcbiAgICAgICAgLy8g5byA5aeL5oyB57ut5omr5o+PXG4gICAgICAgIHRoaXMucGVyZm9ybUNvbnRpbnVvdXNTY2FuKCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBcbiAgICAvKipcbiAgICAgKiDlvIDlp4vmiavmj4/ogLPmoIfvvIjljZXmrKHvvIlcbiAgICAgKi9cbiAgICBzY2FuKCkge1xuICAgICAgLy8g56Gu5L+d5o+S5Lu25a6e5L6L5bey5Yid5aeL5YyW5LiU5pyJ5pWIXG4gICAgICBpZiAoIXRoaXMuY2hlY2tBbmRSZXN0b3JlUGx1Z2luSW5zdGFuY2UoKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBcbiAgICAgIGlmICghdGhpcy5pc0RldmljZVJlYWR5KSB7XG4gICAgICAgIHJldHVybiB1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICfor7flhYjlvIDlkK/orr7lpIcnLCBpY29uOiAnbm9uZScgfSlcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLy8g5aaC5p6c5q2j5Zyo5oyB57ut5omr5o+P77yM5YWI5YGc5q2iXG4gICAgICBpZiAodGhpcy5pc0NvbnRpbnVvdXNTY2FubmluZykge1xuICAgICAgICB0aGlzLnRvZ2dsZUNvbnRpbnVvdXNTY2FuKCk7XG4gICAgICB9XG4gICAgICBcbiAgICAgIC8vIOiuvue9ruaJq+aPj+WPguaVsCAtIOS8mOWMluWPguaVsOS7peaPkOmrmOaIkOWKn+eOh1xuICAgICAgY29uc3Qgc2NhbkNvbmZpZyA9IHtcbiAgICAgICAgcmV0cnlDb3VudDogMywgIC8vIOWinuWKoOmHjeivleasoeaVsFxuICAgICAgICBjdXJyZW50UmV0cnk6IDAsXG4gICAgICAgIHRpbWVvdXQ6IDIwMDAsICAvLyDlop7liqDotoXml7bml7bpl7RcbiAgICAgICAgaW50ZXJ2YWw6IDQwMCwgIC8vIOWinuWKoOmXtOmalO+8jOe7meiuvuWkh+aBouWkjeaXtumXtFxuICAgICAgICBzaWduYWxUaHJlc2hvbGQ6IDAuNSwgIC8vIOmZjeS9juS/oeWPt+mYiOWAvO+8jOaOpeWPl+abtOWkmuS/oeWPt1xuICAgICAgICBjb250aW51b3VzOiBmYWxzZSAgLy8g6Z2e5oyB57ut5omr5o+P5qih5byPXG4gICAgICB9O1xuICAgICAgXG4gICAgICAvLyDliJ3lp4vljJbmiavmj4/ov5vluqblj5jph49cbiAgICAgIHRoaXMuc2NhblByb2dyZXNzID0gMDtcbiAgICAgIHRoaXMuc2NhblRvdGFsQXR0ZW1wdHMgPSBzY2FuQ29uZmlnLnJldHJ5Q291bnQ7XG4gICAgICBcbiAgICAgIC8vIOaYvuekuuaJq+aPj+S4reaPkOekuu+8jOa3u+WKoG1hc2vku6XnpoHmraLog4zmma/mk43kvZxcbiAgICAgIHVuaS5zaG93TG9hZGluZyh7XG4gICAgICAgIHRpdGxlOiAn5q2j5Zyo5omr5o+P6ICz5qCHLi4uJyxcbiAgICAgICAgbWFzazogdHJ1ZVxuICAgICAgfSk7XG4gICAgICBcbiAgICAgIC8vIOaJp+ihjOaJq+aPj+WHveaVsFxuICAgICAgdGhpcy5wZXJmb3JtU2NhbihzY2FuQ29uZmlnKTtcbiAgICB9LFxuICAgIFxuICAgIC8qKlxuICAgICAqIOaJp+ihjOaMgee7reaJq+aPj1xuICAgICAqL1xuICAgIHBlcmZvcm1Db250aW51b3VzU2NhbigpIHtcbiAgICAgIC8vIOajgOafpeaYr+WQpuS7jeWcqOaMgee7reaJq+aPj+eKtuaAgVxuICAgICAgaWYgKCF0aGlzLmlzQ29udGludW91c1NjYW5uaW5nIHx8ICF0aGlzLl9pc01vdW50ZWQgfHwgIXRoaXMuaXNEZXZpY2VSZWFkeSkge1xuICAgICAgICBpZiAodGhpcy5pc0NvbnRpbnVvdXNTY2FubmluZykge1xuICAgICAgICAgIHVuaS5oaWRlTG9hZGluZygpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLy8g5qOA5p+l5bm25oGi5aSN5o+S5Lu25a6e5L6LXG4gICAgICBpZiAoIXRoaXMuY2hlY2tBbmRSZXN0b3JlUGx1Z2luSW5zdGFuY2UoKSkge1xuICAgICAgICB1bmkuaGlkZUxvYWRpbmcoKTtcbiAgICAgICAgdGhpcy5pc0NvbnRpbnVvdXNTY2FubmluZyA9IGZhbHNlO1xuICAgICAgICByZXR1cm4gdW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn6K6+5aSH5Yqf6IO95byC5bi477yM5peg5rOV5oyB57ut5omr5o+PJywgaWNvbjogJ25vbmUnIH0pO1xuICAgICAgfVxuICAgICAgXG4gICAgICAvLyDorr7nva7mjIHnu63miavmj4/lj4LmlbBcbiAgICAgIGNvbnN0IHNjYW5Db25maWcgPSB7XG4gICAgICAgIHJldHJ5Q291bnQ6IDEwMCwgIC8v6YeN6K+V5qyh5pWwXG4gICAgICAgIGN1cnJlbnRSZXRyeTogMCxcbiAgICAgICAgdGltZW91dDogMTUwMCwgIC8vIOWinuWKoOi2heaXtuaXtumXtOWIsDEuNeenklxuICAgICAgICBpbnRlcnZhbDogMzAwLCAgLy8g5YeP5bCR6YeN6K+V6Ze06ZqU5YiwMzAwbXNcbiAgICAgICAgc2lnbmFsVGhyZXNob2xkOiAwLjMsICAvLyDpmY3kvY7kv6Hlj7fpmIjlgLzvvIzmj5Dpq5jmiavmj4/miJDlip/njodcbiAgICAgICAgY29udGludW91czogdHJ1ZSAgLy8g5oyB57ut5omr5o+P5qih5byPXG4gICAgICB9O1xuICAgICAgXG4gICAgICAvLyDmiafooYzmiavmj49cbiAgICAgIHRoaXMucGVyZm9ybVNjYW4oc2NhbkNvbmZpZyk7XG4gICAgfSxcbiAgICBcbiAgICAvKipcbiAgICAgKiDmiafooYzmiavmj4/vvIjluKbph43or5XmnLrliLbvvIlcbiAgICAgKiBAcGFyYW0ge29iamVjdH0gY29uZmlnIC0g5omr5o+P6YWN572u5Y+C5pWwXG4gICAgICogQHBhcmFtIHtudW1iZXJ9IGNvbmZpZy5yZXRyeUNvdW50IC0g5pyA5aSn6YeN6K+V5qyh5pWwXG4gICAgICogQHBhcmFtIHtudW1iZXJ9IGNvbmZpZy5jdXJyZW50UmV0cnkgLSDlvZPliY3ph43or5XmrKHmlbBcbiAgICAgKiBAcGFyYW0ge251bWJlcn0gY29uZmlnLnRpbWVvdXQgLSDljZXmrKHmiavmj4/otoXml7bml7bpl7TvvIjmr6vnp5LvvIlcbiAgICAgKiBAcGFyYW0ge251bWJlcn0gY29uZmlnLmludGVydmFsIC0g6YeN6K+V6Ze06ZqU77yI5q+r56eS77yJXG4gICAgICovXG4gICAgLyoqXG4gICAgICog5aSE55CG57G75Z6L6YCJ5oup5Y+Y5YyWXG4gICAgICovXG4gICAgb25UeXBlQ2hhbmdlKGUsIGluZGV4KSB7XG4gICAgICBpZiAoaW5kZXggPj0gMCAmJiBpbmRleCA8IHRoaXMuZGF0YUxpc3QubGVuZ3RoKSB7XG4gICAgICAgIHRoaXMuZGF0YUxpc3RbaW5kZXhdLnR5cGVJbmRleCA9IGUuZGV0YWlsLnZhbHVlO1xuICAgICAgICBjb25zb2xlLmxvZyhg6ICz5qCHICR7dGhpcy5kYXRhTGlzdFtpbmRleF0uaWR9IOexu+Wei+WPmOabtOS4ujogJHt0aGlzLnR5cGVzW2UuZGV0YWlsLnZhbHVlXX1gKTtcbiAgICAgIH1cbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICog5Yig6Zmk6ICz5qCH5p2h55uuXG4gICAgICovXG4gICAgZGVsZXRlSXRlbShpbmRleCkge1xuICAgICAgaWYgKGluZGV4ID49IDAgJiYgaW5kZXggPCB0aGlzLmRhdGFMaXN0Lmxlbmd0aCkge1xuICAgICAgICBjb25zdCBkZWxldGVkSXRlbSA9IHRoaXMuZGF0YUxpc3Quc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgICAgY29uc29sZS5sb2coYOWIoOmZpOiAs+aghzogJHtkZWxldGVkSXRlbVswXS5pZH1gKTtcbiAgICAgICAgdW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn5Yig6Zmk5oiQ5YqfJywgaWNvbjogJ3N1Y2Nlc3MnIH0pO1xuICAgICAgfVxuICAgIH0sXG5cbiAgICBwZXJmb3JtU2Nhbihjb25maWcpIHtcbiAgICAgIC8vIOajgOafpee7hOS7tuaYr+WQpuW3suWNuOi9veaIluiuvuWkh+aYr+WQpuW3suWHhuWkh+WlvVxuICAgICAgaWYgKCF0aGlzLl9pc01vdW50ZWQgfHwgIXRoaXMuaXNEZXZpY2VSZWFkeSkge1xuICAgICAgICB1bmkuaGlkZUxvYWRpbmcoKTtcbiAgICAgICAgY29uc29sZS5sb2coJ1NjYW4gYWJvcnRlZDogY29tcG9uZW50IG5vdCBtb3VudGVkIG9yIGRldmljZSBub3QgcmVhZHknKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgXG4gICAgICAvLyDpnZ7mjIHnu63miavmj4/mqKHlvI/kuIvmiY3mo4Dmn6XmnIDlpKfph43or5XmrKHmlbBcbiAgICAgIGlmICghY29uZmlnLmNvbnRpbnVvdXMgJiYgY29uZmlnLmN1cnJlbnRSZXRyeSA+PSBjb25maWcucmV0cnlDb3VudCkge1xuICAgICAgICB1bmkuaGlkZUxvYWRpbmcoKTtcbiAgICAgICAgY29uc29sZS5sb2coJ1NjYW4gZmFpbGVkIGFmdGVyIG1heGltdW0gcmV0cmllcycpO1xuICAgICAgICByZXR1cm4gdW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn5omr5o+P5aSx6LSl77yM6K+36LCD5pW05L2N572u6YeN6K+VJywgaWNvbjogJ25vbmUnIH0pO1xuICAgICAgfVxuICAgICAgXG4gICAgICAvLyDpnZ7mjIHnu63miavmj4/mqKHlvI/kuIvmiY3mt7vliqDmnIDlpKfmiavmj4/ml7bpl7TpmZDliLZcbiAgICAgIGlmICghY29uZmlnLmNvbnRpbnVvdXMpIHtcbiAgICAgICAgY29uc3QgbWF4U2NhblRpbWUgPSBjb25maWcudGltZW91dCAqIGNvbmZpZy5yZXRyeUNvdW50O1xuICAgICAgICBpZiAoIXRoaXMubWF4U2NhblRpbWVyKSB7XG4gICAgICAgICAgdGhpcy5tYXhTY2FuVGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdNYXhpbXVtIHNjYW4gdGltZSBleGNlZWRlZCcpO1xuICAgICAgICAgICAgdGhpcy5jYW5jZWxTY2FuKCk7XG4gICAgICAgICAgfSwgbWF4U2NhblRpbWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBcbiAgICAgIC8vIOWinuWKoOmHjeivleiuoeaVsFxuICAgICAgY29uZmlnLmN1cnJlbnRSZXRyeSsrO1xuICAgICAgdGhpcy5zY2FuUHJvZ3Jlc3MgPSBjb25maWcuY3VycmVudFJldHJ5O1xuICAgICAgXG4gICAgICAvLyDmjIHnu63miavmj4/mqKHlvI/kuIvkuI3mm7TmlrDliqDovb3mj5DnpLrvvIzku6Xpgb/lhY3lubLmibDlgZzmraLmk43kvZxcbiAgICAgIGlmICghY29uZmlnLmNvbnRpbnVvdXMgJiYgKGNvbmZpZy5jdXJyZW50UmV0cnkgJSAyID09PSAwIHx8IGNvbmZpZy5jdXJyZW50UmV0cnkgPT09IGNvbmZpZy5yZXRyeUNvdW50KSkge1xuICAgICAgICB1bmkuaGlkZUxvYWRpbmcoKTtcbiAgICAgICAgdW5pLnNob3dMb2FkaW5nKHtcbiAgICAgICAgICB0aXRsZTogYOaJq+aPj+S4rSAoJHtNYXRoLnJvdW5kKGNvbmZpZy5jdXJyZW50UmV0cnkvY29uZmlnLnJldHJ5Q291bnQqMTAwKX0lKS4uLmAsXG4gICAgICAgICAgbWFzazogdHJ1ZVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgY29uc29sZS5sb2coYOW8gOWni+aJq+aPj+WwneivlSAke2NvbmZpZy5jdXJyZW50UmV0cnl9LyR7Y29uZmlnLnJldHJ5Q291bnR977yM6LaF5pe25pe26Ze0OiAke2NvbmZpZy50aW1lb3V0fW1zYCk7XG4gICAgICBcbiAgICAgIC8vIOa4hemZpOS5i+WJjeeahOi2heaXtlxuICAgICAgaWYgKHRoaXMuc2NhblRpbWVvdXQpIHtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuc2NhblRpbWVvdXQpO1xuICAgICAgICB0aGlzLnNjYW5UaW1lb3V0ID0gbnVsbDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLy8g6K6+572u6LaF5pe25py65Yi2XG4gICAgICB0aGlzLnNjYW5UaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGNvbnNvbGUubG9nKGBTY2FuIHRpbWVvdXQsIHJldHJ5aW5nICgke2NvbmZpZy5jdXJyZW50UmV0cnl9LyR7Y29uZmlnLnJldHJ5Q291bnR9KWApO1xuICAgICAgICAvLyDph43or5Xmiavmj4/liY3lhYjmo4Dmn6Xlrp7kvotcbiAgICAgICAgaWYgKHRoaXMuX2lzTW91bnRlZCkge1xuICAgICAgICAgIC8vIOajgOafpeW5tuaBouWkjeaPkuS7tuWunuS+i1xuICAgICAgICAgIGlmICh0aGlzLmNoZWNrQW5kUmVzdG9yZVBsdWdpbkluc3RhbmNlKCkpIHtcbiAgICAgICAgICAgIHRoaXMucmV0cnlUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB0aGlzLnBlcmZvcm1TY2FuKGNvbmZpZyksIGNvbmZpZy5pbnRlcnZhbCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byByZXN0b3JlIHBsdWdpbiBpbnN0YW5jZSBiZWZvcmUgcmV0cnknKTtcbiAgICAgICAgICAgIHVuaS5oaWRlTG9hZGluZygpO1xuICAgICAgICAgICAgcmV0dXJuIHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+iuvuWkh+WKn+iDveW8guW4uO+8jOaXoOazlemHjeivlScsIGljb246ICdub25lJyB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sIGNvbmZpZy50aW1lb3V0KTtcbiAgICAgIFxuICAgICAgLy8g5omn6KGM5omr5o+PXG4gICAgICB0cnkge1xuICAgICAgICAvLyDmuIXpmaTkuYvliY3lj6/og73lrZjlnKjnmoTph43or5XorqHml7blmahcbiAgICAgICAgaWYgKHRoaXMucmV0cnlUaW1lb3V0KSB7XG4gICAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMucmV0cnlUaW1lb3V0KTtcbiAgICAgICAgICB0aGlzLnJldHJ5VGltZW91dCA9IG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICAvLyDmo4Dmn6Xmj5Lku7blrp7kvovmmK/lkKbmnInmlYhcbiAgICAgICAgaWYgKCF0aGlzLmNoZWNrQW5kUmVzdG9yZVBsdWdpbkluc3RhbmNlKCkpIHtcbiAgICAgICAgICAvLyDmuIXpmaTotoXml7borqHml7blmahcbiAgICAgICAgICBpZiAodGhpcy5zY2FuVGltZW91dCkge1xuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuc2NhblRpbWVvdXQpO1xuICAgICAgICAgICAgdGhpcy5zY2FuVGltZW91dCA9IG51bGw7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0ludmFsaWQgcGx1Z2luIGluc3RhbmNlIGZvciBzY2FubmluZyBhZnRlciByZXN0b3JlIGF0dGVtcHQnKTtcbiAgICAgIC8vIOWwneivlemHjeaWsOWIneWni+WMluiuvuWkh1xuICAgICAgdGhpcy5pbml0KCk7ICAvLyDkv67lpI3vvJrkvb/nlKhpbml06ICM5LiN5piv5LiN5a2Y5Zyo55qEaW5pdERldmljZeaWueazlVxuICAgICAgdW5pLmhpZGVMb2FkaW5nKCk7XG4gICAgICByZXR1cm4gdW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn6K6+5aSH5Yqf6IO95byC5bi477yM5q2j5Zyo6YeN5paw5Yid5aeL5YyWJywgaWNvbjogJ25vbmUnIH0pO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyDkv53lrZjlvZPliY3lrp7kvovlvJXnlKjvvIzpmLLmraLpl63ljIXkuK3lrp7kvovlj5jljJZcbiAgICAgICAgY29uc3QgY3VycmVudFBsdWdpbkluc3RhbmNlID0gdGhpcy51aGZTRkhlbHBlcjtcbiAgICAgICAgXG4gICAgICAgIC8vIOaJp+ihjOaJq+aPj+WRveS7pFxuICAgICAgICB0cnkge1xuICAgICAgICAgIGN1cnJlbnRQbHVnaW5JbnN0YW5jZS5kb1N0YXJ0U2NhbihyZXN1bHQgPT4ge1xuICAgICAgICAgICAgLy8g5YaN5qyh5qOA5p+l5o+S5Lu25a6e5L6L5piv5ZCm5LiO5omn6KGM5omr5o+P5pe255u45ZCMXG4gICAgICAgICAgICBpZiAodGhpcy51aGZTRkhlbHBlciAhPT0gY3VycmVudFBsdWdpbkluc3RhbmNlKSB7XG4gICAgICAgICAgICAgIGNvbnNvbGUud2FybignUGx1Z2luIGluc3RhbmNlIGNoYW5nZWQgZHVyaW5nIHNjYW4sIGlnbm9yaW5nIHJlc3VsdCcpO1xuICAgICAgICAgICAgICAvLyDlsJ3or5Xph43mlrDmiavmj49cbiAgICAgICAgICAgICAgaWYgKHRoaXMuX2lzTW91bnRlZCkge1xuICAgICAgICAgICAgICAgIHRoaXMucmV0cnlUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB0aGlzLnBlcmZvcm1TY2FuKGNvbmZpZyksIGNvbmZpZy5pbnRlcnZhbCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAvLyDmo4Dmn6Xnu4Tku7bmmK/lkKblt7Lljbjovb1cbiAgICAgICAgICAgIGlmICghdGhpcy5faXNNb3VudGVkKSByZXR1cm47XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC8vIOa4hemZpOi2heaXtuiuoeaXtuWZqFxuICAgICAgICAgICAgaWYgKHRoaXMuc2NhblRpbWVvdXQpIHtcbiAgICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuc2NhblRpbWVvdXQpO1xuICAgICAgICAgICAgICB0aGlzLnNjYW5UaW1lb3V0ID0gbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICAgICAgICAvLyDlpoLmnpxyZXN1bHTlj6rmmK9JROWtl+espuS4su+8jOWwhuWFtuWMheijheaIkOWvueixoVxuICAgICAgICAgICAgICBjb25zdCBzY2FuUmVzdWx0ID0gdHlwZW9mIHJlc3VsdCA9PT0gJ3N0cmluZycgPyB7IGlkOiByZXN1bHQsIHNpZ25hbFN0cmVuZ3RoOiAxIH0gOiByZXN1bHQ7XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAvLyDmo4Dmn6Xkv6Hlj7flvLrluqbmmK/lkKbotrPlpJ9cbiAgICAgICAgICAgICAgaWYgKHNjYW5SZXN1bHQuc2lnbmFsU3RyZW5ndGggPj0gY29uZmlnLnNpZ25hbFRocmVzaG9sZCkge1xuICAgICAgICAgICAgICAgIC8vIOa4hemZpOaJgOacieiuoeaXtuWZqFxuICAgICAgICAgICAgICAgIGlmICh0aGlzLm1heFNjYW5UaW1lcikge1xuICAgICAgICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMubWF4U2NhblRpbWVyKTtcbiAgICAgICAgICAgICAgICAgIHRoaXMubWF4U2NhblRpbWVyID0gbnVsbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMucmV0cnlUaW1lb3V0KSB7XG4gICAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQodGhpcy5yZXRyeVRpbWVvdXQpO1xuICAgICAgICAgICAgICAgICAgdGhpcy5yZXRyeVRpbWVvdXQgPSBudWxsO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBpZiAoIWNvbmZpZy5jb250aW51b3VzKSB7XG4gICAgICAgICAgICAgICAgICB1bmkuaGlkZUxvYWRpbmcoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ+aJq+aPj+aIkOWKnzonLCBzY2FuUmVzdWx0KTtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm0uZWFySWQgPSBzY2FuUmVzdWx0LmlkO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIC8vIOajgOafpeaYr+WQpumHjeWkjeaJq+aPj1xuICAgICAgICAgICAgICAgIGNvbnN0IGlzRHVwbGljYXRlID0gdGhpcy5kYXRhTGlzdC5zb21lKGl0ZW0gPT4gaXRlbS5pZCA9PT0gc2NhblJlc3VsdC5pZCk7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgaWYgKGlzRHVwbGljYXRlKSB7XG4gICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygn6ICz5qCH5bey5a2Y5ZyoOicsIHNjYW5SZXN1bHQuaWQpO1xuICAgICAgICAgICAgICAgICAgLy8g5oyB57ut5omr5o+P5qih5byP5LiL5Lmf5pi+56S66YeN5aSN5o+Q56S677yM5L2G5oyB57ut5pe26Ze06L6D55+tXG4gICAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICfor6XogLPmoIflt7Lmiavmj4/ov4cnLFxuICAgICAgICAgICAgICAgICAgICBpY29uOiAnbm9uZScsXG4gICAgICAgICAgICAgICAgICAgIGR1cmF0aW9uOiBjb25maWcuY29udGludW91cyA/IDUwMCA6IDIwMDBcbiAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAvLyDpu5jorqTmt7vliqDkuLon5q2j5bi4J+exu+Wei1xuICAgICAgICAgICAgICAgICAgdGhpcy5kYXRhTGlzdC5wdXNoKHsgaWQ6IHNjYW5SZXN1bHQuaWQsIHR5cGVJbmRleDogMCB9KTtcbiAgICAgICAgICAgICAgICAgIGlmICghY29uZmlnLmNvbnRpbnVvdXMpIHtcbiAgICAgICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn5omr5o+P5oiQ5YqfJywgaWNvbjogJ3N1Y2Nlc3MnIH0pO1xuICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgLy8g5oyB57ut5omr5o+P5qih5byP5LiL77yM55+t5pqC5o+Q56S65ZCO57un57utXG4gICAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICfmiavmj4/liLDogLPmoIcnLCBpY29uOiAnc3VjY2VzcycsIGR1cmF0aW9uOiA1MDAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAvLyDmjIHnu63miavmj4/mqKHlvI/kuIvvvIznoa7kv53nu6fnu63miavmj49cbiAgICAgICAgICAgICAgICBpZiAoY29uZmlnLmNvbnRpbnVvdXMgJiYgdGhpcy5pc0NvbnRpbnVvdXNTY2FubmluZykge1xuICAgICAgICAgICAgICAgICAgLy8g5riF6Zmk5Y+v6IO95a2Y5Zyo55qE5pen6K6h5pe25ZmoXG4gICAgICAgICAgICAgICAgICBpZiAodGhpcy5jb250aW51b3VzU2NhbkludGVydmFsKSB7XG4gICAgICAgICAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aGlzLmNvbnRpbnVvdXNTY2FuSW50ZXJ2YWwpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRpbnVvdXNTY2FuSW50ZXJ2YWwgPSBudWxsO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgLy8g6K6+572u5paw55qE6K6h5pe25Zmo77yM56Gu5L+d5oyB57ut5omr5o+PXG4gICAgICAgICAgICAgICAgICB0aGlzLmNvbnRpbnVvdXNTY2FuSW50ZXJ2YWwgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgLy8g5YaN5qyh5qOA5p+l5oyB57ut5omr5o+P54q25oCBXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmlzQ29udGludW91c1NjYW5uaW5nICYmIHRoaXMuaXNEZXZpY2VSZWFkeSkge1xuICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGVyZm9ybUNvbnRpbnVvdXNTY2FuKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH0sIDUwMCk7IC8vIOefreaaguW7tui/n+WQjue7p+e7reaJq+aPj1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhgU2NhbiByZXN1bHQgd2l0aCB3ZWFrIHNpZ25hbCAoJHtzY2FuUmVzdWx0LnNpZ25hbFN0cmVuZ3RofSksIHJldHJ5aW5nYCk7XG4gICAgICAgICAgICAgICAgLy8g5L+h5Y+35aSq5byx77yM57un57ut6YeN6K+V5YmN5qOA5p+l5a6e5L6LXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuX2lzTW91bnRlZCkge1xuICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuY2hlY2tBbmRSZXN0b3JlUGx1Z2luSW5zdGFuY2UoKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJldHJ5VGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4gdGhpcy5wZXJmb3JtU2Nhbihjb25maWcpLCBjb25maWcuaW50ZXJ2YWwpO1xuICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIHJlc3RvcmUgcGx1Z2luIGluc3RhbmNlIGZvciByZXRyeScpO1xuICAgICAgICAgICAgICAgICAgICB1bmkuaGlkZUxvYWRpbmcoKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+iuvuWkh+WKn+iDveW8guW4uCcsIGljb246ICdub25lJyB9KTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGNvbnNvbGUubG9nKGBTY2FuIGZhaWxlZCwgcmV0cnlpbmcgKCR7Y29uZmlnLmN1cnJlbnRSZXRyeX0vJHtjb25maWcucmV0cnlDb3VudH0pYCk7XG4gICAgICAgICAgICAgIC8vIOmHjeivleaJq+aPj+WJjeajgOafpeWunuS+i1xuICAgICAgICAgICAgICBpZiAodGhpcy5faXNNb3VudGVkKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuY2hlY2tBbmRSZXN0b3JlUGx1Z2luSW5zdGFuY2UoKSkge1xuICAgICAgICAgICAgICAgICAgdGhpcy5yZXRyeVRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHRoaXMucGVyZm9ybVNjYW4oY29uZmlnKSwgY29uZmlnLmludGVydmFsKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIHJlc3RvcmUgcGx1Z2luIGluc3RhbmNlIGZvciByZXRyeScpO1xuICAgICAgICAgICAgICAgICAgdW5pLmhpZGVMb2FkaW5nKCk7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gdW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn6K6+5aSH5Yqf6IO95byC5bi4JywgaWNvbjogJ25vbmUnIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcignRXhjZXB0aW9uIGR1cmluZyBzY2FuIGV4ZWN1dGlvbjonLCBlKTtcbiAgICAgICAgICAvLyDmuIXpmaTotoXml7borqHml7blmahcbiAgICAgICAgICBpZiAodGhpcy5zY2FuVGltZW91dCkge1xuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuc2NhblRpbWVvdXQpO1xuICAgICAgICAgICAgdGhpcy5zY2FuVGltZW91dCA9IG51bGw7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgIC8vIOajgOafpeaYr+WQpuaYr+WunuS+i+S4jeWPr+eUqOmUmeivr++8jOWinuW8uuajgOa1i+mAu+i+kVxuICAgICAgaWYgKGUubWVzc2FnZSAmJiAoXG4gICAgICAgICAgICBlLm1lc3NhZ2UuaW5jbHVkZXMoJ2luc3RhbmNlIGlzIG5vdCBhdmFpbGFibGUnKSB8fCBcbiAgICAgICAgICAgIGUubWVzc2FnZS5pbmNsdWRlcygncmVjZWl2ZVRhc2tzJykgfHwgXG4gICAgICAgICAgICBlLm1lc3NhZ2UuaW5jbHVkZXMoJ0ZhaWxlZCB0byByZWNlaXZlVGFza3MnKVxuICAgICAgICAgICkpIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ1BsdWdpbiBpbnN0YW5jZSBub3QgYXZhaWxhYmxlIGR1cmluZyBzY2FuJyk7XG4gICAgICAgICAgICAvLyDlsJ3or5Xph43mlrDliJ3lp4vljJZcbiAgICAgICAgICAgIHRoaXMudWhmU0ZIZWxwZXIgPSBudWxsO1xuICAgICAgICAgICAgaWYgKHRoaXMuY2hlY2tBbmRSZXN0b3JlUGx1Z2luSW5zdGFuY2UoKSkge1xuICAgICAgICAgICAgICAvLyDph43mlrDmiafooYzmiavmj49cbiAgICAgICAgICAgICAgaWYgKHRoaXMuX2lzTW91bnRlZCkge1xuICAgICAgICAgICAgICAgIHRoaXMucmV0cnlUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB0aGlzLnBlcmZvcm1TY2FuKGNvbmZpZyksIGNvbmZpZy5pbnRlcnZhbCAqIDIpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICB1bmkuaGlkZUxvYWRpbmcoKTtcbiAgICAgICAgICAgICAgcmV0dXJuIHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+iuvuWkh+WKn+iDveW8guW4uO+8jOaXoOazleaJq+aPjycsIGljb246ICdub25lJyB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8g5YW25LuW6ZSZ6K+vXG4gICAgICAgICAgICBpZiAodGhpcy5faXNNb3VudGVkKSB7XG4gICAgICAgICAgICAgIHRoaXMucmV0cnlUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB0aGlzLnBlcmZvcm1TY2FuKGNvbmZpZyksIGNvbmZpZy5pbnRlcnZhbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIC8vIOa4hemZpOi2heaXtuiuoeaXtuWZqFxuICAgICAgICBpZiAodGhpcy5zY2FuVGltZW91dCkge1xuICAgICAgICAgIGNsZWFyVGltZW91dCh0aGlzLnNjYW5UaW1lb3V0KTtcbiAgICAgICAgICB0aGlzLnNjYW5UaW1lb3V0ID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgZHVyaW5nIHNjYW4gc2V0dXA6JywgZSk7XG4gICAgICAgIC8vIOajgOafpemUmeivr+aYr+WQpuS4juWunuS+i+S4jeWPr+eUqOebuOWFs++8jOWinuW8uuajgOa1i+mAu+i+kVxuICAgICAgaWYgKGUubWVzc2FnZSAmJiAoXG4gICAgICAgICAgICBlLm1lc3NhZ2UuaW5jbHVkZXMoJ2luc3RhbmNlIGlzIG5vdCBhdmFpbGFibGUnKSB8fCBcbiAgICAgICAgICAgIGUubWVzc2FnZS5pbmNsdWRlcygncmVjZWl2ZVRhc2tzJykgfHwgXG4gICAgICAgICAgICBlLm1lc3NhZ2UuaW5jbHVkZXMoJ0ZhaWxlZCB0byByZWNlaXZlVGFza3MnKVxuICAgICAgICAgICkpIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCdQbHVnaW4gaW5zdGFuY2Ugbm90IGF2YWlsYWJsZSBkdXJpbmcgc2NhbiBzZXR1cCcpO1xuICAgICAgICAgIC8vIOa4hemZpOW9k+WJjeWunuS+i1xuICAgICAgICAgIHRoaXMudWhmU0ZIZWxwZXIgPSBudWxsO1xuICAgICAgICAgIC8vIOWwneivlemHjeaWsOWIneWni+WMllxuICAgICAgICAgIGlmICh0aGlzLmNoZWNrQW5kUmVzdG9yZVBsdWdpbkluc3RhbmNlKCkpIHtcbiAgICAgICAgICAgIC8vIOmHjeaWsOaJp+ihjOaJq+aPj1xuICAgICAgICAgICAgaWYgKHRoaXMuX2lzTW91bnRlZCkge1xuICAgICAgICAgICAgICB0aGlzLnJldHJ5VGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4gdGhpcy5wZXJmb3JtU2Nhbihjb25maWcpLCBjb25maWcuaW50ZXJ2YWwgKiAyKTsgLy8g5aKe5Yqg6Ze06ZqUXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHVuaS5oaWRlTG9hZGluZygpO1xuICAgICAgICAgICAgcmV0dXJuIHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+iuvuWkh+WKn+iDveW8guW4uCcsIGljb246ICdub25lJyB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8g5YW25LuW6ZSZ6K+v77yM57un57ut6YeN6K+VXG4gICAgICAgICAgaWYgKHRoaXMuX2lzTW91bnRlZCkge1xuICAgICAgICAgICAgdGhpcy5yZXRyeVRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHRoaXMucGVyZm9ybVNjYW4oY29uZmlnKSwgY29uZmlnLmludGVydmFsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuICAgIFxuICAgIC8qKlxuICAgICAqIOaPkOS6pOihqOWNleaVsOaNrlxuICAgICAqL1xuICAgIHN1Ym1pdEZvcm0oKSB7XG4gICAgICAvLyDlnKjpqozor4HliY3lhYjlsJ3or5Xph43mlrDliqDovb3orr7nva5cbiAgICAgIHRoaXMubG9hZFNhdmVkU2V0dGluZ3MoKTtcbiAgICAgIGNvbnNvbGUubG9nKCfmj5DkuqTooajljZXmlbDmja46JywgdGhpcy5mb3JtKTtcbiAgICAgIFxuICAgICAgLy8g6aqM6K+B57yW5Y+35piv5ZCm5bey6YCJ5oupXG4gICAgICBsZXQgbWlzc2luZ0ZpZWxkID0gJyc7XG4gICAgICBpZiAoIXRoaXMuZm9ybS5idWlsZGluZ05hbWUpIG1pc3NpbmdGaWVsZCA9ICfmoIvoiI0nO1xuICAgICAgZWxzZSBpZiAoIXRoaXMuZm9ybS5yb29tTmFtZSkgbWlzc2luZ0ZpZWxkID0gJ+aIv+mXtCc7XG4gICAgICBlbHNlIGlmICghdGhpcy5mb3JtLnBlbk5vKSBtaXNzaW5nRmllbGQgPSAn5qCP5L2NJztcblxuICAgICAgaWYgKG1pc3NpbmdGaWVsZCkge1xuICAgICAgICByZXR1cm4gdW5pLnNob3dUb2FzdCh7IHRpdGxlOiBg5pyq6YCJ5oupJHttaXNzaW5nRmllbGR957yW5Y+3YCwgaWNvbjogJ25vbmUnLCBkdXJhdGlvbjogMzAwMCB9KVxuICAgICAgfVxuXG4gICAgICAvLyDpqozor4HogLPmoIfmmK/lkKblt7Lmiavmj49cbiAgICAgIGlmICh0aGlzLmRhdGFMaXN0Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgICByZXR1cm4gdW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn6K+35YWI5omr5o+P6ICz5qCHJywgaWNvbjogJ25vbmUnLCBkdXJhdGlvbjogMzAwMCB9KVxuICAgICAgfVxuXG4gICAgICAvLyDpqozor4HnlKjmiLdJROaYr+WQpuWtmOWcqFxuICAgICAgY29uc3QgYXBwID0gZ2V0QXBwKCk7XG4gICAgICBjb25zdCB1c2VySW5mbyA9IGFwcC5nbG9iYWxEYXRhLnVzZXJJbmZvO1xuICAgICAgY29uc29sZS5sb2coJ+eUqOaIt+S/oeaBrzonLCB1c2VySW5mbyk7XG5cbiAgICAgIC8vIOabtOWuieWFqOWcsOiOt+WPlueUqOaIt0lE77yM5aKe5Yqg5aSa6YeN5qOA5p+lXG4gICAgICBjb25zdCB1c2VySWQgPSB1c2VySW5mby5JRDtcbiAgICAgIGlmICghdXNlcklkKSB7XG4gICAgICAgIHJldHVybiB1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICfnlKjmiLfmnKrnmbvlvZUnLCBpY29uOiAnbm9uZScsIGR1cmF0aW9uOiAzMDAwIH0pXG4gICAgICB9XG5cbiAgICAgIHVuaS5zaG93TG9hZGluZyh7IHRpdGxlOiAn5o+Q5Lqk5LitLi4uJywgbWFzazogdHJ1ZSB9KTtcblxuICAgICAgY29uc3QgcmZpZFN0cmluZyA9IHRoaXMuZGF0YUxpc3QubWFwKGl0ZW0gPT4ge1xuICAgICAgICByZXR1cm4gYCR7aXRlbS5pZH06JHt0aGlzLnR5cGVzW2l0ZW0udHlwZUluZGV4XX1gO1xuICAgICAgfSkuam9pbignLCcpO1xuXG4gICAgICAvLyDojrflj5borr7lpIfkv6Hmga9cbiAgICAgIGxldCBkZXZpY2VJbmZvID0ge307XG4gICAgICB0cnkge1xuICAgICAgICBkZXZpY2VJbmZvID0gdW5pLmdldFN5c3RlbUluZm9TeW5jKCk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ+iOt+WPluiuvuWkh+S/oeaBr+Wksei0pTonLCBlKTtcbiAgICAgIH1cblxuICAgICAgLy8g5YeG5aSH5o+Q5Lqk5pWw5o2uXG4gICAgICBjb25zdCBzdWJtaXREYXRhID0ge1xuXHRcdHRva2VuOiB1bmkuZ2V0U3RvcmFnZVN5bmMoJ2VxdWlwbWVudF90b2tlbicpLFxuICAgICAgICByZmlkOiByZmlkU3RyaW5nLFxuICAgICAgICBidWlsZGluZ05hbWU6IHRoaXMuZm9ybS5idWlsZGluZ05hbWUsXG4gICAgICAgIHJvb21OYW1lOiB0aGlzLmZvcm0ucm9vbU5hbWUsXG4gICAgICAgIHBlbk5vOiB0aGlzLmZvcm0ucGVuTm8sXG4gICAgICAgIHVzZXJJZDogdXNlcklkLFxuICAgICAgICB1c2VybmFtZTogdXNlckluZm8udXNlcm5hbWUgfHwgJycsXG4gICAgICAgIHRpbWU6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSxcbiAgICAgICAgZGV2aWNlTW9kZWw6IGRldmljZUluZm8ubW9kZWwgfHwgJ+acquiOt+WPluWIsOiuvuWkh+Wei+WPtycsIC8vIOiuvuWkh+Wei+WPt1xuICAgICAgICBkZXZpY2VWZXJzaW9uOiBkZXZpY2VJbmZvLnN5c3RlbSB8fCAn5pyq6I635Y+W5Yiw6K6+5aSH54mI5pys5Y+3JyAvLyDorr7lpIfniYjmnKzlj7dcbiAgICAgIH07XG5cblxuICAgICAgLy8g5Y+R6YCB6K+35rGC5YiwQVBJXG4gICAgICB0aGlzLnN1Ym1pdERhdGEoc3VibWl0RGF0YSk7XG4gICAgfSxcbiAgICBcbiAgICAvKipcbiAgICAgKiDmj5DkuqTmlbDmja5cbiAgICAgKiBAcGFyYW0ge29iamVjdH0gZGF0YSAtIOimgeaPkOS6pOeahOaVsOaNrlxuICAgICAqL1xuICAgIHN1Ym1pdERhdGEoZGF0YSkge1xuXHQgIGNvbnNvbGUubG9nKCd0b2tlbicsdW5pLmdldFN0b3JhZ2VTeW5jKCdlcXVpcG1lbnRfdG9rZW4nKSlcbiAgICAgIGNvbnNvbGUubG9nKCfmj5DkuqTnmoTmlbDmja4nLGRhdGEpXG4gICAgICAvLyDorr7nva7ni6znq4vnmoTmj5DkuqTliqDovb3nirbmgIHmoIflv5dcbiAgICAgIHRoaXMuaXNTdWJtaXR0aW5nID0gdHJ1ZTtcbiAgICAgIFxuICAgICAgdW5pLnJlcXVlc3Qoe1xuICAgICAgICB1cmw6IEFQSS5wb3N0TGlzdEFkZCxcbiAgICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICAgIGRhdGE6IGRhdGEsXG4gICAgICAgIGhlYWRlcjoge1xuICAgICAgICAgICdjb250ZW50LXR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgICAgJ3gtdG9rZW4nOiB1bmkuZ2V0U3RvcmFnZVN5bmMoJ2VxdWlwbWVudF90b2tlbicpIC8vIOWwhnRva2Vu5re75Yqg5Yiw6K+35rGC5aS05LitXG4gICAgICAgIH0sXG4gICAgICAgIHRpbWVvdXQ6IDEwMDAwLCAvLyDorr7nva4xMOenkui2heaXtlxuICAgICAgICBzdWNjZXNzOiAocmVzKSA9PiB7XG4gICAgICAgICAgY29uc29sZS5sb2coJ0FQSeWTjeW6lDonLCByZXMpO1xuICAgICAgICAgIFxuICAgICAgICAgIC8vIOWFiOmakOiXj+WKoOi9veaPkOekulxuICAgICAgICAgIGlmICh0aGlzLmlzU3VibWl0dGluZykge1xuICAgICAgICAgICAgdW5pLmhpZGVMb2FkaW5nKCk7XG4gICAgICAgICAgICB0aGlzLmlzU3VibWl0dGluZyA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgICBpZiAocmVzLmRhdGEpIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCfmnI3liqHlmajov5Tlm57mlbDmja46JywgcmVzLmRhdGEpO1xuICAgICAgICAgICAgY29uc3QgbWVzc2FnZSA9IHJlcy5kYXRhLm1zZyB8fCAn5o+Q5Lqk5oiQ5YqfJztcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCfmmL7npLrmj5DnpLo6JywgbWVzc2FnZSk7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xuICAgICAgICAgICAgICB0aXRsZTogbWVzc2FnZSxcbiAgICAgICAgICAgICAgaWNvbjogcmVzLmRhdGEuY29kZSA9PT0gMCA/ICdzdWNjZXNzJyA6ICdub25lJyxcbiAgICAgICAgICAgICAgZHVyYXRpb246IDMwMDBcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBpZiAocmVzLmRhdGEuY29kZSA9PT0gMCkge1xuICAgICAgICAgICAgICAvLyDmt7vliqDmnKzlnLDorrDlvZVcbiAgICAgICAgICAgICAgdGhpcy5yZWNvcmRzLnVuc2hpZnQoe1xuICAgICAgICAgICAgICAgIHJmaWQ6IGRhdGEucmZpZCxcbiAgICAgICAgICAgICAgICBidWlsZGluZzogZGF0YS5idWlsZGluZ05hbWUsXG4gICAgICAgICAgICAgICAgcm9vbU5hbWU6IGRhdGEucm9vbU5hbWUsXG4gICAgICAgICAgICAgICAgcGVuOiBkYXRhLnBlbk5vLFxuICAgICAgICAgICAgICAgIHVzZXJJZDogZGF0YS51c2VySWQsXG4gICAgICAgICAgICAgICAgdGltZTogbmV3IERhdGUoKS50b0xvY2FsZVRpbWVTdHJpbmcoKVxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgIC8vIOWBnOatouaMgee7reaJq+aPj1xuICAgICAgICAgICAgICBpZiAodGhpcy5pc0NvbnRpbnVvdXNTY2FubmluZykge1xuICAgICAgICAgICAgICAgIHRoaXMudG9nZ2xlQ29udGludW91c1NjYW4oKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgLy8g5riF56m65omr5o+P5pWw5o2uXG4gICAgICAgICAgICAgIHRoaXMucmVzZXRGb3JtKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ+aPkOS6pOWksei0pTog5ZON5bqU5pWw5o2u5qC85byP5LiN5q2j56GuJywgcmVzKTtcbiAgICAgICAgICAgIC8vIOaYvuekuumUmeivr+aPkOekulxuICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XG4gICAgICAgICAgICAgIHRpdGxlOiAn5o+Q5Lqk5aSx6LSl77yM6K+36YeN6K+VJyxcbiAgICAgICAgICAgICAgaWNvbjogJ25vbmUnLFxuICAgICAgICAgICAgICBkdXJhdGlvbjogMzAwMFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBmYWlsOiAoZXJyKSA9PiB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcign572R57uc6K+35rGC5aSx6LSlOicsIGVycik7XG4gICAgICAgICAgLy8g6ZqQ6JeP5Yqg6L295o+Q56S65bm25pi+56S66ZSZ6K+v5o+Q56S6XG4gICAgICAgICAgaWYgKHRoaXMuaXNTdWJtaXR0aW5nKSB7XG4gICAgICAgICAgICB1bmkuaGlkZUxvYWRpbmcoKTtcbiAgICAgICAgICAgIHRoaXMuaXNTdWJtaXR0aW5nID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xuICAgICAgICAgICAgdGl0bGU6ICfnvZHnu5zor7fmsYLlpLHotKXvvIzor7fph43or5UnLFxuICAgICAgICAgICAgaWNvbjogJ25vbmUnLFxuICAgICAgICAgICAgZHVyYXRpb246IDMwMDBcbiAgICAgICAgICB9KTtcbiAgICAgICAgICAvLyDmjqXlj6PlpLHotKXkuI3lvbHlk43ogLPmoIfmiavmj4/vvIzml6DpnIDpop3lpJblpITnkIZcbiAgICAgICAgfSxcbiAgICAgICAgY29tcGxldGU6ICgpID0+IHtcbiAgICAgICAgICAvLyDnoa7kv53liqDovb3mj5DnpLrooqvpmpDol49cbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLmlzU3VibWl0dGluZykge1xuICAgICAgICAgICAgICB1bmkuaGlkZUxvYWRpbmcoKTtcbiAgICAgICAgICAgICAgdGhpcy5pc1N1Ym1pdHRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LCAyMDAwKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBcbiAgICAvLyDph43nva5cbiAgICByZXNldEZvcm0oKSB7XG4gICAgICB0aGlzLmZvcm0uZWFySWQgPSAnJ1xuICAgICAgdGhpcy5mb3JtLmJ1aWxkaW5nTmFtZSA9ICcnXG4gICAgICB0aGlzLmZvcm0ucm9vbU5hbWUgPSAnJ1xuICAgICAgdGhpcy5mb3JtLnBlbk5vID0gJydcbiAgICAgIHRoaXMuZm9ybS5zdGF0dXMgPSAnaGVhbHRoeSdcbiAgICAgIHRoaXMuZm9ybS5ub3RlID0gJydcbiAgICAgIC8vIOa4hemZpOaJq+aPj+e7k+aenOWIl+ihqFxuICAgICAgdGhpcy5kYXRhTGlzdCA9IFtdXG4gICAgfSxcblxuICAgIC8vIOmAieaLqVxuICAgIG9uQnVpbGRpbmdDaGFuZ2UoZSkge1xuICAgICAgY29uc3QgYnVpbGRpbmdOYW1lID0gdGhpcy5idWlsZGluZ0xpc3RbZS5kZXRhaWwudmFsdWVdO1xuICAgICAgdGhpcy5mb3JtLmJ1aWxkaW5nTmFtZSA9IGJ1aWxkaW5nTmFtZTtcbiAgICAgIC8vIOagueaNrumAieaLqeeahOagi+iIjeWKoOi9veaIv+mXtOWIl+ihqFxuICAgICAgaWYgKGJ1aWxkaW5nTmFtZSkge1xuICAgICAgICB0aGlzLmZldGNoUm9vbUxpc3QoYnVpbGRpbmdOYW1lKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIOa4heepuuaIv+mXtOWSjOagj+S9jeWIl+ihqFxuICAgICAgICB0aGlzLnJvb21MaXN0ID0gW107XG4gICAgICAgIHRoaXMuRmllbGRudW1iZXIgPSBbXTtcbiAgICAgICAgdGhpcy5mb3JtLnJvb21OYW1lID0gJyc7XG4gICAgICAgIHRoaXMuZm9ybS5wZW5ObyA9ICcnO1xuICAgICAgfVxuICAgIH0sXG4gICAgXG4gICAgb25Sb29tQ2hhbmdlKGUpIHtcbiAgICAgIGNvbnN0IHJvb21OYW1lID0gdGhpcy5yb29tTGlzdFtlLmRldGFpbC52YWx1ZV07XG4gICAgICB0aGlzLmZvcm0ucm9vbU5hbWUgPSByb29tTmFtZTtcbiAgICAgIC8vIOagueaNrumAieaLqeeahOaIv+mXtOWKoOi9veagj+S9jeWIl+ihqFxuICAgICAgaWYgKHJvb21OYW1lKSB7XG4gICAgICAgIHRoaXMuZmV0Y2hGaWVsZExpc3Qocm9vbU5hbWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8g5riF56m65qCP5L2N5YiX6KGoXG4gICAgICAgIHRoaXMuRmllbGRudW1iZXIgPSBbXTtcbiAgICAgICAgdGhpcy5mb3JtLnBlbk5vID0gJyc7XG4gICAgICB9XG4gICAgfSxcbiAgICBcbiAgICBvbkZpZWxkQ2hhbmdlKGUpIHtcbiAgICAgIHRoaXMuZm9ybS5wZW5ObyA9IHRoaXMuRmllbGRudW1iZXJbZS5kZXRhaWwudmFsdWVdXG4gICAgfSxcbiAgICBcbiAgICAvLyDlhbbku5ZcbiAgICBsb2dvdXQoKSB7XG4gICAgICAvLyDmuIXnqbrmlbDmja5cbiAgICAgIHRoaXMucmVzZXRGb3JtKCk7XG4gICAgICBcbiAgICAgIC8vIOmHiuaUvuiuvuWkh+i1hOa6kFxuICAgICAgdGhpcy5yZWxlYXNlRGV2aWNlKCk7XG4gICAgICBcbiAgICAgIC8vIOa4hemZpOWFqOWxgOeUqOaIt+S/oeaBr+WSjOeZu+W9leeKtuaAgVxuICAgICAgY29uc3QgYXBwID0gZ2V0QXBwKCk7XG4gICAgICBhcHAuZ2xvYmFsRGF0YS51c2VySW5mbyA9IG51bGw7XG4gICAgICBhcHAuZ2xvYmFsRGF0YS50b2tlbiA9ICcnO1xuICAgICAgYXBwLmdsb2JhbERhdGEuZXhwaXJlQXQgPSAnJztcbiAgICAgIGFwcC5nbG9iYWxEYXRhLmlzTG9nZ2VkSW4gPSBmYWxzZTtcbiAgICAgIGFwcC5nbG9iYWxEYXRhLmJ1aWxkaW5nID0gJyc7XG4gICAgICBhcHAuZ2xvYmFsRGF0YS5yb29tID0gJyc7XG4gICAgICBhcHAuZ2xvYmFsRGF0YS5wZW4gPSAnJztcbiAgICAgIGFwcC5nbG9iYWxEYXRhLmJ1aWxkaW5nTmFtZSA9ICcnO1xuICAgICAgYXBwLmdsb2JhbERhdGEucm9vbU5hbWUgPSAnJztcbiAgICAgIGFwcC5nbG9iYWxEYXRhLnBlbk5vID0gJyc7XG4gICAgICBcbiAgICAgIC8vIOa4hemZpOacrOWcsOe8k+WtmOS4reeahOaJgOacieeZu+W9leebuOWFs+S/oeaBr1xuICAgICAgdHJ5IHtcbiAgICAgICAgdW5pLnJlbW92ZVN0b3JhZ2VTeW5jKCd1c2VyX2luZm8nKTtcbiAgICAgICAgdW5pLnJlbW92ZVN0b3JhZ2VTeW5jKCdlcXVpcG1lbnRfdG9rZW4nKTtcbiAgICAgICAgdW5pLnJlbW92ZVN0b3JhZ2VTeW5jKCd0b2tlbl9leHBpcmVfdGltZScpO1xuICAgICAgICAvLyDlj6/pgInvvJrmuIXpmaTnvJblj7fnm7jlhbPnmoTnvJPlrZhcbiAgICAgICAgLy8gdW5pLnJlbW92ZVN0b3JhZ2VTeW5jKCdidWlsZGluZycpO1xuICAgICAgICAvLyB1bmkucmVtb3ZlU3RvcmFnZVN5bmMoJ3Jvb20nKTtcbiAgICAgICAgLy8gdW5pLnJlbW92ZVN0b3JhZ2VTeW5jKCdwZW4nKTtcbiAgICAgICAgLy8gdW5pLnJlbW92ZVN0b3JhZ2VTeW5jKCdidWlsZGluZ05hbWUnKTtcbiAgICAgICAgLy8gdW5pLnJlbW92ZVN0b3JhZ2VTeW5jKCdyb29tTmFtZScpO1xuICAgICAgICAvLyB1bmkucmVtb3ZlU3RvcmFnZVN5bmMoJ3Blbk5vJyk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ+a4hemZpOeZu+W9leS/oeaBr+Wksei0pTonLCBlKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFxuICAgIHRvZ2dsZVNlcnZlckNvbmZpZygpIHtcbiAgICAgIHRoaXMuc2hvd1NlcnZlckNvbmZpZyA9ICF0aGlzLnNob3dTZXJ2ZXJDb25maWdcbiAgICB9XG4gIH1cbn1cbjwvc2NyaXB0PlxuPHN0eWxlPlxuLnBhZ2UgeyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBoZWlnaHQ6IDEwMHZoOyB3aWR0aDogMTAwJTsgYm94LXNpemluZzogYm9yZGVyLWJveDsgcGFkZGluZzogMCAxMHJweDsgfVxuLmRhdGEtaXRlbSB7IGRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgYWxpZ24taXRlbXM6IGNlbnRlcjsgcGFkZGluZzogMTBycHg7IG1hcmdpbi1ib3R0b206IDEwcnB4OyBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1OyBib3JkZXItcmFkaXVzOiA1cnB4OyB9XG4ucGlja2VyIHsgcGFkZGluZzogNXJweCAxMHJweDsgbWFyZ2luLWxlZnQ6IDIwcHg7YmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYm9yZGVyOiAxcHggc29saWQgI2RkZDsgYm9yZGVyLXJhZGl1czogNXJweDsgbWluLXdpZHRoOiAxMjBycHg7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuLmFycm93OjphZnRlciB7IGNvbnRlbnQ6ICfilr4nOyBmb250LXNpemU6IDEycnB4OyBtYXJnaW4tbGVmdDogNXJweDsgfVxuLmRlbGV0ZS1idG4geyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY0ZDRmOyBjb2xvcjogd2hpdGU7IGZvbnQtc2l6ZTogMjRycHg7IHBhZGRpbmc6IDVycHggMTBycHg7IG1pbi13aWR0aDogODBycHg7IGxpbmUtaGVpZ2h0OiBub3JtYWw7IH1cbi5uYXYtYmFyIHtkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IGFsaWduLWl0ZW1zOiBjZW50ZXI7YmFja2dyb3VuZDogIzAwN2FmZjsgY29sb3I6IHdoaXRlOyBwYWRkaW5nOiAxNXJweCAzMHJweDt9XG4ubmF2LXRpdGxlIHsgZm9udC13ZWlnaHQ6IGJvbGQ7IGZvbnQtc2l6ZTogMzJycHg7IH1cbi5uYXYtYnRuIHsgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IGJvcmRlcjogbm9uZTsgZm9udC1zaXplOiAzMnJweDsgfVxuLnNjcm9sbC1hcmVhIHsgZmxleDogMTsgIH1cbi5zZWN0aW9uLXRpdGxlIHsgZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyBtYXJnaW4tYm90dG9tOiAyMHJweDsgfVxuLnNlY3Rpb24tdGl0bGUgLnRpdGxlIHsgZm9udC13ZWlnaHQ6IGJvbGQ7IGZvbnQtc2l6ZTogMzBycHg7IH1cbi5zZWN0aW9uLXRpdGxlIC5kYXRlIHsgZm9udC1zaXplOiAyNHJweDsgY29sb3I6ICM2NjY7IH1cbi5yZmlkLWNhcmQge2JhY2tncm91bmQ6ICNmNmY2ZjY7IGJvcmRlcjogMnJweCBkYXNoZWQgI2NjYzsgYm9yZGVyLXJhZGl1czogMjBycHg7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuLnNjYW4taWNvbiB7IGZvbnQtc2l6ZTogNTBycHg7IGNvbG9yOiAjMDA3YWZmOyBtYXJnaW4tYm90dG9tOiAxMHJweDsgZGlzcGxheTogYmxvY2s7IH1cbi5idG4tZ3JvdXAgeyBkaXNwbGF5OiBmbGV4OyBnYXA6IDIwcnB4OyBtYXJnaW46IDIwcnB4IDA7IGZsZXgtd3JhcDogd3JhcDsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbi5zY2FuLWJ0biB7IGJhY2tncm91bmQ6ICMwMDdhZmY7IGNvbG9yOiB3aGl0ZTsgZmxleDogMTsgbWluLXdpZHRoOiAyMDBycHg7IHBhZGRpbmc6IDIwcnB4OyBib3JkZXItcmFkaXVzOiAxMnJweDsgZm9udC1zaXplOiAyOHJweDsgfVxuLm1hbnVhbC1idG4geyBiYWNrZ3JvdW5kOiAjY2NjOyBjb2xvcjogYmxhY2s7IGZsZXg6IDE7IG1pbi13aWR0aDogMjAwcnB4OyBwYWRkaW5nOiAyMHJweDsgYm9yZGVyLXJhZGl1czogMTJycHg7IGZvbnQtc2l6ZTogMjhycHg7IH1cbi5mb3JtLWl0ZW0geyBtYXJnaW4tYm90dG9tOiAyMHJweDsgfVxuLmZvcm0taXRlbSAubGFiZWwgeyBkaXNwbGF5OiBibG9jazsgZm9udC13ZWlnaHQ6IGJvbGQ7IG1hcmdpbi1ib3R0b206IDEwcnB4OyB9XG4uaW5wdXQtYm94IHsgd2lkdGg6IDEwMCU7IGJvcmRlcjogMXJweCBzb2xpZCAjY2NjOyBib3JkZXItcmFkaXVzOiAxMHJweDsgYmFja2dyb3VuZDogI2ZmZjsgfVxuLnN0YXR1cy1vcHRpb25zIHsgZGlzcGxheTogZmxleDsgZ2FwOiAyMHJweDsgbWFyZ2luLXRvcDogMTBycHg7IH1cbi5zdGF0dXMtb3B0aW9uIHtmbGV4OiAxOyBib3JkZXI6IDFycHggc29saWQgI2NjYzsgYm9yZGVyLXJhZGl1czogMTBycHg7cGFkZGluZzogMjBycHg7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICM2NjY7fVxuLnN0YXR1cy1vcHRpb24uYWN0aXZlIHsgYm9yZGVyLWNvbG9yOiAjMDA3YWZmOyBjb2xvcjogIzAwN2FmZjsgfVxuLnN2IHtoZWlnaHQ6IDMwMHJweDttYXJnaW4tdG9wOiAyMHJweDt9XG48L3N0eWxlPiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///38\n");
- /***/ }),
- /* 39 */
- /*!******************************************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/pages/mine/manage.vue?mpType=page ***!
- \******************************************************************************/
- /*! no static exports found */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _manage_vue_vue_type_template_id_5cd0e788_mpType_page__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./manage.vue?vue&type=template&id=5cd0e788&mpType=page */ 40);\n/* harmony import */ var _manage_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./manage.vue?vue&type=script&lang=js&mpType=page */ 43);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _manage_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_1__) if([\"default\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _manage_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n/* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 27);\n\nvar renderjs\n\n\n\n\n/* normalize component */\n\nvar component = Object(_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(\n _manage_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n _manage_vue_vue_type_template_id_5cd0e788_mpType_page__WEBPACK_IMPORTED_MODULE_0__[\"render\"],\n _manage_vue_vue_type_template_id_5cd0e788_mpType_page__WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"],\n false,\n null,\n null,\n null,\n false,\n _manage_vue_vue_type_template_id_5cd0e788_mpType_page__WEBPACK_IMPORTED_MODULE_0__[\"components\"],\n renderjs\n)\n\ncomponent.options.__file = \"pages/mine/manage.vue\"\n/* harmony default export */ __webpack_exports__[\"default\"] = (component.exports);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBOEg7QUFDOUg7QUFDcUU7QUFDTDs7O0FBR2hFO0FBQ3FMO0FBQ3JMLGdCQUFnQix5TEFBVTtBQUMxQixFQUFFLHVGQUFNO0FBQ1IsRUFBRSw0RkFBTTtBQUNSLEVBQUUscUdBQWU7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEVBQUUsZ0dBQVU7QUFDWjtBQUNBOztBQUVBO0FBQ2UsZ0YiLCJmaWxlIjoiMzkuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZW5kZXIsIHN0YXRpY1JlbmRlckZucywgcmVjeWNsYWJsZVJlbmRlciwgY29tcG9uZW50cyB9IGZyb20gXCIuL21hbmFnZS52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9NWNkMGU3ODgmbXBUeXBlPXBhZ2VcIlxudmFyIHJlbmRlcmpzXG5pbXBvcnQgc2NyaXB0IGZyb20gXCIuL21hbmFnZS52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmbXBUeXBlPXBhZ2VcIlxuZXhwb3J0ICogZnJvbSBcIi4vbWFuYWdlLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZtcFR5cGU9cGFnZVwiXG5cblxuLyogbm9ybWFsaXplIGNvbXBvbmVudCAqL1xuaW1wb3J0IG5vcm1hbGl6ZXIgZnJvbSBcIiEuLi8uLi8uLi8uLi8uLi8uLi9hbnpodWFuZ2Jhby9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3Z1ZS1sb2FkZXIvbGliL3J1bnRpbWUvY29tcG9uZW50Tm9ybWFsaXplci5qc1wiXG52YXIgY29tcG9uZW50ID0gbm9ybWFsaXplcihcbiAgc2NyaXB0LFxuICByZW5kZXIsXG4gIHN0YXRpY1JlbmRlckZucyxcbiAgZmFsc2UsXG4gIG51bGwsXG4gIG51bGwsXG4gIG51bGwsXG4gIGZhbHNlLFxuICBjb21wb25lbnRzLFxuICByZW5kZXJqc1xuKVxuXG5jb21wb25lbnQub3B0aW9ucy5fX2ZpbGUgPSBcInBhZ2VzL21pbmUvbWFuYWdlLnZ1ZVwiXG5leHBvcnQgZGVmYXVsdCBjb21wb25lbnQuZXhwb3J0cyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///39\n");
- /***/ }),
- /* 40 */
- /*!************************************************************************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/pages/mine/manage.vue?vue&type=template&id=5cd0e788&mpType=page ***!
- \************************************************************************************************************/
- /*! exports provided: render, staticRenderFns, recyclableRender, components */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_manage_vue_vue_type_template_id_5cd0e788_mpType_page__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--11-0!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./manage.vue?vue&type=template&id=5cd0e788&mpType=page */ 41);
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_manage_vue_vue_type_template_id_5cd0e788_mpType_page__WEBPACK_IMPORTED_MODULE_0__["render"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_manage_vue_vue_type_template_id_5cd0e788_mpType_page__WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_manage_vue_vue_type_template_id_5cd0e788_mpType_page__WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_manage_vue_vue_type_template_id_5cd0e788_mpType_page__WEBPACK_IMPORTED_MODULE_0__["components"]; });
- /***/ }),
- /* 41 */
- /*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--11-0!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!D:/UserData/Desktop/w/UhfChengBangZi/pages/mine/manage.vue?vue&type=template&id=5cd0e788&mpType=page ***!
- \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
- /*! exports provided: render, staticRenderFns, recyclableRender, components */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; });
- var components
- var render = function () {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "view",
- { staticClass: _vm._$s(0, "sc", "container"), attrs: { _i: 0 } },
- [
- _vm._$s(1, "i", _vm.login)
- ? _c(
- "view",
- { staticClass: _vm._$s(1, "sc", "lists"), attrs: { _i: 1 } },
- [
- _c(
- "view",
- {
- staticClass: _vm._$s(2, "sc", "cu-card case user-card"),
- attrs: { _i: 2 },
- },
- [
- _c(
- "view",
- {
- staticClass: _vm._$s(3, "sc", "cu-item"),
- attrs: { _i: 3 },
- },
- [
- _c(
- "view",
- {
- staticClass: _vm._$s(4, "sc", "content"),
- attrs: { _i: 4 },
- },
- [
- _c(
- "view",
- {
- staticClass: _vm._$s(5, "sc", "username"),
- attrs: { _i: 5 },
- },
- [
- _vm._v(
- _vm._$s(5, "t0-0", _vm._s(_vm.user.username))
- ),
- ]
- ),
- _vm._$s(6, "i", _vm.user.ID)
- ? _c(
- "view",
- {
- staticClass: _vm._$s(6, "sc", "user-id"),
- attrs: { _i: 6 },
- },
- [
- _vm._v(
- _vm._$s(6, "t0-0", _vm._s(_vm.user.ID))
- ),
- ]
- )
- : _vm._e(),
- ]
- ),
- ]
- ),
- ]
- ),
- _c(
- "view",
- {
- staticClass: _vm._$s(
- 7,
- "sc",
- "cu-list menu sm-border card-menu function-list"
- ),
- attrs: { _i: 7 },
- },
- [
- _c(
- "view",
- {
- staticClass: _vm._$s(8, "sc", "form-section"),
- attrs: { _i: 8 },
- },
- [
- _c(
- "picker",
- {
- attrs: {
- range: _vm._$s(9, "a-range", _vm.buildingList),
- _i: 9,
- },
- on: { change: _vm.onBuildingChange },
- },
- [
- _c(
- "view",
- {
- staticClass: _vm._$s(10, "sc", "form-item"),
- attrs: { _i: 10 },
- },
- [
- _c(
- "text",
- {
- staticClass: _vm._$s(11, "sc", "label"),
- attrs: { _i: 11 },
- },
- [
- _c("text", {
- staticClass: _vm._$s(
- 12,
- "sc",
- "fa fa-home"
- ),
- attrs: { _i: 12 },
- }),
- ]
- ),
- _c(
- "text",
- {
- staticClass: _vm._$s(13, "sc", "value"),
- attrs: { _i: 13 },
- },
- [
- _vm._v(
- _vm._$s(
- 13,
- "t0-0",
- _vm._s(
- _vm.form.buildingName || "请选择栋舍"
- )
- )
- ),
- ]
- ),
- ]
- ),
- ]
- ),
- _c(
- "picker",
- {
- attrs: {
- range: _vm._$s(14, "a-range", _vm.roomList),
- _i: 14,
- },
- on: { change: _vm.onRoomChange },
- },
- [
- _c(
- "view",
- {
- staticClass: _vm._$s(15, "sc", "form-item"),
- attrs: { _i: 15 },
- },
- [
- _c(
- "text",
- {
- staticClass: _vm._$s(16, "sc", "label"),
- attrs: { _i: 16 },
- },
- [
- _c("text", {
- staticClass: _vm._$s(
- 17,
- "sc",
- "fa fa-door-open"
- ),
- attrs: { _i: 17 },
- }),
- ]
- ),
- _c(
- "text",
- {
- staticClass: _vm._$s(18, "sc", "value"),
- attrs: { _i: 18 },
- },
- [
- _vm._v(
- _vm._$s(
- 18,
- "t0-0",
- _vm._s(_vm.form.roomName || "请选择房间")
- )
- ),
- ]
- ),
- ]
- ),
- ]
- ),
- _c(
- "picker",
- {
- attrs: {
- range: _vm._$s(19, "a-range", _vm.Fieldnumber),
- _i: 19,
- },
- on: { change: _vm.onFieldChange },
- },
- [
- _c(
- "view",
- {
- staticClass: _vm._$s(20, "sc", "form-item"),
- attrs: { _i: 20 },
- },
- [
- _c(
- "text",
- {
- staticClass: _vm._$s(21, "sc", "label"),
- attrs: { _i: 21 },
- },
- [
- _c("text", {
- staticClass: _vm._$s(
- 22,
- "sc",
- "fa fa-th-large"
- ),
- attrs: { _i: 22 },
- }),
- ]
- ),
- _c(
- "text",
- {
- staticClass: _vm._$s(23, "sc", "value"),
- attrs: { _i: 23 },
- },
- [
- _vm._v(
- _vm._$s(
- 23,
- "t0-0",
- _vm._s(_vm.form.penNo || "请选择栏位")
- )
- ),
- ]
- ),
- ]
- ),
- ]
- ),
- ]
- ),
- _c(
- "view",
- {
- staticClass: _vm._$s(24, "sc", "save-btn-container"),
- attrs: { _i: 24 },
- },
- [
- _c(
- "button",
- {
- staticClass: _vm._$s(
- 25,
- "sc",
- "cu-btn block save-btn"
- ),
- attrs: { _i: 25 },
- on: { click: _vm.saveSettings },
- },
- [
- _c("text", {
- staticClass: _vm._$s(
- 26,
- "sc",
- "fa fa-save margin-right-xs"
- ),
- attrs: { _i: 26 },
- }),
- ]
- ),
- _c(
- "button",
- {
- staticClass: _vm._$s(
- 27,
- "sc",
- "cu-btn block save-btn"
- ),
- attrs: { _i: 27 },
- on: {
- click: function ($event) {
- return _vm.logout()
- },
- },
- },
- [
- _c("text", {
- staticClass: _vm._$s(
- 28,
- "sc",
- "fa fa-save margin-right-xs"
- ),
- attrs: { _i: 28 },
- }),
- ]
- ),
- ]
- ),
- ]
- ),
- ]
- )
- : _c("view", { attrs: { _i: 29 } }, [
- _c(
- "view",
- {
- staticClass: _vm._$s(30, "sc", "empty nologin-content"),
- attrs: { _i: 30 },
- },
- [
- _c("image", {
- attrs: {
- src: _vm._$s(
- 31,
- "a-src",
- __webpack_require__(/*! ../../static/nologin.png */ 42)
- ),
- _i: 31,
- },
- }),
- _c("view", {
- staticClass: _vm._$s(32, "sc", "text-gray"),
- attrs: { _i: 32 },
- }),
- _c(
- "button",
- {
- staticClass: _vm._$s(33, "sc", "cu-btn block bg-black lg"),
- attrs: { _i: 33 },
- on: {
- click: function ($event) {
- return _vm.goLogin()
- },
- },
- },
- [
- _c("text", {
- staticClass: _vm._$s(
- 34,
- "sc",
- "cuIcon-lock margin-right-xs"
- ),
- attrs: { _i: 34 },
- }),
- ]
- ),
- ]
- ),
- ]),
- ]
- )
- }
- var recyclableRender = false
- var staticRenderFns = []
- render._withStripped = true
- /***/ }),
- /* 42 */
- /*!***************************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/static/nologin.png ***!
- \***************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- eval("module.exports = __webpack_require__.p + \"static/nologin.png\";//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQixxQkFBdUIiLCJmaWxlIjoiNDIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJtb2R1bGUuZXhwb3J0cyA9IF9fd2VicGFja19wdWJsaWNfcGF0aF9fICsgXCJzdGF0aWMvbm9sb2dpbi5wbmdcIjsiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///42\n");
- /***/ }),
- /* 43 */
- /*!******************************************************************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/pages/mine/manage.vue?vue&type=script&lang=js&mpType=page ***!
- \******************************************************************************************************/
- /*! no static exports found */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_manage_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--7-1!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/using-components.js!../../../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./manage.vue?vue&type=script&lang=js&mpType=page */ 44);\n/* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_manage_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_manage_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_manage_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0__) if([\"default\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_manage_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n /* harmony default export */ __webpack_exports__[\"default\"] = (_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_manage_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0___default.a); //# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQXFuQixDQUFnQix1bkJBQUcsRUFBQyIsImZpbGUiOiI0My5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBtb2QgZnJvbSBcIi0hLi4vLi4vLi4vLi4vLi4vLi4vYW56aHVhbmdiYW8vSEJ1aWxkZXJYL3BsdWdpbnMvdW5pYXBwLWNsaS9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuLi8uLi8uLi8uLi8uLi8uLi9hbnpodWFuZ2Jhby9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3dlYnBhY2stcHJlcHJvY2Vzcy1sb2FkZXIvaW5kZXguanM/P3JlZi0tNy0xIS4uLy4uLy4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvd2VicGFjay11bmktYXBwLWxvYWRlci91c2luZy1jb21wb25lbnRzLmpzIS4uLy4uLy4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL21hbmFnZS52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmbXBUeXBlPXBhZ2VcIjsgZXhwb3J0IGRlZmF1bHQgbW9kOyBleHBvcnQgKiBmcm9tIFwiLSEuLi8uLi8uLi8uLi8uLi8uLi9hbnpodWFuZ2Jhby9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzIS4uLy4uLy4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvd2VicGFjay1wcmVwcm9jZXNzLWxvYWRlci9pbmRleC5qcz8/cmVmLS03LTEhLi4vLi4vLi4vLi4vLi4vLi4vYW56aHVhbmdiYW8vSEJ1aWxkZXJYL3BsdWdpbnMvdW5pYXBwLWNsaS9ub2RlX21vZHVsZXMvQGRjbG91ZGlvL3Z1ZS1jbGktcGx1Z2luLXVuaS9wYWNrYWdlcy93ZWJwYWNrLXVuaS1hcHAtbG9hZGVyL3VzaW5nLWNvbXBvbmVudHMuanMhLi4vLi4vLi4vLi4vLi4vLi4vYW56aHVhbmdiYW8vSEJ1aWxkZXJYL3BsdWdpbnMvdW5pYXBwLWNsaS9ub2RlX21vZHVsZXMvQGRjbG91ZGlvL3Z1ZS1jbGktcGx1Z2luLXVuaS9wYWNrYWdlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vbWFuYWdlLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZtcFR5cGU9cGFnZVwiIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///43\n");
- /***/ }),
- /* 44 */
- /*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--7-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/using-components.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!D:/UserData/Desktop/w/UhfChengBangZi/pages/mine/manage.vue?vue&type=script&lang=js&mpType=page ***!
- \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- eval("/* WEBPACK VAR INJECTION */(function(wx, __f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _index = _interopRequireDefault(__webpack_require__(/*! ../../api/index */ 33));\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n// 移除全局变量声明,改为在方法内使用const声明\nvar _default = {\n data: function data() {\n return {\n login: false,\n user: {},\n avatar: '',\n managePhone: '',\n // 表单数据\n form: {\n buildingName: '',\n roomName: '',\n penNo: ''\n },\n // 动态从接口获取数据\n buildingList: [],\n roomList: [],\n Fieldnumber: []\n };\n },\n onShow: function onShow() {\n var _self = this;\n var app = getApp();\n var isLogin = !!app.globalData.token;\n _self.login = isLogin;\n if (!isLogin) {\n wx.login({\n success: function success(res) {\n if (res.code) {\n _self.goWeLogin(res.code);\n }\n }\n });\n } else {\n // 直接从全局状态获取用户信息\n _self.user = app.globalData.userInfo || {};\n _self.avatar = _self.user.avatar || '';\n }\n },\n methods: {\n // 获取栋舍列表\n fetchBuildingList: function fetchBuildingList() {\n var _self = this;\n var app = getApp();\n\n // 从服务器获取栋舍列表\n uni.request({\n url: _index.default.getBuilding,\n method: 'GET',\n header: {\n \"x-token\": app.globalData.token || ''\n },\n success: function success(res) {\n __f__(\"log\", res.data.data, \" at pages/mine/manage.vue:121\");\n if (res.data && res.data.code === 0 && res.data.data && res.data.data.length > 0) {\n // 更新栋舍列表\n _self.buildingList = res.data.data.map(function (item) {\n return item.name || item.building_name;\n });\n __f__(\"log\", '获取栋舍编号:', _self.buildingList, \" at pages/mine/manage.vue:125\");\n\n // 如果表单中没有选择栋舍,尝试使用全局数据或本地存储\n if (!_self.form.buildingName) {\n _self.form.buildingName = app.globalData.building || uni.getStorageSync('building') || '';\n }\n\n // 获取对应栋舍的房间列表\n _self.fetchRoomList();\n } else {\n __f__(\"error\", 'get_building响应数据无效或为空:', res.data, \" at pages/mine/manage.vue:135\");\n // 使用默认栋舍列表\n _self.buildingList = [];\n }\n },\n fail: function fail(err) {\n __f__(\"error\", '获取栋舍列表失败:', err, \" at pages/mine/manage.vue:141\");\n }\n });\n },\n // 新增方法:获取最新用户信息\n // 修复fetchUserInfo方法,确保用户信息正确获取\n fetchUserInfo: function fetchUserInfo() {\n var _self = this;\n var app = getApp();\n\n // 从多个来源获取用户信息,增加可靠性\n var userInfo = {};\n\n // 1. 优先从全局数据获取\n if (app.globalData.userInfo && Object.keys(app.globalData.userInfo).length > 0) {\n userInfo = app.globalData.userInfo;\n __f__(\"log\", '从全局数据获取用户信息:', userInfo, \" at pages/mine/manage.vue:158\");\n }\n\n // 2. 如果全局数据不可用,尝试从本地存储获取\n if (!userInfo.username || !userInfo.ID) {\n try {\n var storedUserInfo = uni.getStorageSync('user_info') || {};\n if (storedUserInfo && Object.keys(storedUserInfo).length > 0) {\n userInfo = _objectSpread(_objectSpread({}, userInfo), storedUserInfo);\n __f__(\"log\", '从本地存储补充用户信息:', storedUserInfo, \" at pages/mine/manage.vue:167\");\n }\n } catch (e) {\n __f__(\"error\", '读取本地存储用户信息失败:', e, \" at pages/mine/manage.vue:170\");\n }\n }\n\n // 3. 如果仍然缺少关键信息,尝试从token相关信息中提取\n if (!userInfo.username) {\n userInfo.username = app.globalData.username || '';\n }\n if (!userInfo.ID) {\n userInfo.ID = app.globalData.ID || '';\n }\n\n // 记录获取到的用户信息,便于调试\n __f__(\"log\", '最终获取的用户信息:', userInfo, \" at pages/mine/manage.vue:184\");\n\n // 更新页面数据\n _self.user = userInfo;\n\n // 确保即使没有头像也不会出错\n _self.avatar = userInfo.avatar || '';\n\n // 更新表单数据\n _self.form.buildingName = app.globalData.building || app.globalData.buildingName || '';\n _self.form.roomName = app.globalData.room || app.globalData.roomName || '';\n _self.form.penNo = app.globalData.pen || app.globalData.penNo || '';\n __f__(\"log\", '更新后的表单数据:', _self.form, \" at pages/mine/manage.vue:197\");\n\n // 触发设置更新事件,通知其他组件\n uni.$emit('settingsUpdated', {\n building: _self.form.buildingName,\n room: _self.form.roomName,\n pen: _self.form.penNo\n });\n },\n data: function data() {\n return {\n login: false,\n user: {\n username: '',\n // 提供默认的用户名属性\n ID: '' // 提供默认的ID属性\n },\n\n avatar: '',\n managePhone: '',\n // 表单数据\n form: {\n buildingName: '',\n roomName: '',\n penNo: ''\n },\n // 动态从接口获取数据\n buildingList: [],\n roomList: [],\n Fieldnumber: []\n };\n },\n // 增强onShow方法中的用户信息获取逻辑\n onShow: function onShow() {\n var _self = this;\n var app = getApp();\n\n // 首先检查登录状态\n var isLogin = !!app.globalData.token;\n _self.login = isLogin;\n if (isLogin) {\n // 获取栋舍列表\n _self.fetchBuildingList();\n // 获取最新用户信息\n _self.fetchUserInfo();\n } else {\n // 尝试从本地存储恢复登录信息\n var token = uni.getStorageSync('equipment_token') || '';\n var expireAt = uni.getStorageSync('token_expire_time') || '';\n var userInfo = uni.getStorageSync('user_info') || {};\n if (token && expireAt) {\n // 恢复登录信息到全局数据\n app.globalData.token = token;\n app.globalData.expireAt = expireAt;\n app.globalData.userInfo = userInfo;\n app.globalData.isLoggedIn = true;\n _self.login = true;\n _self.fetchBuildingList();\n _self.fetchUserInfo();\n __f__(\"log\", '从本地存储恢复登录状态成功', \" at pages/mine/manage.vue:260\");\n }\n }\n },\n // 新增一个方法,用于手动刷新用户信息\n refreshUserInfo: function refreshUserInfo() {\n var app = getApp();\n __f__(\"log\", '手动刷新用户信息 - 当前全局数据:', app.globalData, \" at pages/mine/manage.vue:268\");\n __f__(\"log\", '手动刷新用户信息 - 当前本地存储:', uni.getStorageSync('user_info'), \" at pages/mine/manage.vue:269\");\n this.fetchUserInfo();\n this.fetchBuildingList();\n },\n // 获取房间列表\n fetchRoomList: function fetchRoomList() {\n var _self = this;\n var app = getApp();\n\n // 获取房间列表\n uni.request({\n url: _index.default.getRoom,\n method: 'GET',\n data: {\n building: _self.form.buildingName // 传递当前选择的栋舍\n },\n\n header: {\n \"x-token\": app.globalData.token || ''\n },\n success: function success(res) {\n __f__(\"log\", '获取房间编号:', res, \" at pages/mine/manage.vue:290\");\n if (res.data && res.data.code === 0 && res.data.data && res.data.data.length > 0) {\n // 更新房间列表\n _self.roomList = res.data.data.map(function (item) {\n return item.name || item.room_name;\n });\n\n // 如果表单中没有选择房间,尝试使用全局数据或本地存储\n if (!_self.form.roomName) {\n _self.form.roomName = app.globalData.room || uni.getStorageSync('room') || '';\n }\n\n // 获取对应房间的栏位列表\n _self.fetchPenList();\n } else {\n __f__(\"error\", 'get_room响应数据无效或为空:', res.data, \" at pages/mine/manage.vue:304\");\n // 使用默认房间列表\n _self.roomList = [];\n }\n },\n fail: function fail(err) {\n __f__(\"error\", '获取房间列表失败:', err, \" at pages/mine/manage.vue:310\");\n }\n });\n },\n // 获取栏位列表\n fetchPenList: function fetchPenList() {\n var _self = this;\n var app = getApp();\n // 获取栏位列表\n uni.request({\n url: _index.default.getPen,\n method: 'GET',\n data: {\n building: _self.form.buildingName,\n room: _self.form.roomName // 当前选择的房间\n },\n\n header: {\n 'content-type': 'application/x-www-form-urlencoded',\n \"x-token\": app.globalData.token || ''\n },\n success: function success(res) {\n __f__(\"log\", '获取栏位编号:', res, \" at pages/mine/manage.vue:332\");\n if (res.data && res.data.code === 0 && res.data.data && res.data.data.length > 0) {\n // 更新栏位列表\n _self.Fieldnumber = res.data.data.map(function (item) {\n return item.name || item.pen_name || item.pen_no;\n });\n // 如果表单中没有选择栏位,尝试使用全局数据或本地存储\n if (!_self.form.penNo) {\n _self.form.penNo = app.globalData.pen || uni.getStorageSync('pen') || '';\n }\n } else {\n __f__(\"error\", 'get_pen响应数据无效或为空:', res.data, \" at pages/mine/manage.vue:342\");\n // 使用默认栏位列表\n _self.Fieldnumber = [];\n }\n },\n fail: function fail(err) {\n __f__(\"error\", '获取栏位列表失败:', err, \" at pages/mine/manage.vue:348\");\n }\n });\n },\n loadFromStorage: function loadFromStorage() {\n var _self = this;\n var app = getApp();\n var globalUserInfo = app.globalData.userInfo;\n _self.user = globalUserInfo;\n _self.form.buildingName = app.globalData.building;\n _self.form.roomName = app.globalData.room;\n _self.form.penNo = app.globalData.pen;\n __f__(\"log\", '从存储加载的表单buildingName:', _self.form.buildingName, \" at pages/mine/manage.vue:361\");\n __f__(\"log\", '从存储加载的表单roomName:', _self.form.roomName, \" at pages/mine/manage.vue:362\");\n __f__(\"log\", '从存储加载的表单penNo:', _self.form.penNo, \" at pages/mine/manage.vue:363\");\n },\n // 选择器方法\n onBuildingChange: function onBuildingChange(e) {\n var selectedValue = this.buildingList[e.detail.value];\n this.form.buildingName = selectedValue;\n __f__(\"log\", '栋舍选择已更新:', this.form.buildingName, \" at pages/mine/manage.vue:370\");\n // 保存到login中定义的全局变量\n getApp().globalData.building = selectedValue;\n // 触发全局事件通知设置更新\n uni.$emit('settingsUpdated');\n // 获取对应栋舍的房间列表\n this.fetchRoomList();\n },\n onRoomChange: function onRoomChange(e) {\n var selectedValue = this.roomList[e.detail.value];\n this.form.roomName = selectedValue;\n __f__(\"log\", '房间选择已更新:', this.form.roomName, \" at pages/mine/manage.vue:382\");\n // 保存到login中定义的全局变量\n getApp().globalData.room = selectedValue;\n // 触发全局事件通知设置更新\n uni.$emit('settingsUpdated');\n // 获取对应房间的栏位列表\n this.fetchPenList();\n },\n onFieldChange: function onFieldChange(e) {\n var selectedValue = this.Fieldnumber[e.detail.value];\n this.form.penNo = selectedValue;\n __f__(\"log\", '栏位选择已更新:', this.form.penNo, \" at pages/mine/manage.vue:394\");\n // 保存到login中定义的全局变量\n getApp().globalData.pen = selectedValue;\n // 触发全局事件通知设置更新\n uni.$emit('settingsUpdated');\n },\n // 保存设置到API\n saveSettings: function saveSettings() {\n var _app$globalData$userI, _uni$getStorageSync, _app$globalData$userI2, _uni$getStorageSync2;\n if (!this.form.buildingName || !this.form.roomName || !this.form.penNo) {\n return uni.showToast({\n title: '请选择完整的栋舍、房间和栏位信息',\n icon: 'none'\n });\n }\n var app = getApp();\n // 获取用户ID(优先从全局数据,其次从本地存储)\n var userId = ((_app$globalData$userI = app.globalData.userInfo) === null || _app$globalData$userI === void 0 ? void 0 : _app$globalData$userI.ID) || ((_uni$getStorageSync = uni.getStorageSync('user_info')) === null || _uni$getStorageSync === void 0 ? void 0 : _uni$getStorageSync.ID) || '';\n var username = ((_app$globalData$userI2 = app.globalData.userInfo) === null || _app$globalData$userI2 === void 0 ? void 0 : _app$globalData$userI2.username) || ((_uni$getStorageSync2 = uni.getStorageSync('user_info')) === null || _uni$getStorageSync2 === void 0 ? void 0 : _uni$getStorageSync2.username) || '';\n if (!userId) {\n __f__(\"error\", '用户ID不存在,无法保存设置', \" at pages/mine/manage.vue:416\");\n return uni.showToast({\n title: '请先登录',\n icon: 'none'\n });\n }\n ;\n uni.showLoading({\n title: '保存中...',\n mask: true\n });\n var submitData = {\n username: username,\n userid: userId,\n building: this.form.buildingName,\n room: this.form.roomName,\n pen: this.form.penNo\n };\n __f__(\"log\", '提交的数据:', submitData, \" at pages/mine/manage.vue:434\");\n\n // 发送请求到API\n uni.request({\n url: _index.default.postUserSetup,\n method: 'POST',\n data: submitData,\n header: {\n 'content-type': 'application/json',\n \"x-token\": app.globalData.token || uni.getStorageSync('token') || ''\n },\n timeout: 10000,\n // 设置10秒超时\n success: function success(res) {\n if (res.data.code === 0) {\n uni.showToast({\n title: '保存成功',\n icon: 'success',\n duration: 3000\n });\n // 更新全局数据\n app.globalData.building = submitData.building;\n app.globalData.room = submitData.room;\n app.globalData.pen = submitData.pen;\n // 更新本地存储\n uni.setStorageSync('building', submitData.building);\n uni.setStorageSync('room', submitData.room);\n uni.setStorageSync('pen', submitData.pen);\n // 触发设置更新事件\n uni.$emit('settingsUpdated', {\n building: submitData.building,\n room: submitData.room,\n pen: submitData.pen\n });\n } else {\n var _res$data;\n __f__(\"error\", '保存设置失败:', res.data, \" at pages/mine/manage.vue:468\");\n uni.showToast({\n title: ((_res$data = res.data) === null || _res$data === void 0 ? void 0 : _res$data.msg) || '保存失败,请稍后重试',\n icon: 'none'\n });\n }\n },\n complete: function complete() {\n uni.hideLoading();\n }\n });\n },\n goWeLogin: function goWeLogin(code) {\n var _self = this;\n _self.$api.welogin({\n code: code\n }).then(function (res) {\n getApp().globalData.token = res.data.token;\n getApp().globalData.equipmentManage = res.data.equipment_manage;\n\n // 保存到本地存储\n uni.setStorageSync('equipment_token', res.data.token);\n uni.setStorageSync('equipment_openid', res.data.openid);\n uni.setStorageSync('equipment_manage', res.data.equipment_manage);\n _self.login = true;\n // 登录成功后从全局状态获取用户信息\n _self.user = getApp().globalData.userInfo || {};\n _self.avatar = _self.user.avatar || '';\n\n // 登录成功后刷新数据\n _self.fetchBuildingList();\n _self.fetchUserInfo();\n }).catch(function (err) {\n __f__(\"error\", '登录失败:', err, \" at pages/mine/manage.vue:503\");\n uni.showToast({\n title: '登录失败,请稍后重试',\n icon: 'none'\n });\n });\n },\n goLogin: function goLogin() {\n var _self = this;\n uni.navigateTo({\n url: '/pages/login/login',\n events: {\n // 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据\n isLoginFromLogin: function isLoginFromLogin(data) {\n if (data && data.isLogin) {\n _self.isLoggedIn = true;\n // 登录成功后从全局状态获取用户信息\n _self.user = getApp().globalData.userInfo || {};\n _self.avatar = _self.user.avatar || '';\n }\n }\n }\n });\n },\n // 添加退出登录方法\n logout: function logout() {\n try {\n // 清除全局数据\n var app = getApp();\n app.globalData.ID = '';\n app.globalData.token = '';\n app.globalData.userInfo = {};\n app.globalData.isLoggedIn = false;\n app.globalData.expireAt = '';\n app.globalData.building = '';\n app.globalData.room = '';\n app.globalData.pen = '';\n app.globalData.buildingName = '';\n app.globalData.roomName = '';\n app.globalData.penNo = '';\n\n // 清除本地存储\n uni.removeStorageSync('equipment_token');\n uni.removeStorageSync('token_expire_time');\n uni.removeStorageSync('user_info');\n uni.removeStorageSync('building');\n uni.removeStorageSync('room');\n uni.removeStorageSync('pen');\n __f__(\"log\", '退出登录成功,已清除所有登录信息', \" at pages/mine/manage.vue:552\");\n\n // 重置页面状态\n this.login = false;\n this.user = {\n username: '',\n ID: ''\n };\n this.form = {\n buildingName: '',\n roomName: '',\n penNo: ''\n };\n\n // 跳转到登录页面\n uni.redirectTo({\n url: '/pages/login/login',\n success: function success() {\n __f__(\"log\", '跳转到登录页面成功', \" at pages/mine/manage.vue:567\");\n }\n });\n } catch (e) {\n __f__(\"error\", '退出登录过程中发生错误:', e, \" at pages/mine/manage.vue:571\");\n uni.showToast({\n title: '退出登录失败,请重试',\n icon: 'none'\n });\n }\n },\n clearStorage: function clearStorage() {\n var _self = this;\n try {\n _self.login = false;\n var app = getApp();\n // 清空全局数据\n app.globalData.token = '';\n app.globalData.equipmentManage = 0;\n app.globalData.userInfo = {};\n app.globalData.building = '';\n app.globalData.room = '';\n app.globalData.pen = '';\n app.globalData.buildingName = '';\n app.globalData.roomName = '';\n app.globalData.penNo = '';\n app.globalData.isLoggedIn = false;\n\n // 清空本地存储\n uni.setStorageSync('equipment_token', '');\n uni.setStorageSync('equipment_openid', '');\n uni.setStorageSync('equipment_manage', '');\n uni.setStorageSync('user_info', {});\n uni.setStorageSync('building', '');\n uni.setStorageSync('room', '');\n uni.setStorageSync('pen', '');\n uni.setStorageSync('buildingName', '');\n uni.setStorageSync('roomName', '');\n uni.setStorageSync('penNo', '');\n uni.$emit('loginStatusEvent', {\n isLogin: false\n });\n uni.showToast({\n title: '退出登录成功',\n icon: 'success'\n });\n\n // 直接跳转到登录页面,避免延迟导致的重复导航\n setTimeout(function () {\n uni.redirectTo({\n url: '/pages/login/login'\n });\n }, 500);\n } catch (e) {\n __f__(\"error\", '清除存储失败:', e, \" at pages/mine/manage.vue:623\");\n uni.showToast({\n title: '退出失败,请稍后再试',\n icon: 'none'\n });\n }\n },\n callManage: function callManage() {\n var _self = this;\n var managePhone = _self.managePhone;\n if (managePhone == '') {\n uni.showToast({\n title: '暂无管理员联系方式',\n icon: 'none'\n });\n return;\n }\n uni.makePhoneCall({\n phoneNumber: managePhone\n });\n }\n }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! @dcloudio/uni-mp-weixin/dist/mp.js */ 12)[\"default\"], __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 21)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvbWluZS9tYW5hZ2UudnVlIl0sIm5hbWVzIjpbImRhdGEiLCJsb2dpbiIsInVzZXIiLCJhdmF0YXIiLCJtYW5hZ2VQaG9uZSIsImZvcm0iLCJidWlsZGluZ05hbWUiLCJyb29tTmFtZSIsInBlbk5vIiwiYnVpbGRpbmdMaXN0Iiwicm9vbUxpc3QiLCJGaWVsZG51bWJlciIsIm9uU2hvdyIsIl9zZWxmIiwid3giLCJzdWNjZXNzIiwibWV0aG9kcyIsImZldGNoQnVpbGRpbmdMaXN0IiwidW5pIiwidXJsIiwibWV0aG9kIiwiaGVhZGVyIiwiZmFpbCIsImZldGNoVXNlckluZm8iLCJ1c2VySW5mbyIsImJ1aWxkaW5nIiwicm9vbSIsInBlbiIsInVzZXJuYW1lIiwiSUQiLCJhcHAiLCJyZWZyZXNoVXNlckluZm8iLCJmZXRjaFJvb21MaXN0IiwiZmV0Y2hQZW5MaXN0IiwibG9hZEZyb21TdG9yYWdlIiwib25CdWlsZGluZ0NoYW5nZSIsImdldEFwcCIsIm9uUm9vbUNoYW5nZSIsIm9uRmllbGRDaGFuZ2UiLCJzYXZlU2V0dGluZ3MiLCJ0aXRsZSIsImljb24iLCJtYXNrIiwidXNlcmlkIiwidGltZW91dCIsImR1cmF0aW9uIiwiY29tcGxldGUiLCJnb1dlTG9naW4iLCJjb2RlIiwiZ29Mb2dpbiIsImV2ZW50cyIsImlzTG9naW5Gcm9tTG9naW4iLCJsb2dvdXQiLCJjbGVhclN0b3JhZ2UiLCJpc0xvZ2luIiwic2V0VGltZW91dCIsImNhbGxNYW5hZ2UiLCJwaG9uZU51bWJlciJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUE4REE7QUFBQTtBQUFBO0FBQ0E7QUFBQSxlQUNBO0VBQ0FBO0lBQ0E7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7TUFFQTtNQUNBQztRQUNBQztRQUNBQztRQUNBQztNQUNBO01BRUE7TUFDQUM7TUFDQUM7TUFDQUM7SUFDQTtFQUNBO0VBQ0FDO0lBQ0E7SUFDQTtJQUVBO0lBQ0FDO0lBQ0E7TUFDQUM7UUFDQUM7VUFDQTtZQUNBRjtVQUNBO1FBQ0E7TUFDQTtJQUNBO01BQ0E7TUFDQUE7TUFDQUE7SUFDQTtFQUVBO0VBQ0FHO0lBQ0E7SUFDQUM7TUFDQTtNQUNBOztNQUVBO01BQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1VBQ0E7UUFDQTtRQUNBTjtVQUNBO1VBQ0E7WUFDQTtZQUNBRjtjQUFBO1lBQUE7WUFDQTs7WUFFQTtZQUNBO2NBQ0FBO1lBQ0E7O1lBRUE7WUFDQUE7VUFDQTtZQUNBO1lBQ0E7WUFDQUE7VUFDQTtRQUNBO1FBQ0FTO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQTtJQUNBO0lBQ0FDO01BQ0E7TUFDQTs7TUFFQTtNQUNBOztNQUVBO01BQ0E7UUFDQUM7UUFDQTtNQUNBOztNQUVBO01BQ0E7UUFDQTtVQUNBO1VBQ0E7WUFDQUE7WUFDQTtVQUNBO1FBQ0E7VUFDQTtRQUNBO01BQ0E7O01BRUE7TUFDQTtRQUNBQTtNQUNBO01BRUE7UUFDQUE7TUFDQTs7TUFFQTtNQUNBOztNQUVBO01BQ0FYOztNQUVBO01BQ0FBOztNQUVBO01BQ0FBO01BQ0FBO01BQ0FBO01BRUE7O01BRUE7TUFDQUs7UUFDQU87UUFDQUM7UUFDQUM7TUFDQTtJQUNBO0lBRUEzQjtNQUNBO1FBQ0FDO1FBQ0FDO1VBQ0EwQjtVQUFBO1VBQ0FDO1FBQ0E7O1FBQ0ExQjtRQUNBQztRQUVBO1FBQ0FDO1VBQ0FDO1VBQ0FDO1VBQ0FDO1FBQ0E7UUFFQTtRQUNBQztRQUNBQztRQUNBQztNQUNBO0lBQ0E7SUFFQTtJQUNBQztNQUNBO01BQ0E7O01BRUE7TUFDQTtNQUNBQztNQUVBO1FBQ0E7UUFDQUE7UUFDQTtRQUNBQTtNQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFFQTtVQUNBO1VBQ0FpQjtVQUNBQTtVQUNBQTtVQUNBQTtVQUNBakI7VUFDQUE7VUFDQUE7VUFDQTtRQUNBO01BQ0E7SUFDQTtJQUVBO0lBQ0FrQjtNQUNBO01BQ0E7TUFDQTtNQUVBO01BQ0E7SUFDQTtJQUNBO0lBQ0FDO01BQ0E7TUFDQTs7TUFFQTtNQUNBZDtRQUNBQztRQUNBQztRQUNBcEI7VUFDQXlCO1FBQ0E7O1FBQ0FKO1VBQ0E7UUFDQTtRQUNBTjtVQUNBO1VBRUE7WUFDQTtZQUNBRjtjQUFBO1lBQUE7O1lBRUE7WUFDQTtjQUNBQTtZQUNBOztZQUVBO1lBQ0FBO1VBQ0E7WUFDQTtZQUNBO1lBQ0FBO1VBQ0E7UUFDQTtRQUNBUztVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUE7SUFDQVc7TUFDQTtNQUNBO01BQ0E7TUFDQWY7UUFDQUM7UUFDQUM7UUFDQXBCO1VBQ0F5QjtVQUNBQztRQUNBOztRQUNBTDtVQUNBO1VBQ0E7UUFDQTtRQUNBTjtVQUNBO1VBRUE7WUFDQTtZQUNBRjtjQUFBO1lBQUE7WUFDQTtZQUNBO2NBQ0FBO1lBQ0E7VUFDQTtZQUNBO1lBQ0E7WUFDQUE7VUFDQTtRQUNBO1FBQ0FTO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQVk7TUFDQTtNQUNBO01BQ0E7TUFDQXJCO01BQ0FBO01BQ0FBO01BQ0FBO01BQ0E7TUFDQTtNQUNBO0lBQ0E7SUFFQTtJQUNBc0I7TUFDQTtNQUNBO01BQ0E7TUFDQTtNQUNBQztNQUNBO01BQ0FsQjtNQUNBO01BQ0E7SUFDQTtJQUVBbUI7TUFDQTtNQUNBO01BQ0E7TUFDQTtNQUNBRDtNQUNBO01BQ0FsQjtNQUNBO01BQ0E7SUFDQTtJQUVBb0I7TUFDQTtNQUNBO01BQ0E7TUFDQTtNQUNBRjtNQUNBO01BQ0FsQjtJQUNBO0lBRUE7SUFDQXFCO01BQUE7TUFDQTtRQUNBO1VBQ0FDO1VBQ0FDO1FBQ0E7TUFDQTtNQUVBO01BQ0E7TUFDQTtNQUNBO01BRUE7UUFDQTtRQUNBO1VBQ0FEO1VBQ0FDO1FBQ0E7TUFDQTtNQUFBO01BQ0F2QjtRQUNBc0I7UUFDQUU7TUFDQTtNQUVBO1FBQ0FkO1FBQ0FlO1FBQ0FsQjtRQUNBQztRQUNBQztNQUNBO01BQ0E7O01BRUE7TUFDQVQ7UUFDQUM7UUFDQUM7UUFDQXBCO1FBQ0FxQjtVQUNBO1VBQ0E7UUFDQTtRQUNBdUI7UUFBQTtRQUNBN0I7VUFDQTtZQUNBRztjQUNBc0I7Y0FDQUM7Y0FDQUk7WUFDQTtZQUNBO1lBQ0FmO1lBQ0FBO1lBQ0FBO1lBQ0E7WUFDQVo7WUFDQUE7WUFDQUE7WUFDQTtZQUNBQTtjQUNBTztjQUNBQztjQUNBQztZQUNBO1VBQ0E7WUFBQTtZQUNBO1lBQ0FUO2NBQ0FzQjtjQUNBQztZQUNBO1VBQ0E7UUFDQTtRQUNBSztVQUNBNUI7UUFDQTtNQUNBO0lBQ0E7SUFFQTZCO01BQ0E7TUFDQWxDO1FBQ0FtQztNQUNBO1FBQ0FaO1FBQ0FBOztRQUVBO1FBQ0FsQjtRQUNBQTtRQUNBQTtRQUVBTDtRQUNBO1FBQ0FBO1FBQ0FBOztRQUVBO1FBQ0FBO1FBQ0FBO01BQ0E7UUFDQTtRQUNBSztVQUNBc0I7VUFDQUM7UUFDQTtNQUNBO0lBQ0E7SUFDQVE7TUFDQTtNQUNBL0I7UUFDQUM7UUFDQStCO1VBQ0E7VUFDQUM7WUFDQTtjQUNBdEM7Y0FDQTtjQUNBQTtjQUNBQTtZQUNBO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQTtJQUNBdUM7TUFDQTtRQUNBO1FBQ0E7UUFDQXRCO1FBQ0FBO1FBQ0FBO1FBQ0FBO1FBQ0FBO1FBQ0FBO1FBQ0FBO1FBQ0FBO1FBQ0FBO1FBQ0FBO1FBQ0FBOztRQUVBO1FBQ0FaO1FBQ0FBO1FBQ0FBO1FBQ0FBO1FBQ0FBO1FBQ0FBO1FBRUE7O1FBRUE7UUFDQTtRQUNBO1VBQUFVO1VBQUFDO1FBQUE7UUFDQTtVQUNBdkI7VUFDQUM7VUFDQUM7UUFDQTs7UUFFQTtRQUNBVTtVQUNBQztVQUNBSjtZQUNBO1VBQ0E7UUFDQTtNQUNBO1FBQ0E7UUFDQUc7VUFDQXNCO1VBQ0FDO1FBQ0E7TUFDQTtJQUNBO0lBQ0FZO01BQ0E7TUFDQTtRQUNBeEM7UUFDQTtRQUNBO1FBQ0FpQjtRQUNBQTtRQUNBQTtRQUNBQTtRQUNBQTtRQUNBQTtRQUNBQTtRQUNBQTtRQUNBQTtRQUNBQTs7UUFFQTtRQUNBWjtRQUNBQTtRQUNBQTtRQUNBQTtRQUNBQTtRQUNBQTtRQUNBQTtRQUNBQTtRQUNBQTtRQUNBQTtRQUVBQTtVQUNBb0M7UUFDQTtRQUVBcEM7VUFDQXNCO1VBQ0FDO1FBQ0E7O1FBRUE7UUFDQWM7VUFDQXJDO1lBQ0FDO1VBQ0E7UUFDQTtNQUNBO1FBQ0E7UUFDQUQ7VUFDQXNCO1VBQ0FDO1FBQ0E7TUFDQTtJQUNBO0lBQ0FlO01BQ0E7TUFDQTtNQUNBO1FBQ0F0QztVQUNBc0I7VUFDQUM7UUFDQTtRQUNBO01BQ0E7TUFFQXZCO1FBQ0F1QztNQUNBO0lBQ0E7RUFDQTtBQUNBO0FBQUEsMkIiLCJmaWxlIjoiNDQuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XHJcblx0PHZpZXcgY2xhc3M9XCJjb250YWluZXJcIj5cclxuXHRcdDx2aWV3IGNsYXNzPVwibGlzdHNcIiB2LWlmPVwibG9naW5cIj5cclxuXHRcdFx0PCEtLSDnlKjmiLfkv6Hmga/ljaHniYcgLS0+XHJcblx0XHRcdDx2aWV3IGNsYXNzPVwiY3UtY2FyZCBjYXNlIHVzZXItY2FyZFwiPlxyXG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwiY3UtaXRlbVwiPlxyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImNvbnRlbnRcIj5cclxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJ1c2VybmFtZVwiPueUqOaIt+WQjToge3t1c2VyLnVzZXJuYW1lfX08L3ZpZXc+XHJcblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwidXNlci1pZFwiIHYtaWY9XCJ1c2VyLklEXCI+SUQ6IHt7dXNlci5JRH19PC92aWV3PlxyXG5cdFx0XHRcdFx0PC92aWV3PlxyXG5cdFx0XHRcdDwvdmlldz5cclxuXHRcdFx0PC92aWV3PlxyXG5cclxuXHRcdFx0PCEtLSDlip/og73liJfooaggLS0+XHJcblx0XHRcdDx2aWV3IGNsYXNzPVwiY3UtbGlzdCBtZW51IHNtLWJvcmRlciBjYXJkLW1lbnUgZnVuY3Rpb24tbGlzdFwiPlxyXG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwiZm9ybS1zZWN0aW9uXCI+XHJcblx0XHRcdFx0XHQ8cGlja2VyIDpyYW5nZT1cImJ1aWxkaW5nTGlzdFwiIEBjaGFuZ2U9XCJvbkJ1aWxkaW5nQ2hhbmdlXCI+XHJcblx0XHRcdFx0XHQgIDx2aWV3IGNsYXNzPVwiZm9ybS1pdGVtXCI+XHJcblx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwibGFiZWxcIj48dGV4dCBjbGFzcz1cImZhIGZhLWhvbWVcIj48L3RleHQ+IOagi+iIjee8luWPtzwvdGV4dD5cclxuXHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJ2YWx1ZVwiPnt7IGZvcm0uYnVpbGRpbmdOYW1lIHx8ICfor7fpgInmi6nmoIvoiI0nIH19PC90ZXh0PlxyXG5cdFx0XHRcdFx0ICA8L3ZpZXc+XHJcblx0XHRcdFx0XHQ8L3BpY2tlcj5cclxuXHJcblx0XHRcdFx0XHQ8cGlja2VyIDpyYW5nZT1cInJvb21MaXN0XCIgQGNoYW5nZT1cIm9uUm9vbUNoYW5nZVwiPlxyXG5cdFx0XHRcdFx0ICA8dmlldyBjbGFzcz1cImZvcm0taXRlbVwiPlxyXG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cImxhYmVsXCI+PHRleHQgY2xhc3M9XCJmYSBmYS1kb29yLW9wZW5cIj48L3RleHQ+IOaIv+mXtOe8luWPtzwvdGV4dD5cclxuXHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJ2YWx1ZVwiPnt7IGZvcm0ucm9vbU5hbWUgfHwgJ+ivt+mAieaLqeaIv+mXtCcgfX08L3RleHQ+XHJcblx0XHRcdFx0XHQgIDwvdmlldz5cclxuXHRcdFx0XHRcdDwvcGlja2VyPlxyXG5cclxuXHRcdFx0XHRcdDxwaWNrZXIgOnJhbmdlPVwiRmllbGRudW1iZXJcIiBAY2hhbmdlPVwib25GaWVsZENoYW5nZVwiPlxyXG5cdFx0XHRcdFx0ICA8dmlldyBjbGFzcz1cImZvcm0taXRlbVwiPlxyXG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cImxhYmVsXCI+PHRleHQgY2xhc3M9XCJmYSBmYS10aC1sYXJnZVwiPjwvdGV4dD4g5qCP5L2N57yW5Y+3PC90ZXh0PlxyXG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cInZhbHVlXCI+e3sgZm9ybS5wZW5ObyB8fCAn6K+36YCJ5oup5qCP5L2NJyB9fTwvdGV4dD5cclxuXHRcdFx0XHRcdCAgPC92aWV3PlxyXG5cdFx0XHRcdFx0PC9waWNrZXI+XHJcblx0XHRcdFx0PC92aWV3PlxyXG5cclxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cInNhdmUtYnRuLWNvbnRhaW5lclwiPlxyXG5cdFx0XHRcdFx0PGJ1dHRvbiBjbGFzcz1cImN1LWJ0biBibG9jayBzYXZlLWJ0blwiIEBjbGljaz1cInNhdmVTZXR0aW5nc1wiIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogIzA3YzE2MDtcIj5cclxuXHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJmYSBmYS1zYXZlIG1hcmdpbi1yaWdodC14c1wiPjwvdGV4dD4g5L+d5a2Y6K6+572uXHJcblx0XHRcdFx0XHQ8L2J1dHRvbj5cclxuXHRcdFx0XHRcdDxidXR0b24gY2xhc3M9XCJjdS1idG4gYmxvY2sgc2F2ZS1idG5cIiBAY2xpY2s9XCJsb2dvdXQoKVwiIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogcmVkO1wiPlxyXG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cImZhIGZhLXNhdmUgbWFyZ2luLXJpZ2h0LXhzXCI+PC90ZXh0PiDpgIDlh7rnmbvlvZVcclxuXHRcdFx0XHRcdDwvYnV0dG9uPlxyXG5cdFx0XHRcdDwvdmlldz5cclxuXHRcdFx0PC92aWV3PlxyXG5cclxuXHRcdDwvdmlldz5cclxuXHRcdDx2aWV3IHYtZWxzZT5cclxuXHRcdFx0PHZpZXcgY2xhc3M9XCJlbXB0eSBub2xvZ2luLWNvbnRlbnRcIj5cclxuXHRcdFx0XHQ8aW1hZ2Ugc3JjPVwiLi4vLi4vc3RhdGljL25vbG9naW4ucG5nXCIgbW9kZT1cIndpZHRoRml4XCI+PC9pbWFnZT5cclxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cInRleHQtZ3JheVwiPuivt+WFiOeZu+W9lei0puWPtzwvdmlldz5cclxuXHRcdFx0XHQ8YnV0dG9uIGNsYXNzPVwiY3UtYnRuIGJsb2NrIGJnLWJsYWNrIGxnXCIgQGNsaWNrPVwiZ29Mb2dpbigpXCI+XHJcblx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cImN1SWNvbi1sb2NrIG1hcmdpbi1yaWdodC14c1wiPjwvdGV4dD4g55m75b2V6LSm5Y+3PC9idXR0b24+XHJcblx0XHRcdDwvdmlldz5cclxuXHRcdDwvdmlldz5cclxuXHQ8L3ZpZXc+XHJcbjwvdGVtcGxhdGU+XHJcblxyXG48c2NyaXB0PlxyXG5pbXBvcnQgQVBJIGZyb20gJy4uLy4uL2FwaS9pbmRleCc7XHJcblx0Ly8g56e76Zmk5YWo5bGA5Y+Y6YeP5aOw5piO77yM5pS55Li65Zyo5pa55rOV5YaF5L2/55SoY29uc3Tlo7DmmI5cclxuXHRleHBvcnQgZGVmYXVsdCB7XHJcblx0XHRkYXRhKCkge1xyXG5cdFx0XHRyZXR1cm4ge1xyXG5cdFx0XHRcdGxvZ2luOiBmYWxzZSxcclxuXHRcdFx0XHR1c2VyOiB7fSxcclxuXHRcdFx0XHRhdmF0YXI6ICcnLFxyXG5cdFx0XHRcdG1hbmFnZVBob25lOiAnJyxcclxuXHJcblx0XHRcdFx0Ly8g6KGo5Y2V5pWw5o2uXHJcblx0XHRcdFx0Zm9ybToge1xyXG5cdFx0XHRcdFx0YnVpbGRpbmdOYW1lOiAnJyxcclxuXHRcdFx0XHRcdHJvb21OYW1lOiAnJyxcclxuXHRcdFx0XHRcdHBlbk5vOiAnJ1xyXG5cdFx0XHRcdH0sXHJcblxyXG5cdFx0XHRcdC8vIOWKqOaAgeS7juaOpeWPo+iOt+WPluaVsOaNrlxyXG5cdFx0XHRcdGJ1aWxkaW5nTGlzdDogW10sXHJcblx0XHRcdFx0cm9vbUxpc3Q6IFtdLFxyXG5cdFx0XHRcdEZpZWxkbnVtYmVyOiBbXVxyXG5cdFx0XHR9XHJcblx0XHR9LFxyXG5cdFx0b25TaG93KCkge1xyXG5cdFx0XHRjb25zdCBfc2VsZiA9IHRoaXM7XHJcblx0XHRcdGNvbnN0IGFwcCA9IGdldEFwcCgpO1xyXG5cclxuXHRcdFx0Y29uc3QgaXNMb2dpbiA9ICEhYXBwLmdsb2JhbERhdGEudG9rZW47XHJcblx0XHRcdF9zZWxmLmxvZ2luID0gaXNMb2dpbjtcclxuXHRcdFx0aWYgKCFpc0xvZ2luKSB7XHJcblx0XHRcdFx0d3gubG9naW4oe1xyXG5cdFx0XHRcdFx0c3VjY2VzcyhyZXMpIHtcclxuXHRcdFx0XHRcdFx0aWYgKHJlcy5jb2RlKSB7XHJcblx0XHRcdFx0XHRcdFx0X3NlbGYuZ29XZUxvZ2luKHJlcy5jb2RlKTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdC8vIOebtOaOpeS7juWFqOWxgOeKtuaAgeiOt+WPlueUqOaIt+S/oeaBr1xyXG5cdFx0XHRcdF9zZWxmLnVzZXIgPSBhcHAuZ2xvYmFsRGF0YS51c2VySW5mbyB8fCB7fTtcclxuXHRcdFx0XHRfc2VsZi5hdmF0YXIgPSBfc2VsZi51c2VyLmF2YXRhciB8fCAnJztcclxuXHRcdFx0fVxyXG5cclxuXHRcdH0sXHJcblx0XHRtZXRob2RzOiB7XHJcblx0XHRcdC8vIOiOt+WPluagi+iIjeWIl+ihqFxyXG5cdFx0XHRmZXRjaEJ1aWxkaW5nTGlzdCgpIHtcclxuXHRcdFx0XHRjb25zdCBfc2VsZiA9IHRoaXM7XHJcblx0XHRcdFx0Y29uc3QgYXBwID0gZ2V0QXBwKCk7XHJcblxyXG5cdFx0XHRcdC8vIOS7juacjeWKoeWZqOiOt+WPluagi+iIjeWIl+ihqFxyXG5cdFx0XHRcdHVuaS5yZXF1ZXN0KHtcclxuXHRcdFx0XHRcdHVybDogQVBJLmdldEJ1aWxkaW5nLFxyXG5cdFx0XHRcdFx0bWV0aG9kOiAnR0VUJyxcclxuXHRcdFx0XHRcdGhlYWRlcjoge1xyXG5cdFx0XHRcdFx0XHRcIngtdG9rZW5cIjogYXBwLmdsb2JhbERhdGEudG9rZW4gfHwgJydcclxuXHRcdFx0XHRcdH0sXHJcblx0XHRcdFx0XHRzdWNjZXNzOiAocmVzKSA9PiB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhyZXMuZGF0YS5kYXRhKVxyXG5cdFx0XHRcdFx0XHRpZiAocmVzLmRhdGEgJiYgcmVzLmRhdGEuY29kZSA9PT0gMCAmJiByZXMuZGF0YS5kYXRhICYmIHJlcy5kYXRhLmRhdGEubGVuZ3RoID4gMCkge1xyXG5cdFx0XHRcdFx0XHRcdC8vIOabtOaWsOagi+iIjeWIl+ihqFxyXG5cdFx0XHRcdFx0XHRcdF9zZWxmLmJ1aWxkaW5nTGlzdCA9IHJlcy5kYXRhLmRhdGEubWFwKGl0ZW0gPT4gaXRlbS5uYW1lIHx8IGl0ZW0uYnVpbGRpbmdfbmFtZSk7XHJcblx0XHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ+iOt+WPluagi+iIjee8luWPtzonLCBfc2VsZi5idWlsZGluZ0xpc3QpO1xyXG5cclxuXHRcdFx0XHRcdFx0XHQvLyDlpoLmnpzooajljZXkuK3msqHmnInpgInmi6nmoIvoiI3vvIzlsJ3or5Xkvb/nlKjlhajlsYDmlbDmja7miJbmnKzlnLDlrZjlgqhcclxuXHRcdFx0XHRcdFx0XHRpZiAoIV9zZWxmLmZvcm0uYnVpbGRpbmdOYW1lKSB7XHJcblx0XHRcdFx0XHRcdFx0XHRfc2VsZi5mb3JtLmJ1aWxkaW5nTmFtZSA9IGFwcC5nbG9iYWxEYXRhLmJ1aWxkaW5nIHx8IHVuaS5nZXRTdG9yYWdlU3luYygnYnVpbGRpbmcnKSB8fCAnJztcclxuXHRcdFx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0XHRcdC8vIOiOt+WPluWvueW6lOagi+iIjeeahOaIv+mXtOWIl+ihqFxyXG5cdFx0XHRcdFx0XHRcdF9zZWxmLmZldGNoUm9vbUxpc3QoKTtcclxuXHRcdFx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdFx0XHRjb25zb2xlLmVycm9yKCdnZXRfYnVpbGRpbmflk43lupTmlbDmja7ml6DmlYjmiJbkuLrnqbo6JywgcmVzLmRhdGEpO1xyXG5cdFx0XHRcdFx0XHRcdC8vIOS9v+eUqOm7mOiupOagi+iIjeWIl+ihqFxyXG5cdFx0XHRcdFx0XHRcdF9zZWxmLmJ1aWxkaW5nTGlzdCA9IFtdO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9LFxyXG5cdFx0XHRcdFx0ZmFpbDogKGVycikgPT4ge1xyXG5cdFx0XHRcdFx0XHRjb25zb2xlLmVycm9yKCfojrflj5bmoIvoiI3liJfooajlpLHotKU6JywgZXJyKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0fSxcclxuXHJcblx0XHRcdC8vIOaWsOWinuaWueazle+8muiOt+WPluacgOaWsOeUqOaIt+S/oeaBr1xyXG5cdFx0XHQvLyDkv67lpI1mZXRjaFVzZXJJbmZv5pa55rOV77yM56Gu5L+d55So5oi35L+h5oGv5q2j56Gu6I635Y+WXHJcblx0XHRcdGZldGNoVXNlckluZm8oKSB7XHJcblx0XHRcdCAgY29uc3QgX3NlbGYgPSB0aGlzO1xyXG5cdFx0XHQgIGNvbnN0IGFwcCA9IGdldEFwcCgpO1xyXG5cdFx0XHQgIFxyXG5cdFx0XHQgIC8vIOS7juWkmuS4quadpea6kOiOt+WPlueUqOaIt+S/oeaBr++8jOWinuWKoOWPr+mdoOaAp1xyXG5cdFx0XHQgIGxldCB1c2VySW5mbyA9IHt9O1xyXG5cdFx0XHQgIFxyXG5cdFx0XHQgIC8vIDEuIOS8mOWFiOS7juWFqOWxgOaVsOaNruiOt+WPllxyXG5cdFx0XHQgIGlmIChhcHAuZ2xvYmFsRGF0YS51c2VySW5mbyAmJiBPYmplY3Qua2V5cyhhcHAuZ2xvYmFsRGF0YS51c2VySW5mbykubGVuZ3RoID4gMCkge1xyXG5cdFx0XHQgICAgdXNlckluZm8gPSBhcHAuZ2xvYmFsRGF0YS51c2VySW5mbztcclxuXHRcdFx0ICAgIGNvbnNvbGUubG9nKCfku47lhajlsYDmlbDmja7ojrflj5bnlKjmiLfkv6Hmga86JywgdXNlckluZm8pO1xyXG5cdFx0XHQgIH1cclxuXHRcdFx0ICBcclxuXHRcdFx0ICAvLyAyLiDlpoLmnpzlhajlsYDmlbDmja7kuI3lj6/nlKjvvIzlsJ3or5Xku47mnKzlnLDlrZjlgqjojrflj5ZcclxuXHRcdFx0ICBpZiAoIXVzZXJJbmZvLnVzZXJuYW1lIHx8ICF1c2VySW5mby5JRCkge1xyXG5cdFx0XHQgICAgdHJ5IHtcclxuXHRcdFx0ICAgICAgY29uc3Qgc3RvcmVkVXNlckluZm8gPSB1bmkuZ2V0U3RvcmFnZVN5bmMoJ3VzZXJfaW5mbycpIHx8IHt9O1xyXG5cdFx0XHQgICAgICBpZiAoc3RvcmVkVXNlckluZm8gJiYgT2JqZWN0LmtleXMoc3RvcmVkVXNlckluZm8pLmxlbmd0aCA+IDApIHtcclxuXHRcdFx0ICAgICAgICB1c2VySW5mbyA9IHsgLi4udXNlckluZm8sIC4uLnN0b3JlZFVzZXJJbmZvIH07XHJcblx0XHRcdCAgICAgICAgY29uc29sZS5sb2coJ+S7juacrOWcsOWtmOWCqOihpeWFheeUqOaIt+S/oeaBrzonLCBzdG9yZWRVc2VySW5mbyk7XHJcblx0XHRcdCAgICAgIH1cclxuXHRcdFx0ICAgIH0gY2F0Y2ggKGUpIHtcclxuXHRcdFx0ICAgICAgY29uc29sZS5lcnJvcign6K+75Y+W5pys5Zyw5a2Y5YKo55So5oi35L+h5oGv5aSx6LSlOicsIGUpO1xyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHQgIH1cclxuXHRcdFx0ICBcclxuXHRcdFx0ICAvLyAzLiDlpoLmnpzku43nhLbnvLrlsJHlhbPplK7kv6Hmga/vvIzlsJ3or5Xku450b2tlbuebuOWFs+S/oeaBr+S4reaPkOWPllxyXG5cdFx0XHQgIGlmICghdXNlckluZm8udXNlcm5hbWUpIHtcclxuXHRcdFx0ICAgIHVzZXJJbmZvLnVzZXJuYW1lID0gYXBwLmdsb2JhbERhdGEudXNlcm5hbWUgfHwgJyc7XHJcblx0XHRcdCAgfVxyXG5cdFx0XHQgIFxyXG5cdFx0XHQgIGlmICghdXNlckluZm8uSUQpIHtcclxuXHRcdFx0ICAgIHVzZXJJbmZvLklEID0gYXBwLmdsb2JhbERhdGEuSUQgfHwgJyc7XHJcblx0XHRcdCAgfVxyXG5cdFx0XHQgIFxyXG5cdFx0XHQgIC8vIOiusOW9leiOt+WPluWIsOeahOeUqOaIt+S/oeaBr++8jOS+v+S6juiwg+ivlVxyXG5cdFx0XHQgIGNvbnNvbGUubG9nKCfmnIDnu4jojrflj5bnmoTnlKjmiLfkv6Hmga86JywgdXNlckluZm8pO1xyXG5cdFx0XHQgIFxyXG5cdFx0XHQgIC8vIOabtOaWsOmhtemdouaVsOaNrlxyXG5cdFx0XHQgIF9zZWxmLnVzZXIgPSB1c2VySW5mbztcclxuXHRcdFx0ICBcclxuXHRcdFx0ICAvLyDnoa7kv53ljbPkvb/msqHmnInlpLTlg4/kuZ/kuI3kvJrlh7rplJlcclxuXHRcdFx0ICBfc2VsZi5hdmF0YXIgPSB1c2VySW5mby5hdmF0YXIgfHwgJyc7XHJcblx0XHRcdCAgXHJcblx0XHRcdCAgLy8g5pu05paw6KGo5Y2V5pWw5o2uXHJcblx0XHRcdCAgX3NlbGYuZm9ybS5idWlsZGluZ05hbWUgPSBhcHAuZ2xvYmFsRGF0YS5idWlsZGluZyB8fCBhcHAuZ2xvYmFsRGF0YS5idWlsZGluZ05hbWUgfHwgJyc7XHJcblx0XHRcdCAgX3NlbGYuZm9ybS5yb29tTmFtZSA9IGFwcC5nbG9iYWxEYXRhLnJvb20gfHwgYXBwLmdsb2JhbERhdGEucm9vbU5hbWUgfHwgJyc7XHJcblx0XHRcdCAgX3NlbGYuZm9ybS5wZW5ObyA9IGFwcC5nbG9iYWxEYXRhLnBlbiB8fCBhcHAuZ2xvYmFsRGF0YS5wZW5ObyB8fCAnJztcclxuXHRcdFx0ICBcclxuXHRcdFx0ICBjb25zb2xlLmxvZygn5pu05paw5ZCO55qE6KGo5Y2V5pWw5o2uOicsIF9zZWxmLmZvcm0pO1xyXG5cdFx0XHQgIFxyXG5cdFx0XHQgIC8vIOinpuWPkeiuvue9ruabtOaWsOS6i+S7tu+8jOmAmuefpeWFtuS7lue7hOS7tlxyXG5cdFx0XHQgIHVuaS4kZW1pdCgnc2V0dGluZ3NVcGRhdGVkJywge1xyXG5cdFx0XHQgICAgYnVpbGRpbmc6IF9zZWxmLmZvcm0uYnVpbGRpbmdOYW1lLFxyXG5cdFx0XHQgICAgcm9vbTogX3NlbGYuZm9ybS5yb29tTmFtZSxcclxuXHRcdFx0ICAgIHBlbjogX3NlbGYuZm9ybS5wZW5Ob1xyXG5cdFx0XHQgIH0pO1xyXG5cdFx0XHR9LFxyXG5cclxuXHRcdFx0ZGF0YSgpIHtcclxuXHRcdFx0ICByZXR1cm4ge1xyXG5cdFx0XHQgICAgbG9naW46IGZhbHNlLFxyXG5cdFx0XHQgICAgdXNlcjoge1xyXG5cdFx0XHQgICAgICB1c2VybmFtZTogJycsIC8vIOaPkOS+m+m7mOiupOeahOeUqOaIt+WQjeWxnuaAp1xyXG5cdFx0XHQgICAgICBJRDogJycgICAgICAgIC8vIOaPkOS+m+m7mOiupOeahElE5bGe5oCnXHJcblx0XHRcdCAgICB9LFxyXG5cdFx0XHQgICAgYXZhdGFyOiAnJyxcclxuXHRcdFx0ICAgIG1hbmFnZVBob25lOiAnJyxcclxuXHRcdFx0ICAgIFxyXG5cdFx0XHQgICAgLy8g6KGo5Y2V5pWw5o2uXHJcblx0XHRcdCAgICBmb3JtOiB7XHJcblx0XHRcdCAgICAgIGJ1aWxkaW5nTmFtZTogJycsXHJcblx0XHRcdCAgICAgIHJvb21OYW1lOiAnJyxcclxuXHRcdFx0ICAgICAgcGVuTm86ICcnXHJcblx0XHRcdCAgICB9LFxyXG5cdFx0XHRcclxuXHRcdFx0ICAgIC8vIOWKqOaAgeS7juaOpeWPo+iOt+WPluaVsOaNrlxyXG5cdFx0XHQgICAgYnVpbGRpbmdMaXN0OiBbXSxcclxuXHRcdFx0ICAgIHJvb21MaXN0OiBbXSxcclxuXHRcdFx0ICAgIEZpZWxkbnVtYmVyOiBbXVxyXG5cdFx0XHQgIH1cclxuXHRcdFx0fSxcclxuXHJcblx0XHRcdC8vIOWinuW8um9uU2hvd+aWueazleS4reeahOeUqOaIt+S/oeaBr+iOt+WPlumAu+i+kVxyXG5cdFx0XHRvblNob3coKSB7XHJcblx0XHRcdCAgY29uc3QgX3NlbGYgPSB0aGlzO1xyXG5cdFx0XHQgIGNvbnN0IGFwcCA9IGdldEFwcCgpO1xyXG5cdFx0XHQgIFxyXG5cdFx0XHQgIC8vIOmmluWFiOajgOafpeeZu+W9leeKtuaAgVxyXG5cdFx0XHQgIGNvbnN0IGlzTG9naW4gPSAhIWFwcC5nbG9iYWxEYXRhLnRva2VuO1xyXG5cdFx0XHQgIF9zZWxmLmxvZ2luID0gaXNMb2dpbjtcclxuXHRcdFx0ICBcclxuXHRcdFx0ICBpZiAoaXNMb2dpbikge1xyXG5cdFx0XHQgICAgLy8g6I635Y+W5qCL6IiN5YiX6KGoXHJcblx0XHRcdCAgICBfc2VsZi5mZXRjaEJ1aWxkaW5nTGlzdCgpO1xyXG5cdFx0XHQgICAgLy8g6I635Y+W5pyA5paw55So5oi35L+h5oGvXHJcblx0XHRcdCAgICBfc2VsZi5mZXRjaFVzZXJJbmZvKCk7XHJcblx0XHRcdCAgfSBlbHNlIHtcclxuXHRcdFx0ICAgIC8vIOWwneivleS7juacrOWcsOWtmOWCqOaBouWkjeeZu+W9leS/oeaBr1xyXG5cdFx0XHQgICAgY29uc3QgdG9rZW4gPSB1bmkuZ2V0U3RvcmFnZVN5bmMoJ2VxdWlwbWVudF90b2tlbicpIHx8ICcnO1xyXG5cdFx0XHQgICAgY29uc3QgZXhwaXJlQXQgPSB1bmkuZ2V0U3RvcmFnZVN5bmMoJ3Rva2VuX2V4cGlyZV90aW1lJykgfHwgJyc7XHJcblx0XHRcdCAgICBjb25zdCB1c2VySW5mbyA9IHVuaS5nZXRTdG9yYWdlU3luYygndXNlcl9pbmZvJykgfHwge307XHJcblx0XHRcdCAgICBcclxuXHRcdFx0ICAgIGlmICh0b2tlbiAmJiBleHBpcmVBdCkge1xyXG5cdFx0XHQgICAgICAvLyDmgaLlpI3nmbvlvZXkv6Hmga/liLDlhajlsYDmlbDmja5cclxuXHRcdFx0ICAgICAgYXBwLmdsb2JhbERhdGEudG9rZW4gPSB0b2tlbjtcclxuXHRcdFx0ICAgICAgYXBwLmdsb2JhbERhdGEuZXhwaXJlQXQgPSBleHBpcmVBdDtcclxuXHRcdFx0ICAgICAgYXBwLmdsb2JhbERhdGEudXNlckluZm8gPSB1c2VySW5mbztcclxuXHRcdFx0ICAgICAgYXBwLmdsb2JhbERhdGEuaXNMb2dnZWRJbiA9IHRydWU7XHJcblx0XHRcdCAgICAgIF9zZWxmLmxvZ2luID0gdHJ1ZTtcclxuXHRcdFx0ICAgICAgX3NlbGYuZmV0Y2hCdWlsZGluZ0xpc3QoKTtcclxuXHRcdFx0ICAgICAgX3NlbGYuZmV0Y2hVc2VySW5mbygpO1xyXG5cdFx0XHQgICAgICBjb25zb2xlLmxvZygn5LuO5pys5Zyw5a2Y5YKo5oGi5aSN55m75b2V54q25oCB5oiQ5YqfJyk7XHJcblx0XHRcdCAgICB9XHJcblx0XHRcdCAgfVxyXG5cdFx0XHR9LFxyXG5cclxuXHRcdFx0Ly8g5paw5aKe5LiA5Liq5pa55rOV77yM55So5LqO5omL5Yqo5Yi35paw55So5oi35L+h5oGvXHJcblx0XHRcdHJlZnJlc2hVc2VySW5mbygpIHtcclxuXHRcdFx0ICBjb25zdCBhcHAgPSBnZXRBcHAoKTtcclxuXHRcdFx0ICBjb25zb2xlLmxvZygn5omL5Yqo5Yi35paw55So5oi35L+h5oGvIC0g5b2T5YmN5YWo5bGA5pWw5o2uOicsIGFwcC5nbG9iYWxEYXRhKTtcclxuXHRcdFx0ICBjb25zb2xlLmxvZygn5omL5Yqo5Yi35paw55So5oi35L+h5oGvIC0g5b2T5YmN5pys5Zyw5a2Y5YKoOicsIHVuaS5nZXRTdG9yYWdlU3luYygndXNlcl9pbmZvJykpO1xyXG5cdFx0XHQgIFxyXG5cdFx0XHQgIHRoaXMuZmV0Y2hVc2VySW5mbygpO1xyXG5cdFx0XHQgIHRoaXMuZmV0Y2hCdWlsZGluZ0xpc3QoKTtcclxuXHRcdFx0fSxcclxuXHRcdFx0Ly8g6I635Y+W5oi/6Ze05YiX6KGoXHJcblx0XHRcdGZldGNoUm9vbUxpc3QoKSB7XHJcblx0XHRcdFx0Y29uc3QgX3NlbGYgPSB0aGlzO1xyXG5cdFx0XHRcdGNvbnN0IGFwcCA9IGdldEFwcCgpO1xyXG5cclxuXHRcdFx0XHQvLyDojrflj5bmiL/pl7TliJfooahcclxuXHRcdFx0XHR1bmkucmVxdWVzdCh7XHJcblx0XHRcdFx0XHR1cmw6IEFQSS5nZXRSb29tLFxyXG5cdFx0XHRcdFx0bWV0aG9kOiAnR0VUJyxcclxuXHRcdFx0XHRcdGRhdGE6IHtcclxuXHRcdFx0XHRcdFx0YnVpbGRpbmc6IF9zZWxmLmZvcm0uYnVpbGRpbmdOYW1lIC8vIOS8oOmAkuW9k+WJjemAieaLqeeahOagi+iIjVxyXG5cdFx0XHRcdFx0fSxcclxuICAgICAgICAgIGhlYWRlcjoge1xyXG4gICAgICAgICAgICBcIngtdG9rZW5cIjogYXBwLmdsb2JhbERhdGEudG9rZW4gfHwgJydcclxuICAgICAgICAgIH0sXHJcblx0XHRcdFx0XHRzdWNjZXNzOiAocmVzKSA9PiB7XHJcblx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKCfojrflj5bmiL/pl7TnvJblj7c6JywgcmVzKTtcclxuXHJcblx0XHRcdFx0XHRcdGlmIChyZXMuZGF0YSAmJiByZXMuZGF0YS5jb2RlID09PSAwICYmIHJlcy5kYXRhLmRhdGEgJiYgcmVzLmRhdGEuZGF0YS5sZW5ndGggPiAwKSB7XHJcblx0XHRcdFx0XHRcdFx0Ly8g5pu05paw5oi/6Ze05YiX6KGoXHJcblx0XHRcdFx0XHRcdFx0X3NlbGYucm9vbUxpc3QgPSByZXMuZGF0YS5kYXRhLm1hcChpdGVtID0+IGl0ZW0ubmFtZSB8fCBpdGVtLnJvb21fbmFtZSk7XHJcblxyXG5cdFx0XHRcdFx0XHRcdC8vIOWmguaenOihqOWNleS4reayoeaciemAieaLqeaIv+mXtO+8jOWwneivleS9v+eUqOWFqOWxgOaVsOaNruaIluacrOWcsOWtmOWCqFxyXG5cdFx0XHRcdFx0XHRcdGlmICghX3NlbGYuZm9ybS5yb29tTmFtZSkge1xyXG5cdFx0XHRcdFx0XHRcdFx0X3NlbGYuZm9ybS5yb29tTmFtZSA9IGFwcC5nbG9iYWxEYXRhLnJvb20gfHwgdW5pLmdldFN0b3JhZ2VTeW5jKCdyb29tJykgfHwgJyc7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdFx0XHQvLyDojrflj5blr7nlupTmiL/pl7TnmoTmoI/kvY3liJfooahcclxuXHRcdFx0XHRcdFx0XHRfc2VsZi5mZXRjaFBlbkxpc3QoKTtcclxuXHRcdFx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdFx0XHRjb25zb2xlLmVycm9yKCdnZXRfcm9vbeWTjeW6lOaVsOaNruaXoOaViOaIluS4uuepujonLCByZXMuZGF0YSk7XHJcblx0XHRcdFx0XHRcdFx0Ly8g5L2/55So6buY6K6k5oi/6Ze05YiX6KGoXHJcblx0XHRcdFx0XHRcdFx0X3NlbGYucm9vbUxpc3QgPSBbXTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fSxcclxuXHRcdFx0XHRcdGZhaWw6IChlcnIpID0+IHtcclxuXHRcdFx0XHRcdFx0Y29uc29sZS5lcnJvcign6I635Y+W5oi/6Ze05YiX6KGo5aSx6LSlOicsIGVycik7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdH0sXHJcblxyXG5cdFx0XHQvLyDojrflj5bmoI/kvY3liJfooahcclxuXHRcdFx0ZmV0Y2hQZW5MaXN0KCkge1xyXG5cdFx0XHRcdGNvbnN0IF9zZWxmID0gdGhpcztcclxuXHRcdFx0XHRjb25zdCBhcHAgPSBnZXRBcHAoKTtcclxuXHRcdFx0XHQvLyDojrflj5bmoI/kvY3liJfooahcclxuXHRcdFx0XHR1bmkucmVxdWVzdCh7XHJcblx0XHRcdFx0XHR1cmw6IEFQSS5nZXRQZW4sXHJcblx0XHRcdFx0XHRtZXRob2Q6ICdHRVQnLFxyXG5cdFx0XHRcdFx0ZGF0YToge1xyXG5cdFx0XHRcdFx0XHRidWlsZGluZzogX3NlbGYuZm9ybS5idWlsZGluZ05hbWUsXHJcblx0XHRcdFx0XHRcdHJvb206IF9zZWxmLmZvcm0ucm9vbU5hbWUgLy8g5b2T5YmN6YCJ5oup55qE5oi/6Ze0XHJcblx0XHRcdFx0XHR9LFxyXG5cdFx0XHRcdFx0aGVhZGVyOiB7XHJcblx0XHRcdFx0XHRcdCdjb250ZW50LXR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJyxcclxuXHRcdFx0XHRcdFx0XCJ4LXRva2VuXCI6IGFwcC5nbG9iYWxEYXRhLnRva2VuIHx8ICcnXHJcblx0XHRcdFx0XHR9LFxyXG5cdFx0XHRcdFx0c3VjY2VzczogKHJlcykgPT4ge1xyXG5cdFx0XHRcdFx0XHRjb25zb2xlLmxvZygn6I635Y+W5qCP5L2N57yW5Y+3OicsIHJlcyk7XHJcblxyXG5cdFx0XHRcdFx0XHRpZiAocmVzLmRhdGEgJiYgcmVzLmRhdGEuY29kZSA9PT0gMCAmJiByZXMuZGF0YS5kYXRhICYmIHJlcy5kYXRhLmRhdGEubGVuZ3RoID4gMCkge1xyXG5cdFx0XHRcdFx0XHRcdC8vIOabtOaWsOagj+S9jeWIl+ihqFxyXG5cdFx0XHRcdFx0XHRcdF9zZWxmLkZpZWxkbnVtYmVyID0gcmVzLmRhdGEuZGF0YS5tYXAoaXRlbSA9PiBpdGVtLm5hbWUgfHwgaXRlbS5wZW5fbmFtZSB8fCBpdGVtLnBlbl9ubyk7XHJcblx0XHRcdFx0XHRcdFx0Ly8g5aaC5p6c6KGo5Y2V5Lit5rKh5pyJ6YCJ5oup5qCP5L2N77yM5bCd6K+V5L2/55So5YWo5bGA5pWw5o2u5oiW5pys5Zyw5a2Y5YKoXHJcblx0XHRcdFx0XHRcdFx0aWYgKCFfc2VsZi5mb3JtLnBlbk5vKSB7XHJcblx0XHRcdFx0XHRcdFx0XHRfc2VsZi5mb3JtLnBlbk5vID0gYXBwLmdsb2JhbERhdGEucGVuIHx8IHVuaS5nZXRTdG9yYWdlU3luYygncGVuJykgfHwgJyc7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0XHRcdGNvbnNvbGUuZXJyb3IoJ2dldF9wZW7lk43lupTmlbDmja7ml6DmlYjmiJbkuLrnqbo6JywgcmVzLmRhdGEpO1xyXG5cdFx0XHRcdFx0XHRcdC8vIOS9v+eUqOm7mOiupOagj+S9jeWIl+ihqFxyXG5cdFx0XHRcdFx0XHRcdF9zZWxmLkZpZWxkbnVtYmVyID0gW107XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH0sXHJcblx0XHRcdFx0XHRmYWlsOiAoZXJyKSA9PiB7XHJcblx0XHRcdFx0XHRcdGNvbnNvbGUuZXJyb3IoJ+iOt+WPluagj+S9jeWIl+ihqOWksei0pTonLCBlcnIpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHR9LFxyXG5cclxuXHRcdFx0bG9hZEZyb21TdG9yYWdlKCkge1xyXG5cdFx0XHQgICAgY29uc3QgX3NlbGYgPSB0aGlzO1xyXG5cdFx0XHQgICAgY29uc3QgYXBwID0gZ2V0QXBwKCk7XHJcblx0XHRcdCAgICBjb25zdCBnbG9iYWxVc2VySW5mbyA9IGFwcC5nbG9iYWxEYXRhLnVzZXJJbmZvO1xyXG5cdFx0XHQgICAgX3NlbGYudXNlciA9IGdsb2JhbFVzZXJJbmZvO1xyXG5cdFx0XHQgICAgX3NlbGYuZm9ybS5idWlsZGluZ05hbWUgPSBhcHAuZ2xvYmFsRGF0YS5idWlsZGluZztcclxuXHRcdFx0ICAgIF9zZWxmLmZvcm0ucm9vbU5hbWUgPSBhcHAuZ2xvYmFsRGF0YS5yb29tO1xyXG5cdFx0XHQgICAgX3NlbGYuZm9ybS5wZW5ObyA9IGFwcC5nbG9iYWxEYXRhLnBlbjtcclxuXHRcdFx0ICAgIGNvbnNvbGUubG9nKCfku47lrZjlgqjliqDovb3nmoTooajljZVidWlsZGluZ05hbWU6JywgX3NlbGYuZm9ybS5idWlsZGluZ05hbWUpO1xyXG5cdFx0XHQgICAgY29uc29sZS5sb2coJ+S7juWtmOWCqOWKoOi9veeahOihqOWNlXJvb21OYW1lOicsIF9zZWxmLmZvcm0ucm9vbU5hbWUpO1xyXG5cdFx0XHQgICAgY29uc29sZS5sb2coJ+S7juWtmOWCqOWKoOi9veeahOihqOWNlXBlbk5vOicsIF9zZWxmLmZvcm0ucGVuTm8pO1xyXG5cdFx0XHR9LFxyXG5cclxuXHRcdFx0Ly8g6YCJ5oup5Zmo5pa55rOVXHJcblx0XHRcdG9uQnVpbGRpbmdDaGFuZ2UoZSkge1xyXG5cdFx0XHQgIGNvbnN0IHNlbGVjdGVkVmFsdWUgPSB0aGlzLmJ1aWxkaW5nTGlzdFtlLmRldGFpbC52YWx1ZV07XHJcblx0XHRcdCAgdGhpcy5mb3JtLmJ1aWxkaW5nTmFtZSA9IHNlbGVjdGVkVmFsdWU7XHJcblx0XHRcdCAgY29uc29sZS5sb2coJ+agi+iIjemAieaLqeW3suabtOaWsDonLCB0aGlzLmZvcm0uYnVpbGRpbmdOYW1lKTtcclxuXHRcdFx0ICAvLyDkv53lrZjliLBsb2dpbuS4reWumuS5ieeahOWFqOWxgOWPmOmHj1xyXG5cdFx0XHQgIGdldEFwcCgpLmdsb2JhbERhdGEuYnVpbGRpbmcgPSBzZWxlY3RlZFZhbHVlO1xyXG5cdFx0XHQgIC8vIOinpuWPkeWFqOWxgOS6i+S7tumAmuefpeiuvue9ruabtOaWsFxyXG5cdFx0XHQgIHVuaS4kZW1pdCgnc2V0dGluZ3NVcGRhdGVkJyk7XHJcblx0XHRcdCAgLy8g6I635Y+W5a+55bqU5qCL6IiN55qE5oi/6Ze05YiX6KGoXHJcblx0XHRcdCAgdGhpcy5mZXRjaFJvb21MaXN0KCk7XHJcblx0XHRcdH0sXHJcblx0XHRcdFxyXG5cdFx0XHRvblJvb21DaGFuZ2UoZSkge1xyXG5cdFx0XHQgIGNvbnN0IHNlbGVjdGVkVmFsdWUgPSB0aGlzLnJvb21MaXN0W2UuZGV0YWlsLnZhbHVlXTtcclxuXHRcdFx0ICB0aGlzLmZvcm0ucm9vbU5hbWUgPSBzZWxlY3RlZFZhbHVlO1xyXG5cdFx0XHQgIGNvbnNvbGUubG9nKCfmiL/pl7TpgInmi6nlt7Lmm7TmlrA6JywgdGhpcy5mb3JtLnJvb21OYW1lKTtcclxuXHRcdFx0ICAvLyDkv53lrZjliLBsb2dpbuS4reWumuS5ieeahOWFqOWxgOWPmOmHj1xyXG5cdFx0XHQgIGdldEFwcCgpLmdsb2JhbERhdGEucm9vbSA9IHNlbGVjdGVkVmFsdWU7XHJcblx0XHRcdCAgLy8g6Kem5Y+R5YWo5bGA5LqL5Lu26YCa55+l6K6+572u5pu05pawXHJcblx0XHRcdCAgdW5pLiRlbWl0KCdzZXR0aW5nc1VwZGF0ZWQnKTtcclxuXHRcdFx0ICAvLyDojrflj5blr7nlupTmiL/pl7TnmoTmoI/kvY3liJfooahcclxuXHRcdFx0ICB0aGlzLmZldGNoUGVuTGlzdCgpO1xyXG5cdFx0XHR9LFxyXG5cdFx0XHRcclxuXHRcdFx0b25GaWVsZENoYW5nZShlKSB7XHJcblx0XHRcdCAgY29uc3Qgc2VsZWN0ZWRWYWx1ZSA9IHRoaXMuRmllbGRudW1iZXJbZS5kZXRhaWwudmFsdWVdO1xyXG5cdFx0XHQgIHRoaXMuZm9ybS5wZW5ObyA9IHNlbGVjdGVkVmFsdWU7XHJcblx0XHRcdCAgY29uc29sZS5sb2coJ+agj+S9jemAieaLqeW3suabtOaWsDonLCB0aGlzLmZvcm0ucGVuTm8pO1xyXG5cdFx0XHQgIC8vIOS/neWtmOWIsGxvZ2lu5Lit5a6a5LmJ55qE5YWo5bGA5Y+Y6YePXHJcblx0XHRcdCAgZ2V0QXBwKCkuZ2xvYmFsRGF0YS5wZW4gPSBzZWxlY3RlZFZhbHVlO1xyXG5cdFx0XHQgIC8vIOinpuWPkeWFqOWxgOS6i+S7tumAmuefpeiuvue9ruabtOaWsFxyXG5cdFx0XHQgIHVuaS4kZW1pdCgnc2V0dGluZ3NVcGRhdGVkJyk7XHJcblx0XHRcdH0sXHJcblxyXG5cdFx0XHQvLyDkv53lrZjorr7nva7liLBBUElcclxuXHRcdFx0c2F2ZVNldHRpbmdzKCkge1xyXG5cdFx0XHRcdGlmICghdGhpcy5mb3JtLmJ1aWxkaW5nTmFtZSB8fCAhdGhpcy5mb3JtLnJvb21OYW1lIHx8ICF0aGlzLmZvcm0ucGVuTm8pIHtcclxuXHRcdFx0XHRcdHJldHVybiB1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHRcdFx0dGl0bGU6ICfor7fpgInmi6nlrozmlbTnmoTmoIvoiI3jgIHmiL/pl7TlkozmoI/kvY3kv6Hmga8nLFxyXG5cdFx0XHRcdFx0XHRpY29uOiAnbm9uZSdcclxuXHRcdFx0XHRcdH0pO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0Y29uc3QgYXBwID0gZ2V0QXBwKCk7XHJcblx0XHRcdFx0Ly8g6I635Y+W55So5oi3SUTvvIjkvJjlhYjku47lhajlsYDmlbDmja7vvIzlhbbmrKHku47mnKzlnLDlrZjlgqjvvIlcclxuXHRcdFx0XHRjb25zdCB1c2VySWQgPSBhcHAuZ2xvYmFsRGF0YS51c2VySW5mbz8uSUQgfHwgdW5pLmdldFN0b3JhZ2VTeW5jKCd1c2VyX2luZm8nKT8uSUQgfHwgJyc7XHJcblx0XHRcdFx0Y29uc3QgdXNlcm5hbWUgPSBhcHAuZ2xvYmFsRGF0YS51c2VySW5mbz8udXNlcm5hbWUgfHwgdW5pLmdldFN0b3JhZ2VTeW5jKCd1c2VyX2luZm8nKT8udXNlcm5hbWUgfHwgJyc7XHJcblxyXG5cdFx0XHRcdGlmICghdXNlcklkKSB7XHJcblx0XHRcdFx0XHRjb25zb2xlLmVycm9yKCfnlKjmiLdJROS4jeWtmOWcqO+8jOaXoOazleS/neWtmOiuvue9ricpO1xyXG5cdFx0XHRcdFx0cmV0dXJuIHVuaS5zaG93VG9hc3Qoe1xyXG5cdFx0XHRcdFx0XHR0aXRsZTogJ+ivt+WFiOeZu+W9lScsXHJcblx0XHRcdFx0XHRcdGljb246ICdub25lJ1xyXG5cdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0fTtcclxuXHRcdFx0XHR1bmkuc2hvd0xvYWRpbmcoe1xyXG5cdFx0XHRcdFx0dGl0bGU6ICfkv53lrZjkuK0uLi4nLFxyXG5cdFx0XHRcdFx0bWFzazogdHJ1ZVxyXG5cdFx0XHRcdH0pO1xyXG5cclxuXHRcdFx0XHRjb25zdCBzdWJtaXREYXRhID0ge1xyXG5cdFx0XHRcdFx0dXNlcm5hbWU6IHVzZXJuYW1lLFxyXG5cdFx0XHRcdFx0dXNlcmlkOiB1c2VySWQsXHJcblx0XHRcdFx0XHRidWlsZGluZzogdGhpcy5mb3JtLmJ1aWxkaW5nTmFtZSxcclxuXHRcdFx0XHRcdHJvb206IHRoaXMuZm9ybS5yb29tTmFtZSxcclxuXHRcdFx0XHRcdHBlbjogdGhpcy5mb3JtLnBlbk5vXHJcblx0XHRcdFx0fTtcclxuXHRcdFx0XHRjb25zb2xlLmxvZygn5o+Q5Lqk55qE5pWw5o2uOicsIHN1Ym1pdERhdGEpO1xyXG5cclxuXHRcdFx0XHQvLyDlj5HpgIHor7fmsYLliLBBUElcclxuXHRcdFx0XHR1bmkucmVxdWVzdCh7XHJcblx0XHRcdFx0XHR1cmw6IEFQSS5wb3N0VXNlclNldHVwLFxyXG5cdFx0XHRcdFx0bWV0aG9kOiAnUE9TVCcsXHJcblx0XHRcdFx0XHRkYXRhOiBzdWJtaXREYXRhLFxyXG5cdFx0XHRcdFx0aGVhZGVyOiB7XHJcblx0XHRcdFx0XHRcdCdjb250ZW50LXR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXHJcblx0XHRcdFx0XHRcdFwieC10b2tlblwiOiBhcHAuZ2xvYmFsRGF0YS50b2tlbiB8fCB1bmkuZ2V0U3RvcmFnZVN5bmMoJ3Rva2VuJykgfHwgJydcclxuXHRcdFx0XHRcdH0sXHJcblx0XHRcdFx0XHR0aW1lb3V0OiAxMDAwMCwgLy8g6K6+572uMTDnp5LotoXml7ZcclxuXHRcdFx0XHRcdHN1Y2Nlc3M6IChyZXMpID0+IHtcclxuXHRcdFx0XHRcdFx0aWYgKHJlcy5kYXRhLmNvZGUgPT09IDApIHtcclxuXHRcdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHRcdFx0XHRcdHRpdGxlOiAn5L+d5a2Y5oiQ5YqfJyxcclxuXHRcdFx0XHRcdFx0XHRcdGljb246ICdzdWNjZXNzJyxcclxuXHRcdFx0XHRcdFx0XHRcdGR1cmF0aW9uOiAzMDAwIFxyXG5cdFx0XHRcdFx0XHRcdH0pO1xyXG5cdFx0XHRcdFx0XHRcdC8vIOabtOaWsOWFqOWxgOaVsOaNrlxyXG5cdFx0XHRcdFx0XHRcdGFwcC5nbG9iYWxEYXRhLmJ1aWxkaW5nID0gc3VibWl0RGF0YS5idWlsZGluZztcclxuXHRcdFx0XHRcdFx0XHRhcHAuZ2xvYmFsRGF0YS5yb29tID0gc3VibWl0RGF0YS5yb29tO1xyXG5cdFx0XHRcdFx0XHRcdGFwcC5nbG9iYWxEYXRhLnBlbiA9IHN1Ym1pdERhdGEucGVuO1xyXG5cdFx0XHRcdFx0XHRcdC8vIOabtOaWsOacrOWcsOWtmOWCqFxyXG5cdFx0XHRcdFx0XHRcdHVuaS5zZXRTdG9yYWdlU3luYygnYnVpbGRpbmcnLCBzdWJtaXREYXRhLmJ1aWxkaW5nKTtcclxuXHRcdFx0XHRcdFx0XHR1bmkuc2V0U3RvcmFnZVN5bmMoJ3Jvb20nLCBzdWJtaXREYXRhLnJvb20pO1xyXG5cdFx0XHRcdFx0XHRcdHVuaS5zZXRTdG9yYWdlU3luYygncGVuJywgc3VibWl0RGF0YS5wZW4pO1xyXG5cdFx0XHRcdFx0XHRcdC8vIOinpuWPkeiuvue9ruabtOaWsOS6i+S7tlxyXG5cdFx0XHRcdFx0XHRcdHVuaS4kZW1pdCgnc2V0dGluZ3NVcGRhdGVkJywge1xyXG5cdFx0XHRcdFx0XHRcdFx0YnVpbGRpbmc6IHN1Ym1pdERhdGEuYnVpbGRpbmcsXHJcblx0XHRcdFx0XHRcdFx0XHRyb29tOiBzdWJtaXREYXRhLnJvb20sXHJcblx0XHRcdFx0XHRcdFx0XHRwZW46IHN1Ym1pdERhdGEucGVuXHJcblx0XHRcdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0XHRcdFx0Y29uc29sZS5lcnJvcign5L+d5a2Y6K6+572u5aSx6LSlOicsIHJlcy5kYXRhKTtcclxuXHRcdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHRcdFx0XHRcdHRpdGxlOiByZXMuZGF0YT8ubXNnIHx8ICfkv53lrZjlpLHotKXvvIzor7fnqI3lkI7ph43or5UnLFxyXG5cdFx0XHRcdFx0XHRcdFx0aWNvbjogJ25vbmUnXHJcblx0XHRcdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH0sXHJcblx0XHRcdFx0XHRjb21wbGV0ZTogKCkgPT4ge1xyXG5cdFx0XHRcdFx0XHR1bmkuaGlkZUxvYWRpbmcoKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0fSxcclxuXHJcblx0XHRcdGdvV2VMb2dpbihjb2RlKSB7XHJcblx0XHRcdFx0Y29uc3QgX3NlbGYgPSB0aGlzO1xyXG5cdFx0XHRcdF9zZWxmLiRhcGkud2Vsb2dpbih7XHJcblx0XHRcdFx0XHRjb2RlXHJcblx0XHRcdFx0fSkudGhlbigocmVzKSA9PiB7XHJcblx0XHRcdFx0XHRnZXRBcHAoKS5nbG9iYWxEYXRhLnRva2VuID0gcmVzLmRhdGEudG9rZW5cclxuXHRcdFx0XHRcdGdldEFwcCgpLmdsb2JhbERhdGEuZXF1aXBtZW50TWFuYWdlID0gcmVzLmRhdGEuZXF1aXBtZW50X21hbmFnZVxyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHQvLyDkv53lrZjliLDmnKzlnLDlrZjlgqhcclxuXHRcdFx0XHRcdHVuaS5zZXRTdG9yYWdlU3luYygnZXF1aXBtZW50X3Rva2VuJywgcmVzLmRhdGEudG9rZW4pXHJcblx0XHRcdFx0XHR1bmkuc2V0U3RvcmFnZVN5bmMoJ2VxdWlwbWVudF9vcGVuaWQnLCByZXMuZGF0YS5vcGVuaWQpXHJcblx0XHRcdFx0XHR1bmkuc2V0U3RvcmFnZVN5bmMoJ2VxdWlwbWVudF9tYW5hZ2UnLCByZXMuZGF0YS5lcXVpcG1lbnRfbWFuYWdlKVxyXG5cclxuXHRcdFx0XHRcdF9zZWxmLmxvZ2luID0gdHJ1ZVxyXG5cdFx0XHRcdFx0Ly8g55m75b2V5oiQ5Yqf5ZCO5LuO5YWo5bGA54q25oCB6I635Y+W55So5oi35L+h5oGvXHJcblx0XHRcdFx0XHRfc2VsZi51c2VyID0gZ2V0QXBwKCkuZ2xvYmFsRGF0YS51c2VySW5mbyB8fCB7fTtcclxuXHRcdFx0XHRcdF9zZWxmLmF2YXRhciA9IF9zZWxmLnVzZXIuYXZhdGFyIHx8ICcnO1xyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHQvLyDnmbvlvZXmiJDlip/lkI7liLfmlrDmlbDmja5cclxuXHRcdFx0XHRcdF9zZWxmLmZldGNoQnVpbGRpbmdMaXN0KCk7XHJcblx0XHRcdFx0XHRfc2VsZi5mZXRjaFVzZXJJbmZvKCk7XHJcblx0XHRcdFx0fSkuY2F0Y2goKGVycikgPT4ge1xyXG5cdFx0XHRcdFx0Y29uc29sZS5lcnJvcign55m75b2V5aSx6LSlOicsIGVycik7XHJcblx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHRcdFx0dGl0bGU6ICfnmbvlvZXlpLHotKXvvIzor7fnqI3lkI7ph43or5UnLFxyXG5cdFx0XHRcdFx0XHRpY29uOiAnbm9uZSdcclxuXHRcdFx0XHRcdH0pO1xyXG5cdFx0XHRcdH0pXHJcblx0XHRcdH0sXHJcblx0XHRcdGdvTG9naW4oKSB7XHJcblx0XHRcdGNvbnN0IF9zZWxmID0gdGhpcztcclxuXHRcdFx0dW5pLm5hdmlnYXRlVG8oe1xyXG5cdFx0XHRcdHVybDogJy9wYWdlcy9sb2dpbi9sb2dpbicsXHJcblx0XHRcdFx0ZXZlbnRzOiB7XHJcblx0XHRcdFx0XHQvLyDkuLrmjIflrprkuovku7bmt7vliqDkuIDkuKrnm5HlkKzlmajvvIzojrflj5booqvmiZPlvIDpobXpnaLkvKDpgIHliLDlvZPliY3pobXpnaLnmoTmlbDmja5cclxuXHRcdFx0XHRcdGlzTG9naW5Gcm9tTG9naW46IGZ1bmN0aW9uKGRhdGEpIHtcclxuXHRcdFx0XHRcdFx0aWYgKGRhdGEgJiYgZGF0YS5pc0xvZ2luKSB7XHJcblx0XHRcdFx0XHRcdFx0X3NlbGYuaXNMb2dnZWRJbiA9IHRydWVcclxuXHRcdFx0XHRcdFx0XHQvLyDnmbvlvZXmiJDlip/lkI7ku47lhajlsYDnirbmgIHojrflj5bnlKjmiLfkv6Hmga9cclxuXHRcdFx0XHRcdFx0XHRfc2VsZi51c2VyID0gZ2V0QXBwKCkuZ2xvYmFsRGF0YS51c2VySW5mbyB8fCB7fTtcclxuXHRcdFx0XHRcdFx0XHRfc2VsZi5hdmF0YXIgPSBfc2VsZi51c2VyLmF2YXRhciB8fCAnJztcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSlcclxuXHRcdFx0fSxcclxuXHRcdFx0Ly8g5re75Yqg6YCA5Ye655m75b2V5pa55rOVXHJcblx0XHRcdGxvZ291dCgpIHtcclxuXHRcdFx0ICB0cnkge1xyXG5cdFx0XHQgICAgLy8g5riF6Zmk5YWo5bGA5pWw5o2uXHJcblx0XHRcdCAgICBjb25zdCBhcHAgPSBnZXRBcHAoKTtcclxuXHRcdFx0ICAgIGFwcC5nbG9iYWxEYXRhLklEID0gJyc7XHJcblx0XHRcdCAgICBhcHAuZ2xvYmFsRGF0YS50b2tlbiA9ICcnO1xyXG5cdFx0XHQgICAgYXBwLmdsb2JhbERhdGEudXNlckluZm8gPSB7fTtcclxuXHRcdFx0ICAgIGFwcC5nbG9iYWxEYXRhLmlzTG9nZ2VkSW4gPSBmYWxzZTtcclxuXHRcdFx0ICAgIGFwcC5nbG9iYWxEYXRhLmV4cGlyZUF0ID0gJyc7XHJcblx0XHRcdCAgICBhcHAuZ2xvYmFsRGF0YS5idWlsZGluZyA9ICcnO1xyXG5cdFx0XHQgICAgYXBwLmdsb2JhbERhdGEucm9vbSA9ICcnO1xyXG5cdFx0XHQgICAgYXBwLmdsb2JhbERhdGEucGVuID0gJyc7XHJcblx0XHRcdCAgICBhcHAuZ2xvYmFsRGF0YS5idWlsZGluZ05hbWUgPSAnJztcclxuXHRcdFx0ICAgIGFwcC5nbG9iYWxEYXRhLnJvb21OYW1lID0gJyc7XHJcblx0XHRcdCAgICBhcHAuZ2xvYmFsRGF0YS5wZW5ObyA9ICcnO1xyXG5cdFx0XHQgICAgXHJcblx0XHRcdCAgICAvLyDmuIXpmaTmnKzlnLDlrZjlgqhcclxuXHRcdFx0ICAgIHVuaS5yZW1vdmVTdG9yYWdlU3luYygnZXF1aXBtZW50X3Rva2VuJyk7XHJcblx0XHRcdCAgICB1bmkucmVtb3ZlU3RvcmFnZVN5bmMoJ3Rva2VuX2V4cGlyZV90aW1lJyk7XHJcblx0XHRcdCAgICB1bmkucmVtb3ZlU3RvcmFnZVN5bmMoJ3VzZXJfaW5mbycpO1xyXG5cdFx0XHQgICAgdW5pLnJlbW92ZVN0b3JhZ2VTeW5jKCdidWlsZGluZycpO1xyXG5cdFx0XHQgICAgdW5pLnJlbW92ZVN0b3JhZ2VTeW5jKCdyb29tJyk7XHJcblx0XHRcdCAgICB1bmkucmVtb3ZlU3RvcmFnZVN5bmMoJ3BlbicpO1xyXG5cdFx0XHQgICAgXHJcblx0XHRcdCAgICBjb25zb2xlLmxvZygn6YCA5Ye655m75b2V5oiQ5Yqf77yM5bey5riF6Zmk5omA5pyJ55m75b2V5L+h5oGvJyk7XHJcblx0XHRcdCAgICBcclxuXHRcdFx0ICAgIC8vIOmHjee9rumhtemdoueKtuaAgVxyXG5cdFx0XHQgICAgdGhpcy5sb2dpbiA9IGZhbHNlO1xyXG5cdFx0XHQgICAgdGhpcy51c2VyID0geyB1c2VybmFtZTogJycsIElEOiAnJyB9O1xyXG5cdFx0XHQgICAgdGhpcy5mb3JtID0ge1xyXG5cdFx0XHQgICAgICBidWlsZGluZ05hbWU6ICcnLFxyXG5cdFx0XHQgICAgICByb29tTmFtZTogJycsXHJcblx0XHRcdCAgICAgIHBlbk5vOiAnJ1xyXG5cdFx0XHQgICAgfTtcclxuXHRcdFx0ICAgIFxyXG5cdFx0XHQgICAgLy8g6Lez6L2s5Yiw55m75b2V6aG16Z2iXHJcblx0XHRcdCAgICB1bmkucmVkaXJlY3RUbyh7XHJcblx0XHRcdCAgICAgIHVybDogJy9wYWdlcy9sb2dpbi9sb2dpbicsXHJcblx0XHRcdCAgICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uKCkge1xyXG5cdFx0XHQgICAgICAgIGNvbnNvbGUubG9nKCfot7PovazliLDnmbvlvZXpobXpnaLmiJDlip8nKTtcclxuXHRcdFx0ICAgICAgfVxyXG5cdFx0XHQgICAgfSk7XHJcblx0XHRcdCAgfSBjYXRjaCAoZSkge1xyXG5cdFx0XHQgICAgY29uc29sZS5lcnJvcign6YCA5Ye655m75b2V6L+H56iL5Lit5Y+R55Sf6ZSZ6K+vOicsIGUpO1xyXG5cdFx0XHQgICAgdW5pLnNob3dUb2FzdCh7XHJcblx0XHRcdCAgICAgIHRpdGxlOiAn6YCA5Ye655m75b2V5aSx6LSl77yM6K+36YeN6K+VJyxcclxuXHRcdFx0ICAgICAgaWNvbjogJ25vbmUnXHJcblx0XHRcdCAgICB9KTtcclxuXHRcdFx0ICB9XHJcblx0XHRcdH0sXHJcblx0XHRcdGNsZWFyU3RvcmFnZSgpIHtcclxuXHRcdFx0Y29uc3QgX3NlbGYgPSB0aGlzO1xyXG5cdFx0XHR0cnkge1xyXG5cdFx0XHRcdF9zZWxmLmxvZ2luID0gZmFsc2VcclxuXHRcdFx0XHRjb25zdCBhcHAgPSBnZXRBcHAoKTtcclxuXHRcdFx0XHQvLyDmuIXnqbrlhajlsYDmlbDmja5cclxuXHRcdFx0XHRhcHAuZ2xvYmFsRGF0YS50b2tlbiA9ICcnO1xyXG5cdFx0XHRcdGFwcC5nbG9iYWxEYXRhLmVxdWlwbWVudE1hbmFnZSA9IDA7XHJcblx0XHRcdFx0YXBwLmdsb2JhbERhdGEudXNlckluZm8gPSB7fTtcclxuXHRcdFx0XHRhcHAuZ2xvYmFsRGF0YS5idWlsZGluZyA9ICcnO1xyXG5cdFx0XHRcdGFwcC5nbG9iYWxEYXRhLnJvb20gPSAnJztcclxuXHRcdFx0XHRhcHAuZ2xvYmFsRGF0YS5wZW4gPSAnJztcclxuXHRcdFx0XHRhcHAuZ2xvYmFsRGF0YS5idWlsZGluZ05hbWUgPSAnJztcclxuXHRcdFx0XHRhcHAuZ2xvYmFsRGF0YS5yb29tTmFtZSA9ICcnO1xyXG5cdFx0XHRcdGFwcC5nbG9iYWxEYXRhLnBlbk5vID0gJyc7XHJcblx0XHRcdFx0YXBwLmdsb2JhbERhdGEuaXNMb2dnZWRJbiA9IGZhbHNlO1xyXG5cclxuXHRcdFx0XHQvLyDmuIXnqbrmnKzlnLDlrZjlgqhcclxuXHRcdFx0XHR1bmkuc2V0U3RvcmFnZVN5bmMoJ2VxdWlwbWVudF90b2tlbicsICcnKTtcclxuXHRcdFx0XHR1bmkuc2V0U3RvcmFnZVN5bmMoJ2VxdWlwbWVudF9vcGVuaWQnLCAnJyk7XHJcblx0XHRcdFx0dW5pLnNldFN0b3JhZ2VTeW5jKCdlcXVpcG1lbnRfbWFuYWdlJywgJycpO1xyXG5cdFx0XHRcdHVuaS5zZXRTdG9yYWdlU3luYygndXNlcl9pbmZvJywge30pO1xyXG5cdFx0XHRcdHVuaS5zZXRTdG9yYWdlU3luYygnYnVpbGRpbmcnLCAnJyk7XHJcblx0XHRcdFx0dW5pLnNldFN0b3JhZ2VTeW5jKCdyb29tJywgJycpO1xyXG5cdFx0XHRcdHVuaS5zZXRTdG9yYWdlU3luYygncGVuJywgJycpO1xyXG5cdFx0XHRcdHVuaS5zZXRTdG9yYWdlU3luYygnYnVpbGRpbmdOYW1lJywgJycpO1xyXG5cdFx0XHRcdHVuaS5zZXRTdG9yYWdlU3luYygncm9vbU5hbWUnLCAnJyk7XHJcblx0XHRcdFx0dW5pLnNldFN0b3JhZ2VTeW5jKCdwZW5ObycsICcnKTtcclxuXHJcblx0XHRcdFx0dW5pLiRlbWl0KCdsb2dpblN0YXR1c0V2ZW50Jywge1xyXG5cdFx0XHRcdFx0aXNMb2dpbjogZmFsc2VcclxuXHRcdFx0XHR9KVxyXG5cclxuXHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHRcdHRpdGxlOiAn6YCA5Ye655m75b2V5oiQ5YqfJyxcclxuXHRcdFx0XHRcdGljb246ICdzdWNjZXNzJ1xyXG5cdFx0XHRcdH0pXHJcblxyXG5cdFx0XHRcdC8vIOebtOaOpei3s+i9rOWIsOeZu+W9lemhtemdou+8jOmBv+WFjeW7tui/n+WvvOiHtOeahOmHjeWkjeWvvOiIqlxyXG5cdFx0XHRcdHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XHJcblx0XHRcdFx0XHR1bmkucmVkaXJlY3RUbyh7XHJcblx0XHRcdFx0XHRcdHVybDogJy9wYWdlcy9sb2dpbi9sb2dpbidcclxuXHRcdFx0XHRcdH0pXHJcblx0XHRcdFx0fSwgNTAwKTtcclxuXHRcdFx0fSBjYXRjaCAoZSkge1xyXG5cdFx0XHRcdGNvbnNvbGUuZXJyb3IoJ+a4hemZpOWtmOWCqOWksei0pTonLCBlKTtcclxuXHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHRcdHRpdGxlOiAn6YCA5Ye65aSx6LSl77yM6K+356iN5ZCO5YaN6K+VJyxcclxuXHRcdFx0XHRcdGljb246ICdub25lJ1xyXG5cdFx0XHRcdH0pXHJcblx0XHRcdH1cclxuXHRcdH0sXHJcblx0XHRcdGNhbGxNYW5hZ2UoKSB7XHJcblx0XHRcdGNvbnN0IF9zZWxmID0gdGhpcztcclxuXHRcdFx0bGV0IG1hbmFnZVBob25lID0gX3NlbGYubWFuYWdlUGhvbmVcclxuXHRcdFx0aWYgKG1hbmFnZVBob25lID09ICcnKSB7XHJcblx0XHRcdFx0dW5pLnNob3dUb2FzdCh7XHJcblx0XHRcdFx0XHR0aXRsZTogJ+aaguaXoOeuoeeQhuWRmOiBlOezu+aWueW8jycsXHJcblx0XHRcdFx0XHRpY29uOiAnbm9uZSdcclxuXHRcdFx0XHR9KVxyXG5cdFx0XHRcdHJldHVybjtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0dW5pLm1ha2VQaG9uZUNhbGwoe1xyXG5cdFx0XHRcdHBob25lTnVtYmVyOiBtYW5hZ2VQaG9uZVxyXG5cdFx0XHR9KVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG48L3NjcmlwdD5cclxuXHJcbjxzdHlsZSBsYW5nPVwic2Nzc1wiPlxyXG5cdC5jb250YWluZXIge1xyXG5cdG1pbi1oZWlnaHQ6IDEwMHZoO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XHJcblx0Ly8gcGFkZGluZy1ib3R0b206IDEyMHJweDsgLyog5aKe5Yqg5bqV6YOo5YaF6L656Led56Gu5L+d5oyJ6ZKu5Y+v6KeBICovXHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRvdmVyZmxvdzogYXV0bztcclxufVxyXG5cclxuLyog55So5oi35L+h5oGv5Y2h54mH5qC35byPICovXHJcbi51c2VyLWNhcmQge1xyXG5cdG1hcmdpbjogMjBycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogMjBycHg7XHJcblx0Ym94LXNoYWRvdzogMCA0cnB4IDIwcnB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4udXNlci1jYXJkOmhvdmVyIHtcclxuXHRib3gtc2hhZG93OiAwIDEwcnB4IDMwcnB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cnB4KTtcclxufVxyXG5cclxuLmN1LWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAzMHJweDtcclxufVxyXG5cclxuLmF2YXRhci1jb250YWluZXIge1xyXG5cdHdpZHRoOiAxMjBycHg7XHJcblx0aGVpZ2h0OiAxMDBycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcclxuXHRtYXJnaW4tcmlnaHQ6IDMwcnB4O1xyXG59XHJcblxyXG4uYXZhdGFyIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5hdmF0YXItcGxhY2Vob2xkZXIge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcclxuXHRjb2xvcjogIzk5OTtcclxuXHRmb250LXNpemU6IDYwcnB4O1xyXG59XHJcblxyXG4uY29udGVudCB7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLnVzZXJuYW1lIHtcclxuXHRmb250LXNpemU6IDM2cnB4O1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdGNvbG9yOiAjMzMzO1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcnB4O1xyXG59XHJcblxyXG4udXNlci1pZCB7XHJcblx0Zm9udC1zaXplOiAyOHJweDtcclxuXHRjb2xvcjogIzY2NjtcclxufVxyXG5cclxuLmN1LWxpc3QubWVudS1hdmF0YXI+LmN1LWl0ZW06YWZ0ZXIge1xyXG5cdGJvcmRlcjogMDtcclxufVxyXG5cclxuLyog6KGo5Y2V5Yy65Z+f5qC35byPICovXHJcbi5mb3JtLXNlY3Rpb24ge1xyXG5cdG1hcmdpbjogMHB4IDIwcnB4O1xyXG5cdHBhZGRpbmc6IDI1cnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XHJcblx0Ym9yZGVyLXJhZGl1czogMTZycHg7XHJcblx0Ym94LXNoYWRvdzogMCAycnB4IDEwcnB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XHJcbn1cclxuXHJcbi5mb3JtLWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMjVycHggMDtcclxuXHRib3JkZXItYm90dG9tOiAxcnB4IHNvbGlkICNmMGYwZjA7XHJcbn1cclxuXHJcbi5mb3JtLWl0ZW06bGFzdC1jaGlsZCB7XHJcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcclxufVxyXG5cclxuLmxhYmVsIHtcclxuXHRmb250LXNpemU6IDI4cnB4O1xyXG5cdGNvbG9yOiAjMzMzO1xyXG59XHJcblxyXG4udmFsdWUge1xyXG5cdGZvbnQtc2l6ZTogMjhycHg7XHJcblx0Y29sb3I6ICM2NjY7XHJcbn1cclxuXHJcbi8qIOS/neWtmOaMiemSruagt+W8jyAqL1xyXG4uc2F2ZS1idG4tY29udGFpbmVyIHtcclxuXHRwYWRkaW5nOiAyMHJweDtcclxufVxyXG5cclxuLnNhdmUtYnRuIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjMDdjMTYwO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxuXHRib3JkZXItcmFkaXVzOiA0NHJweDtcclxuXHRoZWlnaHQ6IDg4cnB4O1xyXG5cdGxpbmUtaGVpZ2h0OiA4OHJweDtcclxuXHRmb250LXNpemU6IDMycnB4O1xyXG5cdG1hcmdpbjogMzBycHggMjBycHg7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxuXHR3aWR0aDogY2FsYygxMDAlIC0gNDBycHgpO1xyXG59XHJcblxyXG4uc2F2ZS1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICMwNmFkNTY7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgxLjAyKTtcclxufVxyXG5cclxuLnNhdmUtYnRuOmFjdGl2ZSB7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgwLjk4KTtcclxufVxyXG5cclxuLyog5Yqf6IO95YiX6KGo5qC35byPICovXHJcbi5mdW5jdGlvbi1saXN0IHtcclxuXHRtYXJnaW46IDAgMjBycHggMjBycHg7IC8qIOWHj+Wwj+i+uei3nSAqL1xyXG5cdGJvcmRlci1yYWRpdXM6IDE2cnB4O1xyXG5cdGJveC1zaGFkb3c6IDAgMnJweCAxMHJweCByZ2JhKDAsIDAsIDAsIDAuMDMpO1xyXG59XHJcblxyXG4uY3UtbGlzdC5jYXJkLW1lbnUgLmN1LWl0ZW0ge1xyXG5cdHBhZGRpbmc6IDIwcnB4OyAvKiDlh4/lsI/lhoXovrnot53pgILlupTlsI/lsY/luZUgKi9cclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4uY3UtbGlzdC5jYXJkLW1lbnUgLmN1LWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XHJcbn1cclxuXHJcbi8qIOmAgOWHuueZu+W9leaMiemSruagt+W8jyAqL1xyXG4ubG9nb3V0LWNvbnRhaW5lciB7XHJcblx0cG9zaXRpb246IGZpeGVkO1xyXG5cdGJvdHRvbTogMTIwcnB4OyAvKiDlop7liqDlupXpg6jot53nprvpgb/lvIDlr7zoiKrmoI8gKi9cclxuXHRsZWZ0OiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHBhZGRpbmc6IDAgMjBycHg7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxuLmxvZ291dC1idG4ge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICNlNjQzNDA7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG5cdGJvcmRlci1yYWRpdXM6IDM1cnB4O1xyXG5cdGhlaWdodDogNzBycHg7IC8qIOWHj+Wwj+aMiemSrumrmOW6piAqL1xyXG5cdGxpbmUtaGVpZ2h0OiA3MHJweDtcclxuXHRmb250LXNpemU6IDI2cnB4OyAvKiDlh4/lsI/mjInpkq7lrZfkvZMgKi9cclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ubG9nb3V0LWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI2Q0MzgzNTtcclxuXHR0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xyXG59XHJcblxyXG4ubG9nb3V0LWJ0bjphY3RpdmUge1xyXG5cdHRyYW5zZm9ybTogc2NhbGUoMC45OCk7XHJcbn1cclxuXHJcbi8qIOacqueZu+W9leeKtuaAgeagt+W8jyAqL1xyXG4uZW1wdHkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGhlaWdodDogMTAwdmg7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjsgLyog6Ziy5q2i5pyq55m75b2V54q25oCB5LiL5rua5YqoICovXHJcblxyXG5cdGltYWdlIHtcclxuXHRcdHdpZHRoOiAzNSU7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAzMHJweDtcclxuXHR9XHJcblxyXG5cdC50ZXh0LWdyYXkge1xyXG5cdFx0Zm9udC1zaXplOiAyOHJweDtcclxuXHRcdGNvbG9yOiAjOTk5O1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogNDBycHg7XHJcblx0fVxyXG5cclxuXHQuY3UtYnRuIHtcclxuXHRcdHdpZHRoOiA2NSU7XHJcblx0XHRib3JkZXItcmFkaXVzOiA3MHJweDtcclxuXHRcdGhlaWdodDogODBycHg7XHJcblx0XHRsaW5lLWhlaWdodDogODBycHg7XHJcblx0XHRmb250LXNpemU6IDI4cnB4O1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcclxuXHRcdGNvbG9yOiB3aGl0ZTtcclxuXHRcdHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcblx0fVxyXG5cclxuXHQuY3UtYnRuOmhvdmVyIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xyXG5cdH1cclxuXHJcblx0LmN1LWJ0bjphY3RpdmUge1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgwLjk3KTtcclxuXHR9XHJcbn1cclxuXHJcbi5ub2xvZ2luLWNvbnRlbnQge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiA4MHJweCAwOyAvKiDlh4/lsI/kuIrkuIvlhoXovrnot50gKi9cclxuXHRoZWlnaHQ6IDEwMHZoO1xyXG5cdG1hcmdpbi10b3A6IDA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcclxuXHJcblx0aW1hZ2Uge1xyXG5cdFx0d2lkdGg6IDI0MHJweDsgLyog5YeP5bCP5Zu+54mH5bC65a+4ICovXHJcblx0XHRoZWlnaHQ6IDI0MHJweDtcclxuXHRcdG1hcmdpbi1ib3R0b206IDMwcnB4OyAvKiDlh4/lsI/lm77niYfkuI7mlofmnKzpl7Tot50gKi9cclxuXHR9XHJcblxyXG5cdC50ZXh0LWdyYXkge1xyXG5cdFx0Zm9udC1zaXplOiAyOHJweDsgLyog5YeP5bCP5paH5pys5aSn5bCPICovXHJcblx0XHRtYXJnaW4tYm90dG9tOiAzMHJweDsgLyog5YeP5bCP5paH5pys5LiO5oyJ6ZKu6Ze06LedICovXHJcblx0fVxyXG5cclxuXHRidXR0b24ge1xyXG5cdFx0d2lkdGg6IDcwJTsgLyog5aKe5Yqg5oyJ6ZKu5a695bqm5Y2g5q+UICovXHJcblx0XHRtYXJnaW46IDAgYXV0bztcclxuXHRcdGZvbnQtc2l6ZTogMjhycHg7IC8qIOWHj+Wwj+aMiemSruWtl+S9kyAqL1xyXG5cdFx0aGVpZ2h0OiA3MHJweDsgLyog5YeP5bCP5oyJ6ZKu6auY5bqmICovXHJcblx0XHRsaW5lLWhlaWdodDogNzBycHg7XHJcblx0fVxyXG59XHJcbjwvc3R5bGU+XHJcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///44\n");
- /***/ }),
- /* 45 */
- /*!****************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/App.vue ***!
- \****************************************************/
- /*! no static exports found */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./App.vue?vue&type=script&lang=js& */ 46);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if([\"default\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n/* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 27);\nvar render, staticRenderFns, recyclableRender, components\nvar renderjs\n\n\n\n\n/* normalize component */\n\nvar component = Object(_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(\n _App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[\"default\"],\n render,\n staticRenderFns,\n false,\n null,\n null,\n null,\n false,\n components,\n renderjs\n)\n\ncomponent.options.__file = \"App.vue\"\n/* harmony default export */ __webpack_exports__[\"default\"] = (component.exports);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUN1RDtBQUNMOzs7QUFHbEQ7QUFDK0s7QUFDL0ssZ0JBQWdCLHlMQUFVO0FBQzFCLEVBQUUseUVBQU07QUFDUjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNlLGdGIiwiZmlsZSI6IjQ1LmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIHJlbmRlciwgc3RhdGljUmVuZGVyRm5zLCByZWN5Y2xhYmxlUmVuZGVyLCBjb21wb25lbnRzXG52YXIgcmVuZGVyanNcbmltcG9ydCBzY3JpcHQgZnJvbSBcIi4vQXBwLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIlxuZXhwb3J0ICogZnJvbSBcIi4vQXBwLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIlxuXG5cbi8qIG5vcm1hbGl6ZSBjb21wb25lbnQgKi9cbmltcG9ydCBub3JtYWxpemVyIGZyb20gXCIhLi4vLi4vLi4vLi4vYW56aHVhbmdiYW8vSEJ1aWxkZXJYL3BsdWdpbnMvdW5pYXBwLWNsaS9ub2RlX21vZHVsZXMvQGRjbG91ZGlvL3Z1ZS1jbGktcGx1Z2luLXVuaS9wYWNrYWdlcy92dWUtbG9hZGVyL2xpYi9ydW50aW1lL2NvbXBvbmVudE5vcm1hbGl6ZXIuanNcIlxudmFyIGNvbXBvbmVudCA9IG5vcm1hbGl6ZXIoXG4gIHNjcmlwdCxcbiAgcmVuZGVyLFxuICBzdGF0aWNSZW5kZXJGbnMsXG4gIGZhbHNlLFxuICBudWxsLFxuICBudWxsLFxuICBudWxsLFxuICBmYWxzZSxcbiAgY29tcG9uZW50cyxcbiAgcmVuZGVyanNcbilcblxuY29tcG9uZW50Lm9wdGlvbnMuX19maWxlID0gXCJBcHAudnVlXCJcbmV4cG9ydCBkZWZhdWx0IGNvbXBvbmVudC5leHBvcnRzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///45\n");
- /***/ }),
- /* 46 */
- /*!*****************************************************************************!*\
- !*** D:/UserData/Desktop/w/UhfChengBangZi/App.vue?vue&type=script&lang=js& ***!
- \*****************************************************************************/
- /*! no static exports found */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib!../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--7-1!../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/using-components.js!../../../../anzhuangbao/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./App.vue?vue&type=script&lang=js& */ 47);\n/* harmony import */ var _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if([\"default\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n /* harmony default export */ __webpack_exports__[\"default\"] = (_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_anzhuangbao_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a); //# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQStrQixDQUFnQix5bUJBQUcsRUFBQyIsImZpbGUiOiI0Ni5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBtb2QgZnJvbSBcIi0hLi4vLi4vLi4vLi4vYW56aHVhbmdiYW8vSEJ1aWxkZXJYL3BsdWdpbnMvdW5pYXBwLWNsaS9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuLi8uLi8uLi8uLi9hbnpodWFuZ2Jhby9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3dlYnBhY2stcHJlcHJvY2Vzcy1sb2FkZXIvaW5kZXguanM/P3JlZi0tNy0xIS4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvd2VicGFjay11bmktYXBwLWxvYWRlci91c2luZy1jb21wb25lbnRzLmpzIS4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0FwcC52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCI7IGV4cG9ydCBkZWZhdWx0IG1vZDsgZXhwb3J0ICogZnJvbSBcIi0hLi4vLi4vLi4vLi4vYW56aHVhbmdiYW8vSEJ1aWxkZXJYL3BsdWdpbnMvdW5pYXBwLWNsaS9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuLi8uLi8uLi8uLi9hbnpodWFuZ2Jhby9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3dlYnBhY2stcHJlcHJvY2Vzcy1sb2FkZXIvaW5kZXguanM/P3JlZi0tNy0xIS4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvd2VicGFjay11bmktYXBwLWxvYWRlci91c2luZy1jb21wb25lbnRzLmpzIS4uLy4uLy4uLy4uL2Fuemh1YW5nYmFvL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0FwcC52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///46\n");
- /***/ }),
- /* 47 */
- /*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--7-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/using-components.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!D:/UserData/Desktop/w/UhfChengBangZi/App.vue?vue&type=script&lang=js& ***!
- \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _default = {\n onLaunch: function onLaunch() {\n // console.log('App Launch');\n // 检查登录状态\n this.checkLoginStatus();\n },\n onShow: function onShow() {\n // console.log('App Show');\n // 每次显示应用时检查登录状态\n this.checkLoginStatus();\n },\n onHide: function onHide() {\n // console.log('App Hide');\n // 应用进入后台时释放资源\n this.releaseGlobalResources();\n },\n // 全局错误捕获\n onError: function onError(error) {\n this.handleGlobalError(error);\n },\n methods: {\n // 释放全局资源\n releaseGlobalResources: function releaseGlobalResources() {\n __f__(\"log\", 'Releasing global resources', \" at App.vue:26\");\n // 清除可能存在的定时器\n try {\n // 这里可以添加更多的资源释放逻辑\n } catch (e) {\n __f__(\"error\", 'Error releasing resources:', e, \" at App.vue:31\");\n }\n },\n // 全局错误处理\n handleGlobalError: function handleGlobalError(error) {\n var _this = this;\n __f__(\"error\", 'Global error captured:', error, \" at App.vue:37\");\n\n // 处理特定类型的错误\n if (error.message && error.message.includes('Failed to receiveTasks')) {\n // 提取实例ID\n var instanceIdMatch = error.message.match(/instance \\((\\d+)\\)/);\n var instanceId = instanceIdMatch ? instanceIdMatch[1] : 'unknown';\n\n // 记录详细错误信息\n __f__(\"error\", \"UHF plugin instance (\".concat(instanceId, \") error: Failed to receiveTasks\"), \" at App.vue:46\");\n\n // 显示错误提示\n uni.showToast({\n title: \"\\u8BBE\\u5907\\u901A\\u4FE1\\u9519\\u8BEF(\\u5B9E\\u4F8B\".concat(instanceId, \")\\uFF0C\\u8BF7\\u91CD\\u8BD5\"),\n icon: 'none',\n duration: 3000\n });\n\n // 尝试重置插件实例\n setTimeout(function () {\n _this.resetPluginInstance();\n }, 1000);\n }\n },\n // 重置应用状态\n resetAppState: function resetAppState() {\n __f__(\"log\", 'Resetting app state due to plugin error', \" at App.vue:64\");\n try {\n // 清除所有相关缓存数据\n uni.removeStorageSync('uhf_plugin_state');\n uni.removeStorageSync('equipment_token');\n\n // 重新加载当前页面\n var pages = getCurrentPages();\n if (pages && pages.length > 0) {\n var currentPage = pages[pages.length - 1];\n // 如果当前是首页,则刷新页面\n if (currentPage.route === 'pages/index/index') {\n currentPage.$vm.$destroy();\n uni.redirectTo({\n url: '/pages/index/index'\n });\n } else {\n // 否则跳转到首页\n uni.redirectTo({\n url: '/pages/index/index'\n });\n }\n } else {\n // 如果没有页面,跳转到首页\n uni.redirectTo({\n url: '/pages/index/index'\n });\n }\n } catch (e) {\n __f__(\"error\", 'Error resetting app state:', e, \" at App.vue:93\");\n }\n },\n // 检查并清理插件实例\n checkAndCleanupPluginInstance: function checkAndCleanupPluginInstance() {\n __f__(\"log\", 'Checking and cleaning up plugin instance', \" at App.vue:99\");\n try {\n // 如果存在页面实例\n var pages = getCurrentPages();\n if (pages && pages.length > 0) {\n var currentPage = pages[pages.length - 1];\n if (currentPage && currentPage.$vm) {\n // 如果页面有uhfSFHelper实例,尝试释放设备\n if (currentPage.$vm.uhfSFHelper) {\n try {\n __f__(\"log\", 'Releasing device from current page', \" at App.vue:109\");\n currentPage.$vm.releaseDevice();\n } catch (e) {\n __f__(\"error\", 'Error releasing device:', e, \" at App.vue:112\");\n }\n // 清除插件实例\n currentPage.$vm.uhfSFHelper = null;\n __f__(\"log\", 'Plugin instance cleared from current page', \" at App.vue:116\");\n }\n }\n }\n\n // 清除全局插件相关缓存\n uni.removeStorageSync('uhf_plugin_instance');\n __f__(\"log\", 'Plugin related storage cleared', \" at App.vue:123\");\n } catch (e) {\n __f__(\"error\", 'Error checking and cleaning up plugin instance:', e, \" at App.vue:125\");\n }\n },\n // Vue2风格的checkLoginStatus方法实现 - 优化版\n checkLoginStatus: function checkLoginStatus() {\n // 防止短时间内重复导航到登录页面\n if (this.isNavigatingToLogin) {\n __f__(\"log\", '正在导航到登录页面,忽略重复调用', \" at App.vue:134\");\n return;\n }\n try {\n // 1. 首先尝试从全局数据获取\n var token = this.globalData.token;\n var expireAt = this.globalData.expireAt;\n var userInfo = this.globalData.userInfo;\n\n // 2. 如果全局数据不可用,尝试从本地存储恢复\n if (!token || !expireAt) {\n token = uni.getStorageSync('equipment_token');\n expireAt = uni.getStorageSync('token_expire_time');\n userInfo = uni.getStorageSync('user_info');\n\n // 添加详细日志,帮助调试\n __f__(\"log\", '从本地存储获取登录信息 - token:', !!token, 'expireAt:', !!expireAt, \" at App.vue:151\");\n\n // 如果从本地存储恢复成功,更新全局数据\n if (token && expireAt) {\n this.globalData.token = token;\n this.globalData.expireAt = expireAt;\n this.globalData.userInfo = userInfo;\n this.globalData.isLoggedIn = true;\n __f__(\"log\", '从本地存储恢复登录信息成功', \" at App.vue:159\");\n }\n }\n\n // 获取当前页面路径\n var pages = getCurrentPages();\n var currentPath = '';\n if (pages && pages.length > 0) {\n var currentPage = pages[pages.length - 1];\n currentPath = currentPage.route;\n __f__(\"log\", '当前页面路径:', currentPath, \" at App.vue:169\");\n }\n\n // 移除特殊账号处理逻辑,统一按token和过期时间判断\n if (!token || !expireAt) {\n // 未登录或缺少过期时间,跳转到登录页面\n // 检查当前是否已经在登录页面,避免重复跳转\n if (currentPath !== 'pages/login/login') {\n __f__(\"log\", '未登录或缺少过期时间,跳转到登录页面', \" at App.vue:177\");\n this.isNavigatingToLogin = true;\n uni.redirectTo({\n url: '/pages/login/login',\n success: function () {\n __f__(\"log\", '导航到登录页面成功', \" at App.vue:182\");\n // 导航成功后重置标志\n setTimeout(function () {\n this.isNavigatingToLogin = false;\n }.bind(this), 1000);\n }.bind(this),\n fail: function (err) {\n __f__(\"error\", '导航到登录页面失败:', err, \" at App.vue:189\");\n this.isNavigatingToLogin = false;\n }.bind(this)\n });\n } else {\n __f__(\"log\", '已经在登录页面,无需跳转', \" at App.vue:194\");\n }\n } else {\n // 检查token是否过期\n var expireTime;\n try {\n // 健壮的过期时间解析逻辑\n if (typeof expireAt === 'string') {\n // 尝试直接解析为数字\n var timestamp = parseInt(expireAt);\n if (!isNaN(timestamp)) {\n expireTime = timestamp;\n } else {\n // 如果不是数字字符串,尝试作为日期字符串解析\n expireTime = new Date(expireAt).getTime();\n }\n } else if (typeof expireAt === 'number') {\n // 如果已经是数字类型,直接使用\n expireTime = expireAt;\n }\n } catch (e) {\n __f__(\"error\", '解析过期时间失败:', e, \" at App.vue:215\");\n }\n\n // 添加详细日志,记录过期时间解析结果\n __f__(\"log\", '过期时间解析结果 - expireAt:', expireAt, 'expireTime:', expireTime, \" at App.vue:219\");\n\n // 确保过期时间有效\n if (isNaN(expireTime)) {\n __f__(\"error\", '无效的过期时间:', expireAt, \" at App.vue:223\");\n // 跳转到登录页\n if (currentPath !== 'pages/login/login') {\n this.isNavigatingToLogin = true;\n uni.redirectTo({\n url: '/pages/login/login',\n success: function () {\n setTimeout(function () {\n this.isNavigatingToLogin = false;\n }.bind(this), 1000);\n }.bind(this),\n fail: function (err) {\n __f__(\"error\", '导航到登录页面失败:', err, \" at App.vue:235\");\n this.isNavigatingToLogin = false;\n }.bind(this)\n });\n }\n return;\n }\n var currentTime = new Date().getTime();\n\n // 提前1分钟检查过期,给用户预留时间\n if (currentTime + 60 * 1000 > expireTime) {\n __f__(\"log\", '登录即将过期或已过期,需要重新登录 - 当前时间:', currentTime, '过期时间:', expireTime, \" at App.vue:247\");\n // 清除登录信息\n this.globalData.token = '';\n this.globalData.expireAt = '';\n this.globalData.userInfo = {};\n this.globalData.isLoggedIn = false;\n uni.removeStorageSync('equipment_token');\n uni.removeStorageSync('token_expire_time');\n uni.removeStorageSync('user_info');\n\n // 跳转到登录页面\n if (currentPath !== 'pages/login/login') {\n this.isNavigatingToLogin = true;\n uni.redirectTo({\n url: '/pages/login/login',\n success: function () {\n __f__(\"log\", '导航到登录页面成功', \" at App.vue:263\");\n // 导航成功后重置标志\n setTimeout(function () {\n this.isNavigatingToLogin = false;\n }.bind(this), 1000);\n }.bind(this),\n fail: function (err) {\n __f__(\"error\", '导航到登录页面失败:', err, \" at App.vue:270\");\n this.isNavigatingToLogin = false;\n }.bind(this)\n });\n }\n } else {\n // 已登录且token有效,设置全局登录状态\n this.globalData.isLoggedIn = true;\n this.globalData.token = token;\n this.globalData.expireAt = expireAt;\n this.globalData.equipmentManage = this.globalData.equipmentManage || 0;\n this.globalData.userInfo = userInfo;\n\n // 计算剩余时间并记录日志,帮助调试\n var remainingTime = (expireTime - currentTime) / 1000 / 60; // 转换为分钟\n __f__(\"log\", '登录状态有效,无需重新登录 - 剩余时间约:', Math.round(remainingTime), '分钟', \" at App.vue:285\");\n\n // 如果已经在登录页面,自动跳转到首页\n if (currentPath === 'pages/login/login') {\n __f__(\"log\", '登录状态有效但当前在登录页面,自动跳转到首页', \" at App.vue:289\");\n this.isNavigatingToLogin = true;\n setTimeout(function () {\n uni.switchTab({\n url: '/pages/index/index',\n success: function () {\n __f__(\"log\", '从登录页跳转到首页成功', \" at App.vue:295\");\n this.isNavigatingToLogin = false;\n }.bind(this),\n fail: function (err) {\n __f__(\"error\", '从登录页跳转到首页失败:', err, \" at App.vue:299\");\n this.isNavigatingToLogin = false;\n }.bind(this)\n });\n }.bind(this), 500);\n }\n }\n }\n } catch (e) {\n __f__(\"error\", '检查登录状态时发生错误:', e, \" at App.vue:308\");\n }\n },\n // 重置插件实例\n resetPluginInstance: function resetPluginInstance() {\n var _this2 = this;\n __f__(\"log\", 'Resetting plugin instance globally', \" at App.vue:314\");\n try {\n this.checkAndCleanupPluginInstance();\n\n // 延迟一段时间后重置应用状态\n setTimeout(function () {\n _this2.resetAppState();\n }, 1000);\n } catch (e) {\n __f__(\"error\", 'Error resetting plugin instance:', e, \" at App.vue:323\");\n }\n }\n },\n globalData: {\n isLoggedIn: false,\n token: '',\n expireAt: '',\n equipmentManage: 0,\n userInfo: {}\n },\n // 导航状态控制\n data: function data() {\n return {\n isNavigatingToLogin: false\n };\n }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 21)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vQXBwLnZ1ZSJdLCJuYW1lcyI6WyJvbkxhdW5jaCIsImNoZWNrTG9naW5TdGF0dXMiLCJvblNob3ciLCJvbkhpZGUiLCJyZWxlYXNlR2xvYmFsUmVzb3VyY2VzIiwib25FcnJvciIsImVycm9yIiwiaGFuZGxlR2xvYmFsRXJyb3IiLCJtZXRob2RzIiwiZSIsIm1lc3NhZ2UiLCJpbmNsdWRlcyIsImluc3RhbmNlSWRNYXRjaCIsIm1hdGNoIiwiaW5zdGFuY2VJZCIsInVuaSIsInNob3dUb2FzdCIsInRpdGxlIiwiaWNvbiIsImR1cmF0aW9uIiwic2V0VGltZW91dCIsInJlc2V0UGx1Z2luSW5zdGFuY2UiLCJyZXNldEFwcFN0YXRlIiwicmVtb3ZlU3RvcmFnZVN5bmMiLCJwYWdlcyIsImdldEN1cnJlbnRQYWdlcyIsImxlbmd0aCIsImN1cnJlbnRQYWdlIiwicm91dGUiLCIkdm0iLCIkZGVzdHJveSIsInJlZGlyZWN0VG8iLCJ1cmwiLCJjaGVja0FuZENsZWFudXBQbHVnaW5JbnN0YW5jZSIsInVoZlNGSGVscGVyIiwicmVsZWFzZURldmljZSIsImlzTmF2aWdhdGluZ1RvTG9naW4iLCJ0b2tlbiIsImdsb2JhbERhdGEiLCJleHBpcmVBdCIsInVzZXJJbmZvIiwiZ2V0U3RvcmFnZVN5bmMiLCJpc0xvZ2dlZEluIiwiY3VycmVudFBhdGgiLCJzdWNjZXNzIiwiYmluZCIsImZhaWwiLCJlcnIiLCJleHBpcmVUaW1lIiwidGltZXN0YW1wIiwicGFyc2VJbnQiLCJpc05hTiIsIkRhdGUiLCJnZXRUaW1lIiwiY3VycmVudFRpbWUiLCJlcXVpcG1lbnRNYW5hZ2UiLCJyZW1haW5pbmdUaW1lIiwiTWF0aCIsInJvdW5kIiwic3dpdGNoVGFiIiwiZGF0YSJdLCJtYXBwaW5ncyI6Ijs7Ozs7O2VBQ2U7RUFDZEEsUUFBUSxFQUFFLG9CQUFXO0lBQ3BCO0lBQ0E7SUFDQSxJQUFJLENBQUNDLGdCQUFnQixFQUFFO0VBQ3hCLENBQUM7RUFDREMsTUFBTSxFQUFFLGtCQUFXO0lBQ2xCO0lBQ0E7SUFDQSxJQUFJLENBQUNELGdCQUFnQixFQUFFO0VBQ3hCLENBQUM7RUFDREUsTUFBTSxFQUFFLGtCQUFXO0lBQ2xCO0lBQ0E7SUFDQSxJQUFJLENBQUNDLHNCQUFzQixFQUFFO0VBQzlCLENBQUM7RUFFRDtFQUNBQyxPQUFPLEVBQUUsaUJBQVNDLEtBQUssRUFBRTtJQUN4QixJQUFJLENBQUNDLGlCQUFpQixDQUFDRCxLQUFLLENBQUM7RUFDOUIsQ0FBQztFQUNERSxPQUFPLEVBQUU7SUFDUjtJQUNBSixzQkFBc0IsRUFBRSxrQ0FBVztNQUNsQyxhQUFZLDRCQUE0QjtNQUN4QztNQUNBLElBQUk7UUFDSDtNQUFBLENBQ0EsQ0FBQyxPQUFPSyxDQUFDLEVBQUU7UUFDWCxlQUFjLDRCQUE0QixFQUFFQSxDQUFDO01BQzlDO0lBQ0QsQ0FBQztJQUVEO0lBQ0FGLGlCQUFpQixFQUFFLDJCQUFTRCxLQUFLLEVBQUU7TUFBQTtNQUNsQyxlQUFjLHdCQUF3QixFQUFFQSxLQUFLOztNQUU3QztNQUNBLElBQUlBLEtBQUssQ0FBQ0ksT0FBTyxJQUFJSixLQUFLLENBQUNJLE9BQU8sQ0FBQ0MsUUFBUSxDQUFDLHdCQUF3QixDQUFDLEVBQUU7UUFDdEU7UUFDQSxJQUFNQyxlQUFlLEdBQUdOLEtBQUssQ0FBQ0ksT0FBTyxDQUFDRyxLQUFLLENBQUMsb0JBQW9CLENBQUM7UUFDakUsSUFBTUMsVUFBVSxHQUFHRixlQUFlLEdBQUdBLGVBQWUsQ0FBQyxDQUFDLENBQUMsR0FBRyxTQUFTOztRQUVuRTtRQUNBLDhDQUFzQ0UsVUFBVTs7UUFFaEQ7UUFDQUMsR0FBRyxDQUFDQyxTQUFTLENBQUM7VUFDYkMsS0FBSyw2REFBY0gsVUFBVSw4QkFBTztVQUNwQ0ksSUFBSSxFQUFFLE1BQU07VUFDWkMsUUFBUSxFQUFFO1FBQ1gsQ0FBQyxDQUFDOztRQUVGO1FBQ0FDLFVBQVUsQ0FBQyxZQUFNO1VBQ2hCLEtBQUksQ0FBQ0MsbUJBQW1CLEVBQUU7UUFDM0IsQ0FBQyxFQUFFLElBQUksQ0FBQztNQUNUO0lBQ0QsQ0FBQztJQUVEO0lBQ0FDLGFBQWEsRUFBRSx5QkFBVztNQUN6QixhQUFZLHlDQUF5QztNQUNyRCxJQUFJO1FBQ0g7UUFDQVAsR0FBRyxDQUFDUSxpQkFBaUIsQ0FBQyxrQkFBa0IsQ0FBQztRQUN6Q1IsR0FBRyxDQUFDUSxpQkFBaUIsQ0FBQyxpQkFBaUIsQ0FBQzs7UUFFeEM7UUFDQSxJQUFNQyxLQUFLLEdBQUdDLGVBQWUsRUFBRTtRQUMvQixJQUFJRCxLQUFLLElBQUlBLEtBQUssQ0FBQ0UsTUFBTSxHQUFHLENBQUMsRUFBRTtVQUM5QixJQUFNQyxXQUFXLEdBQUdILEtBQUssQ0FBQ0EsS0FBSyxDQUFDRSxNQUFNLEdBQUcsQ0FBQyxDQUFDO1VBQzNDO1VBQ0EsSUFBSUMsV0FBVyxDQUFDQyxLQUFLLEtBQUssbUJBQW1CLEVBQUU7WUFDOUNELFdBQVcsQ0FBQ0UsR0FBRyxDQUFDQyxRQUFRLEVBQUU7WUFDMUJmLEdBQUcsQ0FBQ2dCLFVBQVUsQ0FBQztjQUNkQyxHQUFHLEVBQUU7WUFDTixDQUFDLENBQUM7VUFDSCxDQUFDLE1BQU07WUFDTjtZQUNBakIsR0FBRyxDQUFDZ0IsVUFBVSxDQUFDO2NBQ2RDLEdBQUcsRUFBRTtZQUNOLENBQUMsQ0FBQztVQUNIO1FBQ0QsQ0FBQyxNQUFNO1VBQ047VUFDQWpCLEdBQUcsQ0FBQ2dCLFVBQVUsQ0FBQztZQUNkQyxHQUFHLEVBQUU7VUFDTixDQUFDLENBQUM7UUFDSDtNQUNELENBQUMsQ0FBQyxPQUFPdkIsQ0FBQyxFQUFFO1FBQ1gsZUFBYyw0QkFBNEIsRUFBRUEsQ0FBQztNQUM5QztJQUNELENBQUM7SUFFRDtJQUNBd0IsNkJBQTZCLEVBQUUseUNBQVc7TUFDekMsYUFBWSwwQ0FBMEM7TUFDdEQsSUFBSTtRQUNIO1FBQ0EsSUFBTVQsS0FBSyxHQUFHQyxlQUFlLEVBQUU7UUFDL0IsSUFBSUQsS0FBSyxJQUFJQSxLQUFLLENBQUNFLE1BQU0sR0FBRyxDQUFDLEVBQUU7VUFDOUIsSUFBTUMsV0FBVyxHQUFHSCxLQUFLLENBQUNBLEtBQUssQ0FBQ0UsTUFBTSxHQUFHLENBQUMsQ0FBQztVQUMzQyxJQUFJQyxXQUFXLElBQUlBLFdBQVcsQ0FBQ0UsR0FBRyxFQUFFO1lBQ25DO1lBQ0EsSUFBSUYsV0FBVyxDQUFDRSxHQUFHLENBQUNLLFdBQVcsRUFBRTtjQUNoQyxJQUFJO2dCQUNILGFBQVksb0NBQW9DO2dCQUNoRFAsV0FBVyxDQUFDRSxHQUFHLENBQUNNLGFBQWEsRUFBRTtjQUNoQyxDQUFDLENBQUMsT0FBTzFCLENBQUMsRUFBRTtnQkFDWCxlQUFjLHlCQUF5QixFQUFFQSxDQUFDO2NBQzNDO2NBQ0E7Y0FDQWtCLFdBQVcsQ0FBQ0UsR0FBRyxDQUFDSyxXQUFXLEdBQUcsSUFBSTtjQUNsQyxhQUFZLDJDQUEyQztZQUN4RDtVQUNEO1FBQ0Q7O1FBRUE7UUFDQW5CLEdBQUcsQ0FBQ1EsaUJBQWlCLENBQUMscUJBQXFCLENBQUM7UUFDNUMsYUFBWSxnQ0FBZ0M7TUFDN0MsQ0FBQyxDQUFDLE9BQU9kLENBQUMsRUFBRTtRQUNYLGVBQWMsaURBQWlELEVBQUVBLENBQUM7TUFDbkU7SUFDRCxDQUFDO0lBR0Q7SUFDQVIsZ0JBQWdCLEVBQUUsNEJBQVc7TUFDN0I7TUFDQSxJQUFJLElBQUksQ0FBQ21DLG1CQUFtQixFQUFFO1FBQzlCLGFBQVksa0JBQWtCO1FBQzlCO01BQ0E7TUFFQSxJQUFJO1FBQ0o7UUFDQSxJQUFJQyxLQUFLLEdBQUcsSUFBSSxDQUFDQyxVQUFVLENBQUNELEtBQUs7UUFDakMsSUFBSUUsUUFBUSxHQUFHLElBQUksQ0FBQ0QsVUFBVSxDQUFDQyxRQUFRO1FBQ3ZDLElBQUlDLFFBQVEsR0FBRyxJQUFJLENBQUNGLFVBQVUsQ0FBQ0UsUUFBUTs7UUFFdkM7UUFDQSxJQUFJLENBQUNILEtBQUssSUFBSSxDQUFDRSxRQUFRLEVBQUU7VUFDekJGLEtBQUssR0FBR3RCLEdBQUcsQ0FBQzBCLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQztVQUM3Q0YsUUFBUSxHQUFHeEIsR0FBRyxDQUFDMEIsY0FBYyxDQUFDLG1CQUFtQixDQUFDO1VBQ2xERCxRQUFRLEdBQUd6QixHQUFHLENBQUMwQixjQUFjLENBQUMsV0FBVyxDQUFDOztVQUUxQztVQUNBLGFBQVksc0JBQXNCLEVBQUUsQ0FBQyxDQUFDSixLQUFLLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQ0UsUUFBUTs7VUFFcEU7VUFDQSxJQUFJRixLQUFLLElBQUlFLFFBQVEsRUFBRTtZQUN2QixJQUFJLENBQUNELFVBQVUsQ0FBQ0QsS0FBSyxHQUFHQSxLQUFLO1lBQzdCLElBQUksQ0FBQ0MsVUFBVSxDQUFDQyxRQUFRLEdBQUdBLFFBQVE7WUFDbkMsSUFBSSxDQUFDRCxVQUFVLENBQUNFLFFBQVEsR0FBR0EsUUFBUTtZQUNuQyxJQUFJLENBQUNGLFVBQVUsQ0FBQ0ksVUFBVSxHQUFHLElBQUk7WUFDakMsYUFBWSxlQUFlO1VBQzNCO1FBQ0E7O1FBRUE7UUFDQSxJQUFNbEIsS0FBSyxHQUFHQyxlQUFlLEVBQUU7UUFDL0IsSUFBSWtCLFdBQVcsR0FBRyxFQUFFO1FBQ3BCLElBQUluQixLQUFLLElBQUlBLEtBQUssQ0FBQ0UsTUFBTSxHQUFHLENBQUMsRUFBRTtVQUMvQixJQUFNQyxXQUFXLEdBQUdILEtBQUssQ0FBQ0EsS0FBSyxDQUFDRSxNQUFNLEdBQUcsQ0FBQyxDQUFDO1VBQzNDaUIsV0FBVyxHQUFHaEIsV0FBVyxDQUFDQyxLQUFLO1VBQy9CLGFBQVksU0FBUyxFQUFFZSxXQUFXO1FBQ2xDOztRQUVBO1FBQ0EsSUFBSSxDQUFDTixLQUFLLElBQUksQ0FBQ0UsUUFBUSxFQUFFO1VBQ3pCO1VBQ0E7VUFDQSxJQUFJSSxXQUFXLEtBQUssbUJBQW1CLEVBQUU7WUFDekMsYUFBWSxvQkFBb0I7WUFDaEMsSUFBSSxDQUFDUCxtQkFBbUIsR0FBRyxJQUFJO1lBQy9CckIsR0FBRyxDQUFDZ0IsVUFBVSxDQUFDO2NBQ2ZDLEdBQUcsRUFBRSxvQkFBb0I7Y0FDekJZLE9BQU8sRUFBRSxZQUFXO2dCQUNwQixhQUFZLFdBQVc7Z0JBQ3ZCO2dCQUNBeEIsVUFBVSxDQUFDLFlBQVc7a0JBQ3RCLElBQUksQ0FBQ2dCLG1CQUFtQixHQUFHLEtBQUs7Z0JBQ2hDLENBQUMsQ0FBQ1MsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQztjQUNuQixDQUFDLENBQUNBLElBQUksQ0FBQyxJQUFJLENBQUM7Y0FDWkMsSUFBSSxFQUFFLFVBQVNDLEdBQUcsRUFBRTtnQkFDcEIsZUFBYyxZQUFZLEVBQUVBLEdBQUc7Z0JBQy9CLElBQUksQ0FBQ1gsbUJBQW1CLEdBQUcsS0FBSztjQUNoQyxDQUFDLENBQUNTLElBQUksQ0FBQyxJQUFJO1lBQ1gsQ0FBQyxDQUFDO1VBQ0YsQ0FBQyxNQUFNO1lBQ1AsYUFBWSxjQUFjO1VBQzFCO1FBQ0EsQ0FBQyxNQUFNO1VBQ1A7VUFDQSxJQUFJRyxVQUFVO1VBQ2QsSUFBSTtZQUNKO1lBQ0EsSUFBSSxPQUFPVCxRQUFRLEtBQUssUUFBUSxFQUFFO2NBQ2xDO2NBQ0EsSUFBTVUsU0FBUyxHQUFHQyxRQUFRLENBQUNYLFFBQVEsQ0FBQztjQUNwQyxJQUFJLENBQUNZLEtBQUssQ0FBQ0YsU0FBUyxDQUFDLEVBQUU7Z0JBQ3ZCRCxVQUFVLEdBQUdDLFNBQVM7Y0FDdEIsQ0FBQyxNQUFNO2dCQUNQO2dCQUNBRCxVQUFVLEdBQUcsSUFBSUksSUFBSSxDQUFDYixRQUFRLENBQUMsQ0FBQ2MsT0FBTyxFQUFFO2NBQ3pDO1lBQ0EsQ0FBQyxNQUFNLElBQUksT0FBT2QsUUFBUSxLQUFLLFFBQVEsRUFBRTtjQUN6QztjQUNBUyxVQUFVLEdBQUdULFFBQVE7WUFDckI7VUFDQSxDQUFDLENBQUMsT0FBTzlCLENBQUMsRUFBRTtZQUNaLGVBQWMsV0FBVyxFQUFFQSxDQUFDO1VBQzVCOztVQUVBO1VBQ0EsYUFBWSxzQkFBc0IsRUFBRThCLFFBQVEsRUFBRSxhQUFhLEVBQUVTLFVBQVU7O1VBRXZFO1VBQ0EsSUFBSUcsS0FBSyxDQUFDSCxVQUFVLENBQUMsRUFBRTtZQUN2QixlQUFjLFVBQVUsRUFBRVQsUUFBUTtZQUNsQztZQUNBLElBQUlJLFdBQVcsS0FBSyxtQkFBbUIsRUFBRTtjQUN6QyxJQUFJLENBQUNQLG1CQUFtQixHQUFHLElBQUk7Y0FDL0JyQixHQUFHLENBQUNnQixVQUFVLENBQUM7Z0JBQ2ZDLEdBQUcsRUFBRSxvQkFBb0I7Z0JBQ3pCWSxPQUFPLEVBQUUsWUFBVztrQkFDcEJ4QixVQUFVLENBQUMsWUFBVztvQkFDdEIsSUFBSSxDQUFDZ0IsbUJBQW1CLEdBQUcsS0FBSztrQkFDaEMsQ0FBQyxDQUFDUyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDO2dCQUNuQixDQUFDLENBQUNBLElBQUksQ0FBQyxJQUFJLENBQUM7Z0JBQ1pDLElBQUksRUFBRSxVQUFTQyxHQUFHLEVBQUU7a0JBQ3BCLGVBQWMsWUFBWSxFQUFFQSxHQUFHO2tCQUMvQixJQUFJLENBQUNYLG1CQUFtQixHQUFHLEtBQUs7Z0JBQ2hDLENBQUMsQ0FBQ1MsSUFBSSxDQUFDLElBQUk7Y0FDWCxDQUFDLENBQUM7WUFDRjtZQUNBO1VBQ0E7VUFFQSxJQUFNUyxXQUFXLEdBQUcsSUFBSUYsSUFBSSxFQUFFLENBQUNDLE9BQU8sRUFBRTs7VUFFeEM7VUFDQSxJQUFJQyxXQUFXLEdBQUcsRUFBRSxHQUFHLElBQUksR0FBR04sVUFBVSxFQUFFO1lBQzFDLGFBQVksMkJBQTJCLEVBQUVNLFdBQVcsRUFBRSxPQUFPLEVBQUVOLFVBQVU7WUFDekU7WUFDQSxJQUFJLENBQUNWLFVBQVUsQ0FBQ0QsS0FBSyxHQUFHLEVBQUU7WUFDMUIsSUFBSSxDQUFDQyxVQUFVLENBQUNDLFFBQVEsR0FBRyxFQUFFO1lBQzdCLElBQUksQ0FBQ0QsVUFBVSxDQUFDRSxRQUFRLEdBQUcsQ0FBQyxDQUFDO1lBQzdCLElBQUksQ0FBQ0YsVUFBVSxDQUFDSSxVQUFVLEdBQUcsS0FBSztZQUNsQzNCLEdBQUcsQ0FBQ1EsaUJBQWlCLENBQUMsaUJBQWlCLENBQUM7WUFDeENSLEdBQUcsQ0FBQ1EsaUJBQWlCLENBQUMsbUJBQW1CLENBQUM7WUFDMUNSLEdBQUcsQ0FBQ1EsaUJBQWlCLENBQUMsV0FBVyxDQUFDOztZQUVsQztZQUNBLElBQUlvQixXQUFXLEtBQUssbUJBQW1CLEVBQUU7Y0FDekMsSUFBSSxDQUFDUCxtQkFBbUIsR0FBRyxJQUFJO2NBQy9CckIsR0FBRyxDQUFDZ0IsVUFBVSxDQUFDO2dCQUNmQyxHQUFHLEVBQUUsb0JBQW9CO2dCQUN6QlksT0FBTyxFQUFFLFlBQVc7a0JBQ3BCLGFBQVksV0FBVztrQkFDdkI7a0JBQ0F4QixVQUFVLENBQUMsWUFBVztvQkFDdEIsSUFBSSxDQUFDZ0IsbUJBQW1CLEdBQUcsS0FBSztrQkFDaEMsQ0FBQyxDQUFDUyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDO2dCQUNuQixDQUFDLENBQUNBLElBQUksQ0FBQyxJQUFJLENBQUM7Z0JBQ1pDLElBQUksRUFBRSxVQUFTQyxHQUFHLEVBQUU7a0JBQ3BCLGVBQWMsWUFBWSxFQUFFQSxHQUFHO2tCQUMvQixJQUFJLENBQUNYLG1CQUFtQixHQUFHLEtBQUs7Z0JBQ2hDLENBQUMsQ0FBQ1MsSUFBSSxDQUFDLElBQUk7Y0FDWCxDQUFDLENBQUM7WUFDRjtVQUNBLENBQUMsTUFBTTtZQUNQO1lBQ0EsSUFBSSxDQUFDUCxVQUFVLENBQUNJLFVBQVUsR0FBRyxJQUFJO1lBQ2pDLElBQUksQ0FBQ0osVUFBVSxDQUFDRCxLQUFLLEdBQUdBLEtBQUs7WUFDN0IsSUFBSSxDQUFDQyxVQUFVLENBQUNDLFFBQVEsR0FBR0EsUUFBUTtZQUNuQyxJQUFJLENBQUNELFVBQVUsQ0FBQ2lCLGVBQWUsR0FBRyxJQUFJLENBQUNqQixVQUFVLENBQUNpQixlQUFlLElBQUksQ0FBQztZQUN0RSxJQUFJLENBQUNqQixVQUFVLENBQUNFLFFBQVEsR0FBR0EsUUFBUTs7WUFFbkM7WUFDQSxJQUFNZ0IsYUFBYSxHQUFHLENBQUNSLFVBQVUsR0FBR00sV0FBVyxJQUFJLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQztZQUM5RCxhQUFZLHdCQUF3QixFQUFFRyxJQUFJLENBQUNDLEtBQUssQ0FBQ0YsYUFBYSxDQUFDLEVBQUUsSUFBSTs7WUFFckU7WUFDQSxJQUFJYixXQUFXLEtBQUssbUJBQW1CLEVBQUU7Y0FDekMsYUFBWSx3QkFBd0I7Y0FDcEMsSUFBSSxDQUFDUCxtQkFBbUIsR0FBRyxJQUFJO2NBQy9CaEIsVUFBVSxDQUFDLFlBQVc7Z0JBQ3RCTCxHQUFHLENBQUM0QyxTQUFTLENBQUM7a0JBQ2QzQixHQUFHLEVBQUUsb0JBQW9CO2tCQUN6QlksT0FBTyxFQUFFLFlBQVc7b0JBQ3BCLGFBQVksYUFBYTtvQkFDekIsSUFBSSxDQUFDUixtQkFBbUIsR0FBRyxLQUFLO2tCQUNoQyxDQUFDLENBQUNTLElBQUksQ0FBQyxJQUFJLENBQUM7a0JBQ1pDLElBQUksRUFBRSxVQUFTQyxHQUFHLEVBQUU7b0JBQ3BCLGVBQWMsY0FBYyxFQUFFQSxHQUFHO29CQUNqQyxJQUFJLENBQUNYLG1CQUFtQixHQUFHLEtBQUs7a0JBQ2hDLENBQUMsQ0FBQ1MsSUFBSSxDQUFDLElBQUk7Z0JBQ1gsQ0FBQyxDQUFDO2NBQ0YsQ0FBQyxDQUFDQSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDO1lBQ2xCO1VBQ0E7UUFDQTtNQUNELENBQUMsQ0FBQyxPQUFPcEMsQ0FBQyxFQUFFO1FBQ1gsZUFBYyxjQUFjLEVBQUVBLENBQUM7TUFDaEM7SUFDRCxDQUFDO0lBRUM7SUFDQVksbUJBQW1CLEVBQUUsK0JBQVc7TUFBQTtNQUMvQixhQUFZLG9DQUFvQztNQUNoRCxJQUFJO1FBQ0gsSUFBSSxDQUFDWSw2QkFBNkIsRUFBRTs7UUFFcEM7UUFDQWIsVUFBVSxDQUFDLFlBQU07VUFDaEIsTUFBSSxDQUFDRSxhQUFhLEVBQUU7UUFDckIsQ0FBQyxFQUFFLElBQUksQ0FBQztNQUNULENBQUMsQ0FBQyxPQUFPYixDQUFDLEVBQUU7UUFDWCxlQUFjLGtDQUFrQyxFQUFFQSxDQUFDO01BQ3BEO0lBQ0Q7RUFDRCxDQUFDO0VBQ0Q2QixVQUFVLEVBQUU7SUFDWkksVUFBVSxFQUFFLEtBQUs7SUFDakJMLEtBQUssRUFBRSxFQUFFO0lBQ1RFLFFBQVEsRUFBRSxFQUFFO0lBQ1pnQixlQUFlLEVBQUUsQ0FBQztJQUNsQmYsUUFBUSxFQUFFLENBQUM7RUFDWixDQUFDO0VBQ0Q7RUFDQW9CLElBQUksa0JBQUc7SUFDTixPQUFPO01BQ054QixtQkFBbUIsRUFBRTtJQUN0QixDQUFDO0VBQ0Y7QUFDQSxDQUFDO0FBQUEsMkIiLCJmaWxlIjoiNDcuanMiLCJzb3VyY2VzQ29udGVudCI6WyJcbmV4cG9ydCBkZWZhdWx0IHtcblx0b25MYXVuY2g6IGZ1bmN0aW9uKCkge1xuXHRcdC8vIGNvbnNvbGUubG9nKCdBcHAgTGF1bmNoJyk7XG5cdFx0Ly8g5qOA5p+l55m75b2V54q25oCBXG5cdFx0dGhpcy5jaGVja0xvZ2luU3RhdHVzKCk7XG5cdH0sXG5cdG9uU2hvdzogZnVuY3Rpb24oKSB7XG5cdFx0Ly8gY29uc29sZS5sb2coJ0FwcCBTaG93Jyk7XG5cdFx0Ly8g5q+P5qyh5pi+56S65bqU55So5pe25qOA5p+l55m75b2V54q25oCBXG5cdFx0dGhpcy5jaGVja0xvZ2luU3RhdHVzKCk7XG5cdH0sXG5cdG9uSGlkZTogZnVuY3Rpb24oKSB7XG5cdFx0Ly8gY29uc29sZS5sb2coJ0FwcCBIaWRlJyk7XG5cdFx0Ly8g5bqU55So6L+b5YWl5ZCO5Y+w5pe26YeK5pS+6LWE5rqQXG5cdFx0dGhpcy5yZWxlYXNlR2xvYmFsUmVzb3VyY2VzKCk7XG5cdH0sXG5cdFxuXHQvLyDlhajlsYDplJnor6/mjZXojrdcblx0b25FcnJvcjogZnVuY3Rpb24oZXJyb3IpIHtcblx0XHR0aGlzLmhhbmRsZUdsb2JhbEVycm9yKGVycm9yKTtcblx0fSxcblx0bWV0aG9kczoge1xuXHRcdC8vIOmHiuaUvuWFqOWxgOi1hOa6kFxuXHRcdHJlbGVhc2VHbG9iYWxSZXNvdXJjZXM6IGZ1bmN0aW9uKCkge1xuXHRcdFx0Y29uc29sZS5sb2coJ1JlbGVhc2luZyBnbG9iYWwgcmVzb3VyY2VzJyk7XG5cdFx0XHQvLyDmuIXpmaTlj6/og73lrZjlnKjnmoTlrprml7blmahcblx0XHRcdHRyeSB7XG5cdFx0XHRcdC8vIOi/memHjOWPr+S7pea3u+WKoOabtOWkmueahOi1hOa6kOmHiuaUvumAu+i+kVxuXHRcdFx0fSBjYXRjaCAoZSkge1xuXHRcdFx0XHRjb25zb2xlLmVycm9yKCdFcnJvciByZWxlYXNpbmcgcmVzb3VyY2VzOicsIGUpO1xuXHRcdFx0fVxuXHRcdH0sXG5cdFx0XG5cdFx0Ly8g5YWo5bGA6ZSZ6K+v5aSE55CGXG5cdFx0aGFuZGxlR2xvYmFsRXJyb3I6IGZ1bmN0aW9uKGVycm9yKSB7XG5cdFx0XHRjb25zb2xlLmVycm9yKCdHbG9iYWwgZXJyb3IgY2FwdHVyZWQ6JywgZXJyb3IpO1xuXHRcdFx0XG5cdFx0XHQvLyDlpITnkIbnibnlrprnsbvlnovnmoTplJnor69cblx0XHRcdGlmIChlcnJvci5tZXNzYWdlICYmIGVycm9yLm1lc3NhZ2UuaW5jbHVkZXMoJ0ZhaWxlZCB0byByZWNlaXZlVGFza3MnKSkge1xuXHRcdFx0XHQvLyDmj5Dlj5blrp7kvotJRFxuXHRcdFx0XHRjb25zdCBpbnN0YW5jZUlkTWF0Y2ggPSBlcnJvci5tZXNzYWdlLm1hdGNoKC9pbnN0YW5jZSBcXCgoXFxkKylcXCkvKTtcblx0XHRcdFx0Y29uc3QgaW5zdGFuY2VJZCA9IGluc3RhbmNlSWRNYXRjaCA/IGluc3RhbmNlSWRNYXRjaFsxXSA6ICd1bmtub3duJztcblx0XHRcdFx0XG5cdFx0XHRcdC8vIOiusOW9leivpue7humUmeivr+S/oeaBr1xuXHRcdFx0XHRjb25zb2xlLmVycm9yKGBVSEYgcGx1Z2luIGluc3RhbmNlICgke2luc3RhbmNlSWR9KSBlcnJvcjogRmFpbGVkIHRvIHJlY2VpdmVUYXNrc2ApO1xuXHRcdFx0XHRcblx0XHRcdFx0Ly8g5pi+56S66ZSZ6K+v5o+Q56S6XG5cdFx0XHRcdHVuaS5zaG93VG9hc3Qoe1xuXHRcdFx0XHRcdHRpdGxlOiBg6K6+5aSH6YCa5L+h6ZSZ6K+vKOWunuS+iyR7aW5zdGFuY2VJZH0p77yM6K+36YeN6K+VYCxcblx0XHRcdFx0XHRpY29uOiAnbm9uZScsXG5cdFx0XHRcdFx0ZHVyYXRpb246IDMwMDBcblx0XHRcdFx0fSk7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdC8vIOWwneivlemHjee9ruaPkuS7tuWunuS+i1xuXHRcdFx0XHRzZXRUaW1lb3V0KCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLnJlc2V0UGx1Z2luSW5zdGFuY2UoKTtcblx0XHRcdFx0fSwgMTAwMCk7XG5cdFx0XHR9XG5cdFx0fSxcblx0XHRcblx0XHQvLyDph43nva7lupTnlKjnirbmgIFcblx0XHRyZXNldEFwcFN0YXRlOiBmdW5jdGlvbigpIHtcblx0XHRcdGNvbnNvbGUubG9nKCdSZXNldHRpbmcgYXBwIHN0YXRlIGR1ZSB0byBwbHVnaW4gZXJyb3InKTtcblx0XHRcdHRyeSB7XG5cdFx0XHRcdC8vIOa4hemZpOaJgOacieebuOWFs+e8k+WtmOaVsOaNrlxuXHRcdFx0XHR1bmkucmVtb3ZlU3RvcmFnZVN5bmMoJ3VoZl9wbHVnaW5fc3RhdGUnKTtcblx0XHRcdFx0dW5pLnJlbW92ZVN0b3JhZ2VTeW5jKCdlcXVpcG1lbnRfdG9rZW4nKTtcblx0XHRcdFx0XG5cdFx0XHRcdC8vIOmHjeaWsOWKoOi9veW9k+WJjemhtemdolxuXHRcdFx0XHRjb25zdCBwYWdlcyA9IGdldEN1cnJlbnRQYWdlcygpO1xuXHRcdFx0XHRpZiAocGFnZXMgJiYgcGFnZXMubGVuZ3RoID4gMCkge1xuXHRcdFx0XHRcdGNvbnN0IGN1cnJlbnRQYWdlID0gcGFnZXNbcGFnZXMubGVuZ3RoIC0gMV07XG5cdFx0XHRcdFx0Ly8g5aaC5p6c5b2T5YmN5piv6aaW6aG177yM5YiZ5Yi35paw6aG16Z2iXG5cdFx0XHRcdFx0aWYgKGN1cnJlbnRQYWdlLnJvdXRlID09PSAncGFnZXMvaW5kZXgvaW5kZXgnKSB7XG5cdFx0XHRcdFx0XHRjdXJyZW50UGFnZS4kdm0uJGRlc3Ryb3koKTtcblx0XHRcdFx0XHRcdHVuaS5yZWRpcmVjdFRvKHtcblx0XHRcdFx0XHRcdFx0dXJsOiAnL3BhZ2VzL2luZGV4L2luZGV4J1xuXHRcdFx0XHRcdFx0fSk7XG5cdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdC8vIOWQpuWImei3s+i9rOWIsOmmlumhtVxuXHRcdFx0XHRcdFx0dW5pLnJlZGlyZWN0VG8oe1xuXHRcdFx0XHRcdFx0XHR1cmw6ICcvcGFnZXMvaW5kZXgvaW5kZXgnXG5cdFx0XHRcdFx0XHR9KTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0Ly8g5aaC5p6c5rKh5pyJ6aG16Z2i77yM6Lez6L2s5Yiw6aaW6aG1XG5cdFx0XHRcdFx0dW5pLnJlZGlyZWN0VG8oe1xuXHRcdFx0XHRcdFx0dXJsOiAnL3BhZ2VzL2luZGV4L2luZGV4J1xuXHRcdFx0XHRcdH0pO1xuXHRcdFx0XHR9XG5cdFx0XHR9IGNhdGNoIChlKSB7XG5cdFx0XHRcdGNvbnNvbGUuZXJyb3IoJ0Vycm9yIHJlc2V0dGluZyBhcHAgc3RhdGU6JywgZSk7XG5cdFx0XHR9XG5cdFx0fSxcblx0XHRcblx0XHQvLyDmo4Dmn6XlubbmuIXnkIbmj5Lku7blrp7kvotcblx0XHRjaGVja0FuZENsZWFudXBQbHVnaW5JbnN0YW5jZTogZnVuY3Rpb24oKSB7XG5cdFx0XHRjb25zb2xlLmxvZygnQ2hlY2tpbmcgYW5kIGNsZWFuaW5nIHVwIHBsdWdpbiBpbnN0YW5jZScpO1xuXHRcdFx0dHJ5IHtcblx0XHRcdFx0Ly8g5aaC5p6c5a2Y5Zyo6aG16Z2i5a6e5L6LXG5cdFx0XHRcdGNvbnN0IHBhZ2VzID0gZ2V0Q3VycmVudFBhZ2VzKCk7XG5cdFx0XHRcdGlmIChwYWdlcyAmJiBwYWdlcy5sZW5ndGggPiAwKSB7XG5cdFx0XHRcdFx0Y29uc3QgY3VycmVudFBhZ2UgPSBwYWdlc1twYWdlcy5sZW5ndGggLSAxXTtcblx0XHRcdFx0XHRpZiAoY3VycmVudFBhZ2UgJiYgY3VycmVudFBhZ2UuJHZtKSB7XG5cdFx0XHRcdFx0XHQvLyDlpoLmnpzpobXpnaLmnIl1aGZTRkhlbHBlcuWunuS+i++8jOWwneivlemHiuaUvuiuvuWkh1xuXHRcdFx0XHRcdFx0aWYgKGN1cnJlbnRQYWdlLiR2bS51aGZTRkhlbHBlcikge1xuXHRcdFx0XHRcdFx0XHR0cnkge1xuXHRcdFx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKCdSZWxlYXNpbmcgZGV2aWNlIGZyb20gY3VycmVudCBwYWdlJyk7XG5cdFx0XHRcdFx0XHRcdFx0Y3VycmVudFBhZ2UuJHZtLnJlbGVhc2VEZXZpY2UoKTtcblx0XHRcdFx0XHRcdFx0fSBjYXRjaCAoZSkge1xuXHRcdFx0XHRcdFx0XHRcdGNvbnNvbGUuZXJyb3IoJ0Vycm9yIHJlbGVhc2luZyBkZXZpY2U6JywgZSk7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0Ly8g5riF6Zmk5o+S5Lu25a6e5L6LXG5cdFx0XHRcdFx0XHRcdGN1cnJlbnRQYWdlLiR2bS51aGZTRkhlbHBlciA9IG51bGw7XG5cdFx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKCdQbHVnaW4gaW5zdGFuY2UgY2xlYXJlZCBmcm9tIGN1cnJlbnQgcGFnZScpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0Ly8g5riF6Zmk5YWo5bGA5o+S5Lu255u45YWz57yT5a2YXG5cdFx0XHRcdHVuaS5yZW1vdmVTdG9yYWdlU3luYygndWhmX3BsdWdpbl9pbnN0YW5jZScpO1xuXHRcdFx0XHRjb25zb2xlLmxvZygnUGx1Z2luIHJlbGF0ZWQgc3RvcmFnZSBjbGVhcmVkJyk7XG5cdFx0XHR9IGNhdGNoIChlKSB7XG5cdFx0XHRcdGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGNoZWNraW5nIGFuZCBjbGVhbmluZyB1cCBwbHVnaW4gaW5zdGFuY2U6JywgZSk7XG5cdFx0XHR9XG5cdFx0fSxcblx0XHRcblxuXHRcdC8vIFZ1ZTLpo47moLznmoRjaGVja0xvZ2luU3RhdHVz5pa55rOV5a6e546wIC0g5LyY5YyW54mIXG5cdFx0Y2hlY2tMb2dpblN0YXR1czogZnVuY3Rpb24oKSB7XG5cdFx0Ly8g6Ziy5q2i55+t5pe26Ze05YaF6YeN5aSN5a+86Iiq5Yiw55m75b2V6aG16Z2iXG5cdFx0aWYgKHRoaXMuaXNOYXZpZ2F0aW5nVG9Mb2dpbikge1xuXHRcdGNvbnNvbGUubG9nKCfmraPlnKjlr7zoiKrliLDnmbvlvZXpobXpnaLvvIzlv73nlaXph43lpI3osIPnlKgnKTtcblx0XHRyZXR1cm47XG5cdFx0fVxuXHRcdFxuXHRcdHRyeSB7XG5cdFx0Ly8gMS4g6aaW5YWI5bCd6K+V5LuO5YWo5bGA5pWw5o2u6I635Y+WXG5cdFx0bGV0IHRva2VuID0gdGhpcy5nbG9iYWxEYXRhLnRva2VuO1xuXHRcdGxldCBleHBpcmVBdCA9IHRoaXMuZ2xvYmFsRGF0YS5leHBpcmVBdDtcblx0XHRsZXQgdXNlckluZm8gPSB0aGlzLmdsb2JhbERhdGEudXNlckluZm87XG5cdFx0XG5cdFx0Ly8gMi4g5aaC5p6c5YWo5bGA5pWw5o2u5LiN5Y+v55So77yM5bCd6K+V5LuO5pys5Zyw5a2Y5YKo5oGi5aSNXG5cdFx0aWYgKCF0b2tlbiB8fCAhZXhwaXJlQXQpIHtcblx0XHR0b2tlbiA9IHVuaS5nZXRTdG9yYWdlU3luYygnZXF1aXBtZW50X3Rva2VuJyk7XG5cdFx0ZXhwaXJlQXQgPSB1bmkuZ2V0U3RvcmFnZVN5bmMoJ3Rva2VuX2V4cGlyZV90aW1lJyk7XG5cdFx0dXNlckluZm8gPSB1bmkuZ2V0U3RvcmFnZVN5bmMoJ3VzZXJfaW5mbycpO1xuXHRcdFxuXHRcdC8vIOa3u+WKoOivpue7huaXpeW/l++8jOW4ruWKqeiwg+ivlVxuXHRcdGNvbnNvbGUubG9nKCfku47mnKzlnLDlrZjlgqjojrflj5bnmbvlvZXkv6Hmga8gLSB0b2tlbjonLCAhIXRva2VuLCAnZXhwaXJlQXQ6JywgISFleHBpcmVBdCk7XG5cdFx0XG5cdFx0Ly8g5aaC5p6c5LuO5pys5Zyw5a2Y5YKo5oGi5aSN5oiQ5Yqf77yM5pu05paw5YWo5bGA5pWw5o2uXG5cdFx0aWYgKHRva2VuICYmIGV4cGlyZUF0KSB7XG5cdFx0dGhpcy5nbG9iYWxEYXRhLnRva2VuID0gdG9rZW47XG5cdFx0dGhpcy5nbG9iYWxEYXRhLmV4cGlyZUF0ID0gZXhwaXJlQXQ7XG5cdFx0dGhpcy5nbG9iYWxEYXRhLnVzZXJJbmZvID0gdXNlckluZm87XG5cdFx0dGhpcy5nbG9iYWxEYXRhLmlzTG9nZ2VkSW4gPSB0cnVlO1xuXHRcdGNvbnNvbGUubG9nKCfku47mnKzlnLDlrZjlgqjmgaLlpI3nmbvlvZXkv6Hmga/miJDlip8nKTtcblx0XHR9XG5cdFx0fVxuXHRcdFxuXHRcdC8vIOiOt+WPluW9k+WJjemhtemdoui3r+W+hFxuXHRcdGNvbnN0IHBhZ2VzID0gZ2V0Q3VycmVudFBhZ2VzKCk7XG5cdFx0bGV0IGN1cnJlbnRQYXRoID0gJyc7XG5cdFx0aWYgKHBhZ2VzICYmIHBhZ2VzLmxlbmd0aCA+IDApIHtcblx0XHRjb25zdCBjdXJyZW50UGFnZSA9IHBhZ2VzW3BhZ2VzLmxlbmd0aCAtIDFdO1xuXHRcdGN1cnJlbnRQYXRoID0gY3VycmVudFBhZ2Uucm91dGU7XG5cdFx0Y29uc29sZS5sb2coJ+W9k+WJjemhtemdoui3r+W+hDonLCBjdXJyZW50UGF0aCk7XG5cdFx0fVxuXHRcblx0XHQvLyDnp7vpmaTnibnmrorotKblj7flpITnkIbpgLvovpHvvIznu5/kuIDmjIl0b2tlbuWSjOi/h+acn+aXtumXtOWIpOaWrVxuXHRcdGlmICghdG9rZW4gfHwgIWV4cGlyZUF0KSB7XG5cdFx0Ly8g5pyq55m75b2V5oiW57y65bCR6L+H5pyf5pe26Ze077yM6Lez6L2s5Yiw55m75b2V6aG16Z2iXG5cdFx0Ly8g5qOA5p+l5b2T5YmN5piv5ZCm5bey57uP5Zyo55m75b2V6aG16Z2i77yM6YG/5YWN6YeN5aSN6Lez6L2sXG5cdFx0aWYgKGN1cnJlbnRQYXRoICE9PSAncGFnZXMvbG9naW4vbG9naW4nKSB7XG5cdFx0Y29uc29sZS5sb2coJ+acqueZu+W9leaIlue8uuWwkei/h+acn+aXtumXtO+8jOi3s+i9rOWIsOeZu+W9lemhtemdoicpO1xuXHRcdHRoaXMuaXNOYXZpZ2F0aW5nVG9Mb2dpbiA9IHRydWU7XG5cdFx0dW5pLnJlZGlyZWN0VG8oe1xuXHRcdHVybDogJy9wYWdlcy9sb2dpbi9sb2dpbicsXG5cdFx0c3VjY2VzczogZnVuY3Rpb24oKSB7XG5cdFx0Y29uc29sZS5sb2coJ+WvvOiIquWIsOeZu+W9lemhtemdouaIkOWKnycpO1xuXHRcdC8vIOWvvOiIquaIkOWKn+WQjumHjee9ruagh+W/l1xuXHRcdHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG5cdFx0dGhpcy5pc05hdmlnYXRpbmdUb0xvZ2luID0gZmFsc2U7XG5cdFx0fS5iaW5kKHRoaXMpLCAxMDAwKTtcblx0XHR9LmJpbmQodGhpcyksXG5cdFx0ZmFpbDogZnVuY3Rpb24oZXJyKSB7XG5cdFx0Y29uc29sZS5lcnJvcign5a+86Iiq5Yiw55m75b2V6aG16Z2i5aSx6LSlOicsIGVycik7XG5cdFx0dGhpcy5pc05hdmlnYXRpbmdUb0xvZ2luID0gZmFsc2U7XG5cdFx0fS5iaW5kKHRoaXMpXG5cdFx0fSk7XG5cdFx0fSBlbHNlIHtcblx0XHRjb25zb2xlLmxvZygn5bey57uP5Zyo55m75b2V6aG16Z2i77yM5peg6ZyA6Lez6L2sJyk7XG5cdFx0fVxuXHRcdH0gZWxzZSB7XG5cdFx0Ly8g5qOA5p+ldG9rZW7mmK/lkKbov4fmnJ9cblx0XHRsZXQgZXhwaXJlVGltZTtcblx0XHR0cnkge1xuXHRcdC8vIOWBpeWjrueahOi/h+acn+aXtumXtOino+aekOmAu+i+kVxuXHRcdGlmICh0eXBlb2YgZXhwaXJlQXQgPT09ICdzdHJpbmcnKSB7XG5cdFx0Ly8g5bCd6K+V55u05o6l6Kej5p6Q5Li65pWw5a2XXG5cdFx0Y29uc3QgdGltZXN0YW1wID0gcGFyc2VJbnQoZXhwaXJlQXQpO1xuXHRcdGlmICghaXNOYU4odGltZXN0YW1wKSkge1xuXHRcdGV4cGlyZVRpbWUgPSB0aW1lc3RhbXA7XG5cdFx0fSBlbHNlIHtcblx0XHQvLyDlpoLmnpzkuI3mmK/mlbDlrZflrZfnrKbkuLLvvIzlsJ3or5XkvZzkuLrml6XmnJ/lrZfnrKbkuLLop6PmnpBcblx0XHRleHBpcmVUaW1lID0gbmV3IERhdGUoZXhwaXJlQXQpLmdldFRpbWUoKTtcblx0XHR9XG5cdFx0fSBlbHNlIGlmICh0eXBlb2YgZXhwaXJlQXQgPT09ICdudW1iZXInKSB7XG5cdFx0Ly8g5aaC5p6c5bey57uP5piv5pWw5a2X57G75Z6L77yM55u05o6l5L2/55SoXG5cdFx0ZXhwaXJlVGltZSA9IGV4cGlyZUF0O1xuXHRcdH1cblx0XHR9IGNhdGNoIChlKSB7XG5cdFx0Y29uc29sZS5lcnJvcign6Kej5p6Q6L+H5pyf5pe26Ze05aSx6LSlOicsIGUpO1xuXHRcdH1cblx0XG5cdFx0Ly8g5re75Yqg6K+m57uG5pel5b+X77yM6K6w5b2V6L+H5pyf5pe26Ze06Kej5p6Q57uT5p6cXG5cdFx0Y29uc29sZS5sb2coJ+i/h+acn+aXtumXtOino+aekOe7k+aenCAtIGV4cGlyZUF0OicsIGV4cGlyZUF0LCAnZXhwaXJlVGltZTonLCBleHBpcmVUaW1lKTtcblx0XHRcblx0XHQvLyDnoa7kv53ov4fmnJ/ml7bpl7TmnInmlYhcblx0XHRpZiAoaXNOYU4oZXhwaXJlVGltZSkpIHtcblx0XHRjb25zb2xlLmVycm9yKCfml6DmlYjnmoTov4fmnJ/ml7bpl7Q6JywgZXhwaXJlQXQpO1xuXHRcdC8vIOi3s+i9rOWIsOeZu+W9lemhtVxuXHRcdGlmIChjdXJyZW50UGF0aCAhPT0gJ3BhZ2VzL2xvZ2luL2xvZ2luJykge1xuXHRcdHRoaXMuaXNOYXZpZ2F0aW5nVG9Mb2dpbiA9IHRydWU7XG5cdFx0dW5pLnJlZGlyZWN0VG8oe1xuXHRcdHVybDogJy9wYWdlcy9sb2dpbi9sb2dpbicsXG5cdFx0c3VjY2VzczogZnVuY3Rpb24oKSB7XG5cdFx0c2V0VGltZW91dChmdW5jdGlvbigpIHtcblx0XHR0aGlzLmlzTmF2aWdhdGluZ1RvTG9naW4gPSBmYWxzZTtcblx0XHR9LmJpbmQodGhpcyksIDEwMDApO1xuXHRcdH0uYmluZCh0aGlzKSxcblx0XHRmYWlsOiBmdW5jdGlvbihlcnIpIHtcblx0XHRjb25zb2xlLmVycm9yKCflr7zoiKrliLDnmbvlvZXpobXpnaLlpLHotKU6JywgZXJyKTtcblx0XHR0aGlzLmlzTmF2aWdhdGluZ1RvTG9naW4gPSBmYWxzZTtcblx0XHR9LmJpbmQodGhpcylcblx0XHR9KTtcblx0XHR9XG5cdFx0cmV0dXJuO1xuXHRcdH1cblx0XG5cdFx0Y29uc3QgY3VycmVudFRpbWUgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcblx0XG5cdFx0Ly8g5o+Q5YmNMeWIhumSn+ajgOafpei/h+acn++8jOe7meeUqOaIt+mihOeVmeaXtumXtFxuXHRcdGlmIChjdXJyZW50VGltZSArIDYwICogMTAwMCA+IGV4cGlyZVRpbWUpIHtcblx0XHRjb25zb2xlLmxvZygn55m75b2V5Y2z5bCG6L+H5pyf5oiW5bey6L+H5pyf77yM6ZyA6KaB6YeN5paw55m75b2VIC0g5b2T5YmN5pe26Ze0OicsIGN1cnJlbnRUaW1lLCAn6L+H5pyf5pe26Ze0OicsIGV4cGlyZVRpbWUpO1xuXHRcdC8vIOa4hemZpOeZu+W9leS/oeaBr1xuXHRcdHRoaXMuZ2xvYmFsRGF0YS50b2tlbiA9ICcnO1xuXHRcdHRoaXMuZ2xvYmFsRGF0YS5leHBpcmVBdCA9ICcnO1xuXHRcdHRoaXMuZ2xvYmFsRGF0YS51c2VySW5mbyA9IHt9O1xuXHRcdHRoaXMuZ2xvYmFsRGF0YS5pc0xvZ2dlZEluID0gZmFsc2U7XG5cdFx0dW5pLnJlbW92ZVN0b3JhZ2VTeW5jKCdlcXVpcG1lbnRfdG9rZW4nKTtcblx0XHR1bmkucmVtb3ZlU3RvcmFnZVN5bmMoJ3Rva2VuX2V4cGlyZV90aW1lJyk7XG5cdFx0dW5pLnJlbW92ZVN0b3JhZ2VTeW5jKCd1c2VyX2luZm8nKTtcblx0XG5cdFx0Ly8g6Lez6L2s5Yiw55m75b2V6aG16Z2iXG5cdFx0aWYgKGN1cnJlbnRQYXRoICE9PSAncGFnZXMvbG9naW4vbG9naW4nKSB7XG5cdFx0dGhpcy5pc05hdmlnYXRpbmdUb0xvZ2luID0gdHJ1ZTtcblx0XHR1bmkucmVkaXJlY3RUbyh7XG5cdFx0dXJsOiAnL3BhZ2VzL2xvZ2luL2xvZ2luJyxcblx0XHRzdWNjZXNzOiBmdW5jdGlvbigpIHtcblx0XHRjb25zb2xlLmxvZygn5a+86Iiq5Yiw55m75b2V6aG16Z2i5oiQ5YqfJyk7XG5cdFx0Ly8g5a+86Iiq5oiQ5Yqf5ZCO6YeN572u5qCH5b+XXG5cdFx0c2V0VGltZW91dChmdW5jdGlvbigpIHtcblx0XHR0aGlzLmlzTmF2aWdhdGluZ1RvTG9naW4gPSBmYWxzZTtcblx0XHR9LmJpbmQodGhpcyksIDEwMDApO1xuXHRcdH0uYmluZCh0aGlzKSxcblx0XHRmYWlsOiBmdW5jdGlvbihlcnIpIHtcblx0XHRjb25zb2xlLmVycm9yKCflr7zoiKrliLDnmbvlvZXpobXpnaLlpLHotKU6JywgZXJyKTtcblx0XHR0aGlzLmlzTmF2aWdhdGluZ1RvTG9naW4gPSBmYWxzZTtcblx0XHR9LmJpbmQodGhpcylcblx0XHR9KTtcblx0XHR9XG5cdFx0fSBlbHNlIHtcblx0XHQvLyDlt7LnmbvlvZXkuJR0b2tlbuacieaViO+8jOiuvue9ruWFqOWxgOeZu+W9leeKtuaAgVxuXHRcdHRoaXMuZ2xvYmFsRGF0YS5pc0xvZ2dlZEluID0gdHJ1ZTtcblx0XHR0aGlzLmdsb2JhbERhdGEudG9rZW4gPSB0b2tlbjtcblx0XHR0aGlzLmdsb2JhbERhdGEuZXhwaXJlQXQgPSBleHBpcmVBdDtcblx0XHR0aGlzLmdsb2JhbERhdGEuZXF1aXBtZW50TWFuYWdlID0gdGhpcy5nbG9iYWxEYXRhLmVxdWlwbWVudE1hbmFnZSB8fCAwO1xuXHRcdHRoaXMuZ2xvYmFsRGF0YS51c2VySW5mbyA9IHVzZXJJbmZvO1xuXHRcblx0XHQvLyDorqHnrpfliankvZnml7bpl7TlubborrDlvZXml6Xlv5fvvIzluK7liqnosIPor5Vcblx0XHRjb25zdCByZW1haW5pbmdUaW1lID0gKGV4cGlyZVRpbWUgLSBjdXJyZW50VGltZSkgLyAxMDAwIC8gNjA7IC8vIOi9rOaNouS4uuWIhumSn1xuXHRcdGNvbnNvbGUubG9nKCfnmbvlvZXnirbmgIHmnInmlYjvvIzml6DpnIDph43mlrDnmbvlvZUgLSDliankvZnml7bpl7TnuqY6JywgTWF0aC5yb3VuZChyZW1haW5pbmdUaW1lKSwgJ+WIhumSnycpO1xuXHRcblx0XHQvLyDlpoLmnpzlt7Lnu4/lnKjnmbvlvZXpobXpnaLvvIzoh6rliqjot7PovazliLDpppbpobVcblx0XHRpZiAoY3VycmVudFBhdGggPT09ICdwYWdlcy9sb2dpbi9sb2dpbicpIHtcblx0XHRjb25zb2xlLmxvZygn55m75b2V54q25oCB5pyJ5pWI5L2G5b2T5YmN5Zyo55m75b2V6aG16Z2i77yM6Ieq5Yqo6Lez6L2s5Yiw6aaW6aG1Jyk7XG5cdFx0dGhpcy5pc05hdmlnYXRpbmdUb0xvZ2luID0gdHJ1ZTtcblx0XHRzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuXHRcdHVuaS5zd2l0Y2hUYWIoe1xuXHRcdHVybDogJy9wYWdlcy9pbmRleC9pbmRleCcsXG5cdFx0c3VjY2VzczogZnVuY3Rpb24oKSB7XG5cdFx0Y29uc29sZS5sb2coJ+S7jueZu+W9lemhtei3s+i9rOWIsOmmlumhteaIkOWKnycpO1xuXHRcdHRoaXMuaXNOYXZpZ2F0aW5nVG9Mb2dpbiA9IGZhbHNlO1xuXHRcdH0uYmluZCh0aGlzKSxcblx0XHRmYWlsOiBmdW5jdGlvbihlcnIpIHtcblx0XHRjb25zb2xlLmVycm9yKCfku47nmbvlvZXpobXot7PovazliLDpppbpobXlpLHotKU6JywgZXJyKTtcblx0XHR0aGlzLmlzTmF2aWdhdGluZ1RvTG9naW4gPSBmYWxzZTtcblx0XHR9LmJpbmQodGhpcylcblx0XHR9KTtcblx0XHR9LmJpbmQodGhpcyksIDUwMCk7XG5cdFx0fVxuXHRcdH1cblx0XHR9XG5cdH0gY2F0Y2ggKGUpIHtcblx0XHRjb25zb2xlLmVycm9yKCfmo4Dmn6XnmbvlvZXnirbmgIHml7blj5HnlJ/plJnor686JywgZSk7XG5cdH1cbn0sXG5cdFx0XG5cdFx0Ly8g6YeN572u5o+S5Lu25a6e5L6LXG5cdFx0cmVzZXRQbHVnaW5JbnN0YW5jZTogZnVuY3Rpb24oKSB7XG5cdFx0XHRjb25zb2xlLmxvZygnUmVzZXR0aW5nIHBsdWdpbiBpbnN0YW5jZSBnbG9iYWxseScpO1xuXHRcdFx0dHJ5IHtcblx0XHRcdFx0dGhpcy5jaGVja0FuZENsZWFudXBQbHVnaW5JbnN0YW5jZSgpO1xuXHRcdFx0XHRcblx0XHRcdFx0Ly8g5bu26L+f5LiA5q615pe26Ze05ZCO6YeN572u5bqU55So54q25oCBXG5cdFx0XHRcdHNldFRpbWVvdXQoKCkgPT4ge1xuXHRcdFx0XHRcdHRoaXMucmVzZXRBcHBTdGF0ZSgpO1xuXHRcdFx0XHR9LCAxMDAwKTtcblx0XHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdFx0Y29uc29sZS5lcnJvcignRXJyb3IgcmVzZXR0aW5nIHBsdWdpbiBpbnN0YW5jZTonLCBlKTtcblx0XHRcdH1cblx0XHR9XG5cdH0sXG5cdGdsb2JhbERhdGE6IHtcblx0aXNMb2dnZWRJbjogZmFsc2UsXG5cdHRva2VuOiAnJyxcblx0ZXhwaXJlQXQ6ICcnLFxuXHRlcXVpcG1lbnRNYW5hZ2U6IDAsXG5cdHVzZXJJbmZvOiB7fVxufSxcbi8vIOWvvOiIqueKtuaAgeaOp+WItlxuZGF0YSgpIHtcblx0cmV0dXJuIHtcblx0XHRpc05hdmlnYXRpbmdUb0xvZ2luOiBmYWxzZVxuXHR9XG59XG59XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///47\n");
- /***/ })
- ],[[0,"app-config"]]]);
|